From 6af6fe46e4b2527654e4d9aeb55c33d035ee4f78 Mon Sep 17 00:00:00 2001 From: Jason Coene Date: Thu, 18 Apr 2024 14:48:22 -0500 Subject: [PATCH] proto updates --- Makefile | 8 +- callbacks.go | 175 + dota/base_gcmessages.pb.go | 1307 +- dota/base_gcmessages.proto | 11 - dota/c_peer2peer_netmessages.pb.go | 2 +- dota/clientmessages.pb.go | 2 +- dota/connectionless_netmessages.pb.go | 37 +- dota/connectionless_netmessages.proto | 2 - dota/demo.pb.go | 630 +- dota/demo.proto | 16 +- dota/dota_broadcastmessages.pb.go | 2 +- dota/dota_client_enums.pb.go | 2 +- dota/dota_clientmessages.pb.go | 1801 +- dota/dota_clientmessages.proto | 21 + dota/dota_commonmessages.pb.go | 35 +- dota/dota_commonmessages.proto | 1 + dota/dota_gcmessages_client.pb.go | 14189 +++++++++------- dota/dota_gcmessages_client.proto | 168 + ...dota_gcmessages_client_battle_report.pb.go | 103 +- ...dota_gcmessages_client_battle_report.proto | 2 +- dota/dota_gcmessages_client_bingo.pb.go | 1385 ++ dota/dota_gcmessages_client_bingo.proto | 113 + dota/dota_gcmessages_client_candy_shop.pb.go | 2 +- dota/dota_gcmessages_client_chat.pb.go | 637 +- dota/dota_gcmessages_client_chat.proto | 8 + dota/dota_gcmessages_client_coaching.pb.go | 2 +- dota/dota_gcmessages_client_fantasy.pb.go | 4186 ++++- dota/dota_gcmessages_client_fantasy.proto | 227 + dota/dota_gcmessages_client_guild.pb.go | 1386 +- dota/dota_gcmessages_client_guild.proto | 1 + .../dota_gcmessages_client_guild_events.pb.go | 2 +- ...a_gcmessages_client_match_management.pb.go | 1657 +- ...a_gcmessages_client_match_management.proto | 4 + dota/dota_gcmessages_client_showcase.pb.go | 6936 ++++++++ dota/dota_gcmessages_client_showcase.proto | 533 + dota/dota_gcmessages_client_team.pb.go | 847 +- dota/dota_gcmessages_client_team.proto | 5 + dota/dota_gcmessages_client_tournament.pb.go | 2 +- dota/dota_gcmessages_client_watch.pb.go | 537 +- dota/dota_gcmessages_client_watch.proto | 2 + dota/dota_gcmessages_common.pb.go | 7643 +++++---- dota/dota_gcmessages_common.proto | 49 +- dota/dota_gcmessages_common_league.pb.go | 30 +- dota/dota_gcmessages_common_league.proto | 1 + dota/dota_gcmessages_common_lobby.pb.go | 2501 +-- dota/dota_gcmessages_common_lobby.proto | 40 +- ...a_gcmessages_common_match_management.pb.go | 644 +- ...a_gcmessages_common_match_management.proto | 21 +- dota/dota_gcmessages_msgid.pb.go | 4526 ++--- dota/dota_gcmessages_msgid.proto | 80 +- dota/dota_gcmessages_server.pb.go | 7764 +++++---- dota/dota_gcmessages_server.proto | 149 +- dota/dota_gcmessages_webapi.pb.go | 925 +- dota/dota_gcmessages_webapi.proto | 19 +- dota/dota_hud_types.pb.go | 2 +- dota/dota_match_metadata.pb.go | 1525 +- dota/dota_match_metadata.proto | 5 + dota/dota_modifiers.pb.go | 48 +- dota/dota_modifiers.proto | 1 + dota/dota_scenariomessages.pb.go | 878 +- dota/dota_scenariomessages.proto | 2 + dota/dota_shared_enums.pb.go | 3570 ++-- dota/dota_shared_enums.proto | 88 +- dota/dota_usercmd.pb.go | 2 +- dota/dota_usermessages.pb.go | 7328 ++++---- dota/dota_usermessages.proto | 20 + dota/econ_gcmessages.pb.go | 4593 ++--- dota/econ_gcmessages.proto | 46 +- dota/econ_shared_enums.pb.go | 2 +- dota/engine_gcmessages.pb.go | 2 +- dota/enums_clientserver.pb.go | 6632 ++++---- dota/enums_clientserver.proto | 60 +- dota/gameevents.pb.go | 2 +- dota/gcsdk_gcmessages.pb.go | 2454 +-- dota/gcsdk_gcmessages.proto | 14 +- dota/gcsystemmsgs.pb.go | 2 +- dota/netmessages.pb.go | 2643 +-- dota/netmessages.proto | 39 +- dota/network_connection.pb.go | 276 +- dota/network_connection.proto | 1 - dota/networkbasetypes.pb.go | 564 +- dota/networkbasetypes.proto | 3 + dota/networksystem_protomessages.pb.go | 2 +- dota/steamdatagram_messages_auth.pb.go | 2 +- dota/steamdatagram_messages_sdr.pb.go | 2031 +-- dota/steamdatagram_messages_sdr.proto | 8 +- dota/steammessages.pb.go | 2 +- dota/steammessages_cloud.steamworkssdk.pb.go | 2 +- dota/steammessages_gamenetworkingui.pb.go | 293 +- dota/steammessages_gamenetworkingui.proto | 19 + ...ammessages_helprequest.steamworkssdk.pb.go | 2 +- dota/steammessages_int.pb.go | 2 +- dota/steammessages_oauth.steamworkssdk.pb.go | 2 +- dota/steammessages_player.steamworkssdk.pb.go | 2 +- ...messages_publishedfile.steamworkssdk.pb.go | 2 +- ...eammessages_steamlearn.steamworkssdk.pb.go | 3087 +++- ...eammessages_steamlearn.steamworkssdk.proto | 157 +- ...mmessages_unified_base.steamworkssdk.pb.go | 2 +- dota/steamnetworkingsockets_messages.pb.go | 916 +- dota/steamnetworkingsockets_messages.proto | 1 + ...teamnetworkingsockets_messages_certs.pb.go | 2 +- .../steamnetworkingsockets_messages_udp.pb.go | 2 +- dota/te.pb.go | 195 +- dota/te.proto | 3 + dota/uifontfile_format.pb.go | 2 +- dota/usercmd.pb.go | 191 +- dota/usercmd.proto | 6 +- dota/usermessages.pb.go | 4206 +++-- dota/usermessages.proto | 102 +- dota/valveextensions.pb.go | 125 +- dota/valveextensions.proto | 4 +- entity.go | 2 +- parser_test.go | 56 +- 113 files changed, 62634 insertions(+), 40974 deletions(-) create mode 100644 dota/dota_gcmessages_client_bingo.pb.go create mode 100644 dota/dota_gcmessages_client_bingo.proto create mode 100644 dota/dota_gcmessages_client_showcase.pb.go create mode 100644 dota/dota_gcmessages_client_showcase.proto diff --git a/Makefile b/Makefile index a248da57..afcf02cf 100644 --- a/Makefile +++ b/Makefile @@ -31,7 +31,10 @@ update: update-protobufs generate update-protobufs: rm -rf dota - svn export https://github.com/SteamDatabase/GameTracking-Dota2.git/trunk/Protobufs dota + mkdir -p ./dota/tmp && \ + curl -L -o - https://github.com/SteamDatabase/GameTracking-Dota2/archive/master.tar.gz | tar -xz --strip-components=1 -C ./dota/tmp && \ + cp -a ./dota/tmp/Protobufs/*.proto ./dota/ && \ + rm -rf ./dota/tmp rm -rf dota/gametoolevents.proto dota/dota_messages_mlbot.proto dota/dota_gcmessages_common_bot_script.proto dota/steammessages_base.proto dota/steammessages_clientserver_login.proto dota/tensorflow $(SED) -i 's/^\(\s*\)\(optional\|repeated\|required\|extend\)\s*\./\1\2 /' dota/*.proto $(SED) -i 's!^\s*rpc\s*\(\S*\)\s*(\.\([^)]*\))\s*returns\s*(\.\([^)]*\))\s*{!rpc \1 (\2) returns (\3) {!' dota/*.proto @@ -39,6 +42,9 @@ update-protobufs: $(SED) -i '/^import "google\/protobuf\/valve_extensions\.proto"/d' dota/*.proto $(SED) -i '/^option (/d' dota/*.proto $(SED) -i 's/\s\[.*\]//g' dota/*.proto + $(SED) -i 's/\.CMsgSteamLearn/CMsgSteamLearn/g' dota/*.proto + $(SED) -i 's/\.CMsgShowcaseItem/CMsgShowcaseItem/g' dota/*.proto + $(SED) -i 's/\.CMsgShowcaseBackground/CMsgShowcaseBackground/g' dota/*.proto protoc -I dota --go_out=paths=source_relative:dota dota/*.proto generate: diff --git a/callbacks.go b/callbacks.go index dd12e9d3..86258ad3 100644 --- a/callbacks.go +++ b/callbacks.go @@ -23,6 +23,7 @@ type Callbacks struct { onCDemoFullPacket []func(*dota.CDemoFullPacket) error onCDemoSaveGame []func(*dota.CDemoSaveGame) error onCDemoSpawnGroups []func(*dota.CDemoSpawnGroups) error + onCDemoAnimationData []func(*dota.CDemoAnimationData) error onCNETMsg_NOP []func(*dota.CNETMsg_NOP) error onCNETMsg_Disconnect []func(*dota.CNETMsg_Disconnect) error onCNETMsg_SplitScreenUser []func(*dota.CNETMsg_SplitScreenUser) error @@ -84,6 +85,7 @@ type Callbacks struct { onCUserMessageSayTextChannel []func(*dota.CUserMessageSayTextChannel) error onCUserMessageShake []func(*dota.CUserMessageShake) error onCUserMessageShakeDir []func(*dota.CUserMessageShakeDir) error + onCUserMessageWaterShake []func(*dota.CUserMessageWaterShake) error onCUserMessageTextMsg []func(*dota.CUserMessageTextMsg) error onCUserMessageScreenTilt []func(*dota.CUserMessageScreenTilt) error onCUserMessageVoiceMask []func(*dota.CUserMessageVoiceMask) error @@ -110,6 +112,7 @@ type Callbacks struct { onCUserMessageRequestDllStatus []func(*dota.CUserMessageRequestDllStatus) error onCUserMessageRequestUtilAction []func(*dota.CUserMessageRequestUtilAction) error onCUserMessageRequestInventory []func(*dota.CUserMessageRequestInventory) error + onCUserMessageRequestDiagnostic []func(*dota.CUserMessageRequestDiagnostic) error onCMsgVDebugGameSessionIDEvent []func(*dota.CMsgVDebugGameSessionIDEvent) error onCMsgPlaceDecalEvent []func(*dota.CMsgPlaceDecalEvent) error onCMsgClearWorldDecalsEvent []func(*dota.CMsgClearWorldDecalsEvent) error @@ -269,6 +272,10 @@ type Callbacks struct { onCDOTAUserMsg_DuelAccepted []func(*dota.CDOTAUserMsg_DuelAccepted) error onCDOTAUserMsg_DuelRequested []func(*dota.CDOTAUserMsg_DuelRequested) error onCDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled []func(*dota.CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled) error + onCDOTAUserMsg_PlayerDraftSuggestPick []func(*dota.CDOTAUserMsg_PlayerDraftSuggestPick) error + onCDOTAUserMsg_PlayerDraftPick []func(*dota.CDOTAUserMsg_PlayerDraftPick) error + onCDOTAUserMsg_UpdateLinearProjectileCPData []func(*dota.CDOTAUserMsg_UpdateLinearProjectileCPData) error + onCDOTAUserMsg_GiftPlayer []func(*dota.CDOTAUserMsg_GiftPlayer) error pb *proto.Buffer } @@ -359,6 +366,11 @@ func (c *Callbacks) OnCDemoSpawnGroups(fn func(*dota.CDemoSpawnGroups) error) { c.onCDemoSpawnGroups = append(c.onCDemoSpawnGroups, fn) } +// OnCDemoAnimationData registers a callback EDemoCommands_DEM_AnimationData +func (c *Callbacks) OnCDemoAnimationData(fn func(*dota.CDemoAnimationData) error) { + c.onCDemoAnimationData = append(c.onCDemoAnimationData, fn) +} + // OnCNETMsg_NOP registers a callback for NET_Messages_net_NOP func (c *Callbacks) OnCNETMsg_NOP(fn func(*dota.CNETMsg_NOP) error) { c.onCNETMsg_NOP = append(c.onCNETMsg_NOP, fn) @@ -664,6 +676,11 @@ func (c *Callbacks) OnCUserMessageShakeDir(fn func(*dota.CUserMessageShakeDir) e c.onCUserMessageShakeDir = append(c.onCUserMessageShakeDir, fn) } +// OnCUserMessageWaterShake registers a callback for EBaseUserMessages_UM_WaterShake +func (c *Callbacks) OnCUserMessageWaterShake(fn func(*dota.CUserMessageWaterShake) error) { + c.onCUserMessageWaterShake = append(c.onCUserMessageWaterShake, fn) +} + // OnCUserMessageTextMsg registers a callback for EBaseUserMessages_UM_TextMsg func (c *Callbacks) OnCUserMessageTextMsg(fn func(*dota.CUserMessageTextMsg) error) { c.onCUserMessageTextMsg = append(c.onCUserMessageTextMsg, fn) @@ -794,6 +811,11 @@ func (c *Callbacks) OnCUserMessageRequestInventory(fn func(*dota.CUserMessageReq c.onCUserMessageRequestInventory = append(c.onCUserMessageRequestInventory, fn) } +// OnCUserMessageRequestDiagnostic registers a callback for EBaseUserMessages_UM_RequestDiagnostic +func (c *Callbacks) OnCUserMessageRequestDiagnostic(fn func(*dota.CUserMessageRequestDiagnostic) error) { + c.onCUserMessageRequestDiagnostic = append(c.onCUserMessageRequestDiagnostic, fn) +} + // OnCMsgVDebugGameSessionIDEvent registers a callback for EBaseGameEvents_GE_VDebugGameSessionIDEvent func (c *Callbacks) OnCMsgVDebugGameSessionIDEvent(fn func(*dota.CMsgVDebugGameSessionIDEvent) error) { c.onCMsgVDebugGameSessionIDEvent = append(c.onCMsgVDebugGameSessionIDEvent, fn) @@ -1589,6 +1611,26 @@ func (c *Callbacks) OnCDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled(fn fu c.onCDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled = append(c.onCDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled, fn) } +// OnCDOTAUserMsg_PlayerDraftSuggestPick registers a callback for EDotaUserMessages_DOTA_UM_PlayerDraftSuggestPick +func (c *Callbacks) OnCDOTAUserMsg_PlayerDraftSuggestPick(fn func(*dota.CDOTAUserMsg_PlayerDraftSuggestPick) error) { + c.onCDOTAUserMsg_PlayerDraftSuggestPick = append(c.onCDOTAUserMsg_PlayerDraftSuggestPick, fn) +} + +// OnCDOTAUserMsg_PlayerDraftPick registers a callback for EDotaUserMessages_DOTA_UM_PlayerDraftPick +func (c *Callbacks) OnCDOTAUserMsg_PlayerDraftPick(fn func(*dota.CDOTAUserMsg_PlayerDraftPick) error) { + c.onCDOTAUserMsg_PlayerDraftPick = append(c.onCDOTAUserMsg_PlayerDraftPick, fn) +} + +// OnCDOTAUserMsg_UpdateLinearProjectileCPData registers a callback for EDotaUserMessages_DOTA_UM_UpdateLinearProjectileCPData +func (c *Callbacks) OnCDOTAUserMsg_UpdateLinearProjectileCPData(fn func(*dota.CDOTAUserMsg_UpdateLinearProjectileCPData) error) { + c.onCDOTAUserMsg_UpdateLinearProjectileCPData = append(c.onCDOTAUserMsg_UpdateLinearProjectileCPData, fn) +} + +// OnCDOTAUserMsg_GiftPlayer registers a callback for EDotaUserMessages_DOTA_UM_GiftPlayer +func (c *Callbacks) OnCDOTAUserMsg_GiftPlayer(fn func(*dota.CDOTAUserMsg_GiftPlayer) error) { + c.onCDOTAUserMsg_GiftPlayer = append(c.onCDOTAUserMsg_GiftPlayer, fn) +} + func (c *Callbacks) callByDemoType(t int32, buf []byte) error { switch t { case 0: // dota.EDemoCommands_DEM_Stop @@ -1895,6 +1937,25 @@ func (c *Callbacks) callByDemoType(t int32, buf []byte) error { return nil + case 16: // dota.EDemoCommands_DEM_AnimationData + if c.onCDemoAnimationData == nil { + return nil + } + + msg := &dota.CDemoAnimationData{} + c.pb.SetBuf(buf) + if err := c.pb.Unmarshal(msg); err != nil { + return err + } + + for _, fn := range c.onCDemoAnimationData { + if err := fn(msg); err != nil { + return err + } + } + + return nil + } if v(1) { @@ -3065,6 +3126,25 @@ func (c *Callbacks) callByPacketType(t int32, buf []byte) error { return nil + case 122: // dota.EBaseUserMessages_UM_WaterShake + if c.onCUserMessageWaterShake == nil { + return nil + } + + msg := &dota.CUserMessageWaterShake{} + c.pb.SetBuf(buf) + if err := c.pb.Unmarshal(msg); err != nil { + return err + } + + for _, fn := range c.onCUserMessageWaterShake { + if err := fn(msg); err != nil { + return err + } + } + + return nil + case 124: // dota.EBaseUserMessages_UM_TextMsg if c.onCUserMessageTextMsg == nil { return nil @@ -3559,6 +3639,25 @@ func (c *Callbacks) callByPacketType(t int32, buf []byte) error { return nil + case 162: // dota.EBaseUserMessages_UM_RequestDiagnostic + if c.onCUserMessageRequestDiagnostic == nil { + return nil + } + + msg := &dota.CUserMessageRequestDiagnostic{} + c.pb.SetBuf(buf) + if err := c.pb.Unmarshal(msg); err != nil { + return err + } + + for _, fn := range c.onCUserMessageRequestDiagnostic { + if err := fn(msg); err != nil { + return err + } + } + + return nil + case 200: // dota.EBaseGameEvents_GE_VDebugGameSessionIDEvent if c.onCMsgVDebugGameSessionIDEvent == nil { return nil @@ -6580,6 +6679,82 @@ func (c *Callbacks) callByPacketType(t int32, buf []byte) error { return nil + case 620: // dota.EDotaUserMessages_DOTA_UM_PlayerDraftSuggestPick + if c.onCDOTAUserMsg_PlayerDraftSuggestPick == nil { + return nil + } + + msg := &dota.CDOTAUserMsg_PlayerDraftSuggestPick{} + c.pb.SetBuf(buf) + if err := c.pb.Unmarshal(msg); err != nil { + return err + } + + for _, fn := range c.onCDOTAUserMsg_PlayerDraftSuggestPick { + if err := fn(msg); err != nil { + return err + } + } + + return nil + + case 621: // dota.EDotaUserMessages_DOTA_UM_PlayerDraftPick + if c.onCDOTAUserMsg_PlayerDraftPick == nil { + return nil + } + + msg := &dota.CDOTAUserMsg_PlayerDraftPick{} + c.pb.SetBuf(buf) + if err := c.pb.Unmarshal(msg); err != nil { + return err + } + + for _, fn := range c.onCDOTAUserMsg_PlayerDraftPick { + if err := fn(msg); err != nil { + return err + } + } + + return nil + + case 622: // dota.EDotaUserMessages_DOTA_UM_UpdateLinearProjectileCPData + if c.onCDOTAUserMsg_UpdateLinearProjectileCPData == nil { + return nil + } + + msg := &dota.CDOTAUserMsg_UpdateLinearProjectileCPData{} + c.pb.SetBuf(buf) + if err := c.pb.Unmarshal(msg); err != nil { + return err + } + + for _, fn := range c.onCDOTAUserMsg_UpdateLinearProjectileCPData { + if err := fn(msg); err != nil { + return err + } + } + + return nil + + case 623: // dota.EDotaUserMessages_DOTA_UM_GiftPlayer + if c.onCDOTAUserMsg_GiftPlayer == nil { + return nil + } + + msg := &dota.CDOTAUserMsg_GiftPlayer{} + c.pb.SetBuf(buf) + if err := c.pb.Unmarshal(msg); err != nil { + return err + } + + for _, fn := range c.onCDOTAUserMsg_GiftPlayer { + if err := fn(msg); err != nil { + return err + } + } + + return nil + } return nil diff --git a/dota/base_gcmessages.pb.go b/dota/base_gcmessages.pb.go index b723996f..32d02b7e 100644 --- a/dota/base_gcmessages.pb.go +++ b/dota/base_gcmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: base_gcmessages.proto @@ -23,8 +23,6 @@ const ( type EGCBaseMsg int32 const ( - EGCBaseMsg_k_EMsgGCReplicateConVars EGCBaseMsg = 4002 - EGCBaseMsg_k_EMsgGCConVarUpdated EGCBaseMsg = 4003 EGCBaseMsg_k_EMsgGCInviteToParty EGCBaseMsg = 4501 EGCBaseMsg_k_EMsgGCInvitationCreated EGCBaseMsg = 4502 EGCBaseMsg_k_EMsgGCPartyInviteResponse EGCBaseMsg = 4503 @@ -52,8 +50,6 @@ const ( // Enum value maps for EGCBaseMsg. var ( EGCBaseMsg_name = map[int32]string{ - 4002: "k_EMsgGCReplicateConVars", - 4003: "k_EMsgGCConVarUpdated", 4501: "k_EMsgGCInviteToParty", 4502: "k_EMsgGCInvitationCreated", 4503: "k_EMsgGCPartyInviteResponse", @@ -78,8 +74,6 @@ var ( 4524: "k_EMsgGCToClientAggregateMetricsBackoff", } EGCBaseMsg_value = map[string]int32{ - "k_EMsgGCReplicateConVars": 4002, - "k_EMsgGCConVarUpdated": 4003, "k_EMsgGCInviteToParty": 4501, "k_EMsgGCInvitationCreated": 4502, "k_EMsgGCPartyInviteResponse": 4503, @@ -284,7 +278,7 @@ func (x *CMsgExtractGemsResponse_EExtractGems) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgExtractGemsResponse_EExtractGems.Descriptor instead. func (CMsgExtractGemsResponse_EExtractGems) EnumDescriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{38, 0} + return file_base_gcmessages_proto_rawDescGZIP(), []int{36, 0} } type CMsgAddSocketResponse_EAddSocket int32 @@ -346,7 +340,7 @@ func (x *CMsgAddSocketResponse_EAddSocket) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgAddSocketResponse_EAddSocket.Descriptor instead. func (CMsgAddSocketResponse_EAddSocket) EnumDescriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{40, 0} + return file_base_gcmessages_proto_rawDescGZIP(), []int{38, 0} } type CMsgAddItemToSocketResponse_EAddGem int32 @@ -420,7 +414,7 @@ func (x *CMsgAddItemToSocketResponse_EAddGem) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgAddItemToSocketResponse_EAddGem.Descriptor instead. func (CMsgAddItemToSocketResponse_EAddGem) EnumDescriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{43, 0} + return file_base_gcmessages_proto_rawDescGZIP(), []int{41, 0} } type CMsgResetStrangeGemCountResponse_EResetGem int32 @@ -485,7 +479,7 @@ func (x *CMsgResetStrangeGemCountResponse_EResetGem) UnmarshalJSON(b []byte) err // Deprecated: Use CMsgResetStrangeGemCountResponse_EResetGem.Descriptor instead. func (CMsgResetStrangeGemCountResponse_EResetGem) EnumDescriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{45, 0} + return file_base_gcmessages_proto_rawDescGZIP(), []int{43, 0} } type CGCStorePurchaseInit_LineItem struct { @@ -1945,108 +1939,6 @@ func (x *CMsgSortItems) GetSortType() uint32 { return 0 } -type CMsgConVarValue struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - Value *string `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` -} - -func (x *CMsgConVarValue) Reset() { - *x = CMsgConVarValue{} - if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgConVarValue) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgConVarValue) ProtoMessage() {} - -func (x *CMsgConVarValue) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgConVarValue.ProtoReflect.Descriptor instead. -func (*CMsgConVarValue) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{22} -} - -func (x *CMsgConVarValue) GetName() string { - if x != nil && x.Name != nil { - return *x.Name - } - return "" -} - -func (x *CMsgConVarValue) GetValue() string { - if x != nil && x.Value != nil { - return *x.Value - } - return "" -} - -type CMsgReplicateConVars struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Convars []*CMsgConVarValue `protobuf:"bytes,1,rep,name=convars" json:"convars,omitempty"` -} - -func (x *CMsgReplicateConVars) Reset() { - *x = CMsgReplicateConVars{} - if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgReplicateConVars) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgReplicateConVars) ProtoMessage() {} - -func (x *CMsgReplicateConVars) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgReplicateConVars.ProtoReflect.Descriptor instead. -func (*CMsgReplicateConVars) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{23} -} - -func (x *CMsgReplicateConVars) GetConvars() []*CMsgConVarValue { - if x != nil { - return x.Convars - } - return nil -} - type CMsgItemAcknowledged struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2063,7 +1955,7 @@ type CMsgItemAcknowledged struct { func (x *CMsgItemAcknowledged) Reset() { *x = CMsgItemAcknowledged{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[24] + mi := &file_base_gcmessages_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2076,7 +1968,7 @@ func (x *CMsgItemAcknowledged) String() string { func (*CMsgItemAcknowledged) ProtoMessage() {} func (x *CMsgItemAcknowledged) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[24] + mi := &file_base_gcmessages_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2089,7 +1981,7 @@ func (x *CMsgItemAcknowledged) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgItemAcknowledged.ProtoReflect.Descriptor instead. func (*CMsgItemAcknowledged) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{24} + return file_base_gcmessages_proto_rawDescGZIP(), []int{22} } func (x *CMsgItemAcknowledged) GetAccountId() uint32 { @@ -2145,7 +2037,7 @@ type CMsgSetItemPositions struct { func (x *CMsgSetItemPositions) Reset() { *x = CMsgSetItemPositions{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[25] + mi := &file_base_gcmessages_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2158,7 +2050,7 @@ func (x *CMsgSetItemPositions) String() string { func (*CMsgSetItemPositions) ProtoMessage() {} func (x *CMsgSetItemPositions) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[25] + mi := &file_base_gcmessages_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2171,7 +2063,7 @@ func (x *CMsgSetItemPositions) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSetItemPositions.ProtoReflect.Descriptor instead. func (*CMsgSetItemPositions) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{25} + return file_base_gcmessages_proto_rawDescGZIP(), []int{23} } func (x *CMsgSetItemPositions) GetItemPositions() []*CMsgSetItemPositions_ItemPosition { @@ -2192,7 +2084,7 @@ type CMsgGCStorePurchaseCancel struct { func (x *CMsgGCStorePurchaseCancel) Reset() { *x = CMsgGCStorePurchaseCancel{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[26] + mi := &file_base_gcmessages_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2205,7 +2097,7 @@ func (x *CMsgGCStorePurchaseCancel) String() string { func (*CMsgGCStorePurchaseCancel) ProtoMessage() {} func (x *CMsgGCStorePurchaseCancel) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[26] + mi := &file_base_gcmessages_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2218,7 +2110,7 @@ func (x *CMsgGCStorePurchaseCancel) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCStorePurchaseCancel.ProtoReflect.Descriptor instead. func (*CMsgGCStorePurchaseCancel) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{26} + return file_base_gcmessages_proto_rawDescGZIP(), []int{24} } func (x *CMsgGCStorePurchaseCancel) GetTxnId() uint64 { @@ -2239,7 +2131,7 @@ type CMsgGCStorePurchaseCancelResponse struct { func (x *CMsgGCStorePurchaseCancelResponse) Reset() { *x = CMsgGCStorePurchaseCancelResponse{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[27] + mi := &file_base_gcmessages_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2252,7 +2144,7 @@ func (x *CMsgGCStorePurchaseCancelResponse) String() string { func (*CMsgGCStorePurchaseCancelResponse) ProtoMessage() {} func (x *CMsgGCStorePurchaseCancelResponse) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[27] + mi := &file_base_gcmessages_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2265,7 +2157,7 @@ func (x *CMsgGCStorePurchaseCancelResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCStorePurchaseCancelResponse.ProtoReflect.Descriptor instead. func (*CMsgGCStorePurchaseCancelResponse) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{27} + return file_base_gcmessages_proto_rawDescGZIP(), []int{25} } func (x *CMsgGCStorePurchaseCancelResponse) GetResult() uint32 { @@ -2286,7 +2178,7 @@ type CMsgGCStorePurchaseFinalize struct { func (x *CMsgGCStorePurchaseFinalize) Reset() { *x = CMsgGCStorePurchaseFinalize{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[28] + mi := &file_base_gcmessages_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2299,7 +2191,7 @@ func (x *CMsgGCStorePurchaseFinalize) String() string { func (*CMsgGCStorePurchaseFinalize) ProtoMessage() {} func (x *CMsgGCStorePurchaseFinalize) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[28] + mi := &file_base_gcmessages_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2312,7 +2204,7 @@ func (x *CMsgGCStorePurchaseFinalize) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCStorePurchaseFinalize.ProtoReflect.Descriptor instead. func (*CMsgGCStorePurchaseFinalize) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{28} + return file_base_gcmessages_proto_rawDescGZIP(), []int{26} } func (x *CMsgGCStorePurchaseFinalize) GetTxnId() uint64 { @@ -2334,7 +2226,7 @@ type CMsgGCStorePurchaseFinalizeResponse struct { func (x *CMsgGCStorePurchaseFinalizeResponse) Reset() { *x = CMsgGCStorePurchaseFinalizeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[29] + mi := &file_base_gcmessages_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2347,7 +2239,7 @@ func (x *CMsgGCStorePurchaseFinalizeResponse) String() string { func (*CMsgGCStorePurchaseFinalizeResponse) ProtoMessage() {} func (x *CMsgGCStorePurchaseFinalizeResponse) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[29] + mi := &file_base_gcmessages_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2360,7 +2252,7 @@ func (x *CMsgGCStorePurchaseFinalizeResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgGCStorePurchaseFinalizeResponse.ProtoReflect.Descriptor instead. func (*CMsgGCStorePurchaseFinalizeResponse) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{29} + return file_base_gcmessages_proto_rawDescGZIP(), []int{27} } func (x *CMsgGCStorePurchaseFinalizeResponse) GetResult() uint32 { @@ -2388,7 +2280,7 @@ type CMsgGCToGCBannedWordListUpdated struct { func (x *CMsgGCToGCBannedWordListUpdated) Reset() { *x = CMsgGCToGCBannedWordListUpdated{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[30] + mi := &file_base_gcmessages_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2401,7 +2293,7 @@ func (x *CMsgGCToGCBannedWordListUpdated) String() string { func (*CMsgGCToGCBannedWordListUpdated) ProtoMessage() {} func (x *CMsgGCToGCBannedWordListUpdated) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[30] + mi := &file_base_gcmessages_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2414,7 +2306,7 @@ func (x *CMsgGCToGCBannedWordListUpdated) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCBannedWordListUpdated.ProtoReflect.Descriptor instead. func (*CMsgGCToGCBannedWordListUpdated) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{30} + return file_base_gcmessages_proto_rawDescGZIP(), []int{28} } func (x *CMsgGCToGCBannedWordListUpdated) GetGroupId() uint32 { @@ -2436,7 +2328,7 @@ type CMsgGCToGCDirtySDOCache struct { func (x *CMsgGCToGCDirtySDOCache) Reset() { *x = CMsgGCToGCDirtySDOCache{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[31] + mi := &file_base_gcmessages_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2449,7 +2341,7 @@ func (x *CMsgGCToGCDirtySDOCache) String() string { func (*CMsgGCToGCDirtySDOCache) ProtoMessage() {} func (x *CMsgGCToGCDirtySDOCache) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[31] + mi := &file_base_gcmessages_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2462,7 +2354,7 @@ func (x *CMsgGCToGCDirtySDOCache) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCDirtySDOCache.ProtoReflect.Descriptor instead. func (*CMsgGCToGCDirtySDOCache) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{31} + return file_base_gcmessages_proto_rawDescGZIP(), []int{29} } func (x *CMsgGCToGCDirtySDOCache) GetSdoType() uint32 { @@ -2488,7 +2380,7 @@ type CMsgSDONoMemcached struct { func (x *CMsgSDONoMemcached) Reset() { *x = CMsgSDONoMemcached{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[32] + mi := &file_base_gcmessages_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2501,7 +2393,7 @@ func (x *CMsgSDONoMemcached) String() string { func (*CMsgSDONoMemcached) ProtoMessage() {} func (x *CMsgSDONoMemcached) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[32] + mi := &file_base_gcmessages_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2514,7 +2406,7 @@ func (x *CMsgSDONoMemcached) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSDONoMemcached.ProtoReflect.Descriptor instead. func (*CMsgSDONoMemcached) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{32} + return file_base_gcmessages_proto_rawDescGZIP(), []int{30} } type CMsgGCToGCUpdateSQLKeyValue struct { @@ -2528,7 +2420,7 @@ type CMsgGCToGCUpdateSQLKeyValue struct { func (x *CMsgGCToGCUpdateSQLKeyValue) Reset() { *x = CMsgGCToGCUpdateSQLKeyValue{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[33] + mi := &file_base_gcmessages_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2541,7 +2433,7 @@ func (x *CMsgGCToGCUpdateSQLKeyValue) String() string { func (*CMsgGCToGCUpdateSQLKeyValue) ProtoMessage() {} func (x *CMsgGCToGCUpdateSQLKeyValue) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[33] + mi := &file_base_gcmessages_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2554,7 +2446,7 @@ func (x *CMsgGCToGCUpdateSQLKeyValue) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCUpdateSQLKeyValue.ProtoReflect.Descriptor instead. func (*CMsgGCToGCUpdateSQLKeyValue) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{33} + return file_base_gcmessages_proto_rawDescGZIP(), []int{31} } func (x *CMsgGCToGCUpdateSQLKeyValue) GetKeyName() string { @@ -2575,7 +2467,7 @@ type CMsgGCServerVersionUpdated struct { func (x *CMsgGCServerVersionUpdated) Reset() { *x = CMsgGCServerVersionUpdated{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[34] + mi := &file_base_gcmessages_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2588,7 +2480,7 @@ func (x *CMsgGCServerVersionUpdated) String() string { func (*CMsgGCServerVersionUpdated) ProtoMessage() {} func (x *CMsgGCServerVersionUpdated) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[34] + mi := &file_base_gcmessages_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2601,7 +2493,7 @@ func (x *CMsgGCServerVersionUpdated) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCServerVersionUpdated.ProtoReflect.Descriptor instead. func (*CMsgGCServerVersionUpdated) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{34} + return file_base_gcmessages_proto_rawDescGZIP(), []int{32} } func (x *CMsgGCServerVersionUpdated) GetServerVersion() uint32 { @@ -2622,7 +2514,7 @@ type CMsgGCClientVersionUpdated struct { func (x *CMsgGCClientVersionUpdated) Reset() { *x = CMsgGCClientVersionUpdated{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[35] + mi := &file_base_gcmessages_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2635,7 +2527,7 @@ func (x *CMsgGCClientVersionUpdated) String() string { func (*CMsgGCClientVersionUpdated) ProtoMessage() {} func (x *CMsgGCClientVersionUpdated) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[35] + mi := &file_base_gcmessages_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2648,7 +2540,7 @@ func (x *CMsgGCClientVersionUpdated) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCClientVersionUpdated.ProtoReflect.Descriptor instead. func (*CMsgGCClientVersionUpdated) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{35} + return file_base_gcmessages_proto_rawDescGZIP(), []int{33} } func (x *CMsgGCClientVersionUpdated) GetClientVersion() uint32 { @@ -2667,7 +2559,7 @@ type CMsgGCToGCWebAPIAccountChanged struct { func (x *CMsgGCToGCWebAPIAccountChanged) Reset() { *x = CMsgGCToGCWebAPIAccountChanged{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[36] + mi := &file_base_gcmessages_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2680,7 +2572,7 @@ func (x *CMsgGCToGCWebAPIAccountChanged) String() string { func (*CMsgGCToGCWebAPIAccountChanged) ProtoMessage() {} func (x *CMsgGCToGCWebAPIAccountChanged) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[36] + mi := &file_base_gcmessages_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2693,7 +2585,7 @@ func (x *CMsgGCToGCWebAPIAccountChanged) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCWebAPIAccountChanged.ProtoReflect.Descriptor instead. func (*CMsgGCToGCWebAPIAccountChanged) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{36} + return file_base_gcmessages_proto_rawDescGZIP(), []int{34} } type CMsgExtractGems struct { @@ -2709,7 +2601,7 @@ type CMsgExtractGems struct { func (x *CMsgExtractGems) Reset() { *x = CMsgExtractGems{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[37] + mi := &file_base_gcmessages_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2722,7 +2614,7 @@ func (x *CMsgExtractGems) String() string { func (*CMsgExtractGems) ProtoMessage() {} func (x *CMsgExtractGems) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[37] + mi := &file_base_gcmessages_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2735,7 +2627,7 @@ func (x *CMsgExtractGems) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgExtractGems.ProtoReflect.Descriptor instead. func (*CMsgExtractGems) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{37} + return file_base_gcmessages_proto_rawDescGZIP(), []int{35} } func (x *CMsgExtractGems) GetToolItemId() uint64 { @@ -2771,7 +2663,7 @@ type CMsgExtractGemsResponse struct { func (x *CMsgExtractGemsResponse) Reset() { *x = CMsgExtractGemsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[38] + mi := &file_base_gcmessages_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2784,7 +2676,7 @@ func (x *CMsgExtractGemsResponse) String() string { func (*CMsgExtractGemsResponse) ProtoMessage() {} func (x *CMsgExtractGemsResponse) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[38] + mi := &file_base_gcmessages_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2797,7 +2689,7 @@ func (x *CMsgExtractGemsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgExtractGemsResponse.ProtoReflect.Descriptor instead. func (*CMsgExtractGemsResponse) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{38} + return file_base_gcmessages_proto_rawDescGZIP(), []int{36} } func (x *CMsgExtractGemsResponse) GetItemId() uint64 { @@ -2827,7 +2719,7 @@ type CMsgAddSocket struct { func (x *CMsgAddSocket) Reset() { *x = CMsgAddSocket{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[39] + mi := &file_base_gcmessages_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2840,7 +2732,7 @@ func (x *CMsgAddSocket) String() string { func (*CMsgAddSocket) ProtoMessage() {} func (x *CMsgAddSocket) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[39] + mi := &file_base_gcmessages_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2853,7 +2745,7 @@ func (x *CMsgAddSocket) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgAddSocket.ProtoReflect.Descriptor instead. func (*CMsgAddSocket) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{39} + return file_base_gcmessages_proto_rawDescGZIP(), []int{37} } func (x *CMsgAddSocket) GetToolItemId() uint64 { @@ -2890,7 +2782,7 @@ type CMsgAddSocketResponse struct { func (x *CMsgAddSocketResponse) Reset() { *x = CMsgAddSocketResponse{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[40] + mi := &file_base_gcmessages_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2903,7 +2795,7 @@ func (x *CMsgAddSocketResponse) String() string { func (*CMsgAddSocketResponse) ProtoMessage() {} func (x *CMsgAddSocketResponse) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[40] + mi := &file_base_gcmessages_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2916,7 +2808,7 @@ func (x *CMsgAddSocketResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgAddSocketResponse.ProtoReflect.Descriptor instead. func (*CMsgAddSocketResponse) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{40} + return file_base_gcmessages_proto_rawDescGZIP(), []int{38} } func (x *CMsgAddSocketResponse) GetItemId() uint64 { @@ -2952,7 +2844,7 @@ type CMsgAddItemToSocketData struct { func (x *CMsgAddItemToSocketData) Reset() { *x = CMsgAddItemToSocketData{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[41] + mi := &file_base_gcmessages_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2965,7 +2857,7 @@ func (x *CMsgAddItemToSocketData) String() string { func (*CMsgAddItemToSocketData) ProtoMessage() {} func (x *CMsgAddItemToSocketData) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[41] + mi := &file_base_gcmessages_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2978,7 +2870,7 @@ func (x *CMsgAddItemToSocketData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgAddItemToSocketData.ProtoReflect.Descriptor instead. func (*CMsgAddItemToSocketData) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{41} + return file_base_gcmessages_proto_rawDescGZIP(), []int{39} } func (x *CMsgAddItemToSocketData) GetGemItemId() uint64 { @@ -3007,7 +2899,7 @@ type CMsgAddItemToSocket struct { func (x *CMsgAddItemToSocket) Reset() { *x = CMsgAddItemToSocket{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[42] + mi := &file_base_gcmessages_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3020,7 +2912,7 @@ func (x *CMsgAddItemToSocket) String() string { func (*CMsgAddItemToSocket) ProtoMessage() {} func (x *CMsgAddItemToSocket) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[42] + mi := &file_base_gcmessages_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3033,7 +2925,7 @@ func (x *CMsgAddItemToSocket) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgAddItemToSocket.ProtoReflect.Descriptor instead. func (*CMsgAddItemToSocket) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{42} + return file_base_gcmessages_proto_rawDescGZIP(), []int{40} } func (x *CMsgAddItemToSocket) GetItemItemId() uint64 { @@ -3063,7 +2955,7 @@ type CMsgAddItemToSocketResponse struct { func (x *CMsgAddItemToSocketResponse) Reset() { *x = CMsgAddItemToSocketResponse{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[43] + mi := &file_base_gcmessages_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3076,7 +2968,7 @@ func (x *CMsgAddItemToSocketResponse) String() string { func (*CMsgAddItemToSocketResponse) ProtoMessage() {} func (x *CMsgAddItemToSocketResponse) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[43] + mi := &file_base_gcmessages_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3089,7 +2981,7 @@ func (x *CMsgAddItemToSocketResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgAddItemToSocketResponse.ProtoReflect.Descriptor instead. func (*CMsgAddItemToSocketResponse) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{43} + return file_base_gcmessages_proto_rawDescGZIP(), []int{41} } func (x *CMsgAddItemToSocketResponse) GetItemItemId() uint64 { @@ -3125,7 +3017,7 @@ type CMsgResetStrangeGemCount struct { func (x *CMsgResetStrangeGemCount) Reset() { *x = CMsgResetStrangeGemCount{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[44] + mi := &file_base_gcmessages_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3138,7 +3030,7 @@ func (x *CMsgResetStrangeGemCount) String() string { func (*CMsgResetStrangeGemCount) ProtoMessage() {} func (x *CMsgResetStrangeGemCount) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[44] + mi := &file_base_gcmessages_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3151,7 +3043,7 @@ func (x *CMsgResetStrangeGemCount) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgResetStrangeGemCount.ProtoReflect.Descriptor instead. func (*CMsgResetStrangeGemCount) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{44} + return file_base_gcmessages_proto_rawDescGZIP(), []int{42} } func (x *CMsgResetStrangeGemCount) GetItemItemId() uint64 { @@ -3179,7 +3071,7 @@ type CMsgResetStrangeGemCountResponse struct { func (x *CMsgResetStrangeGemCountResponse) Reset() { *x = CMsgResetStrangeGemCountResponse{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[45] + mi := &file_base_gcmessages_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3192,7 +3084,7 @@ func (x *CMsgResetStrangeGemCountResponse) String() string { func (*CMsgResetStrangeGemCountResponse) ProtoMessage() {} func (x *CMsgResetStrangeGemCountResponse) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[45] + mi := &file_base_gcmessages_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3205,7 +3097,7 @@ func (x *CMsgResetStrangeGemCountResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgResetStrangeGemCountResponse.ProtoReflect.Descriptor instead. func (*CMsgResetStrangeGemCountResponse) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{45} + return file_base_gcmessages_proto_rawDescGZIP(), []int{43} } func (x *CMsgResetStrangeGemCountResponse) GetResponse() CMsgResetStrangeGemCountResponse_EResetGem { @@ -3228,7 +3120,7 @@ type CMsgGCToClientPollFileRequest struct { func (x *CMsgGCToClientPollFileRequest) Reset() { *x = CMsgGCToClientPollFileRequest{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[46] + mi := &file_base_gcmessages_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3241,7 +3133,7 @@ func (x *CMsgGCToClientPollFileRequest) String() string { func (*CMsgGCToClientPollFileRequest) ProtoMessage() {} func (x *CMsgGCToClientPollFileRequest) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[46] + mi := &file_base_gcmessages_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3254,7 +3146,7 @@ func (x *CMsgGCToClientPollFileRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPollFileRequest.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPollFileRequest) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{46} + return file_base_gcmessages_proto_rawDescGZIP(), []int{44} } func (x *CMsgGCToClientPollFileRequest) GetFileName() string { @@ -3291,7 +3183,7 @@ type CMsgGCToClientPollFileResponse struct { func (x *CMsgGCToClientPollFileResponse) Reset() { *x = CMsgGCToClientPollFileResponse{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[47] + mi := &file_base_gcmessages_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3304,7 +3196,7 @@ func (x *CMsgGCToClientPollFileResponse) String() string { func (*CMsgGCToClientPollFileResponse) ProtoMessage() {} func (x *CMsgGCToClientPollFileResponse) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[47] + mi := &file_base_gcmessages_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3317,7 +3209,7 @@ func (x *CMsgGCToClientPollFileResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPollFileResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPollFileResponse) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{47} + return file_base_gcmessages_proto_rawDescGZIP(), []int{45} } func (x *CMsgGCToClientPollFileResponse) GetPollId() uint32 { @@ -3353,7 +3245,7 @@ type CMsgGCToGCPerformManualOp struct { func (x *CMsgGCToGCPerformManualOp) Reset() { *x = CMsgGCToGCPerformManualOp{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[48] + mi := &file_base_gcmessages_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3366,7 +3258,7 @@ func (x *CMsgGCToGCPerformManualOp) String() string { func (*CMsgGCToGCPerformManualOp) ProtoMessage() {} func (x *CMsgGCToGCPerformManualOp) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[48] + mi := &file_base_gcmessages_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3379,7 +3271,7 @@ func (x *CMsgGCToGCPerformManualOp) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCPerformManualOp.ProtoReflect.Descriptor instead. func (*CMsgGCToGCPerformManualOp) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{48} + return file_base_gcmessages_proto_rawDescGZIP(), []int{46} } func (x *CMsgGCToGCPerformManualOp) GetOpId() uint64 { @@ -3408,7 +3300,7 @@ type CMsgGCToGCPerformManualOpCompleted struct { func (x *CMsgGCToGCPerformManualOpCompleted) Reset() { *x = CMsgGCToGCPerformManualOpCompleted{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[49] + mi := &file_base_gcmessages_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3421,7 +3313,7 @@ func (x *CMsgGCToGCPerformManualOpCompleted) String() string { func (*CMsgGCToGCPerformManualOpCompleted) ProtoMessage() {} func (x *CMsgGCToGCPerformManualOpCompleted) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[49] + mi := &file_base_gcmessages_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3434,7 +3326,7 @@ func (x *CMsgGCToGCPerformManualOpCompleted) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToGCPerformManualOpCompleted.ProtoReflect.Descriptor instead. func (*CMsgGCToGCPerformManualOpCompleted) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{49} + return file_base_gcmessages_proto_rawDescGZIP(), []int{47} } func (x *CMsgGCToGCPerformManualOpCompleted) GetSuccess() bool { @@ -3460,7 +3352,7 @@ type CMsgGCToGCReloadServerRegionSettings struct { func (x *CMsgGCToGCReloadServerRegionSettings) Reset() { *x = CMsgGCToGCReloadServerRegionSettings{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[50] + mi := &file_base_gcmessages_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3473,7 +3365,7 @@ func (x *CMsgGCToGCReloadServerRegionSettings) String() string { func (*CMsgGCToGCReloadServerRegionSettings) ProtoMessage() {} func (x *CMsgGCToGCReloadServerRegionSettings) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[50] + mi := &file_base_gcmessages_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3486,7 +3378,7 @@ func (x *CMsgGCToGCReloadServerRegionSettings) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgGCToGCReloadServerRegionSettings.ProtoReflect.Descriptor instead. func (*CMsgGCToGCReloadServerRegionSettings) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{50} + return file_base_gcmessages_proto_rawDescGZIP(), []int{48} } type CMsgGCAdditionalWelcomeMsgList struct { @@ -3500,7 +3392,7 @@ type CMsgGCAdditionalWelcomeMsgList struct { func (x *CMsgGCAdditionalWelcomeMsgList) Reset() { *x = CMsgGCAdditionalWelcomeMsgList{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[51] + mi := &file_base_gcmessages_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3513,7 +3405,7 @@ func (x *CMsgGCAdditionalWelcomeMsgList) String() string { func (*CMsgGCAdditionalWelcomeMsgList) ProtoMessage() {} func (x *CMsgGCAdditionalWelcomeMsgList) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[51] + mi := &file_base_gcmessages_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3526,7 +3418,7 @@ func (x *CMsgGCAdditionalWelcomeMsgList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCAdditionalWelcomeMsgList.ProtoReflect.Descriptor instead. func (*CMsgGCAdditionalWelcomeMsgList) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{51} + return file_base_gcmessages_proto_rawDescGZIP(), []int{49} } func (x *CMsgGCAdditionalWelcomeMsgList) GetWelcomeMessages() []*CExtraMsgBlock { @@ -3547,7 +3439,7 @@ type CMsgApplyRemoteConVars struct { func (x *CMsgApplyRemoteConVars) Reset() { *x = CMsgApplyRemoteConVars{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[52] + mi := &file_base_gcmessages_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3560,7 +3452,7 @@ func (x *CMsgApplyRemoteConVars) String() string { func (*CMsgApplyRemoteConVars) ProtoMessage() {} func (x *CMsgApplyRemoteConVars) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[52] + mi := &file_base_gcmessages_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3573,7 +3465,7 @@ func (x *CMsgApplyRemoteConVars) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgApplyRemoteConVars.ProtoReflect.Descriptor instead. func (*CMsgApplyRemoteConVars) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{52} + return file_base_gcmessages_proto_rawDescGZIP(), []int{50} } func (x *CMsgApplyRemoteConVars) GetConVars() []*CMsgApplyRemoteConVars_ConVar { @@ -3594,7 +3486,7 @@ type CMsgGCToClientApplyRemoteConVars struct { func (x *CMsgGCToClientApplyRemoteConVars) Reset() { *x = CMsgGCToClientApplyRemoteConVars{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[53] + mi := &file_base_gcmessages_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3607,7 +3499,7 @@ func (x *CMsgGCToClientApplyRemoteConVars) String() string { func (*CMsgGCToClientApplyRemoteConVars) ProtoMessage() {} func (x *CMsgGCToClientApplyRemoteConVars) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[53] + mi := &file_base_gcmessages_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3620,7 +3512,7 @@ func (x *CMsgGCToClientApplyRemoteConVars) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientApplyRemoteConVars.ProtoReflect.Descriptor instead. func (*CMsgGCToClientApplyRemoteConVars) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{53} + return file_base_gcmessages_proto_rawDescGZIP(), []int{51} } func (x *CMsgGCToClientApplyRemoteConVars) GetMsg() *CMsgApplyRemoteConVars { @@ -3641,7 +3533,7 @@ type CMsgGCToServerApplyRemoteConVars struct { func (x *CMsgGCToServerApplyRemoteConVars) Reset() { *x = CMsgGCToServerApplyRemoteConVars{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[54] + mi := &file_base_gcmessages_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3654,7 +3546,7 @@ func (x *CMsgGCToServerApplyRemoteConVars) String() string { func (*CMsgGCToServerApplyRemoteConVars) ProtoMessage() {} func (x *CMsgGCToServerApplyRemoteConVars) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[54] + mi := &file_base_gcmessages_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3667,7 +3559,7 @@ func (x *CMsgGCToServerApplyRemoteConVars) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToServerApplyRemoteConVars.ProtoReflect.Descriptor instead. func (*CMsgGCToServerApplyRemoteConVars) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{54} + return file_base_gcmessages_proto_rawDescGZIP(), []int{52} } func (x *CMsgGCToServerApplyRemoteConVars) GetMsg() *CMsgApplyRemoteConVars { @@ -3690,7 +3582,7 @@ type CMsgClientToGCIntegrityStatus struct { func (x *CMsgClientToGCIntegrityStatus) Reset() { *x = CMsgClientToGCIntegrityStatus{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[55] + mi := &file_base_gcmessages_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3703,7 +3595,7 @@ func (x *CMsgClientToGCIntegrityStatus) String() string { func (*CMsgClientToGCIntegrityStatus) ProtoMessage() {} func (x *CMsgClientToGCIntegrityStatus) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[55] + mi := &file_base_gcmessages_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3716,7 +3608,7 @@ func (x *CMsgClientToGCIntegrityStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCIntegrityStatus.ProtoReflect.Descriptor instead. func (*CMsgClientToGCIntegrityStatus) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{55} + return file_base_gcmessages_proto_rawDescGZIP(), []int{53} } func (x *CMsgClientToGCIntegrityStatus) GetReport() string { @@ -3751,7 +3643,7 @@ type CMsgClientToGCAggregateMetrics struct { func (x *CMsgClientToGCAggregateMetrics) Reset() { *x = CMsgClientToGCAggregateMetrics{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[56] + mi := &file_base_gcmessages_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3764,7 +3656,7 @@ func (x *CMsgClientToGCAggregateMetrics) String() string { func (*CMsgClientToGCAggregateMetrics) ProtoMessage() {} func (x *CMsgClientToGCAggregateMetrics) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[56] + mi := &file_base_gcmessages_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3777,7 +3669,7 @@ func (x *CMsgClientToGCAggregateMetrics) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCAggregateMetrics.ProtoReflect.Descriptor instead. func (*CMsgClientToGCAggregateMetrics) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{56} + return file_base_gcmessages_proto_rawDescGZIP(), []int{54} } func (x *CMsgClientToGCAggregateMetrics) GetMetrics() []*CMsgClientToGCAggregateMetrics_SingleMetric { @@ -3798,7 +3690,7 @@ type CMsgGCToClientAggregateMetricsBackoff struct { func (x *CMsgGCToClientAggregateMetricsBackoff) Reset() { *x = CMsgGCToClientAggregateMetricsBackoff{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[57] + mi := &file_base_gcmessages_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3811,7 +3703,7 @@ func (x *CMsgGCToClientAggregateMetricsBackoff) String() string { func (*CMsgGCToClientAggregateMetricsBackoff) ProtoMessage() {} func (x *CMsgGCToClientAggregateMetricsBackoff) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[57] + mi := &file_base_gcmessages_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3824,7 +3716,7 @@ func (x *CMsgGCToClientAggregateMetricsBackoff) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCToClientAggregateMetricsBackoff.ProtoReflect.Descriptor instead. func (*CMsgGCToClientAggregateMetricsBackoff) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{57} + return file_base_gcmessages_proto_rawDescGZIP(), []int{55} } func (x *CMsgGCToClientAggregateMetricsBackoff) GetUploadRateModifier() float32 { @@ -3846,7 +3738,7 @@ type CMsgSetItemPositions_ItemPosition struct { func (x *CMsgSetItemPositions_ItemPosition) Reset() { *x = CMsgSetItemPositions_ItemPosition{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[58] + mi := &file_base_gcmessages_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3859,7 +3751,7 @@ func (x *CMsgSetItemPositions_ItemPosition) String() string { func (*CMsgSetItemPositions_ItemPosition) ProtoMessage() {} func (x *CMsgSetItemPositions_ItemPosition) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[58] + mi := &file_base_gcmessages_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3872,7 +3764,7 @@ func (x *CMsgSetItemPositions_ItemPosition) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgSetItemPositions_ItemPosition.ProtoReflect.Descriptor instead. func (*CMsgSetItemPositions_ItemPosition) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{25, 0} + return file_base_gcmessages_proto_rawDescGZIP(), []int{23, 0} } func (x *CMsgSetItemPositions_ItemPosition) GetItemId() uint64 { @@ -3904,7 +3796,7 @@ type CMsgApplyRemoteConVars_ConVar struct { func (x *CMsgApplyRemoteConVars_ConVar) Reset() { *x = CMsgApplyRemoteConVars_ConVar{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[59] + mi := &file_base_gcmessages_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3917,7 +3809,7 @@ func (x *CMsgApplyRemoteConVars_ConVar) String() string { func (*CMsgApplyRemoteConVars_ConVar) ProtoMessage() {} func (x *CMsgApplyRemoteConVars_ConVar) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[59] + mi := &file_base_gcmessages_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3930,7 +3822,7 @@ func (x *CMsgApplyRemoteConVars_ConVar) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgApplyRemoteConVars_ConVar.ProtoReflect.Descriptor instead. func (*CMsgApplyRemoteConVars_ConVar) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{52, 0} + return file_base_gcmessages_proto_rawDescGZIP(), []int{50, 0} } func (x *CMsgApplyRemoteConVars_ConVar) GetName() string { @@ -3982,7 +3874,7 @@ type CMsgClientToGCIntegrityStatusKeyvalue struct { func (x *CMsgClientToGCIntegrityStatusKeyvalue) Reset() { *x = CMsgClientToGCIntegrityStatusKeyvalue{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[60] + mi := &file_base_gcmessages_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3995,7 +3887,7 @@ func (x *CMsgClientToGCIntegrityStatusKeyvalue) String() string { func (*CMsgClientToGCIntegrityStatusKeyvalue) ProtoMessage() {} func (x *CMsgClientToGCIntegrityStatusKeyvalue) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[60] + mi := &file_base_gcmessages_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4008,7 +3900,7 @@ func (x *CMsgClientToGCIntegrityStatusKeyvalue) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCIntegrityStatusKeyvalue.ProtoReflect.Descriptor instead. func (*CMsgClientToGCIntegrityStatusKeyvalue) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{55, 0} + return file_base_gcmessages_proto_rawDescGZIP(), []int{53, 0} } func (x *CMsgClientToGCIntegrityStatusKeyvalue) GetId() uint32 { @@ -4051,7 +3943,7 @@ type CMsgClientToGCAggregateMetrics_SingleMetric struct { func (x *CMsgClientToGCAggregateMetrics_SingleMetric) Reset() { *x = CMsgClientToGCAggregateMetrics_SingleMetric{} if protoimpl.UnsafeEnabled { - mi := &file_base_gcmessages_proto_msgTypes[61] + mi := &file_base_gcmessages_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4064,7 +3956,7 @@ func (x *CMsgClientToGCAggregateMetrics_SingleMetric) String() string { func (*CMsgClientToGCAggregateMetrics_SingleMetric) ProtoMessage() {} func (x *CMsgClientToGCAggregateMetrics_SingleMetric) ProtoReflect() protoreflect.Message { - mi := &file_base_gcmessages_proto_msgTypes[61] + mi := &file_base_gcmessages_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4077,7 +3969,7 @@ func (x *CMsgClientToGCAggregateMetrics_SingleMetric) ProtoReflect() protoreflec // Deprecated: Use CMsgClientToGCAggregateMetrics_SingleMetric.ProtoReflect.Descriptor instead. func (*CMsgClientToGCAggregateMetrics_SingleMetric) Descriptor() ([]byte, []int) { - return file_base_gcmessages_proto_rawDescGZIP(), []int{56, 0} + return file_base_gcmessages_proto_rawDescGZIP(), []int{54, 0} } func (x *CMsgClientToGCAggregateMetrics_SingleMetric) GetMetricName() string { @@ -4312,391 +4204,379 @@ var file_base_gcmessages_proto_rawDesc = []byte{ 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x2c, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x6f, 0x72, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x72, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x6f, 0x72, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3b, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, - 0x56, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x22, 0x47, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x12, 0x2f, 0x0a, 0x07, 0x63, 0x6f, - 0x6e, 0x76, 0x61, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x73, 0x22, 0xba, 0x01, 0x0a, 0x14, - 0x43, 0x4d, 0x73, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, - 0x64, 0x67, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x18, - 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x61, 0x72, 0x69, - 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x61, 0x72, 0x69, 0x74, 0x79, - 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x22, 0xab, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x4e, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x1a, 0x43, 0x0a, 0x0c, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x43, 0x61, 0x6e, - 0x63, 0x65, 0x6c, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x78, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x78, 0x6e, 0x49, 0x64, 0x22, 0x3b, 0x0a, 0x21, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x34, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0xba, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x74, + 0x65, 0x6d, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x64, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, + 0x09, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x64, + 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, + 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, + 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x61, 0x72, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x72, 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x72, + 0x69, 0x67, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x22, 0xab, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x49, 0x74, + 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4e, 0x0a, 0x0e, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, + 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x69, 0x74, + 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x43, 0x0a, 0x0c, 0x49, + 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, + 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x32, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, + 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x15, 0x0a, + 0x06, 0x74, 0x78, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, + 0x78, 0x6e, 0x49, 0x64, 0x22, 0x3b, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, + 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x43, 0x61, 0x6e, 0x63, 0x65, + 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x22, 0x34, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, + 0x12, 0x15, 0x0a, 0x06, 0x74, 0x78, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x05, 0x74, 0x78, 0x6e, 0x49, 0x64, 0x22, 0x58, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, - 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x78, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x78, 0x6e, 0x49, 0x64, 0x22, 0x58, 0x0a, - 0x23, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, - 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x08, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, - 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x3c, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x4c, - 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x53, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x44, 0x69, 0x72, 0x74, 0x79, 0x53, 0x44, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x73, 0x64, 0x6f, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x73, 0x64, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, - 0x65, 0x79, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x09, 0x6b, 0x65, 0x79, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x22, 0x14, 0x0a, 0x12, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x44, 0x4f, 0x4e, 0x6f, 0x4d, 0x65, 0x6d, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, - 0x22, 0x38, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x53, 0x51, 0x4c, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x43, 0x0a, 0x1a, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, - 0x43, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x25, 0x0a, - 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x22, 0x7b, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x78, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x6f, 0x6f, - 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0a, 0x74, 0x6f, 0x6f, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x24, 0x0a, - 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, - 0x74, 0x49, 0x64, 0x22, 0xd2, 0x02, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x78, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x45, 0x78, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xd5, 0x01, 0x0a, 0x0c, 0x45, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, - 0x73, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, - 0x6d, 0x73, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x26, - 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x5f, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x54, 0x6f, 0x6f, 0x6c, 0x49, 0x73, 0x49, 0x6e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x10, 0x01, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x78, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, - 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x02, 0x12, 0x2c, - 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x5f, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x54, 0x6f, 0x6f, 0x6c, 0x43, 0x61, 0x6e, 0x6e, 0x6f, - 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x2a, 0x0a, 0x26, - 0x6b, 0x5f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x5f, 0x46, 0x61, - 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x47, 0x65, 0x6d, 0x10, 0x04, 0x22, 0x6d, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x6f, 0x6f, - 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0a, 0x74, 0x6f, 0x6f, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, - 0x07, 0x75, 0x6e, 0x75, 0x73, 0x75, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, - 0x75, 0x6e, 0x75, 0x73, 0x75, 0x61, 0x6c, 0x22, 0xcd, 0x02, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x12, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x42, 0x0a, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, - 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x41, 0x64, 0x64, - 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xa4, 0x01, 0x0a, 0x0a, 0x45, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, - 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x53, - 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, - 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, + 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, + 0x73, 0x22, 0x3c, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, + 0x53, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x69, 0x72, + 0x74, 0x79, 0x53, 0x44, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x64, + 0x6f, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x73, 0x64, + 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x65, 0x79, 0x5f, 0x75, 0x69, 0x6e, + 0x74, 0x36, 0x34, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x55, 0x69, + 0x6e, 0x74, 0x36, 0x34, 0x22, 0x14, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x44, 0x4f, 0x4e, + 0x6f, 0x4d, 0x65, 0x6d, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x22, 0x38, 0x0a, 0x1b, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x51, + 0x4c, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, + 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x43, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x43, 0x0a, 0x1a, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x20, + 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x65, 0x62, 0x41, + 0x50, 0x49, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, + 0x22, 0x7b, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, + 0x65, 0x6d, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x74, 0x6f, 0x6f, 0x6c, 0x49, + 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, + 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x22, 0xd2, 0x02, + 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, + 0x49, 0x64, 0x12, 0x46, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, + 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd5, 0x01, 0x0a, 0x0c, 0x45, + 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x17, 0x6b, + 0x5f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x5f, 0x53, 0x75, 0x63, + 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x78, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x54, 0x6f, 0x6f, 0x6c, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x01, - 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x61, 0x6e, 0x6e, 0x6f, - 0x74, 0x42, 0x65, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x64, 0x10, 0x02, 0x12, 0x28, 0x0a, - 0x24, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x46, 0x61, 0x69, - 0x6c, 0x65, 0x64, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x53, - 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x03, 0x22, 0x5c, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x41, - 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x44, 0x61, - 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0b, 0x67, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, - 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x7c, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, - 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x20, 0x0a, 0x0c, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x43, - 0x0a, 0x0e, 0x67, 0x65, 0x6d, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, - 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0c, 0x67, 0x65, 0x6d, 0x73, 0x54, 0x6f, 0x53, 0x6f, 0x63, - 0x6b, 0x65, 0x74, 0x22, 0xfa, 0x03, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x49, - 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x49, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x12, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x6b, - 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x45, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, - 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x41, 0x64, - 0x64, 0x47, 0x65, 0x6d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbf, - 0x02, 0x0a, 0x07, 0x45, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, - 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, - 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x47, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, - 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x02, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x41, 0x64, 0x64, - 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x2b, 0x0a, 0x27, 0x6b, - 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, - 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x46, 0x6f, 0x72, - 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x41, 0x64, - 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x47, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x46, 0x6f, 0x72, 0x48, 0x65, 0x72, - 0x6f, 0x10, 0x05, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x65, - 0x6d, 0x54, 0x79, 0x70, 0x65, 0x46, 0x6f, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x10, 0x06, 0x12, 0x30, - 0x0a, 0x2c, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x5f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, - 0x55, 0x6e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x65, 0x6d, 0x10, 0x07, - 0x22, 0x5f, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, - 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0c, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x21, - 0x0a, 0x0c, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x22, 0xb7, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, - 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, + 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x02, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x78, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, + 0x5f, 0x54, 0x6f, 0x6f, 0x6c, 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x47, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x78, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x65, 0x6d, + 0x10, 0x04, 0x22, 0x6d, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, + 0x6b, 0x65, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x74, 0x6f, 0x6f, 0x6c, 0x49, + 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, + 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x6e, 0x75, 0x73, 0x75, + 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x75, 0x6e, 0x75, 0x73, 0x75, 0x61, + 0x6c, 0x22, 0xcd, 0x02, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, + 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, + 0x65, 0x6d, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0d, 0x52, 0x12, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, + 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x42, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, + 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa4, 0x01, 0x0a, 0x0a, 0x45, + 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x41, + 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, + 0x65, 0x64, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, + 0x6b, 0x65, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x54, 0x6f, 0x6f, 0x6c, 0x49, + 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, + 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, + 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x42, 0x65, 0x53, 0x6f, 0x63, + 0x6b, 0x65, 0x74, 0x65, 0x64, 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x41, 0x64, 0x64, + 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x46, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x10, + 0x03, 0x22, 0x5c, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, + 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0b, + 0x67, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x09, 0x67, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, + 0x7c, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, + 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, + 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x0e, 0x67, 0x65, 0x6d, 0x73, + 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x49, + 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x0c, 0x67, 0x65, 0x6d, 0x73, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x22, 0xfa, 0x03, + 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, + 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, + 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, + 0x30, 0x0a, 0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, + 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x12, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x45, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, + 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x52, 0x08, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbf, 0x02, 0x0a, 0x07, 0x45, 0x41, 0x64, + 0x64, 0x47, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, + 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, + 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, + 0x47, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x01, 0x12, 0x21, + 0x0a, 0x1d, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, + 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, + 0x02, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x41, 0x64, 0x64, + 0x47, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, + 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x47, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x46, 0x6f, 0x72, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, + 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x65, 0x6d, + 0x54, 0x79, 0x70, 0x65, 0x46, 0x6f, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x10, 0x05, 0x12, 0x29, 0x0a, + 0x25, 0x6b, 0x5f, 0x41, 0x64, 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, + 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x46, + 0x6f, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x10, 0x06, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x41, 0x64, + 0x64, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x53, 0x6f, 0x63, 0x6b, + 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x55, 0x6e, 0x72, 0x65, 0x6d, 0x6f, + 0x76, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x65, 0x6d, 0x10, 0x07, 0x22, 0x5f, 0x0a, 0x18, 0x43, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, + 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, + 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6f, 0x63, 0x6b, + 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xb7, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x45, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc4, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, - 0x65, 0x6d, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, - 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, - 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, - 0x65, 0x6d, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, - 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, - 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x02, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x52, - 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, - 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x10, 0x03, - 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x5f, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x61, 0x6e, 0x6e, - 0x6f, 0x74, 0x42, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x10, 0x04, 0x22, 0x7c, 0x0a, 0x1d, 0x43, + 0x12, 0x4c, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, + 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x65, + 0x74, 0x47, 0x65, 0x6d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc4, + 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x12, 0x18, 0x0a, 0x14, + 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x65, + 0x74, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x46, 0x61, 0x69, 0x6c, + 0x65, 0x64, 0x54, 0x6f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x10, 0x01, 0x12, 0x23, + 0x0a, 0x1f, 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, + 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x10, 0x02, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, + 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, + 0x52, 0x65, 0x73, 0x65, 0x74, 0x47, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, + 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x42, 0x65, 0x52, 0x65, + 0x73, 0x65, 0x74, 0x10, 0x04, 0x22, 0x7c, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, + 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x6c, + 0x6c, 0x49, 0x64, 0x22, 0x71, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x6c, 0x6c, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x66, + 0x69, 0x6c, 0x65, 0x5f, 0x63, 0x72, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, + 0x69, 0x6c, 0x65, 0x43, 0x72, 0x63, 0x22, 0x4f, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x61, 0x6e, 0x75, 0x61, + 0x6c, 0x4f, 0x70, 0x12, 0x13, 0x0a, 0x05, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x04, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x5b, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x61, 0x6e, 0x75, + 0x61, 0x6c, 0x4f, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, + 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x5f, 0x67, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x47, 0x63, 0x22, 0x26, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22, 0x61, 0x0a, 0x1e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x73, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3f, + 0x0a, 0x10, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x0f, + 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, + 0xfe, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x12, 0x3e, 0x0a, 0x08, 0x63, 0x6f, + 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x56, 0x61, + 0x72, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x1a, 0xa3, 0x01, 0x0a, 0x06, 0x43, + 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, + 0x1f, 0x0a, 0x0b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, + 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, + 0x78, 0x12, 0x2d, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x43, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x22, 0x52, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, + 0x56, 0x61, 0x72, 0x73, 0x12, 0x2e, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x52, + 0x03, 0x6d, 0x73, 0x67, 0x22, 0x52, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, + 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x12, 0x2e, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, + 0x61, 0x72, 0x73, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x9f, 0x02, 0x0a, 0x1d, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, 0x67, + 0x72, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6c, 0x6c, + 0x6f, 0x77, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x75, + 0x72, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x0b, 0x64, 0x69, 0x61, + 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x2e, 0x6b, 0x65, 0x79, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x64, 0x69, + 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x1a, 0x6f, 0x0a, 0x08, 0x6b, 0x65, 0x79, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc1, 0x01, 0x0a, 0x1e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x67, 0x67, + 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x4b, 0x0a, + 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x1a, 0x52, 0x0a, 0x0c, 0x53, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x59, + 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x12, 0x30, 0x0a, 0x14, 0x75, 0x70, 0x6c, 0x6f, 0x61, + 0x64, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x61, 0x74, + 0x65, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x2a, 0x98, 0x06, 0x0a, 0x0a, 0x45, 0x47, + 0x43, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x50, 0x61, 0x72, 0x74, + 0x79, 0x10, 0x95, 0x23, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x10, 0x96, 0x23, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x50, 0x61, 0x72, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x97, 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, + 0x98, 0x23, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x65, + 0x61, 0x76, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0x99, 0x23, 0x12, 0x1c, 0x0a, 0x17, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x76, 0x61, + 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x9a, 0x23, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x9b, 0x23, 0x12, 0x1b, 0x0a, + 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x9c, 0x23, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x41, 0x4e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, + 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x9f, 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x10, 0xa0, 0x23, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x23, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, - 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, - 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x6c, 0x49, 0x64, 0x22, 0x71, 0x0a, 0x1e, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x46, - 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x70, - 0x6f, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, - 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x63, 0x72, 0x63, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x72, 0x63, 0x22, 0x4f, 0x0a, 0x19, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, - 0x6d, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x4f, 0x70, 0x12, 0x13, 0x0a, 0x05, 0x6f, 0x70, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x1d, - 0x0a, 0x0a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x5b, 0x0a, - 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x65, 0x72, 0x66, 0x6f, - 0x72, 0x6d, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x4f, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, - 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x47, 0x63, 0x22, 0x26, 0x0a, 0x24, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, - 0x67, 0x73, 0x22, 0x61, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x69, + 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa2, 0x23, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xa3, 0x23, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x61, 0x6e, + 0x75, 0x61, 0x6c, 0x4f, 0x70, 0x10, 0xa4, 0x23, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4d, + 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x4f, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, + 0x10, 0xa5, 0x23, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, + 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x10, 0xa6, 0x23, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x73, 0x67, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x10, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x5f, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, - 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x0f, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xfe, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x70, - 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, - 0x12, 0x3e, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x70, - 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, - 0x2e, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, - 0x1a, 0xa3, 0x01, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x12, 0x2d, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x52, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x12, 0x2e, 0x0a, 0x03, 0x6d, 0x73, - 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x56, 0x61, 0x72, 0x73, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x52, 0x0a, 0x20, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, - 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x12, 0x2e, - 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x9f, - 0x02, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x75, - 0x72, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0d, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x12, - 0x4e, 0x0a, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x6b, 0x65, 0x79, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x1a, - 0x6f, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, - 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, - 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x22, 0xc1, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x4c, 0x69, 0x73, 0x74, 0x10, 0xa7, 0x23, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x79, + 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x10, 0xa8, 0x23, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x10, 0xa9, 0x23, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x74, + 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xaa, 0x23, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, - 0x69, 0x63, 0x73, 0x12, 0x4b, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, - 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, - 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x1a, 0x52, 0x0a, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x59, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x12, 0x30, 0x0a, - 0x14, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x6f, 0x64, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x75, 0x70, 0x6c, - 0x6f, 0x61, 0x64, 0x52, 0x61, 0x74, 0x65, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x2a, - 0xd3, 0x06, 0x0a, 0x0a, 0x45, 0x47, 0x43, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x10, 0xa2, 0x1f, 0x12, 0x1a, 0x0a, - 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xa3, 0x1f, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x50, 0x61, 0x72, - 0x74, 0x79, 0x10, 0x95, 0x23, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x10, 0x96, 0x23, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x50, 0x61, 0x72, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x97, 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x74, 0x79, - 0x10, 0x98, 0x23, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, - 0x65, 0x61, 0x76, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0x99, 0x23, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x76, - 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x9a, 0x23, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x9b, 0x23, 0x12, 0x1b, - 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x9c, 0x23, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x41, 0x4e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x9f, 0x23, 0x12, 0x1a, 0x0a, 0x15, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xa0, 0x23, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x23, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, - 0x6c, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa2, 0x23, - 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa3, 0x23, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x61, - 0x6e, 0x75, 0x61, 0x6c, 0x4f, 0x70, 0x10, 0xa4, 0x23, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, - 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x4f, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x10, 0xa5, 0x23, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x10, 0xa6, - 0x23, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x73, - 0x67, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xa7, 0x23, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x6c, - 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x10, 0xa8, - 0x23, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x10, 0xa9, 0x23, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, - 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xaa, 0x23, - 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, - 0x72, 0x69, 0x63, 0x73, 0x10, 0xab, 0x23, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x67, 0x67, 0x72, 0x65, - 0x67, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x61, 0x63, 0x6b, 0x6f, - 0x66, 0x66, 0x10, 0xac, 0x23, 0x2a, 0xe8, 0x03, 0x0a, 0x18, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, - 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, - 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, 0x65, 0x61, 0x64, 0x79, 0x10, 0x01, - 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, - 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x42, - 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, - 0x63, 0x10, 0x65, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x69, 0x63, 0x73, 0x10, 0xab, 0x23, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, + 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, + 0x66, 0x10, 0xac, 0x23, 0x2a, 0xe8, 0x03, 0x0a, 0x18, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x66, 0x12, 0x37, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x54, 0x6f, 0x6f, 0x4f, 0x6c, 0x64, 0x10, 0x67, - 0x12, 0x37, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, - 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x54, 0x6f, 0x6f, 0x4e, 0x65, 0x77, 0x10, 0x68, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, - 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x43, 0x52, 0x43, 0x4d, 0x69, 0x73, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x10, 0x69, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x10, - 0x6a, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, + 0x73, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x65, 0x64, 0x10, 0x6b, - 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, - 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, - 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, + 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, 0x65, 0x61, 0x64, 0x79, 0x10, 0x01, 0x12, + 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x42, 0x75, + 0x73, 0x79, 0x10, 0x02, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, + 0x10, 0x65, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, + 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x10, 0x66, 0x12, 0x37, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x54, 0x6f, 0x6f, 0x4f, 0x6c, 0x64, 0x10, 0x67, 0x12, + 0x37, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x54, 0x6f, 0x6f, 0x4e, 0x65, 0x77, 0x10, 0x68, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x43, 0x52, 0x43, 0x4d, 0x69, 0x73, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x10, 0x69, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x10, 0x6a, + 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, + 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x65, 0x64, 0x10, 0x6b, 0x42, + 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, + 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, + 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -4712,7 +4592,7 @@ func file_base_gcmessages_proto_rawDescGZIP() []byte { } var file_base_gcmessages_proto_enumTypes = make([]protoimpl.EnumInfo, 6) -var file_base_gcmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 62) +var file_base_gcmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 60) var file_base_gcmessages_proto_goTypes = []interface{}{ (EGCBaseMsg)(0), // 0: dota.EGCBaseMsg (ECustomGameInstallStatus)(0), // 1: dota.ECustomGameInstallStatus @@ -4742,48 +4622,46 @@ var file_base_gcmessages_proto_goTypes = []interface{}{ (*CSOEconItemEquipped)(nil), // 25: dota.CSOEconItemEquipped (*CSOEconItem)(nil), // 26: dota.CSOEconItem (*CMsgSortItems)(nil), // 27: dota.CMsgSortItems - (*CMsgConVarValue)(nil), // 28: dota.CMsgConVarValue - (*CMsgReplicateConVars)(nil), // 29: dota.CMsgReplicateConVars - (*CMsgItemAcknowledged)(nil), // 30: dota.CMsgItemAcknowledged - (*CMsgSetItemPositions)(nil), // 31: dota.CMsgSetItemPositions - (*CMsgGCStorePurchaseCancel)(nil), // 32: dota.CMsgGCStorePurchaseCancel - (*CMsgGCStorePurchaseCancelResponse)(nil), // 33: dota.CMsgGCStorePurchaseCancelResponse - (*CMsgGCStorePurchaseFinalize)(nil), // 34: dota.CMsgGCStorePurchaseFinalize - (*CMsgGCStorePurchaseFinalizeResponse)(nil), // 35: dota.CMsgGCStorePurchaseFinalizeResponse - (*CMsgGCToGCBannedWordListUpdated)(nil), // 36: dota.CMsgGCToGCBannedWordListUpdated - (*CMsgGCToGCDirtySDOCache)(nil), // 37: dota.CMsgGCToGCDirtySDOCache - (*CMsgSDONoMemcached)(nil), // 38: dota.CMsgSDONoMemcached - (*CMsgGCToGCUpdateSQLKeyValue)(nil), // 39: dota.CMsgGCToGCUpdateSQLKeyValue - (*CMsgGCServerVersionUpdated)(nil), // 40: dota.CMsgGCServerVersionUpdated - (*CMsgGCClientVersionUpdated)(nil), // 41: dota.CMsgGCClientVersionUpdated - (*CMsgGCToGCWebAPIAccountChanged)(nil), // 42: dota.CMsgGCToGCWebAPIAccountChanged - (*CMsgExtractGems)(nil), // 43: dota.CMsgExtractGems - (*CMsgExtractGemsResponse)(nil), // 44: dota.CMsgExtractGemsResponse - (*CMsgAddSocket)(nil), // 45: dota.CMsgAddSocket - (*CMsgAddSocketResponse)(nil), // 46: dota.CMsgAddSocketResponse - (*CMsgAddItemToSocketData)(nil), // 47: dota.CMsgAddItemToSocketData - (*CMsgAddItemToSocket)(nil), // 48: dota.CMsgAddItemToSocket - (*CMsgAddItemToSocketResponse)(nil), // 49: dota.CMsgAddItemToSocketResponse - (*CMsgResetStrangeGemCount)(nil), // 50: dota.CMsgResetStrangeGemCount - (*CMsgResetStrangeGemCountResponse)(nil), // 51: dota.CMsgResetStrangeGemCountResponse - (*CMsgGCToClientPollFileRequest)(nil), // 52: dota.CMsgGCToClientPollFileRequest - (*CMsgGCToClientPollFileResponse)(nil), // 53: dota.CMsgGCToClientPollFileResponse - (*CMsgGCToGCPerformManualOp)(nil), // 54: dota.CMsgGCToGCPerformManualOp - (*CMsgGCToGCPerformManualOpCompleted)(nil), // 55: dota.CMsgGCToGCPerformManualOpCompleted - (*CMsgGCToGCReloadServerRegionSettings)(nil), // 56: dota.CMsgGCToGCReloadServerRegionSettings - (*CMsgGCAdditionalWelcomeMsgList)(nil), // 57: dota.CMsgGCAdditionalWelcomeMsgList - (*CMsgApplyRemoteConVars)(nil), // 58: dota.CMsgApplyRemoteConVars - (*CMsgGCToClientApplyRemoteConVars)(nil), // 59: dota.CMsgGCToClientApplyRemoteConVars - (*CMsgGCToServerApplyRemoteConVars)(nil), // 60: dota.CMsgGCToServerApplyRemoteConVars - (*CMsgClientToGCIntegrityStatus)(nil), // 61: dota.CMsgClientToGCIntegrityStatus - (*CMsgClientToGCAggregateMetrics)(nil), // 62: dota.CMsgClientToGCAggregateMetrics - (*CMsgGCToClientAggregateMetricsBackoff)(nil), // 63: dota.CMsgGCToClientAggregateMetricsBackoff - (*CMsgSetItemPositions_ItemPosition)(nil), // 64: dota.CMsgSetItemPositions.ItemPosition - (*CMsgApplyRemoteConVars_ConVar)(nil), // 65: dota.CMsgApplyRemoteConVars.ConVar - (*CMsgClientToGCIntegrityStatusKeyvalue)(nil), // 66: dota.CMsgClientToGCIntegrityStatus.keyvalue - (*CMsgClientToGCAggregateMetrics_SingleMetric)(nil), // 67: dota.CMsgClientToGCAggregateMetrics.SingleMetric - (*CExtraMsgBlock)(nil), // 68: dota.CExtraMsgBlock - (EGCPlatform)(0), // 69: dota.EGCPlatform + (*CMsgItemAcknowledged)(nil), // 28: dota.CMsgItemAcknowledged + (*CMsgSetItemPositions)(nil), // 29: dota.CMsgSetItemPositions + (*CMsgGCStorePurchaseCancel)(nil), // 30: dota.CMsgGCStorePurchaseCancel + (*CMsgGCStorePurchaseCancelResponse)(nil), // 31: dota.CMsgGCStorePurchaseCancelResponse + (*CMsgGCStorePurchaseFinalize)(nil), // 32: dota.CMsgGCStorePurchaseFinalize + (*CMsgGCStorePurchaseFinalizeResponse)(nil), // 33: dota.CMsgGCStorePurchaseFinalizeResponse + (*CMsgGCToGCBannedWordListUpdated)(nil), // 34: dota.CMsgGCToGCBannedWordListUpdated + (*CMsgGCToGCDirtySDOCache)(nil), // 35: dota.CMsgGCToGCDirtySDOCache + (*CMsgSDONoMemcached)(nil), // 36: dota.CMsgSDONoMemcached + (*CMsgGCToGCUpdateSQLKeyValue)(nil), // 37: dota.CMsgGCToGCUpdateSQLKeyValue + (*CMsgGCServerVersionUpdated)(nil), // 38: dota.CMsgGCServerVersionUpdated + (*CMsgGCClientVersionUpdated)(nil), // 39: dota.CMsgGCClientVersionUpdated + (*CMsgGCToGCWebAPIAccountChanged)(nil), // 40: dota.CMsgGCToGCWebAPIAccountChanged + (*CMsgExtractGems)(nil), // 41: dota.CMsgExtractGems + (*CMsgExtractGemsResponse)(nil), // 42: dota.CMsgExtractGemsResponse + (*CMsgAddSocket)(nil), // 43: dota.CMsgAddSocket + (*CMsgAddSocketResponse)(nil), // 44: dota.CMsgAddSocketResponse + (*CMsgAddItemToSocketData)(nil), // 45: dota.CMsgAddItemToSocketData + (*CMsgAddItemToSocket)(nil), // 46: dota.CMsgAddItemToSocket + (*CMsgAddItemToSocketResponse)(nil), // 47: dota.CMsgAddItemToSocketResponse + (*CMsgResetStrangeGemCount)(nil), // 48: dota.CMsgResetStrangeGemCount + (*CMsgResetStrangeGemCountResponse)(nil), // 49: dota.CMsgResetStrangeGemCountResponse + (*CMsgGCToClientPollFileRequest)(nil), // 50: dota.CMsgGCToClientPollFileRequest + (*CMsgGCToClientPollFileResponse)(nil), // 51: dota.CMsgGCToClientPollFileResponse + (*CMsgGCToGCPerformManualOp)(nil), // 52: dota.CMsgGCToGCPerformManualOp + (*CMsgGCToGCPerformManualOpCompleted)(nil), // 53: dota.CMsgGCToGCPerformManualOpCompleted + (*CMsgGCToGCReloadServerRegionSettings)(nil), // 54: dota.CMsgGCToGCReloadServerRegionSettings + (*CMsgGCAdditionalWelcomeMsgList)(nil), // 55: dota.CMsgGCAdditionalWelcomeMsgList + (*CMsgApplyRemoteConVars)(nil), // 56: dota.CMsgApplyRemoteConVars + (*CMsgGCToClientApplyRemoteConVars)(nil), // 57: dota.CMsgGCToClientApplyRemoteConVars + (*CMsgGCToServerApplyRemoteConVars)(nil), // 58: dota.CMsgGCToServerApplyRemoteConVars + (*CMsgClientToGCIntegrityStatus)(nil), // 59: dota.CMsgClientToGCIntegrityStatus + (*CMsgClientToGCAggregateMetrics)(nil), // 60: dota.CMsgClientToGCAggregateMetrics + (*CMsgGCToClientAggregateMetricsBackoff)(nil), // 61: dota.CMsgGCToClientAggregateMetricsBackoff + (*CMsgSetItemPositions_ItemPosition)(nil), // 62: dota.CMsgSetItemPositions.ItemPosition + (*CMsgApplyRemoteConVars_ConVar)(nil), // 63: dota.CMsgApplyRemoteConVars.ConVar + (*CMsgClientToGCIntegrityStatusKeyvalue)(nil), // 64: dota.CMsgClientToGCIntegrityStatus.keyvalue + (*CMsgClientToGCAggregateMetrics_SingleMetric)(nil), // 65: dota.CMsgClientToGCAggregateMetrics.SingleMetric + (*CExtraMsgBlock)(nil), // 66: dota.CExtraMsgBlock + (EGCPlatform)(0), // 67: dota.EGCPlatform } var file_base_gcmessages_proto_depIdxs = []int32{ 6, // 0: dota.CMsgGCStorePurchaseInit.line_items:type_name -> dota.CGCStorePurchaseInit_LineItem @@ -4794,25 +4672,24 @@ var file_base_gcmessages_proto_depIdxs = []int32{ 24, // 5: dota.CSOEconItem.attribute:type_name -> dota.CSOEconItemAttribute 26, // 6: dota.CSOEconItem.interior_item:type_name -> dota.CSOEconItem 25, // 7: dota.CSOEconItem.equipped_state:type_name -> dota.CSOEconItemEquipped - 28, // 8: dota.CMsgReplicateConVars.convars:type_name -> dota.CMsgConVarValue - 64, // 9: dota.CMsgSetItemPositions.item_positions:type_name -> dota.CMsgSetItemPositions.ItemPosition - 2, // 10: dota.CMsgExtractGemsResponse.response:type_name -> dota.CMsgExtractGemsResponse.EExtractGems - 3, // 11: dota.CMsgAddSocketResponse.response:type_name -> dota.CMsgAddSocketResponse.EAddSocket - 47, // 12: dota.CMsgAddItemToSocket.gems_to_socket:type_name -> dota.CMsgAddItemToSocketData - 4, // 13: dota.CMsgAddItemToSocketResponse.response:type_name -> dota.CMsgAddItemToSocketResponse.EAddGem - 5, // 14: dota.CMsgResetStrangeGemCountResponse.response:type_name -> dota.CMsgResetStrangeGemCountResponse.EResetGem - 68, // 15: dota.CMsgGCAdditionalWelcomeMsgList.welcome_messages:type_name -> dota.CExtraMsgBlock - 65, // 16: dota.CMsgApplyRemoteConVars.con_vars:type_name -> dota.CMsgApplyRemoteConVars.ConVar - 58, // 17: dota.CMsgGCToClientApplyRemoteConVars.msg:type_name -> dota.CMsgApplyRemoteConVars - 58, // 18: dota.CMsgGCToServerApplyRemoteConVars.msg:type_name -> dota.CMsgApplyRemoteConVars - 66, // 19: dota.CMsgClientToGCIntegrityStatus.diagnostics:type_name -> dota.CMsgClientToGCIntegrityStatus.keyvalue - 67, // 20: dota.CMsgClientToGCAggregateMetrics.metrics:type_name -> dota.CMsgClientToGCAggregateMetrics.SingleMetric - 69, // 21: dota.CMsgApplyRemoteConVars.ConVar.platform:type_name -> dota.EGCPlatform - 22, // [22:22] is the sub-list for method output_type - 22, // [22:22] is the sub-list for method input_type - 22, // [22:22] is the sub-list for extension type_name - 22, // [22:22] is the sub-list for extension extendee - 0, // [0:22] is the sub-list for field type_name + 62, // 8: dota.CMsgSetItemPositions.item_positions:type_name -> dota.CMsgSetItemPositions.ItemPosition + 2, // 9: dota.CMsgExtractGemsResponse.response:type_name -> dota.CMsgExtractGemsResponse.EExtractGems + 3, // 10: dota.CMsgAddSocketResponse.response:type_name -> dota.CMsgAddSocketResponse.EAddSocket + 45, // 11: dota.CMsgAddItemToSocket.gems_to_socket:type_name -> dota.CMsgAddItemToSocketData + 4, // 12: dota.CMsgAddItemToSocketResponse.response:type_name -> dota.CMsgAddItemToSocketResponse.EAddGem + 5, // 13: dota.CMsgResetStrangeGemCountResponse.response:type_name -> dota.CMsgResetStrangeGemCountResponse.EResetGem + 66, // 14: dota.CMsgGCAdditionalWelcomeMsgList.welcome_messages:type_name -> dota.CExtraMsgBlock + 63, // 15: dota.CMsgApplyRemoteConVars.con_vars:type_name -> dota.CMsgApplyRemoteConVars.ConVar + 56, // 16: dota.CMsgGCToClientApplyRemoteConVars.msg:type_name -> dota.CMsgApplyRemoteConVars + 56, // 17: dota.CMsgGCToServerApplyRemoteConVars.msg:type_name -> dota.CMsgApplyRemoteConVars + 64, // 18: dota.CMsgClientToGCIntegrityStatus.diagnostics:type_name -> dota.CMsgClientToGCIntegrityStatus.keyvalue + 65, // 19: dota.CMsgClientToGCAggregateMetrics.metrics:type_name -> dota.CMsgClientToGCAggregateMetrics.SingleMetric + 67, // 20: dota.CMsgApplyRemoteConVars.ConVar.platform:type_name -> dota.EGCPlatform + 21, // [21:21] is the sub-list for method output_type + 21, // [21:21] is the sub-list for method input_type + 21, // [21:21] is the sub-list for extension type_name + 21, // [21:21] is the sub-list for extension extendee + 0, // [0:21] is the sub-list for field type_name } func init() { file_base_gcmessages_proto_init() } @@ -5088,30 +4965,6 @@ func file_base_gcmessages_proto_init() { } } file_base_gcmessages_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgConVarValue); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_base_gcmessages_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgReplicateConVars); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_base_gcmessages_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgItemAcknowledged); i { case 0: return &v.state @@ -5123,7 +4976,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSetItemPositions); i { case 0: return &v.state @@ -5135,7 +4988,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCStorePurchaseCancel); i { case 0: return &v.state @@ -5147,7 +5000,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCStorePurchaseCancelResponse); i { case 0: return &v.state @@ -5159,7 +5012,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCStorePurchaseFinalize); i { case 0: return &v.state @@ -5171,7 +5024,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCStorePurchaseFinalizeResponse); i { case 0: return &v.state @@ -5183,7 +5036,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCBannedWordListUpdated); i { case 0: return &v.state @@ -5195,7 +5048,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCDirtySDOCache); i { case 0: return &v.state @@ -5207,7 +5060,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSDONoMemcached); i { case 0: return &v.state @@ -5219,7 +5072,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCUpdateSQLKeyValue); i { case 0: return &v.state @@ -5231,7 +5084,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCServerVersionUpdated); i { case 0: return &v.state @@ -5243,7 +5096,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCClientVersionUpdated); i { case 0: return &v.state @@ -5255,7 +5108,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCWebAPIAccountChanged); i { case 0: return &v.state @@ -5267,7 +5120,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgExtractGems); i { case 0: return &v.state @@ -5279,7 +5132,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgExtractGemsResponse); i { case 0: return &v.state @@ -5291,7 +5144,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgAddSocket); i { case 0: return &v.state @@ -5303,7 +5156,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgAddSocketResponse); i { case 0: return &v.state @@ -5315,7 +5168,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgAddItemToSocketData); i { case 0: return &v.state @@ -5327,7 +5180,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgAddItemToSocket); i { case 0: return &v.state @@ -5339,7 +5192,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgAddItemToSocketResponse); i { case 0: return &v.state @@ -5351,7 +5204,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgResetStrangeGemCount); i { case 0: return &v.state @@ -5363,7 +5216,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgResetStrangeGemCountResponse); i { case 0: return &v.state @@ -5375,7 +5228,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientPollFileRequest); i { case 0: return &v.state @@ -5387,7 +5240,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientPollFileResponse); i { case 0: return &v.state @@ -5399,7 +5252,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCPerformManualOp); i { case 0: return &v.state @@ -5411,7 +5264,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCPerformManualOpCompleted); i { case 0: return &v.state @@ -5423,7 +5276,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCReloadServerRegionSettings); i { case 0: return &v.state @@ -5435,7 +5288,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCAdditionalWelcomeMsgList); i { case 0: return &v.state @@ -5447,7 +5300,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgApplyRemoteConVars); i { case 0: return &v.state @@ -5459,7 +5312,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientApplyRemoteConVars); i { case 0: return &v.state @@ -5471,7 +5324,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToServerApplyRemoteConVars); i { case 0: return &v.state @@ -5483,7 +5336,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCIntegrityStatus); i { case 0: return &v.state @@ -5495,7 +5348,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCAggregateMetrics); i { case 0: return &v.state @@ -5507,7 +5360,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientAggregateMetricsBackoff); i { case 0: return &v.state @@ -5519,7 +5372,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSetItemPositions_ItemPosition); i { case 0: return &v.state @@ -5531,7 +5384,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgApplyRemoteConVars_ConVar); i { case 0: return &v.state @@ -5543,7 +5396,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCIntegrityStatusKeyvalue); i { case 0: return &v.state @@ -5555,7 +5408,7 @@ func file_base_gcmessages_proto_init() { return nil } } - file_base_gcmessages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + file_base_gcmessages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCAggregateMetrics_SingleMetric); i { case 0: return &v.state @@ -5574,7 +5427,7 @@ func file_base_gcmessages_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_base_gcmessages_proto_rawDesc, NumEnums: 6, - NumMessages: 62, + NumMessages: 60, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/base_gcmessages.proto b/dota/base_gcmessages.proto index 9d316603..750e7df4 100644 --- a/dota/base_gcmessages.proto +++ b/dota/base_gcmessages.proto @@ -7,8 +7,6 @@ import "steammessages.proto"; import "gcsdk_gcmessages.proto"; enum EGCBaseMsg { - k_EMsgGCReplicateConVars = 4002; - k_EMsgGCConVarUpdated = 4003; k_EMsgGCInviteToParty = 4501; k_EMsgGCInvitationCreated = 4502; k_EMsgGCPartyInviteResponse = 4503; @@ -187,15 +185,6 @@ message CMsgSortItems { optional uint32 sort_type = 1; } -message CMsgConVarValue { - optional string name = 1; - optional string value = 2; -} - -message CMsgReplicateConVars { - repeated CMsgConVarValue convars = 1; -} - message CMsgItemAcknowledged { optional uint32 account_id = 1; optional uint32 inventory = 2; diff --git a/dota/c_peer2peer_netmessages.pb.go b/dota/c_peer2peer_netmessages.pb.go index 267ec731..92f65837 100644 --- a/dota/c_peer2peer_netmessages.pb.go +++ b/dota/c_peer2peer_netmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: c_peer2peer_netmessages.proto diff --git a/dota/clientmessages.pb.go b/dota/clientmessages.pb.go index 587a14e2..918023b4 100644 --- a/dota/clientmessages.pb.go +++ b/dota/clientmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: clientmessages.proto diff --git a/dota/connectionless_netmessages.pb.go b/dota/connectionless_netmessages.pb.go index e5733b75..e6286894 100644 --- a/dota/connectionless_netmessages.pb.go +++ b/dota/connectionless_netmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: connectionless_netmessages.proto @@ -34,7 +34,6 @@ type C2S_CONNECT_Message struct { Splitplayers []*CCLCMsg_SplitPlayerConnect `protobuf:"bytes,7,rep,name=splitplayers" json:"splitplayers,omitempty"` AuthSteam []byte `protobuf:"bytes,8,opt,name=auth_steam,json=authSteam" json:"auth_steam,omitempty"` ChallengeContext *string `protobuf:"bytes,9,opt,name=challenge_context,json=challengeContext" json:"challenge_context,omitempty"` - UseSnp *int32 `protobuf:"zigzag32,10,opt,name=use_snp,json=useSnp" json:"use_snp,omitempty"` } func (x *C2S_CONNECT_Message) Reset() { @@ -132,20 +131,12 @@ func (x *C2S_CONNECT_Message) GetChallengeContext() string { return "" } -func (x *C2S_CONNECT_Message) GetUseSnp() int32 { - if x != nil && x.UseSnp != nil { - return *x.UseSnp - } - return 0 -} - type C2S_CONNECTION_Message struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields AddonName *string `protobuf:"bytes,1,opt,name=addon_name,json=addonName" json:"addon_name,omitempty"` - UseSnp *bool `protobuf:"varint,2,opt,name=use_snp,json=useSnp" json:"use_snp,omitempty"` } func (x *C2S_CONNECTION_Message) Reset() { @@ -187,20 +178,13 @@ func (x *C2S_CONNECTION_Message) GetAddonName() string { return "" } -func (x *C2S_CONNECTION_Message) GetUseSnp() bool { - if x != nil && x.UseSnp != nil { - return *x.UseSnp - } - return false -} - var File_connectionless_netmessages_proto protoreflect.FileDescriptor var file_connectionless_netmessages_proto_rawDesc = []byte{ 0x0a, 0x20, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0x11, 0x6e, 0x65, 0x74, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb4, 0x03, 0x0a, 0x13, + 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9b, 0x03, 0x0a, 0x13, 0x43, 0x32, 0x53, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x56, @@ -226,16 +210,13 @@ var file_connectionless_netmessages_proto_rawDesc = []byte{ 0x0c, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, - 0x5f, 0x73, 0x6e, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x11, 0x52, 0x06, 0x75, 0x73, 0x65, 0x53, - 0x6e, 0x70, 0x22, 0x50, 0x0a, 0x16, 0x43, 0x32, 0x53, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x75, - 0x73, 0x65, 0x5f, 0x73, 0x6e, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x73, - 0x65, 0x53, 0x6e, 0x70, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, - 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x37, 0x0a, 0x16, 0x43, 0x32, 0x53, + 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x4e, 0x61, + 0x6d, 0x65, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, + 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/connectionless_netmessages.proto b/dota/connectionless_netmessages.proto index bf39b745..50974aa9 100644 --- a/dota/connectionless_netmessages.proto +++ b/dota/connectionless_netmessages.proto @@ -15,10 +15,8 @@ message C2S_CONNECT_Message { repeated CCLCMsg_SplitPlayerConnect splitplayers = 7; optional bytes auth_steam = 8; optional string challenge_context = 9; - optional sint32 use_snp = 10; } message C2S_CONNECTION_Message { optional string addon_name = 1; - optional bool use_snp = 2; } diff --git a/dota/demo.pb.go b/dota/demo.pb.go index d90fc35a..f12eabf8 100644 --- a/dota/demo.pb.go +++ b/dota/demo.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: demo.proto @@ -40,7 +40,8 @@ const ( EDemoCommands_DEM_FullPacket EDemoCommands = 13 EDemoCommands_DEM_SaveGame EDemoCommands = 14 EDemoCommands_DEM_SpawnGroups EDemoCommands = 15 - EDemoCommands_DEM_Max EDemoCommands = 16 + EDemoCommands_DEM_AnimationData EDemoCommands = 16 + EDemoCommands_DEM_Max EDemoCommands = 17 EDemoCommands_DEM_IsCompressed EDemoCommands = 64 ) @@ -64,7 +65,8 @@ var ( 13: "DEM_FullPacket", 14: "DEM_SaveGame", 15: "DEM_SpawnGroups", - 16: "DEM_Max", + 16: "DEM_AnimationData", + 17: "DEM_Max", 64: "DEM_IsCompressed", } EDemoCommands_value = map[string]int32{ @@ -85,7 +87,8 @@ var ( "DEM_FullPacket": 13, "DEM_SaveGame": 14, "DEM_SpawnGroups": 15, - "DEM_Max": 16, + "DEM_AnimationData": 16, + "DEM_Max": 17, "DEM_IsCompressed": 64, } ) @@ -284,6 +287,7 @@ type CGameInfo struct { unknownFields protoimpl.UnknownFields Dota *CGameInfo_CDotaGameInfo `protobuf:"bytes,4,opt,name=dota" json:"dota,omitempty"` + Cs *CGameInfo_CCSGameInfo `protobuf:"bytes,5,opt,name=cs" json:"cs,omitempty"` } func (x *CGameInfo) Reset() { @@ -325,6 +329,13 @@ func (x *CGameInfo) GetDota() *CGameInfo_CDotaGameInfo { return nil } +func (x *CGameInfo) GetCs() *CGameInfo_CCSGameInfo { + if x != nil { + return x.Cs + } + return nil +} + type CDemoFileInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -850,6 +861,85 @@ func (x *CDemoCustomDataCallbacks) GetSaveId() []string { return nil } +type CDemoAnimationData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EntityId *int32 `protobuf:"zigzag32,1,opt,name=entity_id,json=entityId" json:"entity_id,omitempty"` + StartTick *int32 `protobuf:"varint,2,opt,name=start_tick,json=startTick" json:"start_tick,omitempty"` + EndTick *int32 `protobuf:"varint,3,opt,name=end_tick,json=endTick" json:"end_tick,omitempty"` + Data []byte `protobuf:"bytes,4,opt,name=data" json:"data,omitempty"` + DataChecksum *int64 `protobuf:"varint,5,opt,name=data_checksum,json=dataChecksum" json:"data_checksum,omitempty"` +} + +func (x *CDemoAnimationData) Reset() { + *x = CDemoAnimationData{} + if protoimpl.UnsafeEnabled { + mi := &file_demo_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CDemoAnimationData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CDemoAnimationData) ProtoMessage() {} + +func (x *CDemoAnimationData) ProtoReflect() protoreflect.Message { + mi := &file_demo_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CDemoAnimationData.ProtoReflect.Descriptor instead. +func (*CDemoAnimationData) Descriptor() ([]byte, []int) { + return file_demo_proto_rawDescGZIP(), []int{12} +} + +func (x *CDemoAnimationData) GetEntityId() int32 { + if x != nil && x.EntityId != nil { + return *x.EntityId + } + return 0 +} + +func (x *CDemoAnimationData) GetStartTick() int32 { + if x != nil && x.StartTick != nil { + return *x.StartTick + } + return 0 +} + +func (x *CDemoAnimationData) GetEndTick() int32 { + if x != nil && x.EndTick != nil { + return *x.EndTick + } + return 0 +} + +func (x *CDemoAnimationData) GetData() []byte { + if x != nil { + return x.Data + } + return nil +} + +func (x *CDemoAnimationData) GetDataChecksum() int64 { + if x != nil && x.DataChecksum != nil { + return *x.DataChecksum + } + return 0 +} + type CDemoStringTables struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -861,7 +951,7 @@ type CDemoStringTables struct { func (x *CDemoStringTables) Reset() { *x = CDemoStringTables{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[12] + mi := &file_demo_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -874,7 +964,7 @@ func (x *CDemoStringTables) String() string { func (*CDemoStringTables) ProtoMessage() {} func (x *CDemoStringTables) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[12] + mi := &file_demo_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -887,7 +977,7 @@ func (x *CDemoStringTables) ProtoReflect() protoreflect.Message { // Deprecated: Use CDemoStringTables.ProtoReflect.Descriptor instead. func (*CDemoStringTables) Descriptor() ([]byte, []int) { - return file_demo_proto_rawDescGZIP(), []int{12} + return file_demo_proto_rawDescGZIP(), []int{13} } func (x *CDemoStringTables) GetTables() []*CDemoStringTablesTableT { @@ -906,7 +996,7 @@ type CDemoStop struct { func (x *CDemoStop) Reset() { *x = CDemoStop{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[13] + mi := &file_demo_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -919,7 +1009,7 @@ func (x *CDemoStop) String() string { func (*CDemoStop) ProtoMessage() {} func (x *CDemoStop) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[13] + mi := &file_demo_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -932,7 +1022,7 @@ func (x *CDemoStop) ProtoReflect() protoreflect.Message { // Deprecated: Use CDemoStop.ProtoReflect.Descriptor instead. func (*CDemoStop) Descriptor() ([]byte, []int) { - return file_demo_proto_rawDescGZIP(), []int{13} + return file_demo_proto_rawDescGZIP(), []int{14} } type CDemoUserCmd struct { @@ -947,7 +1037,7 @@ type CDemoUserCmd struct { func (x *CDemoUserCmd) Reset() { *x = CDemoUserCmd{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[14] + mi := &file_demo_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -960,7 +1050,7 @@ func (x *CDemoUserCmd) String() string { func (*CDemoUserCmd) ProtoMessage() {} func (x *CDemoUserCmd) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[14] + mi := &file_demo_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -973,7 +1063,7 @@ func (x *CDemoUserCmd) ProtoReflect() protoreflect.Message { // Deprecated: Use CDemoUserCmd.ProtoReflect.Descriptor instead. func (*CDemoUserCmd) Descriptor() ([]byte, []int) { - return file_demo_proto_rawDescGZIP(), []int{14} + return file_demo_proto_rawDescGZIP(), []int{15} } func (x *CDemoUserCmd) GetCmdNumber() int32 { @@ -1001,7 +1091,7 @@ type CDemoSpawnGroups struct { func (x *CDemoSpawnGroups) Reset() { *x = CDemoSpawnGroups{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[15] + mi := &file_demo_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1014,7 +1104,7 @@ func (x *CDemoSpawnGroups) String() string { func (*CDemoSpawnGroups) ProtoMessage() {} func (x *CDemoSpawnGroups) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[15] + mi := &file_demo_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1027,7 +1117,7 @@ func (x *CDemoSpawnGroups) ProtoReflect() protoreflect.Message { // Deprecated: Use CDemoSpawnGroups.ProtoReflect.Descriptor instead. func (*CDemoSpawnGroups) Descriptor() ([]byte, []int) { - return file_demo_proto_rawDescGZIP(), []int{15} + return file_demo_proto_rawDescGZIP(), []int{16} } func (x *CDemoSpawnGroups) GetMsgs() [][]byte { @@ -1058,7 +1148,7 @@ type CGameInfo_CDotaGameInfo struct { func (x *CGameInfo_CDotaGameInfo) Reset() { *x = CGameInfo_CDotaGameInfo{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[16] + mi := &file_demo_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1071,7 +1161,7 @@ func (x *CGameInfo_CDotaGameInfo) String() string { func (*CGameInfo_CDotaGameInfo) ProtoMessage() {} func (x *CGameInfo_CDotaGameInfo) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[16] + mi := &file_demo_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1164,6 +1254,53 @@ func (x *CGameInfo_CDotaGameInfo) GetEndTime() uint32 { return 0 } +type CGameInfo_CCSGameInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RoundStartTicks []int32 `protobuf:"varint,1,rep,name=round_start_ticks,json=roundStartTicks" json:"round_start_ticks,omitempty"` +} + +func (x *CGameInfo_CCSGameInfo) Reset() { + *x = CGameInfo_CCSGameInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_demo_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CGameInfo_CCSGameInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CGameInfo_CCSGameInfo) ProtoMessage() {} + +func (x *CGameInfo_CCSGameInfo) ProtoReflect() protoreflect.Message { + mi := &file_demo_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CGameInfo_CCSGameInfo.ProtoReflect.Descriptor instead. +func (*CGameInfo_CCSGameInfo) Descriptor() ([]byte, []int) { + return file_demo_proto_rawDescGZIP(), []int{1, 1} +} + +func (x *CGameInfo_CCSGameInfo) GetRoundStartTicks() []int32 { + if x != nil { + return x.RoundStartTicks + } + return nil +} + type CGameInfo_CDotaGameInfo_CPlayerInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1179,7 +1316,7 @@ type CGameInfo_CDotaGameInfo_CPlayerInfo struct { func (x *CGameInfo_CDotaGameInfo_CPlayerInfo) Reset() { *x = CGameInfo_CDotaGameInfo_CPlayerInfo{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[17] + mi := &file_demo_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1192,7 +1329,7 @@ func (x *CGameInfo_CDotaGameInfo_CPlayerInfo) String() string { func (*CGameInfo_CDotaGameInfo_CPlayerInfo) ProtoMessage() {} func (x *CGameInfo_CDotaGameInfo_CPlayerInfo) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[17] + mi := &file_demo_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1256,7 +1393,7 @@ type CGameInfo_CDotaGameInfo_CHeroSelectEvent struct { func (x *CGameInfo_CDotaGameInfo_CHeroSelectEvent) Reset() { *x = CGameInfo_CDotaGameInfo_CHeroSelectEvent{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[18] + mi := &file_demo_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1269,7 +1406,7 @@ func (x *CGameInfo_CDotaGameInfo_CHeroSelectEvent) String() string { func (*CGameInfo_CDotaGameInfo_CHeroSelectEvent) ProtoMessage() {} func (x *CGameInfo_CDotaGameInfo_CHeroSelectEvent) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[18] + mi := &file_demo_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1319,7 +1456,7 @@ type CDemoClassInfoClassT struct { func (x *CDemoClassInfoClassT) Reset() { *x = CDemoClassInfoClassT{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[19] + mi := &file_demo_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1332,7 +1469,7 @@ func (x *CDemoClassInfoClassT) String() string { func (*CDemoClassInfoClassT) ProtoMessage() {} func (x *CDemoClassInfoClassT) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[19] + mi := &file_demo_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1381,7 +1518,7 @@ type CDemoStringTablesItemsT struct { func (x *CDemoStringTablesItemsT) Reset() { *x = CDemoStringTablesItemsT{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[20] + mi := &file_demo_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1394,7 +1531,7 @@ func (x *CDemoStringTablesItemsT) String() string { func (*CDemoStringTablesItemsT) ProtoMessage() {} func (x *CDemoStringTablesItemsT) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[20] + mi := &file_demo_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1407,7 +1544,7 @@ func (x *CDemoStringTablesItemsT) ProtoReflect() protoreflect.Message { // Deprecated: Use CDemoStringTablesItemsT.ProtoReflect.Descriptor instead. func (*CDemoStringTablesItemsT) Descriptor() ([]byte, []int) { - return file_demo_proto_rawDescGZIP(), []int{12, 0} + return file_demo_proto_rawDescGZIP(), []int{13, 0} } func (x *CDemoStringTablesItemsT) GetStr() string { @@ -1438,7 +1575,7 @@ type CDemoStringTablesTableT struct { func (x *CDemoStringTablesTableT) Reset() { *x = CDemoStringTablesTableT{} if protoimpl.UnsafeEnabled { - mi := &file_demo_proto_msgTypes[21] + mi := &file_demo_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1451,7 +1588,7 @@ func (x *CDemoStringTablesTableT) String() string { func (*CDemoStringTablesTableT) ProtoMessage() {} func (x *CDemoStringTablesTableT) ProtoReflect() protoreflect.Message { - mi := &file_demo_proto_msgTypes[21] + mi := &file_demo_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1464,7 +1601,7 @@ func (x *CDemoStringTablesTableT) ProtoReflect() protoreflect.Message { // Deprecated: Use CDemoStringTablesTableT.ProtoReflect.Descriptor instead. func (*CDemoStringTablesTableT) Descriptor() ([]byte, []int) { - return file_demo_proto_rawDescGZIP(), []int{12, 1} + return file_demo_proto_rawDescGZIP(), []int{13, 1} } func (x *CDemoStringTablesTableT) GetTableName() string { @@ -1534,167 +1671,185 @@ var file_demo_proto_rawDesc = []byte{ 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x22, 0x98, 0x06, 0x0a, 0x09, 0x43, 0x47, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x22, 0x80, 0x07, 0x0a, 0x09, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x31, 0x0a, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x44, 0x6f, 0x74, 0x61, 0x47, 0x61, 0x6d, 0x65, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0xd7, 0x05, 0x0a, 0x0d, 0x43, - 0x44, 0x6f, 0x74, 0x61, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, - 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, - 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x77, 0x69, 0x6e, - 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x57, - 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x44, 0x6f, 0x74, - 0x61, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x4d, 0x0a, - 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x5f, 0x62, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x2e, 0x43, 0x44, 0x6f, 0x74, 0x61, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, - 0x2e, 0x43, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x52, 0x09, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x42, 0x61, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, - 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, - 0x61, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x72, 0x65, - 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0e, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, - 0x12, 0x22, 0x0a, 0x0d, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, - 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, - 0x6d, 0x54, 0x61, 0x67, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x1a, - 0xa8, 0x01, 0x0a, 0x0b, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, - 0x0e, 0x69, 0x73, 0x5f, 0x66, 0x61, 0x6b, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x46, 0x61, 0x6b, 0x65, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x1a, 0x58, 0x0a, 0x10, 0x43, 0x48, - 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x17, - 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x06, 0x69, 0x73, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, - 0x72, 0x6f, 0x49, 0x64, 0x22, 0xb2, 0x01, 0x0a, 0x0d, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x46, 0x69, - 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, - 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x70, - 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x70, - 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x54, 0x69, 0x63, - 0x6b, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x66, - 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, - 0x79, 0x62, 0x61, 0x63, 0x6b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x67, - 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x08, 0x67, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x21, 0x0a, 0x0b, 0x43, 0x44, 0x65, - 0x6d, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x78, 0x0a, 0x0f, - 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, - 0x3a, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x65, - 0x6d, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x52, 0x0b, - 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x70, - 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, - 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x76, 0x0a, 0x0d, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, - 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x0f, - 0x0a, 0x0d, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x79, 0x6e, 0x63, 0x54, 0x69, 0x63, 0x6b, 0x22, - 0x2f, 0x0a, 0x0f, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x43, - 0x6d, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6d, 0x64, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6d, 0x64, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x22, 0x25, 0x0a, 0x0f, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb0, 0x01, 0x0a, 0x0e, 0x43, 0x44, 0x65, 0x6d, - 0x6f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x36, 0x0a, 0x07, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, - 0x6f, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x74, 0x52, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, - 0x65, 0x73, 0x1a, 0x66, 0x0a, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x74, 0x12, 0x19, 0x0a, - 0x08, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, - 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x4c, 0x0a, 0x0f, 0x43, 0x44, - 0x65, 0x6d, 0x6f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x12, 0x25, 0x0a, - 0x0e, 0x63, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x49, - 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x33, 0x0a, 0x18, 0x43, 0x44, 0x65, 0x6d, - 0x6f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x62, - 0x61, 0x63, 0x6b, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x61, 0x76, 0x65, 0x49, 0x64, 0x22, 0xcc, 0x02, - 0x0a, 0x11, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x65, 0x6d, 0x6f, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x2e, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x5f, 0x74, 0x52, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x1a, 0x2f, 0x0a, 0x07, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x74, 0x72, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x74, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xcc, 0x01, - 0x0a, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, - 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x74, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, - 0x4a, 0x0a, 0x10, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, - 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, - 0x65, 0x73, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x74, 0x52, 0x0f, 0x69, 0x74, 0x65, 0x6d, - 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x69, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x0b, 0x0a, 0x09, - 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x6f, 0x70, 0x22, 0x41, 0x0a, 0x0c, 0x43, 0x44, 0x65, - 0x6d, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6d, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6d, 0x64, - 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, - 0x6d, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x26, 0x0a, 0x10, - 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, - 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x04, - 0x6d, 0x73, 0x67, 0x73, 0x2a, 0x84, 0x03, 0x0a, 0x0d, 0x45, 0x44, 0x65, 0x6d, 0x6f, 0x43, 0x6f, - 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x09, 0x44, 0x45, 0x4d, 0x5f, 0x45, 0x72, - 0x72, 0x6f, 0x72, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x0c, - 0x0a, 0x08, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x74, 0x6f, 0x70, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, - 0x44, 0x45, 0x4d, 0x5f, 0x46, 0x69, 0x6c, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x10, 0x01, - 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x4d, 0x5f, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, - 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x79, 0x6e, 0x63, 0x54, 0x69, - 0x63, 0x6b, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x65, 0x6e, 0x64, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x45, 0x4d, 0x5f, - 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x44, - 0x45, 0x4d, 0x5f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x10, - 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x4d, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x10, - 0x07, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x50, - 0x61, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x45, 0x4d, 0x5f, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x44, - 0x45, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x10, 0x0a, 0x12, - 0x1b, 0x0a, 0x17, 0x44, 0x45, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x10, 0x0b, 0x12, 0x0f, 0x0a, 0x0b, - 0x44, 0x45, 0x4d, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6d, 0x64, 0x10, 0x0c, 0x12, 0x12, 0x0a, - 0x0e, 0x44, 0x45, 0x4d, 0x5f, 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x10, - 0x0d, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, - 0x65, 0x10, 0x0e, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x10, 0x0f, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x4d, 0x5f, - 0x4d, 0x61, 0x78, 0x10, 0x10, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x45, 0x4d, 0x5f, 0x49, 0x73, 0x43, - 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x10, 0x40, 0x42, 0x25, 0x5a, 0x23, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, - 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, - 0x74, 0x61, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x02, 0x63, 0x73, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, + 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x43, 0x53, 0x47, 0x61, 0x6d, 0x65, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x02, 0x63, 0x73, 0x1a, 0xd7, 0x05, 0x0a, 0x0d, 0x43, 0x44, 0x6f, 0x74, + 0x61, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, + 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x57, 0x69, 0x6e, 0x6e, + 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, + 0x6f, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x44, 0x6f, 0x74, 0x61, 0x47, 0x61, + 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, + 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x4d, 0x0a, 0x0a, 0x70, 0x69, + 0x63, 0x6b, 0x73, 0x5f, 0x62, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, + 0x43, 0x44, 0x6f, 0x74, 0x61, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x48, + 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x09, + 0x70, 0x69, 0x63, 0x6b, 0x73, 0x42, 0x61, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x61, 0x64, + 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x49, + 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, + 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, + 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, 0x12, 0x22, 0x0a, + 0x0d, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x61, + 0x67, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0xa8, 0x01, 0x0a, + 0x0b, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x68, 0x65, 0x72, 0x6f, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, + 0x5f, 0x66, 0x61, 0x6b, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x46, 0x61, 0x6b, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, + 0x61, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x1a, 0x58, 0x0a, 0x10, 0x43, 0x48, 0x65, 0x72, 0x6f, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, + 0x73, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, + 0x50, 0x69, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, + 0x64, 0x1a, 0x39, 0x0a, 0x0b, 0x43, 0x43, 0x53, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, + 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x22, 0xb2, 0x01, 0x0a, + 0x0d, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, + 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, + 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x6c, 0x61, + 0x79, 0x62, 0x61, 0x63, 0x6b, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x6c, + 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x46, 0x72, 0x61, + 0x6d, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, + 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x22, 0x21, 0x0a, 0x0b, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, + 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x22, 0x78, 0x0a, 0x0f, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x46, 0x75, 0x6c, + 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x3a, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x12, 0x29, 0x0a, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x65, 0x6d, 0x6f, + 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x76, + 0x0a, 0x0d, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1c, + 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x06, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x0f, 0x0a, 0x0d, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, + 0x79, 0x6e, 0x63, 0x54, 0x69, 0x63, 0x6b, 0x22, 0x2f, 0x0a, 0x0f, 0x43, 0x44, 0x65, 0x6d, 0x6f, + 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6d, + 0x64, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, + 0x6d, 0x64, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x25, 0x0a, 0x0f, 0x43, 0x44, 0x65, 0x6d, + 0x6f, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, + 0xb0, 0x01, 0x0a, 0x0e, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x36, 0x0a, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x65, 0x6d, 0x6f, + 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, + 0x74, 0x52, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x1a, 0x66, 0x0a, 0x07, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x5f, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0x4c, 0x0a, 0x0f, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x43, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, + 0x6b, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, + 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x33, 0x0a, 0x18, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x17, 0x0a, 0x07, + 0x73, 0x61, 0x76, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, + 0x61, 0x76, 0x65, 0x49, 0x64, 0x22, 0xa4, 0x01, 0x0a, 0x12, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x41, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, + 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, + 0x74, 0x69, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, + 0x69, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x61, 0x74, 0x61, 0x5f, + 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, + 0x64, 0x61, 0x74, 0x61, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x22, 0xcc, 0x02, 0x0a, + 0x11, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x2e, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x5f, 0x74, 0x52, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x1a, 0x2f, 0x0a, 0x07, 0x69, + 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x74, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xcc, 0x01, 0x0a, + 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, + 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x2e, + 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x74, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x4a, + 0x0a, 0x10, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x69, + 0x64, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x73, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x74, 0x52, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x73, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x69, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x0b, 0x0a, 0x09, 0x43, + 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x74, 0x6f, 0x70, 0x22, 0x41, 0x0a, 0x0c, 0x43, 0x44, 0x65, 0x6d, + 0x6f, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6d, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6d, 0x64, 0x5f, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x6d, + 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x26, 0x0a, 0x10, 0x43, + 0x44, 0x65, 0x6d, 0x6f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x04, 0x6d, + 0x73, 0x67, 0x73, 0x2a, 0x9b, 0x03, 0x0a, 0x0d, 0x45, 0x44, 0x65, 0x6d, 0x6f, 0x43, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x09, 0x44, 0x45, 0x4d, 0x5f, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x0c, 0x0a, + 0x08, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x74, 0x6f, 0x70, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x44, + 0x45, 0x4d, 0x5f, 0x46, 0x69, 0x6c, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x10, 0x01, 0x12, + 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x4d, 0x5f, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, + 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x79, 0x6e, 0x63, 0x54, 0x69, 0x63, + 0x6b, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x54, + 0x61, 0x62, 0x6c, 0x65, 0x73, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x45, 0x4d, 0x5f, 0x43, + 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x45, + 0x4d, 0x5f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x10, 0x06, + 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x4d, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x07, + 0x12, 0x14, 0x0a, 0x10, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x50, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x45, 0x4d, 0x5f, 0x43, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x43, 0x6d, 0x64, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x45, + 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x10, 0x0a, 0x12, 0x1b, + 0x0a, 0x17, 0x44, 0x45, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x43, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x10, 0x0b, 0x12, 0x0f, 0x0a, 0x0b, 0x44, + 0x45, 0x4d, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6d, 0x64, 0x10, 0x0c, 0x12, 0x12, 0x0a, 0x0e, + 0x44, 0x45, 0x4d, 0x5f, 0x46, 0x75, 0x6c, 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x0d, + 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, + 0x10, 0x0e, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x45, 0x4d, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x73, 0x10, 0x0f, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x45, 0x4d, 0x5f, 0x41, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x10, 0x10, 0x12, 0x0b, + 0x0a, 0x07, 0x44, 0x45, 0x4d, 0x5f, 0x4d, 0x61, 0x78, 0x10, 0x11, 0x12, 0x14, 0x0a, 0x10, 0x44, + 0x45, 0x4d, 0x5f, 0x49, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x10, + 0x40, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, + 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -1710,7 +1865,7 @@ func file_demo_proto_rawDescGZIP() []byte { } var file_demo_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_demo_proto_msgTypes = make([]protoimpl.MessageInfo, 22) +var file_demo_proto_msgTypes = make([]protoimpl.MessageInfo, 24) var file_demo_proto_goTypes = []interface{}{ (EDemoCommands)(0), // 0: dota.EDemoCommands (*CDemoFileHeader)(nil), // 1: dota.CDemoFileHeader @@ -1725,33 +1880,36 @@ var file_demo_proto_goTypes = []interface{}{ (*CDemoClassInfo)(nil), // 10: dota.CDemoClassInfo (*CDemoCustomData)(nil), // 11: dota.CDemoCustomData (*CDemoCustomDataCallbacks)(nil), // 12: dota.CDemoCustomDataCallbacks - (*CDemoStringTables)(nil), // 13: dota.CDemoStringTables - (*CDemoStop)(nil), // 14: dota.CDemoStop - (*CDemoUserCmd)(nil), // 15: dota.CDemoUserCmd - (*CDemoSpawnGroups)(nil), // 16: dota.CDemoSpawnGroups - (*CGameInfo_CDotaGameInfo)(nil), // 17: dota.CGameInfo.CDotaGameInfo - (*CGameInfo_CDotaGameInfo_CPlayerInfo)(nil), // 18: dota.CGameInfo.CDotaGameInfo.CPlayerInfo - (*CGameInfo_CDotaGameInfo_CHeroSelectEvent)(nil), // 19: dota.CGameInfo.CDotaGameInfo.CHeroSelectEvent - (*CDemoClassInfoClassT)(nil), // 20: dota.CDemoClassInfo.class_t - (*CDemoStringTablesItemsT)(nil), // 21: dota.CDemoStringTables.items_t - (*CDemoStringTablesTableT)(nil), // 22: dota.CDemoStringTables.table_t + (*CDemoAnimationData)(nil), // 13: dota.CDemoAnimationData + (*CDemoStringTables)(nil), // 14: dota.CDemoStringTables + (*CDemoStop)(nil), // 15: dota.CDemoStop + (*CDemoUserCmd)(nil), // 16: dota.CDemoUserCmd + (*CDemoSpawnGroups)(nil), // 17: dota.CDemoSpawnGroups + (*CGameInfo_CDotaGameInfo)(nil), // 18: dota.CGameInfo.CDotaGameInfo + (*CGameInfo_CCSGameInfo)(nil), // 19: dota.CGameInfo.CCSGameInfo + (*CGameInfo_CDotaGameInfo_CPlayerInfo)(nil), // 20: dota.CGameInfo.CDotaGameInfo.CPlayerInfo + (*CGameInfo_CDotaGameInfo_CHeroSelectEvent)(nil), // 21: dota.CGameInfo.CDotaGameInfo.CHeroSelectEvent + (*CDemoClassInfoClassT)(nil), // 22: dota.CDemoClassInfo.class_t + (*CDemoStringTablesItemsT)(nil), // 23: dota.CDemoStringTables.items_t + (*CDemoStringTablesTableT)(nil), // 24: dota.CDemoStringTables.table_t } var file_demo_proto_depIdxs = []int32{ - 17, // 0: dota.CGameInfo.dota:type_name -> dota.CGameInfo.CDotaGameInfo - 2, // 1: dota.CDemoFileInfo.game_info:type_name -> dota.CGameInfo - 13, // 2: dota.CDemoFullPacket.string_table:type_name -> dota.CDemoStringTables - 4, // 3: dota.CDemoFullPacket.packet:type_name -> dota.CDemoPacket - 20, // 4: dota.CDemoClassInfo.classes:type_name -> dota.CDemoClassInfo.class_t - 22, // 5: dota.CDemoStringTables.tables:type_name -> dota.CDemoStringTables.table_t - 18, // 6: dota.CGameInfo.CDotaGameInfo.player_info:type_name -> dota.CGameInfo.CDotaGameInfo.CPlayerInfo - 19, // 7: dota.CGameInfo.CDotaGameInfo.picks_bans:type_name -> dota.CGameInfo.CDotaGameInfo.CHeroSelectEvent - 21, // 8: dota.CDemoStringTables.table_t.items:type_name -> dota.CDemoStringTables.items_t - 21, // 9: dota.CDemoStringTables.table_t.items_clientside:type_name -> dota.CDemoStringTables.items_t - 10, // [10:10] is the sub-list for method output_type - 10, // [10:10] is the sub-list for method input_type - 10, // [10:10] is the sub-list for extension type_name - 10, // [10:10] is the sub-list for extension extendee - 0, // [0:10] is the sub-list for field type_name + 18, // 0: dota.CGameInfo.dota:type_name -> dota.CGameInfo.CDotaGameInfo + 19, // 1: dota.CGameInfo.cs:type_name -> dota.CGameInfo.CCSGameInfo + 2, // 2: dota.CDemoFileInfo.game_info:type_name -> dota.CGameInfo + 14, // 3: dota.CDemoFullPacket.string_table:type_name -> dota.CDemoStringTables + 4, // 4: dota.CDemoFullPacket.packet:type_name -> dota.CDemoPacket + 22, // 5: dota.CDemoClassInfo.classes:type_name -> dota.CDemoClassInfo.class_t + 24, // 6: dota.CDemoStringTables.tables:type_name -> dota.CDemoStringTables.table_t + 20, // 7: dota.CGameInfo.CDotaGameInfo.player_info:type_name -> dota.CGameInfo.CDotaGameInfo.CPlayerInfo + 21, // 8: dota.CGameInfo.CDotaGameInfo.picks_bans:type_name -> dota.CGameInfo.CDotaGameInfo.CHeroSelectEvent + 23, // 9: dota.CDemoStringTables.table_t.items:type_name -> dota.CDemoStringTables.items_t + 23, // 10: dota.CDemoStringTables.table_t.items_clientside:type_name -> dota.CDemoStringTables.items_t + 11, // [11:11] is the sub-list for method output_type + 11, // [11:11] is the sub-list for method input_type + 11, // [11:11] is the sub-list for extension type_name + 11, // [11:11] is the sub-list for extension extendee + 0, // [0:11] is the sub-list for field type_name } func init() { file_demo_proto_init() } @@ -1905,7 +2063,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDemoStringTables); i { + switch v := v.(*CDemoAnimationData); i { case 0: return &v.state case 1: @@ -1917,7 +2075,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDemoStop); i { + switch v := v.(*CDemoStringTables); i { case 0: return &v.state case 1: @@ -1929,7 +2087,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDemoUserCmd); i { + switch v := v.(*CDemoStop); i { case 0: return &v.state case 1: @@ -1941,7 +2099,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDemoSpawnGroups); i { + switch v := v.(*CDemoUserCmd); i { case 0: return &v.state case 1: @@ -1953,7 +2111,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGameInfo_CDotaGameInfo); i { + switch v := v.(*CDemoSpawnGroups); i { case 0: return &v.state case 1: @@ -1965,7 +2123,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGameInfo_CDotaGameInfo_CPlayerInfo); i { + switch v := v.(*CGameInfo_CDotaGameInfo); i { case 0: return &v.state case 1: @@ -1977,7 +2135,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGameInfo_CDotaGameInfo_CHeroSelectEvent); i { + switch v := v.(*CGameInfo_CCSGameInfo); i { case 0: return &v.state case 1: @@ -1989,7 +2147,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDemoClassInfoClassT); i { + switch v := v.(*CGameInfo_CDotaGameInfo_CPlayerInfo); i { case 0: return &v.state case 1: @@ -2001,7 +2159,7 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDemoStringTablesItemsT); i { + switch v := v.(*CGameInfo_CDotaGameInfo_CHeroSelectEvent); i { case 0: return &v.state case 1: @@ -2013,6 +2171,30 @@ func file_demo_proto_init() { } } file_demo_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CDemoClassInfoClassT); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_demo_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CDemoStringTablesItemsT); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_demo_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CDemoStringTablesTableT); i { case 0: return &v.state @@ -2031,7 +2213,7 @@ func file_demo_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_demo_proto_rawDesc, NumEnums: 1, - NumMessages: 22, + NumMessages: 24, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/demo.proto b/dota/demo.proto index 73209bdd..cac6b177 100644 --- a/dota/demo.proto +++ b/dota/demo.proto @@ -21,7 +21,8 @@ enum EDemoCommands { DEM_FullPacket = 13; DEM_SaveGame = 14; DEM_SpawnGroups = 15; - DEM_Max = 16; + DEM_AnimationData = 16; + DEM_Max = 17; DEM_IsCompressed = 64; } @@ -71,7 +72,12 @@ message CGameInfo { optional uint32 end_time = 11; } + message CCSGameInfo { + repeated int32 round_start_ticks = 1; + } + optional CGameInfo.CDotaGameInfo dota = 4; + optional CGameInfo.CCSGameInfo cs = 5; } message CDemoFileInfo { @@ -127,6 +133,14 @@ message CDemoCustomDataCallbacks { repeated string save_id = 1; } +message CDemoAnimationData { + optional sint32 entity_id = 1; + optional int32 start_tick = 2; + optional int32 end_tick = 3; + optional bytes data = 4; + optional int64 data_checksum = 5; +} + message CDemoStringTables { message items_t { optional string str = 1; diff --git a/dota/dota_broadcastmessages.pb.go b/dota/dota_broadcastmessages.pb.go index ea48f223..ccf94df7 100644 --- a/dota/dota_broadcastmessages.pb.go +++ b/dota/dota_broadcastmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_broadcastmessages.proto diff --git a/dota/dota_client_enums.pb.go b/dota/dota_client_enums.pb.go index eac43db5..d0202a8e 100644 --- a/dota/dota_client_enums.pb.go +++ b/dota/dota_client_enums.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_client_enums.proto diff --git a/dota/dota_clientmessages.pb.go b/dota/dota_clientmessages.pb.go index 65417f7f..094a4d0e 100644 --- a/dota/dota_clientmessages.pb.go +++ b/dota/dota_clientmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_clientmessages.proto @@ -120,6 +120,11 @@ const ( EDotaClientMessages_DOTA_CM_PlayerDraftSuggest EDotaClientMessages = 801 EDotaClientMessages_DOTA_CM_PlayerDraftPreferRole EDotaClientMessages = 802 EDotaClientMessages_DOTA_CM_PlayerDraftPreferTeam EDotaClientMessages = 803 + EDotaClientMessages_DOTA_CM_ChatWheelAlert EDotaClientMessages = 804 + EDotaClientMessages_DOTA_CM_AbilityAlert EDotaClientMessages = 805 + EDotaClientMessages_DOTA_CM_AllyAbilityAlert EDotaClientMessages = 806 + EDotaClientMessages_DOTA_CM_GiftPlayer EDotaClientMessages = 807 + EDotaClientMessages_DOTA_CM_GiftEveryone EDotaClientMessages = 808 ) // Enum value maps for EDotaClientMessages. @@ -222,6 +227,11 @@ var ( 801: "DOTA_CM_PlayerDraftSuggest", 802: "DOTA_CM_PlayerDraftPreferRole", 803: "DOTA_CM_PlayerDraftPreferTeam", + 804: "DOTA_CM_ChatWheelAlert", + 805: "DOTA_CM_AbilityAlert", + 806: "DOTA_CM_AllyAbilityAlert", + 807: "DOTA_CM_GiftPlayer", + 808: "DOTA_CM_GiftEveryone", } EDotaClientMessages_value = map[string]int32{ "DOTA_CM_MapLine": 301, @@ -321,6 +331,11 @@ var ( "DOTA_CM_PlayerDraftSuggest": 801, "DOTA_CM_PlayerDraftPreferRole": 802, "DOTA_CM_PlayerDraftPreferTeam": 803, + "DOTA_CM_ChatWheelAlert": 804, + "DOTA_CM_AbilityAlert": 805, + "DOTA_CM_AllyAbilityAlert": 806, + "DOTA_CM_GiftPlayer": 807, + "DOTA_CM_GiftEveryone": 808, } ) @@ -2505,12 +2520,13 @@ type CDOTAClientMsg_DemoHero struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - HeroId *int32 `protobuf:"varint,1,opt,name=hero_id,json=heroId" json:"hero_id,omitempty"` - HeroIdToSpawn *int32 `protobuf:"varint,2,opt,name=hero_id_to_spawn,json=heroIdToSpawn" json:"hero_id_to_spawn,omitempty"` - ItemDefs []uint32 `protobuf:"varint,3,rep,name=item_defs,json=itemDefs" json:"item_defs,omitempty"` - ItemIds []uint64 `protobuf:"varint,4,rep,name=item_ids,json=itemIds" json:"item_ids,omitempty"` - StyleIndex *uint32 `protobuf:"varint,5,opt,name=style_index,json=styleIndex" json:"style_index,omitempty"` - KeepExistingDemohero *bool `protobuf:"varint,6,opt,name=keep_existing_demohero,json=keepExistingDemohero" json:"keep_existing_demohero,omitempty"` + HeroId *int32 `protobuf:"varint,1,opt,name=hero_id,json=heroId" json:"hero_id,omitempty"` + HeroIdToSpawn *int32 `protobuf:"varint,2,opt,name=hero_id_to_spawn,json=heroIdToSpawn" json:"hero_id_to_spawn,omitempty"` + ItemDefs []uint32 `protobuf:"varint,3,rep,name=item_defs,json=itemDefs" json:"item_defs,omitempty"` + ItemIds []uint64 `protobuf:"varint,4,rep,name=item_ids,json=itemIds" json:"item_ids,omitempty"` + StyleIndex *uint32 `protobuf:"varint,5,opt,name=style_index,json=styleIndex" json:"style_index,omitempty"` + KeepExistingDemohero *bool `protobuf:"varint,6,opt,name=keep_existing_demohero,json=keepExistingDemohero" json:"keep_existing_demohero,omitempty"` + ItemData []*CSOEconItem `protobuf:"bytes,7,rep,name=item_data,json=itemData" json:"item_data,omitempty"` } func (x *CDOTAClientMsg_DemoHero) Reset() { @@ -2587,6 +2603,13 @@ func (x *CDOTAClientMsg_DemoHero) GetKeepExistingDemohero() bool { return false } +func (x *CDOTAClientMsg_DemoHero) GetItemData() []*CSOEconItem { + if x != nil { + return x.ItemData + } + return nil +} + type CDOTAClientMsg_ChallengeSelect struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4181,6 +4204,108 @@ func (x *CDOTAClientMsg_SalutePlayer) GetEventId() int32 { return 0 } +type CDOTAClientMsg_GiftPlayer struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetPlayerId *int32 `protobuf:"varint,1,opt,name=target_player_id,json=targetPlayerId" json:"target_player_id,omitempty"` + ItemDefIndex *uint32 `protobuf:"varint,2,opt,name=item_def_index,json=itemDefIndex" json:"item_def_index,omitempty"` +} + +func (x *CDOTAClientMsg_GiftPlayer) Reset() { + *x = CDOTAClientMsg_GiftPlayer{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_clientmessages_proto_msgTypes[69] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CDOTAClientMsg_GiftPlayer) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CDOTAClientMsg_GiftPlayer) ProtoMessage() {} + +func (x *CDOTAClientMsg_GiftPlayer) ProtoReflect() protoreflect.Message { + mi := &file_dota_clientmessages_proto_msgTypes[69] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CDOTAClientMsg_GiftPlayer.ProtoReflect.Descriptor instead. +func (*CDOTAClientMsg_GiftPlayer) Descriptor() ([]byte, []int) { + return file_dota_clientmessages_proto_rawDescGZIP(), []int{69} +} + +func (x *CDOTAClientMsg_GiftPlayer) GetTargetPlayerId() int32 { + if x != nil && x.TargetPlayerId != nil { + return *x.TargetPlayerId + } + return 0 +} + +func (x *CDOTAClientMsg_GiftPlayer) GetItemDefIndex() uint32 { + if x != nil && x.ItemDefIndex != nil { + return *x.ItemDefIndex + } + return 0 +} + +type CDOTAClientMsg_GiftEveryone struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ItemDefIndex *uint32 `protobuf:"varint,1,opt,name=item_def_index,json=itemDefIndex" json:"item_def_index,omitempty"` +} + +func (x *CDOTAClientMsg_GiftEveryone) Reset() { + *x = CDOTAClientMsg_GiftEveryone{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_clientmessages_proto_msgTypes[70] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CDOTAClientMsg_GiftEveryone) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CDOTAClientMsg_GiftEveryone) ProtoMessage() {} + +func (x *CDOTAClientMsg_GiftEveryone) ProtoReflect() protoreflect.Message { + mi := &file_dota_clientmessages_proto_msgTypes[70] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CDOTAClientMsg_GiftEveryone.ProtoReflect.Descriptor instead. +func (*CDOTAClientMsg_GiftEveryone) Descriptor() ([]byte, []int) { + return file_dota_clientmessages_proto_rawDescGZIP(), []int{70} +} + +func (x *CDOTAClientMsg_GiftEveryone) GetItemDefIndex() uint32 { + if x != nil && x.ItemDefIndex != nil { + return *x.ItemDefIndex + } + return 0 +} + type CDOTAClientMsg_TipAlert struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4192,7 +4317,7 @@ type CDOTAClientMsg_TipAlert struct { func (x *CDOTAClientMsg_TipAlert) Reset() { *x = CDOTAClientMsg_TipAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[69] + mi := &file_dota_clientmessages_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4205,7 +4330,7 @@ func (x *CDOTAClientMsg_TipAlert) String() string { func (*CDOTAClientMsg_TipAlert) ProtoMessage() {} func (x *CDOTAClientMsg_TipAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[69] + mi := &file_dota_clientmessages_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4218,7 +4343,7 @@ func (x *CDOTAClientMsg_TipAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAClientMsg_TipAlert.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_TipAlert) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{69} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{71} } func (x *CDOTAClientMsg_TipAlert) GetTipText() string { @@ -4239,7 +4364,7 @@ type CDOTAClientMsg_EmptyTeleportAlert struct { func (x *CDOTAClientMsg_EmptyTeleportAlert) Reset() { *x = CDOTAClientMsg_EmptyTeleportAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[70] + mi := &file_dota_clientmessages_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4252,7 +4377,7 @@ func (x *CDOTAClientMsg_EmptyTeleportAlert) String() string { func (*CDOTAClientMsg_EmptyTeleportAlert) ProtoMessage() {} func (x *CDOTAClientMsg_EmptyTeleportAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[70] + mi := &file_dota_clientmessages_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4265,7 +4390,7 @@ func (x *CDOTAClientMsg_EmptyTeleportAlert) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAClientMsg_EmptyTeleportAlert.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_EmptyTeleportAlert) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{70} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{72} } func (x *CDOTAClientMsg_EmptyTeleportAlert) GetTargetEntindex() int32 { @@ -4286,7 +4411,7 @@ type CDOTAClientMsg_SetCavernMapVariant struct { func (x *CDOTAClientMsg_SetCavernMapVariant) Reset() { *x = CDOTAClientMsg_SetCavernMapVariant{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[71] + mi := &file_dota_clientmessages_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4299,7 +4424,7 @@ func (x *CDOTAClientMsg_SetCavernMapVariant) String() string { func (*CDOTAClientMsg_SetCavernMapVariant) ProtoMessage() {} func (x *CDOTAClientMsg_SetCavernMapVariant) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[71] + mi := &file_dota_clientmessages_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4312,7 +4437,7 @@ func (x *CDOTAClientMsg_SetCavernMapVariant) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAClientMsg_SetCavernMapVariant.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_SetCavernMapVariant) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{71} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{73} } func (x *CDOTAClientMsg_SetCavernMapVariant) GetMapVariant() uint32 { @@ -4334,7 +4459,7 @@ type CDOTAClientMsg_PauseGameOrder struct { func (x *CDOTAClientMsg_PauseGameOrder) Reset() { *x = CDOTAClientMsg_PauseGameOrder{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[72] + mi := &file_dota_clientmessages_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4347,7 +4472,7 @@ func (x *CDOTAClientMsg_PauseGameOrder) String() string { func (*CDOTAClientMsg_PauseGameOrder) ProtoMessage() {} func (x *CDOTAClientMsg_PauseGameOrder) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[72] + mi := &file_dota_clientmessages_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4360,7 +4485,7 @@ func (x *CDOTAClientMsg_PauseGameOrder) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAClientMsg_PauseGameOrder.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_PauseGameOrder) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{72} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{74} } func (x *CDOTAClientMsg_PauseGameOrder) GetOrderId() int32 { @@ -4391,7 +4516,7 @@ type CDOTAClientMsg_VersusScene_PlayerBehavior struct { func (x *CDOTAClientMsg_VersusScene_PlayerBehavior) Reset() { *x = CDOTAClientMsg_VersusScene_PlayerBehavior{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[73] + mi := &file_dota_clientmessages_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4404,7 +4529,7 @@ func (x *CDOTAClientMsg_VersusScene_PlayerBehavior) String() string { func (*CDOTAClientMsg_VersusScene_PlayerBehavior) ProtoMessage() {} func (x *CDOTAClientMsg_VersusScene_PlayerBehavior) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[73] + mi := &file_dota_clientmessages_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4417,7 +4542,7 @@ func (x *CDOTAClientMsg_VersusScene_PlayerBehavior) ProtoReflect() protoreflect. // Deprecated: Use CDOTAClientMsg_VersusScene_PlayerBehavior.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_VersusScene_PlayerBehavior) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{73} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{75} } func (x *CDOTAClientMsg_VersusScene_PlayerBehavior) GetBehavior() EDOTAVersusScenePlayerBehavior { @@ -4460,7 +4585,7 @@ type CDOTAClientMsg_EmptyItemSlotAlert struct { func (x *CDOTAClientMsg_EmptyItemSlotAlert) Reset() { *x = CDOTAClientMsg_EmptyItemSlotAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[74] + mi := &file_dota_clientmessages_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4473,7 +4598,7 @@ func (x *CDOTAClientMsg_EmptyItemSlotAlert) String() string { func (*CDOTAClientMsg_EmptyItemSlotAlert) ProtoMessage() {} func (x *CDOTAClientMsg_EmptyItemSlotAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[74] + mi := &file_dota_clientmessages_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4486,7 +4611,7 @@ func (x *CDOTAClientMsg_EmptyItemSlotAlert) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAClientMsg_EmptyItemSlotAlert.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_EmptyItemSlotAlert) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{74} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{76} } func (x *CDOTAClientMsg_EmptyItemSlotAlert) GetTargetEntindex() int32 { @@ -4516,7 +4641,7 @@ type CDOTAClientMsg_AddOverwatchReportMarker struct { func (x *CDOTAClientMsg_AddOverwatchReportMarker) Reset() { *x = CDOTAClientMsg_AddOverwatchReportMarker{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[75] + mi := &file_dota_clientmessages_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4529,7 +4654,7 @@ func (x *CDOTAClientMsg_AddOverwatchReportMarker) String() string { func (*CDOTAClientMsg_AddOverwatchReportMarker) ProtoMessage() {} func (x *CDOTAClientMsg_AddOverwatchReportMarker) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[75] + mi := &file_dota_clientmessages_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4542,7 +4667,7 @@ func (x *CDOTAClientMsg_AddOverwatchReportMarker) ProtoReflect() protoreflect.Me // Deprecated: Use CDOTAClientMsg_AddOverwatchReportMarker.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_AddOverwatchReportMarker) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{75} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{77} } func (x *CDOTAClientMsg_AddOverwatchReportMarker) GetTargetPlayerId() int32 { @@ -4577,7 +4702,7 @@ type CDOTAClientMsg_AddCommunicationsReportMarker struct { func (x *CDOTAClientMsg_AddCommunicationsReportMarker) Reset() { *x = CDOTAClientMsg_AddCommunicationsReportMarker{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[76] + mi := &file_dota_clientmessages_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4590,7 +4715,7 @@ func (x *CDOTAClientMsg_AddCommunicationsReportMarker) String() string { func (*CDOTAClientMsg_AddCommunicationsReportMarker) ProtoMessage() {} func (x *CDOTAClientMsg_AddCommunicationsReportMarker) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[76] + mi := &file_dota_clientmessages_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4603,7 +4728,7 @@ func (x *CDOTAClientMsg_AddCommunicationsReportMarker) ProtoReflect() protorefle // Deprecated: Use CDOTAClientMsg_AddCommunicationsReportMarker.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_AddCommunicationsReportMarker) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{76} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{78} } func (x *CDOTAClientMsg_AddCommunicationsReportMarker) GetTargetPlayerId() int32 { @@ -4624,7 +4749,7 @@ type CDOTAClientMsg_AddCommunicationsBlockMarker struct { func (x *CDOTAClientMsg_AddCommunicationsBlockMarker) Reset() { *x = CDOTAClientMsg_AddCommunicationsBlockMarker{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[77] + mi := &file_dota_clientmessages_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4637,7 +4762,7 @@ func (x *CDOTAClientMsg_AddCommunicationsBlockMarker) String() string { func (*CDOTAClientMsg_AddCommunicationsBlockMarker) ProtoMessage() {} func (x *CDOTAClientMsg_AddCommunicationsBlockMarker) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[77] + mi := &file_dota_clientmessages_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4650,7 +4775,7 @@ func (x *CDOTAClientMsg_AddCommunicationsBlockMarker) ProtoReflect() protoreflec // Deprecated: Use CDOTAClientMsg_AddCommunicationsBlockMarker.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_AddCommunicationsBlockMarker) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{77} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{79} } func (x *CDOTAClientMsg_AddCommunicationsBlockMarker) GetTargetPlayerId() int32 { @@ -4674,7 +4799,7 @@ type CDOTAClientMsg_AghsStatusAlert struct { func (x *CDOTAClientMsg_AghsStatusAlert) Reset() { *x = CDOTAClientMsg_AghsStatusAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[78] + mi := &file_dota_clientmessages_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4687,7 +4812,7 @@ func (x *CDOTAClientMsg_AghsStatusAlert) String() string { func (*CDOTAClientMsg_AghsStatusAlert) ProtoMessage() {} func (x *CDOTAClientMsg_AghsStatusAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[78] + mi := &file_dota_clientmessages_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4700,7 +4825,7 @@ func (x *CDOTAClientMsg_AghsStatusAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAClientMsg_AghsStatusAlert.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_AghsStatusAlert) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{78} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{80} } func (x *CDOTAClientMsg_AghsStatusAlert) GetSourcePlayerId() int32 { @@ -4761,7 +4886,7 @@ type CDOTAClientMsg_PerfReport struct { func (x *CDOTAClientMsg_PerfReport) Reset() { *x = CDOTAClientMsg_PerfReport{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[79] + mi := &file_dota_clientmessages_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4774,7 +4899,7 @@ func (x *CDOTAClientMsg_PerfReport) String() string { func (*CDOTAClientMsg_PerfReport) ProtoMessage() {} func (x *CDOTAClientMsg_PerfReport) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[79] + mi := &file_dota_clientmessages_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4787,7 +4912,7 @@ func (x *CDOTAClientMsg_PerfReport) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAClientMsg_PerfReport.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_PerfReport) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{79} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{81} } func (x *CDOTAClientMsg_PerfReport) GetAverageFrameTime() float32 { @@ -4944,7 +5069,7 @@ type CDOTAClientMsg_ContextualTips_Subscribe_Entry struct { func (x *CDOTAClientMsg_ContextualTips_Subscribe_Entry) Reset() { *x = CDOTAClientMsg_ContextualTips_Subscribe_Entry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[80] + mi := &file_dota_clientmessages_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4957,7 +5082,7 @@ func (x *CDOTAClientMsg_ContextualTips_Subscribe_Entry) String() string { func (*CDOTAClientMsg_ContextualTips_Subscribe_Entry) ProtoMessage() {} func (x *CDOTAClientMsg_ContextualTips_Subscribe_Entry) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[80] + mi := &file_dota_clientmessages_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4970,7 +5095,7 @@ func (x *CDOTAClientMsg_ContextualTips_Subscribe_Entry) ProtoReflect() protorefl // Deprecated: Use CDOTAClientMsg_ContextualTips_Subscribe_Entry.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_ContextualTips_Subscribe_Entry) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{80} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{82} } func (x *CDOTAClientMsg_ContextualTips_Subscribe_Entry) GetUnsubscribe() bool { @@ -5012,7 +5137,7 @@ type CDOTAClientMsg_ContextualTips_Subscribe struct { func (x *CDOTAClientMsg_ContextualTips_Subscribe) Reset() { *x = CDOTAClientMsg_ContextualTips_Subscribe{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[81] + mi := &file_dota_clientmessages_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5025,7 +5150,7 @@ func (x *CDOTAClientMsg_ContextualTips_Subscribe) String() string { func (*CDOTAClientMsg_ContextualTips_Subscribe) ProtoMessage() {} func (x *CDOTAClientMsg_ContextualTips_Subscribe) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[81] + mi := &file_dota_clientmessages_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5038,7 +5163,7 @@ func (x *CDOTAClientMsg_ContextualTips_Subscribe) ProtoReflect() protoreflect.Me // Deprecated: Use CDOTAClientMsg_ContextualTips_Subscribe.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_ContextualTips_Subscribe) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{81} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{83} } func (x *CDOTAClientMsg_ContextualTips_Subscribe) GetTips() []*CDOTAClientMsg_ContextualTips_Subscribe_Entry { @@ -5060,7 +5185,7 @@ type CDOTAClientMsg_ChatMessage struct { func (x *CDOTAClientMsg_ChatMessage) Reset() { *x = CDOTAClientMsg_ChatMessage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[82] + mi := &file_dota_clientmessages_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5073,7 +5198,7 @@ func (x *CDOTAClientMsg_ChatMessage) String() string { func (*CDOTAClientMsg_ChatMessage) ProtoMessage() {} func (x *CDOTAClientMsg_ChatMessage) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[82] + mi := &file_dota_clientmessages_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5086,7 +5211,7 @@ func (x *CDOTAClientMsg_ChatMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAClientMsg_ChatMessage.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_ChatMessage) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{82} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{84} } func (x *CDOTAClientMsg_ChatMessage) GetChannelType() uint32 { @@ -5115,7 +5240,7 @@ type CDOTAClientMsg_DuelAccepted struct { func (x *CDOTAClientMsg_DuelAccepted) Reset() { *x = CDOTAClientMsg_DuelAccepted{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[83] + mi := &file_dota_clientmessages_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5128,7 +5253,7 @@ func (x *CDOTAClientMsg_DuelAccepted) String() string { func (*CDOTAClientMsg_DuelAccepted) ProtoMessage() {} func (x *CDOTAClientMsg_DuelAccepted) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[83] + mi := &file_dota_clientmessages_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5141,7 +5266,7 @@ func (x *CDOTAClientMsg_DuelAccepted) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAClientMsg_DuelAccepted.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_DuelAccepted) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{83} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{85} } func (x *CDOTAClientMsg_DuelAccepted) GetChallengerPlayerId() int32 { @@ -5171,7 +5296,7 @@ type CDOTAClientMsg_ChooseNeutralItem struct { func (x *CDOTAClientMsg_ChooseNeutralItem) Reset() { *x = CDOTAClientMsg_ChooseNeutralItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[84] + mi := &file_dota_clientmessages_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5184,7 +5309,7 @@ func (x *CDOTAClientMsg_ChooseNeutralItem) String() string { func (*CDOTAClientMsg_ChooseNeutralItem) ProtoMessage() {} func (x *CDOTAClientMsg_ChooseNeutralItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[84] + mi := &file_dota_clientmessages_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5197,7 +5322,7 @@ func (x *CDOTAClientMsg_ChooseNeutralItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAClientMsg_ChooseNeutralItem.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_ChooseNeutralItem) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{84} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{86} } func (x *CDOTAClientMsg_ChooseNeutralItem) GetNeutralItemIndex() int32 { @@ -5232,7 +5357,7 @@ type CDOTAClientMsg_PlayerDraftPick struct { func (x *CDOTAClientMsg_PlayerDraftPick) Reset() { *x = CDOTAClientMsg_PlayerDraftPick{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[85] + mi := &file_dota_clientmessages_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5245,7 +5370,7 @@ func (x *CDOTAClientMsg_PlayerDraftPick) String() string { func (*CDOTAClientMsg_PlayerDraftPick) ProtoMessage() {} func (x *CDOTAClientMsg_PlayerDraftPick) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[85] + mi := &file_dota_clientmessages_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5258,7 +5383,7 @@ func (x *CDOTAClientMsg_PlayerDraftPick) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAClientMsg_PlayerDraftPick.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_PlayerDraftPick) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{85} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{87} } func (x *CDOTAClientMsg_PlayerDraftPick) GetPlayerId() int32 { @@ -5279,7 +5404,7 @@ type CDOTAClientMsg_PlayerDraftSuggest struct { func (x *CDOTAClientMsg_PlayerDraftSuggest) Reset() { *x = CDOTAClientMsg_PlayerDraftSuggest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[86] + mi := &file_dota_clientmessages_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5292,7 +5417,7 @@ func (x *CDOTAClientMsg_PlayerDraftSuggest) String() string { func (*CDOTAClientMsg_PlayerDraftSuggest) ProtoMessage() {} func (x *CDOTAClientMsg_PlayerDraftSuggest) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[86] + mi := &file_dota_clientmessages_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5305,7 +5430,7 @@ func (x *CDOTAClientMsg_PlayerDraftSuggest) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAClientMsg_PlayerDraftSuggest.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_PlayerDraftSuggest) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{86} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{88} } func (x *CDOTAClientMsg_PlayerDraftSuggest) GetPlayerId() int32 { @@ -5327,7 +5452,7 @@ type CDOTAClientMsg_PlayerDraftPreferRole struct { func (x *CDOTAClientMsg_PlayerDraftPreferRole) Reset() { *x = CDOTAClientMsg_PlayerDraftPreferRole{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[87] + mi := &file_dota_clientmessages_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5340,7 +5465,7 @@ func (x *CDOTAClientMsg_PlayerDraftPreferRole) String() string { func (*CDOTAClientMsg_PlayerDraftPreferRole) ProtoMessage() {} func (x *CDOTAClientMsg_PlayerDraftPreferRole) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[87] + mi := &file_dota_clientmessages_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5353,7 +5478,7 @@ func (x *CDOTAClientMsg_PlayerDraftPreferRole) ProtoReflect() protoreflect.Messa // Deprecated: Use CDOTAClientMsg_PlayerDraftPreferRole.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_PlayerDraftPreferRole) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{87} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{89} } func (x *CDOTAClientMsg_PlayerDraftPreferRole) GetRoleIdx() int32 { @@ -5381,7 +5506,7 @@ type CDOTAClientMsg_PlayerDraftPreferTeam struct { func (x *CDOTAClientMsg_PlayerDraftPreferTeam) Reset() { *x = CDOTAClientMsg_PlayerDraftPreferTeam{} if protoimpl.UnsafeEnabled { - mi := &file_dota_clientmessages_proto_msgTypes[88] + mi := &file_dota_clientmessages_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5394,7 +5519,7 @@ func (x *CDOTAClientMsg_PlayerDraftPreferTeam) String() string { func (*CDOTAClientMsg_PlayerDraftPreferTeam) ProtoMessage() {} func (x *CDOTAClientMsg_PlayerDraftPreferTeam) ProtoReflect() protoreflect.Message { - mi := &file_dota_clientmessages_proto_msgTypes[88] + mi := &file_dota_clientmessages_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5407,7 +5532,7 @@ func (x *CDOTAClientMsg_PlayerDraftPreferTeam) ProtoReflect() protoreflect.Messa // Deprecated: Use CDOTAClientMsg_PlayerDraftPreferTeam.ProtoReflect.Descriptor instead. func (*CDOTAClientMsg_PlayerDraftPreferTeam) Descriptor() ([]byte, []int) { - return file_dota_clientmessages_proto_rawDescGZIP(), []int{88} + return file_dota_clientmessages_proto_rawDescGZIP(), []int{90} } func (x *CDOTAClientMsg_PlayerDraftPreferTeam) GetTeam() int32 { @@ -5417,6 +5542,61 @@ func (x *CDOTAClientMsg_PlayerDraftPreferTeam) GetTeam() int32 { return 0 } +type CDOTAClientMsg_AbilityAlert struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AbilityEntindex *uint32 `protobuf:"varint,1,opt,name=ability_entindex,json=abilityEntindex" json:"ability_entindex,omitempty"` + CtrlHeld *bool `protobuf:"varint,2,opt,name=ctrl_held,json=ctrlHeld" json:"ctrl_held,omitempty"` +} + +func (x *CDOTAClientMsg_AbilityAlert) Reset() { + *x = CDOTAClientMsg_AbilityAlert{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_clientmessages_proto_msgTypes[91] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CDOTAClientMsg_AbilityAlert) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CDOTAClientMsg_AbilityAlert) ProtoMessage() {} + +func (x *CDOTAClientMsg_AbilityAlert) ProtoReflect() protoreflect.Message { + mi := &file_dota_clientmessages_proto_msgTypes[91] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CDOTAClientMsg_AbilityAlert.ProtoReflect.Descriptor instead. +func (*CDOTAClientMsg_AbilityAlert) Descriptor() ([]byte, []int) { + return file_dota_clientmessages_proto_rawDescGZIP(), []int{91} +} + +func (x *CDOTAClientMsg_AbilityAlert) GetAbilityEntindex() uint32 { + if x != nil && x.AbilityEntindex != nil { + return *x.AbilityEntindex + } + return 0 +} + +func (x *CDOTAClientMsg_AbilityAlert) GetCtrlHeld() bool { + if x != nil && x.CtrlHeld != nil { + return *x.CtrlHeld + } + return false +} + var File_dota_clientmessages_proto protoreflect.FileDescriptor var file_dota_clientmessages_proto_rawDesc = []byte{ @@ -5425,655 +5605,677 @@ var file_dota_clientmessages_proto_rawDesc = []byte{ 0x61, 0x1a, 0x19, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5a, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x70, 0x50, 0x69, 0x6e, 0x67, 0x12, - 0x40, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x69, 0x6e, 0x67, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, - 0x67, 0x22, 0x53, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x37, 0x0a, - 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, - 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x52, 0x09, 0x69, 0x74, 0x65, - 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6e, 0x65, 0x6d, 0x79, 0x49, - 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1b, 0x0a, - 0x09, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x72, 0x75, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x69, 0x74, 0x65, 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, - 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, - 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, - 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x22, - 0x77, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, - 0x2e, 0x0a, 0x13, 0x62, 0x75, 0x66, 0x66, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x62, 0x75, - 0x66, 0x66, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x75, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x63, 0x6b, - 0x65, 0x64, 0x42, 0x75, 0x66, 0x66, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x75, 0x66, 0x66, 0x5f, 0x69, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x67, 0x63, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5a, 0x0a, 0x16, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4d, + 0x61, 0x70, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x40, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x22, 0x53, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x41, + 0x6c, 0x65, 0x72, 0x74, 0x12, 0x37, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x6c, 0x65, + 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, + 0x72, 0x74, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x22, 0xd6, 0x01, + 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, + 0x5f, 0x45, 0x6e, 0x65, 0x6d, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, + 0x23, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x75, 0x6e, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, + 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, + 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, + 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, + 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x22, 0x77, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x75, 0x66, 0x66, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x62, 0x75, 0x66, 0x66, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, - 0x6d, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x48, 0x50, 0x4d, 0x61, 0x6e, 0x61, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, 0x0a, + 0x75, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, + 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x42, 0x75, 0x66, 0x66, 0x12, 0x2e, 0x0a, + 0x13, 0x62, 0x75, 0x66, 0x66, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x62, 0x75, 0x66, 0x66, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, - 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x72, - 0x61, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x52, 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x96, - 0x01, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x43, 0x61, 0x6d, 0x70, 0x41, 0x6c, 0x65, - 0x72, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x65, 0x6e, - 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x70, - 0x61, 0x77, 0x6e, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, - 0x0d, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x75, 0x6e, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x63, 0x6b, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x37, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x41, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, + 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x6d, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x50, 0x4d, 0x61, 0x6e, 0x61, 0x41, + 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, + 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, + 0x0f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x52, 0x61, 0x77, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x96, 0x01, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, + 0x43, 0x61, 0x6d, 0x70, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x70, 0x61, + 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x65, 0x6e, 0x74, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x75, 0x6e, 0x69, + 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x61, + 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0c, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x37, + 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, + 0x5f, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, + 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, + 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x22, 0x37, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x61, 0x64, 0x61, 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, - 0x22, 0x37, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x73, 0x67, 0x5f, 0x52, 0x61, 0x64, 0x61, 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1a, 0x0a, - 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x22, 0x4a, 0x0a, 0x16, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x70, 0x4c, - 0x69, 0x6e, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x6d, 0x61, 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x07, 0x6d, 0x61, - 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x32, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, - 0x74, 0x69, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x05, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x22, 0xab, 0x02, 0x0a, 0x22, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, - 0x74, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x4d, 0x6f, 0x64, 0x65, - 0x12, 0x42, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, + 0x22, 0x4a, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, + 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x6d, 0x61, + 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x70, 0x4c, + 0x69, 0x6e, 0x65, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x32, 0x0a, 0x1a, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x41, + 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x22, 0xab, 0x02, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x74, 0x74, + 0x61, 0x63, 0x6b, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x42, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, + 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x4d, 0x6f, 0x64, 0x65, 0x2e, + 0x45, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x4f, 0x0a, 0x09, 0x75, + 0x6e, 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x74, - 0x74, 0x61, 0x63, 0x6b, 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x45, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, - 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x4f, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, - 0x69, 0x74, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x4d, 0x6f, 0x64, - 0x65, 0x2e, 0x45, 0x55, 0x6e, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x75, 0x6e, 0x69, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x49, 0x0a, 0x05, 0x45, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x14, - 0x0a, 0x07, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x45, 0x56, 0x45, 0x52, 0x10, 0x00, 0x12, - 0x13, 0x0a, 0x0f, 0x41, 0x46, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x50, 0x45, 0x4c, 0x4c, 0x43, 0x41, - 0x53, 0x54, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x4c, 0x57, 0x41, 0x59, 0x53, 0x10, 0x02, - 0x22, 0x25, 0x0a, 0x09, 0x45, 0x55, 0x6e, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, - 0x06, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x55, 0x4d, - 0x4d, 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x22, 0x44, 0x0a, 0x28, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x41, - 0x75, 0x74, 0x6f, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x41, 0x66, 0x74, 0x65, 0x72, 0x53, 0x70, - 0x65, 0x6c, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x3f, 0x0a, - 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, - 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, - 0x48, 0x61, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x3e, - 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x5f, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, - 0x48, 0x61, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x35, - 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x5f, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x22, 0x16, 0x0a, 0x14, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x75, 0x73, 0x65, 0x22, 0x31, 0x0a, - 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, - 0x53, 0x68, 0x6f, 0x70, 0x56, 0x69, 0x65, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, - 0x22, 0x68, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x55, 0x6e, 0x69, 0x74, 0x53, 0x68, 0x61, 0x72, 0x65, 0x46, - 0x6c, 0x61, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, - 0x66, 0x6c, 0x61, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x39, 0x0a, 0x1a, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x77, 0x61, - 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x38, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x77, 0x61, 0x70, 0x41, 0x63, 0x63, 0x65, - 0x70, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, - 0x52, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x36, 0x0a, 0x09, 0x77, - 0x6f, 0x72, 0x6c, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x57, - 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6c, - 0x69, 0x6e, 0x65, 0x22, 0x23, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x72, 0x61, - 0x70, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x87, 0x01, 0x0a, 0x18, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x74, - 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x63, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x22, 0x0a, - 0x0d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x49, - 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, - 0x49, 0x64, 0x22, 0x5a, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, - 0x75, 0x70, 0x12, 0x3a, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x70, 0x6f, 0x70, 0x75, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, - 0x70, 0x75, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x70, 0x6f, 0x70, 0x75, 0x70, 0x22, 0x70, - 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x5f, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x50, - 0x6f, 0x70, 0x75, 0x70, 0x73, 0x12, 0x49, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, - 0x61, 0x6c, 0x6c, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x69, 0x73, - 0x6d, 0x69, 0x73, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, - 0x73, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x61, 0x6c, 0x6c, 0x6d, 0x73, 0x67, - 0x22, 0x6e, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x73, 0x67, 0x5f, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x4c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x6f, 0x73, - 0x65, 0x6e, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, - 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x4c, 0x61, 0x6e, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x68, 0x65, 0x6c, - 0x70, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x22, 0x6d, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, - 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, - 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, - 0x0b, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x22, - 0x5e, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, 0x79, - 0x12, 0x3d, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x51, 0x75, 0x69, 0x63, - 0x6b, 0x42, 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, - 0x3e, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x56, 0x6f, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, - 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, - 0xa3, 0x01, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x73, 0x67, 0x5f, 0x57, 0x69, 0x6c, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x41, - 0x6c, 0x65, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, - 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, - 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x6f, 0x6c, 0x64, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, - 0x69, 0x6e, 0x67, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x12, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x22, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x75, 0x79, 0x42, 0x61, 0x63, 0x6b, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x22, 0xba, 0x01, 0x0a, 0x1c, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x51, 0x75, 0x69, - 0x63, 0x6b, 0x42, 0x75, 0x79, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x73, 0x74, 0x12, - 0x32, 0x0a, 0x15, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, - 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, - 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x53, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x62, 0x75, 0x79, 0x62, - 0x61, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x42, - 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x22, 0x3b, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, - 0x68, 0x6f, 0x77, 0x43, 0x61, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x63, - 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x63, - 0x61, 0x73, 0x65, 0x22, 0x42, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x5a, 0x6f, 0x6f, 0x6d, - 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x7a, 0x6f, 0x6f, 0x6d, 0x5f, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x7a, 0x6f, 0x6f, - 0x6d, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x48, 0x0a, 0x28, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, - 0x6d, 0x61, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, - 0x6e, 0x22, 0x51, 0x0a, 0x35, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x55, - 0x73, 0x69, 0x6e, 0x67, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x65, 0x64, 0x43, 0x61, 0x6d, 0x65, - 0x72, 0x61, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, + 0x74, 0x61, 0x63, 0x6b, 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x45, 0x55, 0x6e, 0x69, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x49, 0x0a, 0x05, + 0x45, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x07, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, + 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4e, + 0x45, 0x56, 0x45, 0x52, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x46, 0x54, 0x45, 0x52, 0x5f, + 0x53, 0x50, 0x45, 0x4c, 0x4c, 0x43, 0x41, 0x53, 0x54, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, + 0x4c, 0x57, 0x41, 0x59, 0x53, 0x10, 0x02, 0x22, 0x25, 0x0a, 0x09, 0x45, 0x55, 0x6e, 0x69, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x00, + 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x55, 0x4d, 0x4d, 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x22, 0x44, + 0x0a, 0x28, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, + 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, + 0x41, 0x66, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x6c, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x22, 0x4b, 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x69, 0x6c, 0x6c, 0x45, 0x6d, 0x70, 0x74, 0x79, - 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x42, 0x6f, 0x74, 0x73, 0x12, 0x22, 0x0a, - 0x0c, 0x66, 0x69, 0x6c, 0x6c, 0x77, 0x69, 0x74, 0x68, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x69, 0x6c, 0x6c, 0x77, 0x69, 0x74, 0x68, 0x62, 0x6f, 0x74, - 0x73, 0x22, 0x47, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x4c, 0x69, - 0x6b, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6f, 0x77, 0x6e, - 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x1e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x43, 0x4e, 0x59, 0x32, 0x30, 0x31, 0x35, 0x43, 0x6d, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x22, 0xea, 0x01, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x65, 0x6d, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x17, 0x0a, 0x07, - 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, - 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x10, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, - 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x54, 0x6f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x12, 0x1b, - 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x79, - 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x34, 0x0a, 0x16, 0x6b, 0x65, 0x65, 0x70, 0x5f, - 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x6d, 0x6f, 0x68, 0x65, 0x72, - 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x6b, 0x65, 0x65, 0x70, 0x45, 0x78, 0x69, - 0x73, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x6d, 0x6f, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x75, 0x0a, - 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, - 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, - 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x49, 0x64, 0x22, 0x9c, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x71, - 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, - 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, - 0x6f, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x69, 0x6e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x12, - 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x67, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x69, 0x6e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x12, 0x2d, 0x0a, 0x13, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x10, 0x77, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x74, 0x65, 0x6d, - 0x49, 0x64, 0x22, 0x41, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x57, 0x61, 0x67, 0x65, 0x72, 0x12, 0x25, - 0x0a, 0x0e, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, - 0x57, 0x61, 0x67, 0x65, 0x72, 0x22, 0x3a, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x6f, - 0x75, 0x6e, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x22, 0x4f, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, - 0x69, 0x70, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x11, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x49, 0x64, 0x22, 0x50, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x4f, 0x72, 0x64, 0x65, - 0x72, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, - 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x06, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x73, 0x22, 0x64, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x58, 0x50, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, + 0x62, 0x6c, 0x65, 0x64, 0x22, 0x3f, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x48, 0x61, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x3e, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x48, 0x61, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x35, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x22, 0x16, 0x0a, 0x14, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, + 0x61, 0x75, 0x73, 0x65, 0x22, 0x31, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x68, 0x6f, 0x70, 0x56, 0x69, 0x65, 0x77, 0x4d, + 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0x68, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x55, 0x6e, 0x69, + 0x74, 0x53, 0x68, 0x61, 0x72, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x22, 0x39, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x77, 0x61, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x38, 0x0a, 0x19, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, + 0x77, 0x61, 0x70, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x52, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, + 0x6e, 0x65, 0x12, 0x36, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x52, + 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x23, 0x0a, 0x21, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x47, 0x72, 0x61, 0x70, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, + 0x87, 0x01, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, + 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x26, 0x0a, 0x0f, + 0x63, 0x68, 0x61, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6d, 0x6f, 0x74, + 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, + 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x5a, 0x0a, 0x1c, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, + 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x12, 0x3a, 0x0a, 0x09, 0x73, 0x74, 0x61, + 0x74, 0x70, 0x6f, 0x70, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, + 0x64, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, + 0x70, 0x6f, 0x70, 0x75, 0x70, 0x22, 0x70, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x41, + 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x73, 0x12, 0x49, 0x0a, 0x0d, + 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x61, 0x6c, 0x6c, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, + 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x73, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73, + 0x73, 0x61, 0x6c, 0x6c, 0x6d, 0x73, 0x67, 0x22, 0x6e, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x4c, + 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, + 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x4c, 0x61, 0x6e, 0x65, + 0x12, 0x25, 0x0a, 0x0e, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, + 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x6d, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x51, 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x26, 0x0a, 0x0f, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x72, 0x63, 0x68, + 0x61, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x5e, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x51, + 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, 0x79, 0x12, 0x3d, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, + 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x3e, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x56, + 0x6f, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xa3, 0x01, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x69, 0x6c, 0x6c, 0x50, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x6d, 0x61, + 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x6f, 0x6c, + 0x64, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x75, + 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x22, 0x0a, 0x20, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x42, + 0x75, 0x79, 0x42, 0x61, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, + 0x22, 0xba, 0x01, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x73, 0x67, 0x5f, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, 0x79, 0x41, 0x6c, 0x65, 0x72, + 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, + 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x6f, 0x6c, + 0x64, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x6f, + 0x6c, 0x64, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, + 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6f, 0x6c, 0x64, + 0x6f, 0x77, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x68, + 0x6f, 0x77, 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x22, 0x3b, 0x0a, + 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x68, 0x6f, 0x77, 0x43, 0x61, 0x73, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x22, 0x42, 0x0a, 0x1f, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x61, 0x6d, + 0x65, 0x72, 0x61, 0x5a, 0x6f, 0x6f, 0x6d, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, + 0x0b, 0x7a, 0x6f, 0x6f, 0x6d, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0a, 0x7a, 0x6f, 0x6f, 0x6d, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x48, + 0x0a, 0x28, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, + 0x5f, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x69, 0x6e, + 0x67, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, + 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, + 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x22, 0x51, 0x0a, 0x35, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x72, 0x6f, 0x61, 0x64, + 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x41, 0x73, 0x73, 0x69, 0x73, + 0x74, 0x65, 0x64, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x4b, 0x0a, 0x25, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x69, + 0x6c, 0x6c, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, + 0x42, 0x6f, 0x74, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x69, 0x6c, 0x6c, 0x77, 0x69, 0x74, 0x68, + 0x62, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x69, 0x6c, 0x6c, + 0x77, 0x69, 0x74, 0x68, 0x62, 0x6f, 0x74, 0x73, 0x22, 0x47, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x77, 0x6e, + 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0d, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, + 0x64, 0x22, 0x34, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x4e, 0x59, 0x32, 0x30, 0x31, 0x35, + 0x43, 0x6d, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x9a, 0x02, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x65, 0x6d, 0x6f, 0x48, + 0x65, 0x72, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x10, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x70, 0x61, 0x77, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x54, 0x6f, + 0x53, 0x70, 0x61, 0x77, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, + 0x66, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, + 0x66, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x0a, + 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x34, + 0x0a, 0x16, 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, + 0x64, 0x65, 0x6d, 0x6f, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, + 0x6b, 0x65, 0x65, 0x70, 0x45, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x6d, 0x6f, + 0x68, 0x65, 0x72, 0x6f, 0x12, 0x2e, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, + 0x44, 0x61, 0x74, 0x61, 0x22, 0x75, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x22, 0x9c, 0x01, 0x0a, 0x1e, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x12, 0x27, + 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, + 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, + 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0x3d, 0x0a, 0x18, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x69, + 0x6e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, + 0x67, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x1d, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x69, 0x6e, + 0x57, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x2d, 0x0a, 0x13, 0x77, 0x61, + 0x67, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x77, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x41, 0x0a, 0x18, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x61, 0x6e, 0x6b, + 0x57, 0x61, 0x67, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, + 0x65, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x61, + 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x57, 0x61, 0x67, 0x65, 0x72, 0x22, 0x3a, 0x0a, 0x1b, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x4f, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, 0x69, 0x70, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x63, + 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x50, 0x0a, 0x1c, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x22, 0x64, 0x0a, 0x16, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x58, 0x50, + 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, + 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, + 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, + 0x6e, 0x22, 0x96, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x65, 0x65, 0x41, + 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, + 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, + 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x22, 0xf4, 0x01, 0x0a, 0x21, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4b, 0x69, + 0x6c, 0x6c, 0x63, 0x61, 0x6d, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, 0x6e, + 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x09, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, + 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x22, 0x1b, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x73, 0x67, 0x5f, 0x4b, 0x69, 0x6c, 0x6c, 0x4d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x22, 0xed, + 0x01, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, + 0x67, 0x5f, 0x51, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, 0x0a, + 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x61, 0x69, 0x6c, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x47, 0x61, + 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x22, 0x58, + 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, + 0x5f, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x61, 0x74, 0x74, 0x61, 0x63, + 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x68, 0x6f, + 0x77, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x6d, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, - 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x5f, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x22, 0x96, 0x01, 0x0a, 0x1e, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x61, - 0x6c, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x65, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, 0x0a, + 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, + 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x89, 0x01, 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x45, 0x6e, + 0x65, 0x6d, 0x79, 0x53, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x65, 0x6e, + 0x65, 0x6d, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x65, + 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x65, 0x6e, + 0x65, 0x6d, 0x79, 0x53, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x75, 0x0a, 0x26, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, + 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x77, 0x61, 0x72, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x15, 0x0a, 0x06, + 0x77, 0x61, 0x72, 0x64, 0x5f, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x77, 0x61, + 0x72, 0x64, 0x58, 0x12, 0x15, 0x0a, 0x06, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x79, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x05, 0x77, 0x61, 0x72, 0x64, 0x59, 0x22, 0x72, 0x0a, 0x17, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x6c, + 0x6c, 0x44, 0x69, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, + 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, + 0x4d, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x22, 0x3c, + 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, + 0x5f, 0x46, 0x6c, 0x69, 0x70, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x27, 0x0a, 0x25, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3d, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x6b, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x49, 0x64, 0x22, 0x4f, 0x0a, 0x28, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x65, 0x6c, 0x70, 0x54, 0x69, 0x70, 0x53, 0x79, + 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, + 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x64, 0x22, 0xab, 0x01, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x42, 0x75, 0x6c, 0x6b, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x12, 0x1b, 0x0a, + 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, + 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x11, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x44, 0x65, 0x61, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x22, 0x7f, 0x0a, 0x29, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, + 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x63, 0x74, 0x72, 0x6c, 0x5f, 0x69, 0x73, 0x5f, 0x64, 0x6f, + 0x77, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x74, 0x72, 0x6c, 0x49, 0x73, + 0x44, 0x6f, 0x77, 0x6e, 0x22, 0x67, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x75, 0x69, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x2b, 0x0a, 0x11, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x61, 0x6c, 0x63, + 0x75, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x66, 0x6f, 0x72, + 0x63, 0x65, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x6e, 0x0a, + 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, + 0x47, 0x75, 0x69, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, + 0x11, 0x67, 0x75, 0x69, 0x64, 0x65, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x67, 0x75, 0x69, 0x64, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, + 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x67, 0x75, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0b, 0x69, 0x73, 0x50, 0x6c, 0x75, 0x73, 0x47, 0x75, 0x69, 0x64, 0x65, 0x22, 0xac, 0x01, + 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, + 0x5f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x24, 0x0a, + 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x65, 0x72, + 0x6f, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, + 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x22, 0x62, 0x0a, 0x1b, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, + 0x61, 0x6c, 0x75, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x22, 0x6b, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, + 0x73, 0x67, 0x5f, 0x47, 0x69, 0x66, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x28, 0x0a, + 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x43, 0x0a, + 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, + 0x47, 0x69, 0x66, 0x74, 0x45, 0x76, 0x65, 0x72, 0x79, 0x6f, 0x6e, 0x65, 0x12, 0x24, 0x0a, 0x0e, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x22, 0x34, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x69, 0x70, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x19, 0x0a, + 0x08, 0x74, 0x69, 0x70, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x74, 0x69, 0x70, 0x54, 0x65, 0x78, 0x74, 0x22, 0x4c, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, - 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, - 0x72, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x72, - 0x6e, 0x65, 0x64, 0x22, 0xf4, 0x01, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4b, 0x69, 0x6c, 0x6c, 0x63, 0x61, 0x6d, 0x44, 0x61, - 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x6b, - 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, - 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, - 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, - 0x72, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, - 0x65, 0x72, 0x6f, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x1b, 0x0a, 0x19, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x4b, 0x69, 0x6c, - 0x6c, 0x4d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x22, 0xed, 0x01, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x51, 0x75, 0x65, 0x73, 0x74, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, - 0x67, 0x6f, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x61, - 0x69, 0x6c, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, - 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, - 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x22, 0x58, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, - 0x41, 0x75, 0x74, 0x6f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, - 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x21, - 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x22, 0x6d, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x45, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x61, 0x76, 0x65, + 0x72, 0x6e, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, + 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22, 0x4e, 0x0a, + 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x61, 0x75, 0x73, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x19, + 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb3, 0x02, + 0x0a, 0x29, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, + 0x5f, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x40, 0x0a, 0x08, 0x62, + 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, + 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x43, 0x0a, + 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, 0x73, + 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, + 0x74, 0x79, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, + 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, + 0x65, 0x65, 0x6c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x43, + 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, + 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, + 0x6b, 0x52, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x52, + 0x61, 0x74, 0x65, 0x22, 0x6b, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x53, + 0x6c, 0x6f, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x22, 0xaa, 0x01, 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x64, 0x64, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4f, + 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x61, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x41, 0x67, 0x6f, 0x22, 0x58, 0x0a, + 0x2c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, + 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x28, 0x0a, + 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x57, 0x0a, 0x2b, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, + 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x22, 0xbc, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x67, 0x68, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x6c, + 0x65, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, + 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x22, 0x89, 0x01, 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x45, 0x6e, 0x65, 0x6d, 0x79, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0f, - 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x75, 0x0a, 0x26, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, - 0x65, 0x74, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, - 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x61, 0x72, 0x64, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x15, 0x0a, 0x06, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x78, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x77, 0x61, 0x72, 0x64, 0x58, 0x12, 0x15, 0x0a, 0x06, - 0x77, 0x61, 0x72, 0x64, 0x5f, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x77, 0x61, - 0x72, 0x64, 0x59, 0x22, 0x72, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x6c, 0x6c, 0x44, 0x69, 0x63, 0x65, 0x12, 0x21, - 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, - 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x22, 0x3c, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x6c, 0x69, 0x70, 0x43, 0x6f, - 0x69, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x27, 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, - 0x74, 0x65, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3d, - 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x5f, 0x4d, 0x61, 0x6b, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, - 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x4f, 0x0a, - 0x28, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, - 0x48, 0x65, 0x6c, 0x70, 0x54, 0x69, 0x70, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x70, - 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0c, 0x74, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x22, 0xab, - 0x01, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x75, 0x6c, 0x6b, 0x43, 0x6f, 0x6d, - 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x72, 0x65, - 0x63, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x61, 0x74, 0x68, 0x12, - 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x7f, 0x0a, 0x29, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x41, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x63, - 0x74, 0x72, 0x6c, 0x5f, 0x69, 0x73, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0a, 0x63, 0x74, 0x72, 0x6c, 0x49, 0x73, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0x67, 0x0a, + 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, + 0xc3, 0x08, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, + 0x73, 0x67, 0x5f, 0x50, 0x65, 0x72, 0x66, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x2c, 0x0a, + 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x61, 0x76, 0x65, 0x72, 0x61, + 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6d, + 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6d, + 0x70, 0x75, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x75, + 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x6d, + 0x61, 0x78, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, 0x0a, + 0x18, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, + 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x15, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, + 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x61, 0x76, 0x65, 0x72, 0x61, + 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, + 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x19, 0x61, + 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x6d, 0x75, + 0x6c, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x6d, 0x61, 0x78, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x15, 0x6d, 0x61, 0x78, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, + 0x70, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, + 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x4f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5a, 0x0a, 0x2b, 0x61, 0x76, 0x65, + 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x25, + 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x61, 0x69, 0x74, 0x46, 0x6f, 0x72, 0x52, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x27, 0x6d, 0x61, 0x78, 0x5f, 0x77, 0x61, 0x69, + 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, + 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x21, 0x6d, 0x61, 0x78, 0x57, 0x61, 0x69, 0x74, 0x46, + 0x6f, 0x72, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x43, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x76, 0x65, + 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x77, 0x61, + 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x77, 0x61, + 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, + 0x78, 0x53, 0x77, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x61, 0x76, 0x65, + 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, 0x61, 0x76, + 0x65, 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, + 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x76, 0x65, 0x72, 0x61, + 0x67, 0x65, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x49, + 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x61, 0x76, 0x65, 0x72, 0x61, + 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1a, + 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x6d, 0x61, + 0x78, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, 0x6d, + 0x61, 0x78, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xbd, 0x01, 0x0a, 0x2d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x75, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x5f, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, + 0x65, 0x5f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x75, 0x6e, 0x73, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x6e, + 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x69, 0x70, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x69, 0x70, 0x49, 0x64, + 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, + 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x70, + 0x72, 0x69, 0x6f, 0x72, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x65, 0x65, + 0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, + 0x73, 0x53, 0x65, 0x65, 0x6e, 0x22, 0x72, 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x75, + 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x5f, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, + 0x12, 0x47, 0x0a, 0x04, 0x74, 0x69, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x75, 0x61, 0x6c, 0x54, + 0x69, 0x70, 0x73, 0x5f, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x04, 0x74, 0x69, 0x70, 0x73, 0x22, 0x62, 0x0a, 0x1a, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x74, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x65, 0x78, 0x74, 0x22, 0x7d, 0x0a, + 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, + 0x44, 0x75, 0x65, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2c, + 0x0a, 0x12, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x61, 0x63, 0x63, 0x65, + 0x70, 0x74, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x98, 0x01, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, - 0x47, 0x75, 0x69, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x11, 0x66, 0x6f, 0x72, - 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x52, 0x65, 0x63, 0x61, 0x6c, - 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x6e, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x75, 0x69, 0x64, 0x65, 0x53, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x75, 0x69, 0x64, 0x65, 0x5f, - 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0f, 0x67, 0x75, 0x69, 0x64, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, - 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x67, 0x75, - 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x50, 0x6c, 0x75, - 0x73, 0x47, 0x75, 0x69, 0x64, 0x65, 0x22, 0xac, 0x01, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6d, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, - 0x63, 0x61, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x61, - 0x64, 0x63, 0x61, 0x73, 0x74, 0x22, 0x62, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x61, 0x6c, 0x75, 0x74, 0x65, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, - 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x17, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x69, 0x70, 0x41, - 0x6c, 0x65, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x69, 0x70, 0x5f, 0x74, 0x65, 0x78, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x69, 0x70, 0x54, 0x65, 0x78, 0x74, 0x22, - 0x4c, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, - 0x6c, 0x65, 0x72, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, - 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x45, 0x0a, - 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, - 0x53, 0x65, 0x74, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, - 0x61, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, - 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x70, 0x56, 0x61, 0x72, - 0x69, 0x61, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x75, 0x73, 0x65, 0x47, 0x61, 0x6d, 0x65, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x22, 0xb3, 0x02, 0x0a, 0x29, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, - 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, - 0x6f, 0x72, 0x12, 0x40, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, - 0x41, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, - 0x76, 0x69, 0x6f, 0x72, 0x12, 0x43, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x61, 0x63, 0x74, - 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, - 0x6c, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x70, 0x6c, 0x61, - 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x68, 0x61, - 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, - 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x74, - 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x43, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, - 0x6b, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, - 0x50, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x70, 0x6c, - 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x61, 0x74, 0x65, 0x22, 0x6b, 0x0a, 0x21, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6d, 0x70, - 0x74, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, + 0x43, 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, + 0x6d, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, + 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6c, 0x6f, 0x74, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x6c, - 0x6f, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xaa, 0x01, 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x64, 0x64, 0x4f, 0x76, - 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4d, 0x61, 0x72, - 0x6b, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x34, 0x0a, - 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x61, - 0x73, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x61, - 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x41, 0x67, 0x6f, 0x22, 0x58, 0x0a, 0x2c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4d, 0x61, - 0x72, 0x6b, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x57, - 0x0a, 0x2b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x5f, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x28, 0x0a, - 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0xbc, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x67, 0x68, 0x73, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, - 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, - 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x6c, 0x65, 0x72, 0x74, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x6c, 0x65, - 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0xc3, 0x08, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x65, 0x72, 0x66, 0x52, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, - 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x10, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x46, - 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x76, 0x65, 0x72, - 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, - 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, - 0x78, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x15, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2f, 0x0a, - 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x6d, 0x61, 0x78, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3f, - 0x0a, 0x1c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x5f, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x19, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x37, 0x0a, 0x18, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, - 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x15, 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x6d, 0x75, - 0x6c, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x76, 0x65, 0x72, - 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x4f, 0x75, - 0x74, 0x70, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, - 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x5a, 0x0a, 0x2b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x61, 0x69, 0x74, - 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x74, - 0x6f, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x25, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x61, - 0x69, 0x74, 0x46, 0x6f, 0x72, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x6f, - 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x27, - 0x6d, 0x61, 0x78, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x21, 0x6d, - 0x61, 0x78, 0x57, 0x61, 0x69, 0x74, 0x46, 0x6f, 0x72, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, - 0x6e, 0x67, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, - 0x72, 0x61, 0x67, 0x65, 0x53, 0x77, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, - 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x53, 0x77, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x39, 0x0a, 0x19, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, - 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x16, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, - 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x6d, - 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x46, - 0x72, 0x61, 0x6d, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, - 0x0a, 0x11, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, - 0x67, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, - 0x78, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x49, 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x41, - 0x0a, 0x1d, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, - 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x49, 0x6e, - 0x70, 0x75, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x39, 0x0a, 0x19, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x70, - 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x14, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, 0x6d, 0x61, 0x78, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x72, - 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xbd, 0x01, 0x0a, - 0x2d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x5f, 0x53, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x20, - 0x0a, 0x0b, 0x75, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, - 0x12, 0x15, 0x0a, 0x06, 0x74, 0x69, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x74, 0x69, 0x70, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x72, 0x69, 0x6f, 0x72, - 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x44, 0x69, 0x73, 0x70, 0x6c, - 0x61, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x72, 0x69, 0x61, - 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, - 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x65, 0x6e, 0x22, 0x72, 0x0a, 0x27, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x5f, 0x53, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x47, 0x0a, 0x04, 0x74, 0x69, 0x70, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x78, 0x74, 0x75, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x5f, 0x53, 0x75, 0x62, 0x73, 0x63, - 0x72, 0x69, 0x62, 0x65, 0x5f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x74, 0x69, 0x70, 0x73, - 0x22, 0x62, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, - 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x65, 0x78, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x54, 0x65, 0x78, 0x74, 0x22, 0x7d, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, - 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x10, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x64, 0x22, 0x98, 0x01, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x4e, 0x65, 0x75, - 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x65, 0x75, 0x74, - 0x72, 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, - 0x6d, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x1d, 0x0a, 0x0a, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x3d, - 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, - 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x40, 0x0a, - 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, - 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, - 0x5b, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, - 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x72, 0x65, - 0x66, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, - 0x69, 0x64, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x49, - 0x64, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x22, 0x3a, 0x0a, 0x24, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, - 0x54, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x2a, 0xa5, 0x17, 0x0a, 0x13, 0x45, 0x44, 0x6f, + 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x6c, + 0x6f, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x3d, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x40, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, + 0x72, 0x61, 0x66, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x5b, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, + 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x78, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x64, + 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, + 0x73, 0x69, 0x72, 0x65, 0x64, 0x22, 0x3a, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, + 0x61, 0x66, 0x74, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x65, 0x61, + 0x6d, 0x22, 0x65, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x41, 0x6c, 0x65, 0x72, 0x74, + 0x12, 0x29, 0x0a, 0x10, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x6e, 0x74, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x63, + 0x74, 0x72, 0x6c, 0x5f, 0x68, 0x65, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, + 0x63, 0x74, 0x72, 0x6c, 0x48, 0x65, 0x6c, 0x64, 0x2a, 0xb0, 0x18, 0x0a, 0x13, 0x45, 0x44, 0x6f, 0x74, 0x61, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x0f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x4d, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x10, 0xad, 0x02, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, @@ -6260,9 +6462,18 @@ var file_dota_clientmessages_proto_rawDesc = []byte{ 0x72, 0x65, 0x66, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xa2, 0x06, 0x12, 0x22, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xa3, 0x06, - 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, - 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, - 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x74, + 0x57, 0x68, 0x65, 0x65, 0x6c, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xa4, 0x06, 0x12, 0x19, 0x0a, + 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xa5, 0x06, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x43, 0x4d, 0x5f, 0x41, 0x6c, 0x6c, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x41, + 0x6c, 0x65, 0x72, 0x74, 0x10, 0xa6, 0x06, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x43, 0x4d, 0x5f, 0x47, 0x69, 0x66, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0xa7, 0x06, + 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x47, 0x69, 0x66, 0x74, + 0x45, 0x76, 0x65, 0x72, 0x79, 0x6f, 0x6e, 0x65, 0x10, 0xa8, 0x06, 0x42, 0x25, 0x5a, 0x23, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, + 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, + 0x74, 0x61, } var ( @@ -6278,7 +6489,7 @@ func file_dota_clientmessages_proto_rawDescGZIP() []byte { } var file_dota_clientmessages_proto_enumTypes = make([]protoimpl.EnumInfo, 3) -var file_dota_clientmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 89) +var file_dota_clientmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 92) var file_dota_clientmessages_proto_goTypes = []interface{}{ (EDotaClientMessages)(0), // 0: dota.EDotaClientMessages (CDOTAClientMsg_UnitsAutoAttackMode_EMode)(0), // 1: dota.CDOTAClientMsg_UnitsAutoAttackMode.EMode @@ -6352,63 +6563,68 @@ var file_dota_clientmessages_proto_goTypes = []interface{}{ (*CDOTAClientMsg_GuideSelected)(nil), // 69: dota.CDOTAClientMsg_GuideSelected (*CDOTAClientMsg_DamageReport)(nil), // 70: dota.CDOTAClientMsg_DamageReport (*CDOTAClientMsg_SalutePlayer)(nil), // 71: dota.CDOTAClientMsg_SalutePlayer - (*CDOTAClientMsg_TipAlert)(nil), // 72: dota.CDOTAClientMsg_TipAlert - (*CDOTAClientMsg_EmptyTeleportAlert)(nil), // 73: dota.CDOTAClientMsg_EmptyTeleportAlert - (*CDOTAClientMsg_SetCavernMapVariant)(nil), // 74: dota.CDOTAClientMsg_SetCavernMapVariant - (*CDOTAClientMsg_PauseGameOrder)(nil), // 75: dota.CDOTAClientMsg_PauseGameOrder - (*CDOTAClientMsg_VersusScene_PlayerBehavior)(nil), // 76: dota.CDOTAClientMsg_VersusScene_PlayerBehavior - (*CDOTAClientMsg_EmptyItemSlotAlert)(nil), // 77: dota.CDOTAClientMsg_EmptyItemSlotAlert - (*CDOTAClientMsg_AddOverwatchReportMarker)(nil), // 78: dota.CDOTAClientMsg_AddOverwatchReportMarker - (*CDOTAClientMsg_AddCommunicationsReportMarker)(nil), // 79: dota.CDOTAClientMsg_AddCommunicationsReportMarker - (*CDOTAClientMsg_AddCommunicationsBlockMarker)(nil), // 80: dota.CDOTAClientMsg_AddCommunicationsBlockMarker - (*CDOTAClientMsg_AghsStatusAlert)(nil), // 81: dota.CDOTAClientMsg_AghsStatusAlert - (*CDOTAClientMsg_PerfReport)(nil), // 82: dota.CDOTAClientMsg_PerfReport - (*CDOTAClientMsg_ContextualTips_Subscribe_Entry)(nil), // 83: dota.CDOTAClientMsg_ContextualTips_Subscribe_Entry - (*CDOTAClientMsg_ContextualTips_Subscribe)(nil), // 84: dota.CDOTAClientMsg_ContextualTips_Subscribe - (*CDOTAClientMsg_ChatMessage)(nil), // 85: dota.CDOTAClientMsg_ChatMessage - (*CDOTAClientMsg_DuelAccepted)(nil), // 86: dota.CDOTAClientMsg_DuelAccepted - (*CDOTAClientMsg_ChooseNeutralItem)(nil), // 87: dota.CDOTAClientMsg_ChooseNeutralItem - (*CDOTAClientMsg_PlayerDraftPick)(nil), // 88: dota.CDOTAClientMsg_PlayerDraftPick - (*CDOTAClientMsg_PlayerDraftSuggest)(nil), // 89: dota.CDOTAClientMsg_PlayerDraftSuggest - (*CDOTAClientMsg_PlayerDraftPreferRole)(nil), // 90: dota.CDOTAClientMsg_PlayerDraftPreferRole - (*CDOTAClientMsg_PlayerDraftPreferTeam)(nil), // 91: dota.CDOTAClientMsg_PlayerDraftPreferTeam - (*CDOTAMsg_LocationPing)(nil), // 92: dota.CDOTAMsg_LocationPing - (*CDOTAMsg_ItemAlert)(nil), // 93: dota.CDOTAMsg_ItemAlert - (*CDOTAMsg_MapLine)(nil), // 94: dota.CDOTAMsg_MapLine - (*CDOTAMsg_WorldLine)(nil), // 95: dota.CDOTAMsg_WorldLine - (*CDOTAMsg_SendStatPopup)(nil), // 96: dota.CDOTAMsg_SendStatPopup - (*CDOTAMsg_DismissAllStatPopups)(nil), // 97: dota.CDOTAMsg_DismissAllStatPopups - (EEvent)(0), // 98: dota.EEvent - (*CDOTAMsg_UnitOrder)(nil), // 99: dota.CDOTAMsg_UnitOrder - (EDOTAVersusScenePlayerBehavior)(0), // 100: dota.EDOTAVersusScenePlayerBehavior - (*VersusScene_PlayActivity)(nil), // 101: dota.VersusScene_PlayActivity - (*VersusScene_ChatWheel)(nil), // 102: dota.VersusScene_ChatWheel - (*VersusScene_PlaybackRate)(nil), // 103: dota.VersusScene_PlaybackRate - (EOverwatchReportReason)(0), // 104: dota.EOverwatchReportReason + (*CDOTAClientMsg_GiftPlayer)(nil), // 72: dota.CDOTAClientMsg_GiftPlayer + (*CDOTAClientMsg_GiftEveryone)(nil), // 73: dota.CDOTAClientMsg_GiftEveryone + (*CDOTAClientMsg_TipAlert)(nil), // 74: dota.CDOTAClientMsg_TipAlert + (*CDOTAClientMsg_EmptyTeleportAlert)(nil), // 75: dota.CDOTAClientMsg_EmptyTeleportAlert + (*CDOTAClientMsg_SetCavernMapVariant)(nil), // 76: dota.CDOTAClientMsg_SetCavernMapVariant + (*CDOTAClientMsg_PauseGameOrder)(nil), // 77: dota.CDOTAClientMsg_PauseGameOrder + (*CDOTAClientMsg_VersusScene_PlayerBehavior)(nil), // 78: dota.CDOTAClientMsg_VersusScene_PlayerBehavior + (*CDOTAClientMsg_EmptyItemSlotAlert)(nil), // 79: dota.CDOTAClientMsg_EmptyItemSlotAlert + (*CDOTAClientMsg_AddOverwatchReportMarker)(nil), // 80: dota.CDOTAClientMsg_AddOverwatchReportMarker + (*CDOTAClientMsg_AddCommunicationsReportMarker)(nil), // 81: dota.CDOTAClientMsg_AddCommunicationsReportMarker + (*CDOTAClientMsg_AddCommunicationsBlockMarker)(nil), // 82: dota.CDOTAClientMsg_AddCommunicationsBlockMarker + (*CDOTAClientMsg_AghsStatusAlert)(nil), // 83: dota.CDOTAClientMsg_AghsStatusAlert + (*CDOTAClientMsg_PerfReport)(nil), // 84: dota.CDOTAClientMsg_PerfReport + (*CDOTAClientMsg_ContextualTips_Subscribe_Entry)(nil), // 85: dota.CDOTAClientMsg_ContextualTips_Subscribe_Entry + (*CDOTAClientMsg_ContextualTips_Subscribe)(nil), // 86: dota.CDOTAClientMsg_ContextualTips_Subscribe + (*CDOTAClientMsg_ChatMessage)(nil), // 87: dota.CDOTAClientMsg_ChatMessage + (*CDOTAClientMsg_DuelAccepted)(nil), // 88: dota.CDOTAClientMsg_DuelAccepted + (*CDOTAClientMsg_ChooseNeutralItem)(nil), // 89: dota.CDOTAClientMsg_ChooseNeutralItem + (*CDOTAClientMsg_PlayerDraftPick)(nil), // 90: dota.CDOTAClientMsg_PlayerDraftPick + (*CDOTAClientMsg_PlayerDraftSuggest)(nil), // 91: dota.CDOTAClientMsg_PlayerDraftSuggest + (*CDOTAClientMsg_PlayerDraftPreferRole)(nil), // 92: dota.CDOTAClientMsg_PlayerDraftPreferRole + (*CDOTAClientMsg_PlayerDraftPreferTeam)(nil), // 93: dota.CDOTAClientMsg_PlayerDraftPreferTeam + (*CDOTAClientMsg_AbilityAlert)(nil), // 94: dota.CDOTAClientMsg_AbilityAlert + (*CDOTAMsg_LocationPing)(nil), // 95: dota.CDOTAMsg_LocationPing + (*CDOTAMsg_ItemAlert)(nil), // 96: dota.CDOTAMsg_ItemAlert + (*CDOTAMsg_MapLine)(nil), // 97: dota.CDOTAMsg_MapLine + (*CDOTAMsg_WorldLine)(nil), // 98: dota.CDOTAMsg_WorldLine + (*CDOTAMsg_SendStatPopup)(nil), // 99: dota.CDOTAMsg_SendStatPopup + (*CDOTAMsg_DismissAllStatPopups)(nil), // 100: dota.CDOTAMsg_DismissAllStatPopups + (*CSOEconItem)(nil), // 101: dota.CSOEconItem + (EEvent)(0), // 102: dota.EEvent + (*CDOTAMsg_UnitOrder)(nil), // 103: dota.CDOTAMsg_UnitOrder + (EDOTAVersusScenePlayerBehavior)(0), // 104: dota.EDOTAVersusScenePlayerBehavior + (*VersusScene_PlayActivity)(nil), // 105: dota.VersusScene_PlayActivity + (*VersusScene_ChatWheel)(nil), // 106: dota.VersusScene_ChatWheel + (*VersusScene_PlaybackRate)(nil), // 107: dota.VersusScene_PlaybackRate + (EOverwatchReportReason)(0), // 108: dota.EOverwatchReportReason } var file_dota_clientmessages_proto_depIdxs = []int32{ - 92, // 0: dota.CDOTAClientMsg_MapPing.location_ping:type_name -> dota.CDOTAMsg_LocationPing - 93, // 1: dota.CDOTAClientMsg_ItemAlert.item_alert:type_name -> dota.CDOTAMsg_ItemAlert - 94, // 2: dota.CDOTAClientMsg_MapLine.mapline:type_name -> dota.CDOTAMsg_MapLine + 95, // 0: dota.CDOTAClientMsg_MapPing.location_ping:type_name -> dota.CDOTAMsg_LocationPing + 96, // 1: dota.CDOTAClientMsg_ItemAlert.item_alert:type_name -> dota.CDOTAMsg_ItemAlert + 97, // 2: dota.CDOTAClientMsg_MapLine.mapline:type_name -> dota.CDOTAMsg_MapLine 1, // 3: dota.CDOTAClientMsg_UnitsAutoAttackMode.mode:type_name -> dota.CDOTAClientMsg_UnitsAutoAttackMode.EMode 2, // 4: dota.CDOTAClientMsg_UnitsAutoAttackMode.unit_type:type_name -> dota.CDOTAClientMsg_UnitsAutoAttackMode.EUnitType - 95, // 5: dota.CDOTAClientMsg_WorldLine.worldline:type_name -> dota.CDOTAMsg_WorldLine - 96, // 6: dota.CDOTAClientMsg_SendStatPopup.statpopup:type_name -> dota.CDOTAMsg_SendStatPopup - 97, // 7: dota.CDOTAClientMsg_DismissAllStatPopups.dismissallmsg:type_name -> dota.CDOTAMsg_DismissAllStatPopups + 98, // 5: dota.CDOTAClientMsg_WorldLine.worldline:type_name -> dota.CDOTAMsg_WorldLine + 99, // 6: dota.CDOTAClientMsg_SendStatPopup.statpopup:type_name -> dota.CDOTAMsg_SendStatPopup + 100, // 7: dota.CDOTAClientMsg_DismissAllStatPopups.dismissallmsg:type_name -> dota.CDOTAMsg_DismissAllStatPopups 30, // 8: dota.CDOTAClientMsg_UpdateQuickBuy.items:type_name -> dota.CDOTAClientMsg_UpdateQuickBuyItem - 98, // 9: dota.CDOTAClientMsg_ChallengeReroll.event_id:type_name -> dota.EEvent - 99, // 10: dota.CDOTAClientMsg_ExecuteOrders.orders:type_name -> dota.CDOTAMsg_UnitOrder - 100, // 11: dota.CDOTAClientMsg_VersusScene_PlayerBehavior.behavior:type_name -> dota.EDOTAVersusScenePlayerBehavior - 101, // 12: dota.CDOTAClientMsg_VersusScene_PlayerBehavior.play_activity:type_name -> dota.VersusScene_PlayActivity - 102, // 13: dota.CDOTAClientMsg_VersusScene_PlayerBehavior.chat_wheel:type_name -> dota.VersusScene_ChatWheel - 103, // 14: dota.CDOTAClientMsg_VersusScene_PlayerBehavior.playback_rate:type_name -> dota.VersusScene_PlaybackRate - 104, // 15: dota.CDOTAClientMsg_AddOverwatchReportMarker.reason:type_name -> dota.EOverwatchReportReason - 83, // 16: dota.CDOTAClientMsg_ContextualTips_Subscribe.tips:type_name -> dota.CDOTAClientMsg_ContextualTips_Subscribe_Entry - 17, // [17:17] is the sub-list for method output_type - 17, // [17:17] is the sub-list for method input_type - 17, // [17:17] is the sub-list for extension type_name - 17, // [17:17] is the sub-list for extension extendee - 0, // [0:17] is the sub-list for field type_name + 101, // 9: dota.CDOTAClientMsg_DemoHero.item_data:type_name -> dota.CSOEconItem + 102, // 10: dota.CDOTAClientMsg_ChallengeReroll.event_id:type_name -> dota.EEvent + 103, // 11: dota.CDOTAClientMsg_ExecuteOrders.orders:type_name -> dota.CDOTAMsg_UnitOrder + 104, // 12: dota.CDOTAClientMsg_VersusScene_PlayerBehavior.behavior:type_name -> dota.EDOTAVersusScenePlayerBehavior + 105, // 13: dota.CDOTAClientMsg_VersusScene_PlayerBehavior.play_activity:type_name -> dota.VersusScene_PlayActivity + 106, // 14: dota.CDOTAClientMsg_VersusScene_PlayerBehavior.chat_wheel:type_name -> dota.VersusScene_ChatWheel + 107, // 15: dota.CDOTAClientMsg_VersusScene_PlayerBehavior.playback_rate:type_name -> dota.VersusScene_PlaybackRate + 108, // 16: dota.CDOTAClientMsg_AddOverwatchReportMarker.reason:type_name -> dota.EOverwatchReportReason + 85, // 17: dota.CDOTAClientMsg_ContextualTips_Subscribe.tips:type_name -> dota.CDOTAClientMsg_ContextualTips_Subscribe_Entry + 18, // [18:18] is the sub-list for method output_type + 18, // [18:18] is the sub-list for method input_type + 18, // [18:18] is the sub-list for extension type_name + 18, // [18:18] is the sub-list for extension extendee + 0, // [0:18] is the sub-list for field type_name } func init() { file_dota_clientmessages_proto_init() } @@ -6418,6 +6634,7 @@ func file_dota_clientmessages_proto_init() { } file_dota_commonmessages_proto_init() file_dota_shared_enums_proto_init() + file_base_gcmessages_proto_init() if !protoimpl.UnsafeEnabled { file_dota_clientmessages_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CDOTAClientMsg_MapPing); i { @@ -7248,7 +7465,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_TipAlert); i { + switch v := v.(*CDOTAClientMsg_GiftPlayer); i { case 0: return &v.state case 1: @@ -7260,7 +7477,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_EmptyTeleportAlert); i { + switch v := v.(*CDOTAClientMsg_GiftEveryone); i { case 0: return &v.state case 1: @@ -7272,7 +7489,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_SetCavernMapVariant); i { + switch v := v.(*CDOTAClientMsg_TipAlert); i { case 0: return &v.state case 1: @@ -7284,7 +7501,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_PauseGameOrder); i { + switch v := v.(*CDOTAClientMsg_EmptyTeleportAlert); i { case 0: return &v.state case 1: @@ -7296,7 +7513,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_VersusScene_PlayerBehavior); i { + switch v := v.(*CDOTAClientMsg_SetCavernMapVariant); i { case 0: return &v.state case 1: @@ -7308,7 +7525,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_EmptyItemSlotAlert); i { + switch v := v.(*CDOTAClientMsg_PauseGameOrder); i { case 0: return &v.state case 1: @@ -7320,7 +7537,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_AddOverwatchReportMarker); i { + switch v := v.(*CDOTAClientMsg_VersusScene_PlayerBehavior); i { case 0: return &v.state case 1: @@ -7332,7 +7549,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_AddCommunicationsReportMarker); i { + switch v := v.(*CDOTAClientMsg_EmptyItemSlotAlert); i { case 0: return &v.state case 1: @@ -7344,7 +7561,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_AddCommunicationsBlockMarker); i { + switch v := v.(*CDOTAClientMsg_AddOverwatchReportMarker); i { case 0: return &v.state case 1: @@ -7356,7 +7573,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_AghsStatusAlert); i { + switch v := v.(*CDOTAClientMsg_AddCommunicationsReportMarker); i { case 0: return &v.state case 1: @@ -7368,7 +7585,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_PerfReport); i { + switch v := v.(*CDOTAClientMsg_AddCommunicationsBlockMarker); i { case 0: return &v.state case 1: @@ -7380,7 +7597,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_ContextualTips_Subscribe_Entry); i { + switch v := v.(*CDOTAClientMsg_AghsStatusAlert); i { case 0: return &v.state case 1: @@ -7392,7 +7609,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_ContextualTips_Subscribe); i { + switch v := v.(*CDOTAClientMsg_PerfReport); i { case 0: return &v.state case 1: @@ -7404,7 +7621,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_ChatMessage); i { + switch v := v.(*CDOTAClientMsg_ContextualTips_Subscribe_Entry); i { case 0: return &v.state case 1: @@ -7416,7 +7633,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_DuelAccepted); i { + switch v := v.(*CDOTAClientMsg_ContextualTips_Subscribe); i { case 0: return &v.state case 1: @@ -7428,7 +7645,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_ChooseNeutralItem); i { + switch v := v.(*CDOTAClientMsg_ChatMessage); i { case 0: return &v.state case 1: @@ -7440,7 +7657,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_PlayerDraftPick); i { + switch v := v.(*CDOTAClientMsg_DuelAccepted); i { case 0: return &v.state case 1: @@ -7452,7 +7669,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_PlayerDraftSuggest); i { + switch v := v.(*CDOTAClientMsg_ChooseNeutralItem); i { case 0: return &v.state case 1: @@ -7464,7 +7681,7 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAClientMsg_PlayerDraftPreferRole); i { + switch v := v.(*CDOTAClientMsg_PlayerDraftPick); i { case 0: return &v.state case 1: @@ -7476,6 +7693,30 @@ func file_dota_clientmessages_proto_init() { } } file_dota_clientmessages_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CDOTAClientMsg_PlayerDraftSuggest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_clientmessages_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CDOTAClientMsg_PlayerDraftPreferRole); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_clientmessages_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CDOTAClientMsg_PlayerDraftPreferTeam); i { case 0: return &v.state @@ -7487,6 +7728,18 @@ func file_dota_clientmessages_proto_init() { return nil } } + file_dota_clientmessages_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CDOTAClientMsg_AbilityAlert); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -7494,7 +7747,7 @@ func file_dota_clientmessages_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_clientmessages_proto_rawDesc, NumEnums: 3, - NumMessages: 89, + NumMessages: 92, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_clientmessages.proto b/dota/dota_clientmessages.proto index bde8cf23..fbd3d304 100644 --- a/dota/dota_clientmessages.proto +++ b/dota/dota_clientmessages.proto @@ -5,6 +5,7 @@ option go_package = "github.com/dotabuff/manta/dota;dota"; import "dota_commonmessages.proto"; import "dota_shared_enums.proto"; +import "base_gcmessages.proto"; enum EDotaClientMessages { DOTA_CM_MapLine = 301; @@ -104,6 +105,11 @@ enum EDotaClientMessages { DOTA_CM_PlayerDraftSuggest = 801; DOTA_CM_PlayerDraftPreferRole = 802; DOTA_CM_PlayerDraftPreferTeam = 803; + DOTA_CM_ChatWheelAlert = 804; + DOTA_CM_AbilityAlert = 805; + DOTA_CM_AllyAbilityAlert = 806; + DOTA_CM_GiftPlayer = 807; + DOTA_CM_GiftEveryone = 808; } message CDOTAClientMsg_MapPing { @@ -303,6 +309,7 @@ message CDOTAClientMsg_DemoHero { repeated uint64 item_ids = 4; optional uint32 style_index = 5; optional bool keep_existing_demohero = 6; + repeated CSOEconItem item_data = 7; } message CDOTAClientMsg_ChallengeSelect { @@ -452,6 +459,15 @@ message CDOTAClientMsg_SalutePlayer { optional int32 event_id = 2; } +message CDOTAClientMsg_GiftPlayer { + optional int32 target_player_id = 1; + optional uint32 item_def_index = 2; +} + +message CDOTAClientMsg_GiftEveryone { + optional uint32 item_def_index = 1; +} + message CDOTAClientMsg_TipAlert { optional string tip_text = 1; } @@ -568,3 +584,8 @@ message CDOTAClientMsg_PlayerDraftPreferRole { message CDOTAClientMsg_PlayerDraftPreferTeam { optional int32 team = 1; } + +message CDOTAClientMsg_AbilityAlert { + optional uint32 ability_entindex = 1; + optional bool ctrl_held = 2; +} diff --git a/dota/dota_commonmessages.pb.go b/dota/dota_commonmessages.pb.go index 566beefa..86b5cb3d 100644 --- a/dota/dota_commonmessages.pb.go +++ b/dota/dota_commonmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_commonmessages.proto @@ -193,6 +193,7 @@ const ( DotaunitorderT_DOTA_UNIT_ORDER_DROP_ITEM_AT_FOUNTAIN DotaunitorderT = 37 DotaunitorderT_DOTA_UNIT_ORDER_TAKE_ITEM_FROM_NEUTRAL_ITEM_STASH DotaunitorderT = 38 DotaunitorderT_DOTA_UNIT_ORDER_MOVE_RELATIVE DotaunitorderT = 39 + DotaunitorderT_DOTA_UNIT_ORDER_CAST_TOGGLE_ALT DotaunitorderT = 40 ) // Enum value maps for DotaunitorderT. @@ -238,6 +239,7 @@ var ( 37: "DOTA_UNIT_ORDER_DROP_ITEM_AT_FOUNTAIN", 38: "DOTA_UNIT_ORDER_TAKE_ITEM_FROM_NEUTRAL_ITEM_STASH", 39: "DOTA_UNIT_ORDER_MOVE_RELATIVE", + 40: "DOTA_UNIT_ORDER_CAST_TOGGLE_ALT", } DotaunitorderT_value = map[string]int32{ "DOTA_UNIT_ORDER_NONE": 0, @@ -280,6 +282,7 @@ var ( "DOTA_UNIT_ORDER_DROP_ITEM_AT_FOUNTAIN": 37, "DOTA_UNIT_ORDER_TAKE_ITEM_FROM_NEUTRAL_ITEM_STASH": 38, "DOTA_UNIT_ORDER_MOVE_RELATIVE": 39, + "DOTA_UNIT_ORDER_CAST_TOGGLE_ALT": 40, } ) @@ -1313,7 +1316,7 @@ var file_dota_commonmessages_proto_rawDesc = []byte{ 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x53, 0x50, 0x54, 0x5f, 0x44, 0x75, 0x61, 0x6c, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x53, 0x50, 0x54, 0x5f, 0x4d, 0x6f, 0x76, - 0x69, 0x65, 0x10, 0x05, 0x2a, 0x92, 0x0b, 0x0a, 0x0f, 0x64, 0x6f, 0x74, 0x61, 0x75, 0x6e, 0x69, + 0x69, 0x65, 0x10, 0x05, 0x2a, 0xb7, 0x0b, 0x0a, 0x0f, 0x64, 0x6f, 0x74, 0x61, 0x75, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, @@ -1402,19 +1405,21 @@ var file_dota_commonmessages_proto_rawDesc = []byte{ 0x4d, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x53, 0x54, 0x41, 0x53, 0x48, 0x10, 0x26, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x52, - 0x45, 0x4c, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x27, 0x2a, 0x8f, 0x01, 0x0a, 0x1e, 0x45, 0x44, - 0x4f, 0x54, 0x41, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x24, 0x0a, 0x20, - 0x56, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, - 0x4f, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x49, 0x54, 0x59, - 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x56, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, - 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x57, 0x48, - 0x45, 0x45, 0x4c, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x56, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x45, 0x52, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x10, 0x03, 0x42, 0x25, 0x5a, 0x23, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, - 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, - 0x74, 0x61, + 0x45, 0x4c, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x27, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x53, + 0x54, 0x5f, 0x54, 0x4f, 0x47, 0x47, 0x4c, 0x45, 0x5f, 0x41, 0x4c, 0x54, 0x10, 0x28, 0x2a, 0x8f, + 0x01, 0x0a, 0x1e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, + 0x65, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, + 0x72, 0x12, 0x24, 0x0a, 0x20, 0x56, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x42, + 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x41, 0x43, 0x54, + 0x49, 0x56, 0x49, 0x54, 0x59, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x56, 0x53, 0x5f, 0x50, 0x4c, + 0x41, 0x59, 0x45, 0x52, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x43, 0x48, + 0x41, 0x54, 0x5f, 0x57, 0x48, 0x45, 0x45, 0x4c, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x56, 0x53, + 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, + 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x10, 0x03, + 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, + 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, + 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/dota_commonmessages.proto b/dota/dota_commonmessages.proto index e0f87b50..48aaa285 100644 --- a/dota/dota_commonmessages.proto +++ b/dota/dota_commonmessages.proto @@ -62,6 +62,7 @@ enum dotaunitorder_t { DOTA_UNIT_ORDER_DROP_ITEM_AT_FOUNTAIN = 37; DOTA_UNIT_ORDER_TAKE_ITEM_FROM_NEUTRAL_ITEM_STASH = 38; DOTA_UNIT_ORDER_MOVE_RELATIVE = 39; + DOTA_UNIT_ORDER_CAST_TOGGLE_ALT = 40; } enum EDOTAVersusScenePlayerBehavior { diff --git a/dota/dota_gcmessages_client.pb.go b/dota/dota_gcmessages_client.pb.go index 6a0b5680..685aec5b 100644 --- a/dota/dota_gcmessages_client.pb.go +++ b/dota/dota_gcmessages_client.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client.proto @@ -786,6 +786,7 @@ const ( CMsgDOTAPopup_CUSTOM_GAME_COOLDOWN_RESTRICTED CMsgDOTAPopup_PopupID = 76 CMsgDOTAPopup_CREATE_LOBBY_FAILED_TOO_MUCH_PLAYTIME CMsgDOTAPopup_PopupID = 77 CMsgDOTAPopup_CUSTOM_GAME_TOO_FEW_GAMES CMsgDOTAPopup_PopupID = 78 + CMsgDOTAPopup_COMM_SCORE_TOO_LOW CMsgDOTAPopup_PopupID = 79 ) // Enum value maps for CMsgDOTAPopup_PopupID. @@ -853,6 +854,7 @@ var ( 76: "CUSTOM_GAME_COOLDOWN_RESTRICTED", 77: "CREATE_LOBBY_FAILED_TOO_MUCH_PLAYTIME", 78: "CUSTOM_GAME_TOO_FEW_GAMES", + 79: "COMM_SCORE_TOO_LOW", } CMsgDOTAPopup_PopupID_value = map[string]int32{ "NONE": -1, @@ -917,6 +919,7 @@ var ( "CUSTOM_GAME_COOLDOWN_RESTRICTED": 76, "CREATE_LOBBY_FAILED_TOO_MUCH_PLAYTIME": 77, "CUSTOM_GAME_TOO_FEW_GAMES": 78, + "COMM_SCORE_TOO_LOW": 79, } ) @@ -1049,6 +1052,101 @@ func (CMsgDOTASubmitPlayerReportResponse_EResult) EnumDescriptor() ([]byte, []in return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{8, 0} } +type CMsgDOTASubmitPlayerReportResponseV2_EResult int32 + +const ( + CMsgDOTASubmitPlayerReportResponseV2_k_eInternalError CMsgDOTASubmitPlayerReportResponseV2_EResult = 0 + CMsgDOTASubmitPlayerReportResponseV2_k_eSuccess CMsgDOTASubmitPlayerReportResponseV2_EResult = 1 + CMsgDOTASubmitPlayerReportResponseV2_k_eDuplicateReport CMsgDOTASubmitPlayerReportResponseV2_EResult = 2 + CMsgDOTASubmitPlayerReportResponseV2_k_eMixedReportFlags CMsgDOTASubmitPlayerReportResponseV2_EResult = 3 + CMsgDOTASubmitPlayerReportResponseV2_k_eTooLate CMsgDOTASubmitPlayerReportResponseV2_EResult = 4 + CMsgDOTASubmitPlayerReportResponseV2_k_eInvalidPregameReport CMsgDOTASubmitPlayerReportResponseV2_EResult = 5 + CMsgDOTASubmitPlayerReportResponseV2_k_eHasntChatted CMsgDOTASubmitPlayerReportResponseV2_EResult = 6 + CMsgDOTASubmitPlayerReportResponseV2_k_eInvalid CMsgDOTASubmitPlayerReportResponseV2_EResult = 7 + CMsgDOTASubmitPlayerReportResponseV2_k_eOwnership CMsgDOTASubmitPlayerReportResponseV2_EResult = 8 + CMsgDOTASubmitPlayerReportResponseV2_k_eMissingRequirements CMsgDOTASubmitPlayerReportResponseV2_EResult = 9 + CMsgDOTASubmitPlayerReportResponseV2_k_eInvalidRoleReport CMsgDOTASubmitPlayerReportResponseV2_EResult = 10 + CMsgDOTASubmitPlayerReportResponseV2_k_eInvalidCoachReport CMsgDOTASubmitPlayerReportResponseV2_EResult = 11 + CMsgDOTASubmitPlayerReportResponseV2_k_eNoRemainingReports CMsgDOTASubmitPlayerReportResponseV2_EResult = 12 + CMsgDOTASubmitPlayerReportResponseV2_k_eInvalidMember CMsgDOTASubmitPlayerReportResponseV2_EResult = 13 + CMsgDOTASubmitPlayerReportResponseV2_k_eCannotReportPartyMember CMsgDOTASubmitPlayerReportResponseV2_EResult = 14 +) + +// Enum value maps for CMsgDOTASubmitPlayerReportResponseV2_EResult. +var ( + CMsgDOTASubmitPlayerReportResponseV2_EResult_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eDuplicateReport", + 3: "k_eMixedReportFlags", + 4: "k_eTooLate", + 5: "k_eInvalidPregameReport", + 6: "k_eHasntChatted", + 7: "k_eInvalid", + 8: "k_eOwnership", + 9: "k_eMissingRequirements", + 10: "k_eInvalidRoleReport", + 11: "k_eInvalidCoachReport", + 12: "k_eNoRemainingReports", + 13: "k_eInvalidMember", + 14: "k_eCannotReportPartyMember", + } + CMsgDOTASubmitPlayerReportResponseV2_EResult_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eDuplicateReport": 2, + "k_eMixedReportFlags": 3, + "k_eTooLate": 4, + "k_eInvalidPregameReport": 5, + "k_eHasntChatted": 6, + "k_eInvalid": 7, + "k_eOwnership": 8, + "k_eMissingRequirements": 9, + "k_eInvalidRoleReport": 10, + "k_eInvalidCoachReport": 11, + "k_eNoRemainingReports": 12, + "k_eInvalidMember": 13, + "k_eCannotReportPartyMember": 14, + } +) + +func (x CMsgDOTASubmitPlayerReportResponseV2_EResult) Enum() *CMsgDOTASubmitPlayerReportResponseV2_EResult { + p := new(CMsgDOTASubmitPlayerReportResponseV2_EResult) + *p = x + return p +} + +func (x CMsgDOTASubmitPlayerReportResponseV2_EResult) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgDOTASubmitPlayerReportResponseV2_EResult) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_proto_enumTypes[12].Descriptor() +} + +func (CMsgDOTASubmitPlayerReportResponseV2_EResult) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_proto_enumTypes[12] +} + +func (x CMsgDOTASubmitPlayerReportResponseV2_EResult) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgDOTASubmitPlayerReportResponseV2_EResult) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgDOTASubmitPlayerReportResponseV2_EResult(num) + return nil +} + +// Deprecated: Use CMsgDOTASubmitPlayerReportResponseV2_EResult.Descriptor instead. +func (CMsgDOTASubmitPlayerReportResponseV2_EResult) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{12, 0} +} + type CMsgDOTAClaimEventActionResponse_ResultCode int32 const ( @@ -1118,11 +1216,11 @@ func (x CMsgDOTAClaimEventActionResponse_ResultCode) String() string { } func (CMsgDOTAClaimEventActionResponse_ResultCode) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[12].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[13].Descriptor() } func (CMsgDOTAClaimEventActionResponse_ResultCode) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[12] + return &file_dota_gcmessages_client_proto_enumTypes[13] } func (x CMsgDOTAClaimEventActionResponse_ResultCode) Number() protoreflect.EnumNumber { @@ -1141,7 +1239,7 @@ func (x *CMsgDOTAClaimEventActionResponse_ResultCode) UnmarshalJSON(b []byte) er // Deprecated: Use CMsgDOTAClaimEventActionResponse_ResultCode.Descriptor instead. func (CMsgDOTAClaimEventActionResponse_ResultCode) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{54, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{56, 0} } type CMsgGCNotificationsUpdate_EResult int32 @@ -1174,11 +1272,11 @@ func (x CMsgGCNotificationsUpdate_EResult) String() string { } func (CMsgGCNotificationsUpdate_EResult) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[13].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[14].Descriptor() } func (CMsgGCNotificationsUpdate_EResult) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[13] + return &file_dota_gcmessages_client_proto_enumTypes[14] } func (x CMsgGCNotificationsUpdate_EResult) Number() protoreflect.EnumNumber { @@ -1197,7 +1295,7 @@ func (x *CMsgGCNotificationsUpdate_EResult) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgGCNotificationsUpdate_EResult.Descriptor instead. func (CMsgGCNotificationsUpdate_EResult) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{72, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{74, 0} } type CMsgGCPlayerInfoSubmitResponse_EResult int32 @@ -1236,11 +1334,11 @@ func (x CMsgGCPlayerInfoSubmitResponse_EResult) String() string { } func (CMsgGCPlayerInfoSubmitResponse_EResult) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[14].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[15].Descriptor() } func (CMsgGCPlayerInfoSubmitResponse_EResult) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[14] + return &file_dota_gcmessages_client_proto_enumTypes[15] } func (x CMsgGCPlayerInfoSubmitResponse_EResult) Number() protoreflect.EnumNumber { @@ -1259,7 +1357,7 @@ func (x *CMsgGCPlayerInfoSubmitResponse_EResult) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgGCPlayerInfoSubmitResponse_EResult.Descriptor instead. func (CMsgGCPlayerInfoSubmitResponse_EResult) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{76, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{78, 0} } type CMsgGCToClientRankResponse_EResultCode int32 @@ -1295,11 +1393,11 @@ func (x CMsgGCToClientRankResponse_EResultCode) String() string { } func (CMsgGCToClientRankResponse_EResultCode) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[15].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[16].Descriptor() } func (CMsgGCToClientRankResponse_EResultCode) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[15] + return &file_dota_gcmessages_client_proto_enumTypes[16] } func (x CMsgGCToClientRankResponse_EResultCode) Number() protoreflect.EnumNumber { @@ -1318,7 +1416,7 @@ func (x *CMsgGCToClientRankResponse_EResultCode) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgGCToClientRankResponse_EResultCode.Descriptor instead. func (CMsgGCToClientRankResponse_EResultCode) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{89, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{91, 0} } type CMsgPlayerConductScorecard_EBehaviorRating int32 @@ -1354,11 +1452,11 @@ func (x CMsgPlayerConductScorecard_EBehaviorRating) String() string { } func (CMsgPlayerConductScorecard_EBehaviorRating) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[16].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[17].Descriptor() } func (CMsgPlayerConductScorecard_EBehaviorRating) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[16] + return &file_dota_gcmessages_client_proto_enumTypes[17] } func (x CMsgPlayerConductScorecard_EBehaviorRating) Number() protoreflect.EnumNumber { @@ -1377,7 +1475,7 @@ func (x *CMsgPlayerConductScorecard_EBehaviorRating) UnmarshalJSON(b []byte) err // Deprecated: Use CMsgPlayerConductScorecard_EBehaviorRating.Descriptor instead. func (CMsgPlayerConductScorecard_EBehaviorRating) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{118, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{120, 0} } type CMsgClientToGCVoteForArcanaResponse_Result int32 @@ -1413,11 +1511,11 @@ func (x CMsgClientToGCVoteForArcanaResponse_Result) String() string { } func (CMsgClientToGCVoteForArcanaResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[17].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[18].Descriptor() } func (CMsgClientToGCVoteForArcanaResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[17] + return &file_dota_gcmessages_client_proto_enumTypes[18] } func (x CMsgClientToGCVoteForArcanaResponse_Result) Number() protoreflect.EnumNumber { @@ -1436,7 +1534,7 @@ func (x *CMsgClientToGCVoteForArcanaResponse_Result) UnmarshalJSON(b []byte) err // Deprecated: Use CMsgClientToGCVoteForArcanaResponse_Result.Descriptor instead. func (CMsgClientToGCVoteForArcanaResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{137, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{139, 0} } type CMsgDOTARedeemItemResponse_EResultCode int32 @@ -1469,11 +1567,11 @@ func (x CMsgDOTARedeemItemResponse_EResultCode) String() string { } func (CMsgDOTARedeemItemResponse_EResultCode) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[18].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[19].Descriptor() } func (CMsgDOTARedeemItemResponse_EResultCode) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[18] + return &file_dota_gcmessages_client_proto_enumTypes[19] } func (x CMsgDOTARedeemItemResponse_EResultCode) Number() protoreflect.EnumNumber { @@ -1492,7 +1590,7 @@ func (x *CMsgDOTARedeemItemResponse_EResultCode) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTARedeemItemResponse_EResultCode.Descriptor instead. func (CMsgDOTARedeemItemResponse_EResultCode) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{147, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{149, 0} } type CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult int32 @@ -1531,11 +1629,11 @@ func (x CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult) String() } func (CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[19].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[20].Descriptor() } func (CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[19] + return &file_dota_gcmessages_client_proto_enumTypes[20] } func (x CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult) Number() protoreflect.EnumNumber { @@ -1554,7 +1652,7 @@ func (x *CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult) Unmarsh // Deprecated: Use CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult.Descriptor instead. func (CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{149, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{151, 0} } type CMsgClientToGCOpenPlayerCardPackResponse_Result int32 @@ -1602,11 +1700,11 @@ func (x CMsgClientToGCOpenPlayerCardPackResponse_Result) String() string { } func (CMsgClientToGCOpenPlayerCardPackResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[20].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[21].Descriptor() } func (CMsgClientToGCOpenPlayerCardPackResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[20] + return &file_dota_gcmessages_client_proto_enumTypes[21] } func (x CMsgClientToGCOpenPlayerCardPackResponse_Result) Number() protoreflect.EnumNumber { @@ -1625,7 +1723,7 @@ func (x *CMsgClientToGCOpenPlayerCardPackResponse_Result) UnmarshalJSON(b []byte // Deprecated: Use CMsgClientToGCOpenPlayerCardPackResponse_Result.Descriptor instead. func (CMsgClientToGCOpenPlayerCardPackResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{151, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{153, 0} } type CMsgClientToGCRecyclePlayerCardResponse_Result int32 @@ -1673,11 +1771,11 @@ func (x CMsgClientToGCRecyclePlayerCardResponse_Result) String() string { } func (CMsgClientToGCRecyclePlayerCardResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[21].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[22].Descriptor() } func (CMsgClientToGCRecyclePlayerCardResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[21] + return &file_dota_gcmessages_client_proto_enumTypes[22] } func (x CMsgClientToGCRecyclePlayerCardResponse_Result) Number() protoreflect.EnumNumber { @@ -1696,7 +1794,7 @@ func (x *CMsgClientToGCRecyclePlayerCardResponse_Result) UnmarshalJSON(b []byte) // Deprecated: Use CMsgClientToGCRecyclePlayerCardResponse_Result.Descriptor instead. func (CMsgClientToGCRecyclePlayerCardResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{153, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{155, 0} } type CMsgClientToGCCreatePlayerCardPackResponse_Result int32 @@ -1744,11 +1842,11 @@ func (x CMsgClientToGCCreatePlayerCardPackResponse_Result) String() string { } func (CMsgClientToGCCreatePlayerCardPackResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[22].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[23].Descriptor() } func (CMsgClientToGCCreatePlayerCardPackResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[22] + return &file_dota_gcmessages_client_proto_enumTypes[23] } func (x CMsgClientToGCCreatePlayerCardPackResponse_Result) Number() protoreflect.EnumNumber { @@ -1767,7 +1865,7 @@ func (x *CMsgClientToGCCreatePlayerCardPackResponse_Result) UnmarshalJSON(b []by // Deprecated: Use CMsgClientToGCCreatePlayerCardPackResponse_Result.Descriptor instead. func (CMsgClientToGCCreatePlayerCardPackResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{155, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{157, 0} } type CMsgClientToGCCreateTeamPlayerCardPackResponse_Result int32 @@ -1815,11 +1913,11 @@ func (x CMsgClientToGCCreateTeamPlayerCardPackResponse_Result) String() string { } func (CMsgClientToGCCreateTeamPlayerCardPackResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[23].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[24].Descriptor() } func (CMsgClientToGCCreateTeamPlayerCardPackResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[23] + return &file_dota_gcmessages_client_proto_enumTypes[24] } func (x CMsgClientToGCCreateTeamPlayerCardPackResponse_Result) Number() protoreflect.EnumNumber { @@ -1838,7 +1936,7 @@ func (x *CMsgClientToGCCreateTeamPlayerCardPackResponse_Result) UnmarshalJSON(b // Deprecated: Use CMsgClientToGCCreateTeamPlayerCardPackResponse_Result.Descriptor instead. func (CMsgClientToGCCreateTeamPlayerCardPackResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{157, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 0} } type CMsgDOTAAnchorPhoneNumberResponse_Result int32 @@ -1883,11 +1981,11 @@ func (x CMsgDOTAAnchorPhoneNumberResponse_Result) String() string { } func (CMsgDOTAAnchorPhoneNumberResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[24].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[25].Descriptor() } func (CMsgDOTAAnchorPhoneNumberResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[24] + return &file_dota_gcmessages_client_proto_enumTypes[25] } func (x CMsgDOTAAnchorPhoneNumberResponse_Result) Number() protoreflect.EnumNumber { @@ -1906,7 +2004,7 @@ func (x *CMsgDOTAAnchorPhoneNumberResponse_Result) UnmarshalJSON(b []byte) error // Deprecated: Use CMsgDOTAAnchorPhoneNumberResponse_Result.Descriptor instead. func (CMsgDOTAAnchorPhoneNumberResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{181, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{183, 0} } type CMsgDOTAUnanchorPhoneNumberResponse_Result int32 @@ -1939,11 +2037,11 @@ func (x CMsgDOTAUnanchorPhoneNumberResponse_Result) String() string { } func (CMsgDOTAUnanchorPhoneNumberResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[25].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[26].Descriptor() } func (CMsgDOTAUnanchorPhoneNumberResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[25] + return &file_dota_gcmessages_client_proto_enumTypes[26] } func (x CMsgDOTAUnanchorPhoneNumberResponse_Result) Number() protoreflect.EnumNumber { @@ -1962,7 +2060,7 @@ func (x *CMsgDOTAUnanchorPhoneNumberResponse_Result) UnmarshalJSON(b []byte) err // Deprecated: Use CMsgDOTAUnanchorPhoneNumberResponse_Result.Descriptor instead. func (CMsgDOTAUnanchorPhoneNumberResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{183, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{185, 0} } type CMsgDOTASelectionPriorityChoiceResponse_Result int32 @@ -1995,11 +2093,11 @@ func (x CMsgDOTASelectionPriorityChoiceResponse_Result) String() string { } func (CMsgDOTASelectionPriorityChoiceResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[26].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[27].Descriptor() } func (CMsgDOTASelectionPriorityChoiceResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[26] + return &file_dota_gcmessages_client_proto_enumTypes[27] } func (x CMsgDOTASelectionPriorityChoiceResponse_Result) Number() protoreflect.EnumNumber { @@ -2018,7 +2116,7 @@ func (x *CMsgDOTASelectionPriorityChoiceResponse_Result) UnmarshalJSON(b []byte) // Deprecated: Use CMsgDOTASelectionPriorityChoiceResponse_Result.Descriptor instead. func (CMsgDOTASelectionPriorityChoiceResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{188, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{190, 0} } type CMsgDOTAGameAutographRewardResponse_Result int32 @@ -2051,11 +2149,11 @@ func (x CMsgDOTAGameAutographRewardResponse_Result) String() string { } func (CMsgDOTAGameAutographRewardResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[27].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[28].Descriptor() } func (CMsgDOTAGameAutographRewardResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[27] + return &file_dota_gcmessages_client_proto_enumTypes[28] } func (x CMsgDOTAGameAutographRewardResponse_Result) Number() protoreflect.EnumNumber { @@ -2074,7 +2172,7 @@ func (x *CMsgDOTAGameAutographRewardResponse_Result) UnmarshalJSON(b []byte) err // Deprecated: Use CMsgDOTAGameAutographRewardResponse_Result.Descriptor instead. func (CMsgDOTAGameAutographRewardResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{190, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{192, 0} } type CMsgDOTADestroyLobbyResponse_Result int32 @@ -2107,11 +2205,11 @@ func (x CMsgDOTADestroyLobbyResponse_Result) String() string { } func (CMsgDOTADestroyLobbyResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[28].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[29].Descriptor() } func (CMsgDOTADestroyLobbyResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[28] + return &file_dota_gcmessages_client_proto_enumTypes[29] } func (x CMsgDOTADestroyLobbyResponse_Result) Number() protoreflect.EnumNumber { @@ -2130,7 +2228,7 @@ func (x *CMsgDOTADestroyLobbyResponse_Result) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTADestroyLobbyResponse_Result.Descriptor instead. func (CMsgDOTADestroyLobbyResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{192, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{194, 0} } type CMsgPurchaseItemWithEventPointsResponse_Result int32 @@ -2199,11 +2297,11 @@ func (x CMsgPurchaseItemWithEventPointsResponse_Result) String() string { } func (CMsgPurchaseItemWithEventPointsResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[29].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[30].Descriptor() } func (CMsgPurchaseItemWithEventPointsResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[29] + return &file_dota_gcmessages_client_proto_enumTypes[30] } func (x CMsgPurchaseItemWithEventPointsResponse_Result) Number() protoreflect.EnumNumber { @@ -2222,7 +2320,7 @@ func (x *CMsgPurchaseItemWithEventPointsResponse_Result) UnmarshalJSON(b []byte) // Deprecated: Use CMsgPurchaseItemWithEventPointsResponse_Result.Descriptor instead. func (CMsgPurchaseItemWithEventPointsResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{196, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{198, 0} } type CMsgProfileResponse_EResponse int32 @@ -2261,11 +2359,11 @@ func (x CMsgProfileResponse_EResponse) String() string { } func (CMsgProfileResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[30].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[31].Descriptor() } func (CMsgProfileResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[30] + return &file_dota_gcmessages_client_proto_enumTypes[31] } func (x CMsgProfileResponse_EResponse) Number() protoreflect.EnumNumber { @@ -2284,7 +2382,7 @@ func (x *CMsgProfileResponse_EResponse) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgProfileResponse_EResponse.Descriptor instead. func (CMsgProfileResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{202, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{204, 0} } type CMsgProfileUpdateResponse_Result int32 @@ -2326,11 +2424,11 @@ func (x CMsgProfileUpdateResponse_Result) String() string { } func (CMsgProfileUpdateResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[31].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[32].Descriptor() } func (CMsgProfileUpdateResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[31] + return &file_dota_gcmessages_client_proto_enumTypes[32] } func (x CMsgProfileUpdateResponse_Result) Number() protoreflect.EnumNumber { @@ -2349,7 +2447,7 @@ func (x *CMsgProfileUpdateResponse_Result) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgProfileUpdateResponse_Result.Descriptor instead. func (CMsgProfileUpdateResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{204, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{206, 0} } type CMsgActivatePlusFreeTrialResponse_Result int32 @@ -2391,11 +2489,11 @@ func (x CMsgActivatePlusFreeTrialResponse_Result) String() string { } func (CMsgActivatePlusFreeTrialResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[32].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[33].Descriptor() } func (CMsgActivatePlusFreeTrialResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[32] + return &file_dota_gcmessages_client_proto_enumTypes[33] } func (x CMsgActivatePlusFreeTrialResponse_Result) Number() protoreflect.EnumNumber { @@ -2414,7 +2512,7 @@ func (x *CMsgActivatePlusFreeTrialResponse_Result) UnmarshalJSON(b []byte) error // Deprecated: Use CMsgActivatePlusFreeTrialResponse_Result.Descriptor instead. func (CMsgActivatePlusFreeTrialResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{213, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{215, 0} } type CMsgClientToGCCavernCrawlClaimRoomResponse_Result int32 @@ -2450,11 +2548,11 @@ func (x CMsgClientToGCCavernCrawlClaimRoomResponse_Result) String() string { } func (CMsgClientToGCCavernCrawlClaimRoomResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[33].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[34].Descriptor() } func (CMsgClientToGCCavernCrawlClaimRoomResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[33] + return &file_dota_gcmessages_client_proto_enumTypes[34] } func (x CMsgClientToGCCavernCrawlClaimRoomResponse_Result) Number() protoreflect.EnumNumber { @@ -2473,7 +2571,7 @@ func (x *CMsgClientToGCCavernCrawlClaimRoomResponse_Result) UnmarshalJSON(b []by // Deprecated: Use CMsgClientToGCCavernCrawlClaimRoomResponse_Result.Descriptor instead. func (CMsgClientToGCCavernCrawlClaimRoomResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{217, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{219, 0} } type CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result int32 @@ -2509,11 +2607,11 @@ func (x CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result) String() string { } func (CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[34].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[35].Descriptor() } func (CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[34] + return &file_dota_gcmessages_client_proto_enumTypes[35] } func (x CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result) Number() protoreflect.EnumNumber { @@ -2532,7 +2630,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result) UnmarshalJSON(b // Deprecated: Use CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result.Descriptor instead. func (CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{219, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{221, 0} } type CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result int32 @@ -2568,11 +2666,11 @@ func (x CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result) String() string { } func (CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[35].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[36].Descriptor() } func (CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[35] + return &file_dota_gcmessages_client_proto_enumTypes[36] } func (x CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result) Number() protoreflect.EnumNumber { @@ -2591,7 +2689,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result) UnmarshalJSON(b // Deprecated: Use CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result.Descriptor instead. func (CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{221, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{223, 0} } type CMsgClientToGCCavernCrawlRequestMapStateResponse_Result int32 @@ -2627,11 +2725,11 @@ func (x CMsgClientToGCCavernCrawlRequestMapStateResponse_Result) String() string } func (CMsgClientToGCCavernCrawlRequestMapStateResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[36].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[37].Descriptor() } func (CMsgClientToGCCavernCrawlRequestMapStateResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[36] + return &file_dota_gcmessages_client_proto_enumTypes[37] } func (x CMsgClientToGCCavernCrawlRequestMapStateResponse_Result) Number() protoreflect.EnumNumber { @@ -2650,7 +2748,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_Result) UnmarshalJSON( // Deprecated: Use CMsgClientToGCCavernCrawlRequestMapStateResponse_Result.Descriptor instead. func (CMsgClientToGCCavernCrawlRequestMapStateResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{223, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225, 0} } type CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result int32 @@ -2686,11 +2784,11 @@ func (x CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result) String() st } func (CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[37].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[38].Descriptor() } func (CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[37] + return &file_dota_gcmessages_client_proto_enumTypes[38] } func (x CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result) Number() protoreflect.EnumNumber { @@ -2709,7 +2807,7 @@ func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result) UnmarshalJ // Deprecated: Use CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result.Descriptor instead. func (CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{227, 0} } type CMsgSocialFeedResponse_Result int32 @@ -2754,11 +2852,11 @@ func (x CMsgSocialFeedResponse_Result) String() string { } func (CMsgSocialFeedResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[38].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[39].Descriptor() } func (CMsgSocialFeedResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[38] + return &file_dota_gcmessages_client_proto_enumTypes[39] } func (x CMsgSocialFeedResponse_Result) Number() protoreflect.EnumNumber { @@ -2777,7 +2875,7 @@ func (x *CMsgSocialFeedResponse_Result) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgSocialFeedResponse_Result.Descriptor instead. func (CMsgSocialFeedResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{230, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{232, 0} } type CMsgSocialFeedCommentsResponse_Result int32 @@ -2813,11 +2911,11 @@ func (x CMsgSocialFeedCommentsResponse_Result) String() string { } func (CMsgSocialFeedCommentsResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[39].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[40].Descriptor() } func (CMsgSocialFeedCommentsResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[39] + return &file_dota_gcmessages_client_proto_enumTypes[40] } func (x CMsgSocialFeedCommentsResponse_Result) Number() protoreflect.EnumNumber { @@ -2836,7 +2934,7 @@ func (x *CMsgSocialFeedCommentsResponse_Result) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgSocialFeedCommentsResponse_Result.Descriptor instead. func (CMsgSocialFeedCommentsResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{232, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{234, 0} } type CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result int32 @@ -2881,11 +2979,11 @@ func (x CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result) String() string } func (CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[40].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[41].Descriptor() } func (CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[40] + return &file_dota_gcmessages_client_proto_enumTypes[41] } func (x CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result) Number() protoreflect.EnumNumber { @@ -2904,7 +3002,7 @@ func (x *CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result) UnmarshalJSON( // Deprecated: Use CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result.Descriptor instead. func (CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{234, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{236, 0} } type CMsgClientToGCRequestContestVotesResponse_EResponse int32 @@ -2943,11 +3041,11 @@ func (x CMsgClientToGCRequestContestVotesResponse_EResponse) String() string { } func (CMsgClientToGCRequestContestVotesResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[41].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[42].Descriptor() } func (CMsgClientToGCRequestContestVotesResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[41] + return &file_dota_gcmessages_client_proto_enumTypes[42] } func (x CMsgClientToGCRequestContestVotesResponse_EResponse) Number() protoreflect.EnumNumber { @@ -2966,7 +3064,7 @@ func (x *CMsgClientToGCRequestContestVotesResponse_EResponse) UnmarshalJSON(b [] // Deprecated: Use CMsgClientToGCRequestContestVotesResponse_EResponse.Descriptor instead. func (CMsgClientToGCRequestContestVotesResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{236, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{238, 0} } type CMsgGCToClientRecordContestVoteResponse_EResult int32 @@ -3011,11 +3109,11 @@ func (x CMsgGCToClientRecordContestVoteResponse_EResult) String() string { } func (CMsgGCToClientRecordContestVoteResponse_EResult) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[42].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[43].Descriptor() } func (CMsgGCToClientRecordContestVoteResponse_EResult) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[42] + return &file_dota_gcmessages_client_proto_enumTypes[43] } func (x CMsgGCToClientRecordContestVoteResponse_EResult) Number() protoreflect.EnumNumber { @@ -3034,7 +3132,7 @@ func (x *CMsgGCToClientRecordContestVoteResponse_EResult) UnmarshalJSON(b []byte // Deprecated: Use CMsgGCToClientRecordContestVoteResponse_EResult.Descriptor instead. func (CMsgGCToClientRecordContestVoteResponse_EResult) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{238, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{240, 0} } type CMsgGCToClientGetFilteredPlayersResponse_Result int32 @@ -3067,11 +3165,11 @@ func (x CMsgGCToClientGetFilteredPlayersResponse_Result) String() string { } func (CMsgGCToClientGetFilteredPlayersResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[43].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[44].Descriptor() } func (CMsgGCToClientGetFilteredPlayersResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[43] + return &file_dota_gcmessages_client_proto_enumTypes[44] } func (x CMsgGCToClientGetFilteredPlayersResponse_Result) Number() protoreflect.EnumNumber { @@ -3090,7 +3188,7 @@ func (x *CMsgGCToClientGetFilteredPlayersResponse_Result) UnmarshalJSON(b []byte // Deprecated: Use CMsgGCToClientGetFilteredPlayersResponse_Result.Descriptor instead. func (CMsgGCToClientGetFilteredPlayersResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{250, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{252, 0} } type CMsgGCToClientRemoveFilteredPlayerResponse_Result int32 @@ -3123,11 +3221,11 @@ func (x CMsgGCToClientRemoveFilteredPlayerResponse_Result) String() string { } func (CMsgGCToClientRemoveFilteredPlayerResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[44].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[45].Descriptor() } func (CMsgGCToClientRemoveFilteredPlayerResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[44] + return &file_dota_gcmessages_client_proto_enumTypes[45] } func (x CMsgGCToClientRemoveFilteredPlayerResponse_Result) Number() protoreflect.EnumNumber { @@ -3146,7 +3244,7 @@ func (x *CMsgGCToClientRemoveFilteredPlayerResponse_Result) UnmarshalJSON(b []by // Deprecated: Use CMsgGCToClientRemoveFilteredPlayerResponse_Result.Descriptor instead. func (CMsgGCToClientRemoveFilteredPlayerResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{252, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{254, 0} } type CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result int32 @@ -3185,11 +3283,11 @@ func (x CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result) String() string } func (CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[45].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[46].Descriptor() } func (CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[45] + return &file_dota_gcmessages_client_proto_enumTypes[46] } func (x CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result) Number() protoreflect.EnumNumber { @@ -3208,7 +3306,7 @@ func (x *CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result) UnmarshalJSON( // Deprecated: Use CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result.Descriptor instead. func (CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{254, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{256, 0} } type CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result int32 @@ -3244,11 +3342,11 @@ func (x CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result) String() string { } func (CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[46].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[47].Descriptor() } func (CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[46] + return &file_dota_gcmessages_client_proto_enumTypes[47] } func (x CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result) Number() protoreflect.EnumNumber { @@ -3267,7 +3365,7 @@ func (x *CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result) UnmarshalJSON(b // Deprecated: Use CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result.Descriptor instead. func (CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{256, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{258, 0} } type CMsgClientToGCUpdatePartyBeacon_Action int32 @@ -3300,11 +3398,11 @@ func (x CMsgClientToGCUpdatePartyBeacon_Action) String() string { } func (CMsgClientToGCUpdatePartyBeacon_Action) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[47].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[48].Descriptor() } func (CMsgClientToGCUpdatePartyBeacon_Action) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[47] + return &file_dota_gcmessages_client_proto_enumTypes[48] } func (x CMsgClientToGCUpdatePartyBeacon_Action) Number() protoreflect.EnumNumber { @@ -3323,7 +3421,7 @@ func (x *CMsgClientToGCUpdatePartyBeacon_Action) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgClientToGCUpdatePartyBeacon_Action.Descriptor instead. func (CMsgClientToGCUpdatePartyBeacon_Action) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{260, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{262, 0} } type CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse int32 @@ -3359,11 +3457,11 @@ func (x CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse) String() str } func (CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[48].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[49].Descriptor() } func (CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[48] + return &file_dota_gcmessages_client_proto_enumTypes[49] } func (x CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3382,7 +3480,7 @@ func (x *CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse) UnmarshalJS // Deprecated: Use CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse.Descriptor instead. func (CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{262, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{264, 0} } type CMsgGCToClientJoinPartyFromBeaconResponse_EResponse int32 @@ -3421,11 +3519,11 @@ func (x CMsgGCToClientJoinPartyFromBeaconResponse_EResponse) String() string { } func (CMsgGCToClientJoinPartyFromBeaconResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[49].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[50].Descriptor() } func (CMsgGCToClientJoinPartyFromBeaconResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[49] + return &file_dota_gcmessages_client_proto_enumTypes[50] } func (x CMsgGCToClientJoinPartyFromBeaconResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3444,7 +3542,7 @@ func (x *CMsgGCToClientJoinPartyFromBeaconResponse_EResponse) UnmarshalJSON(b [] // Deprecated: Use CMsgGCToClientJoinPartyFromBeaconResponse_EResponse.Descriptor instead. func (CMsgGCToClientJoinPartyFromBeaconResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{264, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{266, 0} } type CMsgClientToGCManageFavorites_Action int32 @@ -3477,11 +3575,11 @@ func (x CMsgClientToGCManageFavorites_Action) String() string { } func (CMsgClientToGCManageFavorites_Action) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[50].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[51].Descriptor() } func (CMsgClientToGCManageFavorites_Action) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[50] + return &file_dota_gcmessages_client_proto_enumTypes[51] } func (x CMsgClientToGCManageFavorites_Action) Number() protoreflect.EnumNumber { @@ -3500,7 +3598,7 @@ func (x *CMsgClientToGCManageFavorites_Action) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgClientToGCManageFavorites_Action.Descriptor instead. func (CMsgClientToGCManageFavorites_Action) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{265, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{267, 0} } type CMsgGCToClientManageFavoritesResponse_EResponse int32 @@ -3545,11 +3643,11 @@ func (x CMsgGCToClientManageFavoritesResponse_EResponse) String() string { } func (CMsgGCToClientManageFavoritesResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[51].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[52].Descriptor() } func (CMsgGCToClientManageFavoritesResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[51] + return &file_dota_gcmessages_client_proto_enumTypes[52] } func (x CMsgGCToClientManageFavoritesResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3568,7 +3666,7 @@ func (x *CMsgGCToClientManageFavoritesResponse_EResponse) UnmarshalJSON(b []byte // Deprecated: Use CMsgGCToClientManageFavoritesResponse_EResponse.Descriptor instead. func (CMsgGCToClientManageFavoritesResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{266, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{268, 0} } type CMsgGCToClientGetFavoritePlayersResponse_EResponse int32 @@ -3601,11 +3699,11 @@ func (x CMsgGCToClientGetFavoritePlayersResponse_EResponse) String() string { } func (CMsgGCToClientGetFavoritePlayersResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[52].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[53].Descriptor() } func (CMsgGCToClientGetFavoritePlayersResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[52] + return &file_dota_gcmessages_client_proto_enumTypes[53] } func (x CMsgGCToClientGetFavoritePlayersResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3624,7 +3722,7 @@ func (x *CMsgGCToClientGetFavoritePlayersResponse_EResponse) UnmarshalJSON(b []b // Deprecated: Use CMsgGCToClientGetFavoritePlayersResponse_EResponse.Descriptor instead. func (CMsgGCToClientGetFavoritePlayersResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{268, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{270, 0} } type CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse int32 @@ -3663,11 +3761,11 @@ func (x CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Stri } func (CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[53].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[54].Descriptor() } func (CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[53] + return &file_dota_gcmessages_client_proto_enumTypes[54] } func (x CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3686,7 +3784,7 @@ func (x *CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Unm // Deprecated: Use CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse.Descriptor instead. func (CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{273, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{275, 0} } type CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse int32 @@ -3725,11 +3823,11 @@ func (x CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse) } func (CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[54].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[55].Descriptor() } func (CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[54] + return &file_dota_gcmessages_client_proto_enumTypes[55] } func (x CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3748,7 +3846,7 @@ func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse) // Deprecated: Use CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse.Descriptor instead. func (CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{275, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{277, 0} } type CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse int32 @@ -3793,11 +3891,11 @@ func (x CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse) String() string } func (CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[55].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[56].Descriptor() } func (CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[55] + return &file_dota_gcmessages_client_proto_enumTypes[56] } func (x CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3816,7 +3914,78 @@ func (x *CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse) UnmarshalJSON( // Deprecated: Use CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse.Descriptor instead. func (CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{277, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{279, 0} +} + +type CMsgClientToGCRequestReporterUpdatesResponse_EResponse int32 + +const ( + CMsgClientToGCRequestReporterUpdatesResponse_k_eInternalError CMsgClientToGCRequestReporterUpdatesResponse_EResponse = 0 + CMsgClientToGCRequestReporterUpdatesResponse_k_eSuccess CMsgClientToGCRequestReporterUpdatesResponse_EResponse = 1 + CMsgClientToGCRequestReporterUpdatesResponse_k_eTimeout CMsgClientToGCRequestReporterUpdatesResponse_EResponse = 2 + CMsgClientToGCRequestReporterUpdatesResponse_k_eTooBusy CMsgClientToGCRequestReporterUpdatesResponse_EResponse = 3 + CMsgClientToGCRequestReporterUpdatesResponse_k_eNotPermitted CMsgClientToGCRequestReporterUpdatesResponse_EResponse = 4 + CMsgClientToGCRequestReporterUpdatesResponse_k_eNotToSoon CMsgClientToGCRequestReporterUpdatesResponse_EResponse = 5 + CMsgClientToGCRequestReporterUpdatesResponse_k_eNotValid CMsgClientToGCRequestReporterUpdatesResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCRequestReporterUpdatesResponse_EResponse. +var ( + CMsgClientToGCRequestReporterUpdatesResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTimeout", + 3: "k_eTooBusy", + 4: "k_eNotPermitted", + 5: "k_eNotToSoon", + 6: "k_eNotValid", + } + CMsgClientToGCRequestReporterUpdatesResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTimeout": 2, + "k_eTooBusy": 3, + "k_eNotPermitted": 4, + "k_eNotToSoon": 5, + "k_eNotValid": 6, + } +) + +func (x CMsgClientToGCRequestReporterUpdatesResponse_EResponse) Enum() *CMsgClientToGCRequestReporterUpdatesResponse_EResponse { + p := new(CMsgClientToGCRequestReporterUpdatesResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCRequestReporterUpdatesResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCRequestReporterUpdatesResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_proto_enumTypes[57].Descriptor() +} + +func (CMsgClientToGCRequestReporterUpdatesResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_proto_enumTypes[57] +} + +func (x CMsgClientToGCRequestReporterUpdatesResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCRequestReporterUpdatesResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCRequestReporterUpdatesResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCRequestReporterUpdatesResponse_EResponse.Descriptor instead. +func (CMsgClientToGCRequestReporterUpdatesResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{298, 0} } type CMsgClientToGCRecalibrateMMRResponse_EResponse int32 @@ -3864,11 +4033,11 @@ func (x CMsgClientToGCRecalibrateMMRResponse_EResponse) String() string { } func (CMsgClientToGCRecalibrateMMRResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[56].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[58].Descriptor() } func (CMsgClientToGCRecalibrateMMRResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[56] + return &file_dota_gcmessages_client_proto_enumTypes[58] } func (x CMsgClientToGCRecalibrateMMRResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3887,7 +4056,7 @@ func (x *CMsgClientToGCRecalibrateMMRResponse_EResponse) UnmarshalJSON(b []byte) // Deprecated: Use CMsgClientToGCRecalibrateMMRResponse_EResponse.Descriptor instead. func (CMsgClientToGCRecalibrateMMRResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{296, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{301, 0} } type CMsgClientToGCGetOWMatchDetailsResponse_EResponse int32 @@ -3932,11 +4101,11 @@ func (x CMsgClientToGCGetOWMatchDetailsResponse_EResponse) String() string { } func (CMsgClientToGCGetOWMatchDetailsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[57].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[59].Descriptor() } func (CMsgClientToGCGetOWMatchDetailsResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[57] + return &file_dota_gcmessages_client_proto_enumTypes[59] } func (x CMsgClientToGCGetOWMatchDetailsResponse_EResponse) Number() protoreflect.EnumNumber { @@ -3955,7 +4124,7 @@ func (x *CMsgClientToGCGetOWMatchDetailsResponse_EResponse) UnmarshalJSON(b []by // Deprecated: Use CMsgClientToGCGetOWMatchDetailsResponse_EResponse.Descriptor instead. func (CMsgClientToGCGetOWMatchDetailsResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{299, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{304, 0} } type CMsgClientToGCSubmitOWConvictionResponse_EResponse int32 @@ -4006,11 +4175,11 @@ func (x CMsgClientToGCSubmitOWConvictionResponse_EResponse) String() string { } func (CMsgClientToGCSubmitOWConvictionResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[58].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[60].Descriptor() } func (CMsgClientToGCSubmitOWConvictionResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[58] + return &file_dota_gcmessages_client_proto_enumTypes[60] } func (x CMsgClientToGCSubmitOWConvictionResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4029,7 +4198,7 @@ func (x *CMsgClientToGCSubmitOWConvictionResponse_EResponse) UnmarshalJSON(b []b // Deprecated: Use CMsgClientToGCSubmitOWConvictionResponse_EResponse.Descriptor instead. func (CMsgClientToGCSubmitOWConvictionResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{301, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{306, 0} } type CMsgClientToGCGetDPCFavoritesResponse_EResponse int32 @@ -4074,11 +4243,11 @@ func (x CMsgClientToGCGetDPCFavoritesResponse_EResponse) String() string { } func (CMsgClientToGCGetDPCFavoritesResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[59].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[61].Descriptor() } func (CMsgClientToGCGetDPCFavoritesResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[59] + return &file_dota_gcmessages_client_proto_enumTypes[61] } func (x CMsgClientToGCGetDPCFavoritesResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4097,7 +4266,7 @@ func (x *CMsgClientToGCGetDPCFavoritesResponse_EResponse) UnmarshalJSON(b []byte // Deprecated: Use CMsgClientToGCGetDPCFavoritesResponse_EResponse.Descriptor instead. func (CMsgClientToGCGetDPCFavoritesResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{311, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{316, 0} } type CMsgClientToGCSetDPCFavoriteStateResponse_EResponse int32 @@ -4151,11 +4320,11 @@ func (x CMsgClientToGCSetDPCFavoriteStateResponse_EResponse) String() string { } func (CMsgClientToGCSetDPCFavoriteStateResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[60].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[62].Descriptor() } func (CMsgClientToGCSetDPCFavoriteStateResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[60] + return &file_dota_gcmessages_client_proto_enumTypes[62] } func (x CMsgClientToGCSetDPCFavoriteStateResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4174,7 +4343,7 @@ func (x *CMsgClientToGCSetDPCFavoriteStateResponse_EResponse) UnmarshalJSON(b [] // Deprecated: Use CMsgClientToGCSetDPCFavoriteStateResponse_EResponse.Descriptor instead. func (CMsgClientToGCSetDPCFavoriteStateResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{313, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{318, 0} } type CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse int32 @@ -4222,11 +4391,11 @@ func (x CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse) String() string } func (CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[61].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[63].Descriptor() } func (CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[61] + return &file_dota_gcmessages_client_proto_enumTypes[63] } func (x CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4245,7 +4414,7 @@ func (x *CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse) UnmarshalJSON(b // Deprecated: Use CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse.Descriptor instead. func (CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{315, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{320, 0} } type CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse int32 @@ -4290,11 +4459,11 @@ func (x CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse) String() str } func (CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[62].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[64].Descriptor() } func (CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[62] + return &file_dota_gcmessages_client_proto_enumTypes[64] } func (x CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4313,7 +4482,7 @@ func (x *CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse) UnmarshalJS // Deprecated: Use CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse.Descriptor instead. func (CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{317, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{322, 0} } type CMsgClientToGCGetStickerbookResponse_EResponse int32 @@ -4355,11 +4524,11 @@ func (x CMsgClientToGCGetStickerbookResponse_EResponse) String() string { } func (CMsgClientToGCGetStickerbookResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[63].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[65].Descriptor() } func (CMsgClientToGCGetStickerbookResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[63] + return &file_dota_gcmessages_client_proto_enumTypes[65] } func (x CMsgClientToGCGetStickerbookResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4378,7 +4547,7 @@ func (x *CMsgClientToGCGetStickerbookResponse_EResponse) UnmarshalJSON(b []byte) // Deprecated: Use CMsgClientToGCGetStickerbookResponse_EResponse.Descriptor instead. func (CMsgClientToGCGetStickerbookResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{319, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{324, 0} } type CMsgClientToGCCreateStickerbookPageResponse_EResponse int32 @@ -4420,11 +4589,11 @@ func (x CMsgClientToGCCreateStickerbookPageResponse_EResponse) String() string { } func (CMsgClientToGCCreateStickerbookPageResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[64].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[66].Descriptor() } func (CMsgClientToGCCreateStickerbookPageResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[64] + return &file_dota_gcmessages_client_proto_enumTypes[66] } func (x CMsgClientToGCCreateStickerbookPageResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4443,7 +4612,7 @@ func (x *CMsgClientToGCCreateStickerbookPageResponse_EResponse) UnmarshalJSON(b // Deprecated: Use CMsgClientToGCCreateStickerbookPageResponse_EResponse.Descriptor instead. func (CMsgClientToGCCreateStickerbookPageResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{321, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{326, 0} } type CMsgClientToGCDeleteStickerbookPageResponse_EResponse int32 @@ -4491,11 +4660,11 @@ func (x CMsgClientToGCDeleteStickerbookPageResponse_EResponse) String() string { } func (CMsgClientToGCDeleteStickerbookPageResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[65].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[67].Descriptor() } func (CMsgClientToGCDeleteStickerbookPageResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[65] + return &file_dota_gcmessages_client_proto_enumTypes[67] } func (x CMsgClientToGCDeleteStickerbookPageResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4514,7 +4683,7 @@ func (x *CMsgClientToGCDeleteStickerbookPageResponse_EResponse) UnmarshalJSON(b // Deprecated: Use CMsgClientToGCDeleteStickerbookPageResponse_EResponse.Descriptor instead. func (CMsgClientToGCDeleteStickerbookPageResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{323, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{328, 0} } type CMsgClientToGCPlaceStickersResponse_EResponse int32 @@ -4568,11 +4737,11 @@ func (x CMsgClientToGCPlaceStickersResponse_EResponse) String() string { } func (CMsgClientToGCPlaceStickersResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[66].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[68].Descriptor() } func (CMsgClientToGCPlaceStickersResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[66] + return &file_dota_gcmessages_client_proto_enumTypes[68] } func (x CMsgClientToGCPlaceStickersResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4591,7 +4760,7 @@ func (x *CMsgClientToGCPlaceStickersResponse_EResponse) UnmarshalJSON(b []byte) // Deprecated: Use CMsgClientToGCPlaceStickersResponse_EResponse.Descriptor instead. func (CMsgClientToGCPlaceStickersResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{325, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{330, 0} } type CMsgClientToGCPlaceCollectionStickersResponse_EResponse int32 @@ -4651,11 +4820,11 @@ func (x CMsgClientToGCPlaceCollectionStickersResponse_EResponse) String() string } func (CMsgClientToGCPlaceCollectionStickersResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[67].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[69].Descriptor() } func (CMsgClientToGCPlaceCollectionStickersResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[67] + return &file_dota_gcmessages_client_proto_enumTypes[69] } func (x CMsgClientToGCPlaceCollectionStickersResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4674,7 +4843,7 @@ func (x *CMsgClientToGCPlaceCollectionStickersResponse_EResponse) UnmarshalJSON( // Deprecated: Use CMsgClientToGCPlaceCollectionStickersResponse_EResponse.Descriptor instead. func (CMsgClientToGCPlaceCollectionStickersResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{327, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{332, 0} } type CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse int32 @@ -4719,11 +4888,11 @@ func (x CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse) String() strin } func (CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[68].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[70].Descriptor() } func (CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[68] + return &file_dota_gcmessages_client_proto_enumTypes[70] } func (x CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4742,7 +4911,7 @@ func (x *CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse) UnmarshalJSON // Deprecated: Use CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse.Descriptor instead. func (CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{329, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{334, 0} } type CMsgClientToGCSetHeroStickerResponse_EResponse int32 @@ -4790,11 +4959,11 @@ func (x CMsgClientToGCSetHeroStickerResponse_EResponse) String() string { } func (CMsgClientToGCSetHeroStickerResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[69].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[71].Descriptor() } func (CMsgClientToGCSetHeroStickerResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[69] + return &file_dota_gcmessages_client_proto_enumTypes[71] } func (x CMsgClientToGCSetHeroStickerResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4813,7 +4982,7 @@ func (x *CMsgClientToGCSetHeroStickerResponse_EResponse) UnmarshalJSON(b []byte) // Deprecated: Use CMsgClientToGCSetHeroStickerResponse_EResponse.Descriptor instead. func (CMsgClientToGCSetHeroStickerResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{331, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{336, 0} } type CMsgClientToGCGetHeroStickersResponse_EResponse int32 @@ -4852,11 +5021,11 @@ func (x CMsgClientToGCGetHeroStickersResponse_EResponse) String() string { } func (CMsgClientToGCGetHeroStickersResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[70].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[72].Descriptor() } func (CMsgClientToGCGetHeroStickersResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[70] + return &file_dota_gcmessages_client_proto_enumTypes[72] } func (x CMsgClientToGCGetHeroStickersResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4875,7 +5044,7 @@ func (x *CMsgClientToGCGetHeroStickersResponse_EResponse) UnmarshalJSON(b []byte // Deprecated: Use CMsgClientToGCGetHeroStickersResponse_EResponse.Descriptor instead. func (CMsgClientToGCGetHeroStickersResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{333, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{338, 0} } type CMsgClientToGCSetFavoritePageResponse_EResponse int32 @@ -4917,11 +5086,11 @@ func (x CMsgClientToGCSetFavoritePageResponse_EResponse) String() string { } func (CMsgClientToGCSetFavoritePageResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[71].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[73].Descriptor() } func (CMsgClientToGCSetFavoritePageResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[71] + return &file_dota_gcmessages_client_proto_enumTypes[73] } func (x CMsgClientToGCSetFavoritePageResponse_EResponse) Number() protoreflect.EnumNumber { @@ -4940,7 +5109,7 @@ func (x *CMsgClientToGCSetFavoritePageResponse_EResponse) UnmarshalJSON(b []byte // Deprecated: Use CMsgClientToGCSetFavoritePageResponse_EResponse.Descriptor instead. func (CMsgClientToGCSetFavoritePageResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{335, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{340, 0} } type CMsgClientToGCClaimSwagResponse_EResponse int32 @@ -4997,11 +5166,11 @@ func (x CMsgClientToGCClaimSwagResponse_EResponse) String() string { } func (CMsgClientToGCClaimSwagResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[72].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[74].Descriptor() } func (CMsgClientToGCClaimSwagResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[72] + return &file_dota_gcmessages_client_proto_enumTypes[74] } func (x CMsgClientToGCClaimSwagResponse_EResponse) Number() protoreflect.EnumNumber { @@ -5020,7 +5189,7 @@ func (x *CMsgClientToGCClaimSwagResponse_EResponse) UnmarshalJSON(b []byte) erro // Deprecated: Use CMsgClientToGCClaimSwagResponse_EResponse.Descriptor instead. func (CMsgClientToGCClaimSwagResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{337, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{342, 0} } type CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType int32 @@ -5053,11 +5222,11 @@ func (x CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType) Strin } func (CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[73].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[75].Descriptor() } func (CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[73] + return &file_dota_gcmessages_client_proto_enumTypes[75] } func (x CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType) Number() protoreflect.EnumNumber { @@ -5076,7 +5245,7 @@ func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType) Unma // Deprecated: Use CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType.Descriptor instead. func (CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{339, 0, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{344, 0, 0} } type CMsgGCToClientUploadMatchClipResponse_EResponse int32 @@ -5115,11 +5284,11 @@ func (x CMsgGCToClientUploadMatchClipResponse_EResponse) String() string { } func (CMsgGCToClientUploadMatchClipResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[74].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[76].Descriptor() } func (CMsgGCToClientUploadMatchClipResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[74] + return &file_dota_gcmessages_client_proto_enumTypes[76] } func (x CMsgGCToClientUploadMatchClipResponse_EResponse) Number() protoreflect.EnumNumber { @@ -5138,7 +5307,7 @@ func (x *CMsgGCToClientUploadMatchClipResponse_EResponse) UnmarshalJSON(b []byte // Deprecated: Use CMsgGCToClientUploadMatchClipResponse_EResponse.Descriptor instead. func (CMsgGCToClientUploadMatchClipResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{341, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{346, 0} } type CMsgGCToClientMapStatsResponse_EResponse int32 @@ -5171,11 +5340,11 @@ func (x CMsgGCToClientMapStatsResponse_EResponse) String() string { } func (CMsgGCToClientMapStatsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_client_proto_enumTypes[75].Descriptor() + return file_dota_gcmessages_client_proto_enumTypes[77].Descriptor() } func (CMsgGCToClientMapStatsResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_client_proto_enumTypes[75] + return &file_dota_gcmessages_client_proto_enumTypes[77] } func (x CMsgGCToClientMapStatsResponse_EResponse) Number() protoreflect.EnumNumber { @@ -5194,7 +5363,217 @@ func (x *CMsgGCToClientMapStatsResponse_EResponse) UnmarshalJSON(b []byte) error // Deprecated: Use CMsgGCToClientMapStatsResponse_EResponse.Descriptor instead. func (CMsgGCToClientMapStatsResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{343, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{348, 0} +} + +type CMsgClientToGCRoadToTIGetQuestsResponse_EResponse int32 + +const ( + CMsgClientToGCRoadToTIGetQuestsResponse_k_eInternalError CMsgClientToGCRoadToTIGetQuestsResponse_EResponse = 0 + CMsgClientToGCRoadToTIGetQuestsResponse_k_eSuccess CMsgClientToGCRoadToTIGetQuestsResponse_EResponse = 1 + CMsgClientToGCRoadToTIGetQuestsResponse_k_eTooBusy CMsgClientToGCRoadToTIGetQuestsResponse_EResponse = 2 + CMsgClientToGCRoadToTIGetQuestsResponse_k_eDisabled CMsgClientToGCRoadToTIGetQuestsResponse_EResponse = 3 + CMsgClientToGCRoadToTIGetQuestsResponse_k_eTimeout CMsgClientToGCRoadToTIGetQuestsResponse_EResponse = 4 + CMsgClientToGCRoadToTIGetQuestsResponse_k_eInvalidID CMsgClientToGCRoadToTIGetQuestsResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCRoadToTIGetQuestsResponse_EResponse. +var ( + CMsgClientToGCRoadToTIGetQuestsResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidID", + } + CMsgClientToGCRoadToTIGetQuestsResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidID": 5, + } +) + +func (x CMsgClientToGCRoadToTIGetQuestsResponse_EResponse) Enum() *CMsgClientToGCRoadToTIGetQuestsResponse_EResponse { + p := new(CMsgClientToGCRoadToTIGetQuestsResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCRoadToTIGetQuestsResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCRoadToTIGetQuestsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_proto_enumTypes[78].Descriptor() +} + +func (CMsgClientToGCRoadToTIGetQuestsResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_proto_enumTypes[78] +} + +func (x CMsgClientToGCRoadToTIGetQuestsResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCRoadToTIGetQuestsResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCRoadToTIGetQuestsResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCRoadToTIGetQuestsResponse_EResponse.Descriptor instead. +func (CMsgClientToGCRoadToTIGetQuestsResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{352, 0} +} + +type CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse int32 + +const ( + CMsgClientToGCRoadToTIGetActiveQuestResponse_k_eInternalError CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse = 0 + CMsgClientToGCRoadToTIGetActiveQuestResponse_k_eSuccess CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse = 1 + CMsgClientToGCRoadToTIGetActiveQuestResponse_k_eNone CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse = 2 + CMsgClientToGCRoadToTIGetActiveQuestResponse_k_eTooBusy CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse = 3 + CMsgClientToGCRoadToTIGetActiveQuestResponse_k_eDisabled CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse = 4 + CMsgClientToGCRoadToTIGetActiveQuestResponse_k_eTimeout CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse = 5 + CMsgClientToGCRoadToTIGetActiveQuestResponse_k_eInvalidID CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse. +var ( + CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eNone", + 3: "k_eTooBusy", + 4: "k_eDisabled", + 5: "k_eTimeout", + 6: "k_eInvalidID", + } + CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eNone": 2, + "k_eTooBusy": 3, + "k_eDisabled": 4, + "k_eTimeout": 5, + "k_eInvalidID": 6, + } +) + +func (x CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse) Enum() *CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse { + p := new(CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_proto_enumTypes[79].Descriptor() +} + +func (CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_proto_enumTypes[79] +} + +func (x CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse.Descriptor instead. +func (CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{354, 0} +} + +type CMsgClientToGCRoadToTIUseItemResponse_EResponse int32 + +const ( + CMsgClientToGCRoadToTIUseItemResponse_k_eInternalError CMsgClientToGCRoadToTIUseItemResponse_EResponse = 0 + CMsgClientToGCRoadToTIUseItemResponse_k_eSuccess CMsgClientToGCRoadToTIUseItemResponse_EResponse = 1 + CMsgClientToGCRoadToTIUseItemResponse_k_eBadInput CMsgClientToGCRoadToTIUseItemResponse_EResponse = 2 + CMsgClientToGCRoadToTIUseItemResponse_k_eNoItem CMsgClientToGCRoadToTIUseItemResponse_EResponse = 3 + CMsgClientToGCRoadToTIUseItemResponse_k_eDisabled CMsgClientToGCRoadToTIUseItemResponse_EResponse = 4 + CMsgClientToGCRoadToTIUseItemResponse_k_eTimeout CMsgClientToGCRoadToTIUseItemResponse_EResponse = 5 + CMsgClientToGCRoadToTIUseItemResponse_k_eInvalidID CMsgClientToGCRoadToTIUseItemResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCRoadToTIUseItemResponse_EResponse. +var ( + CMsgClientToGCRoadToTIUseItemResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eBadInput", + 3: "k_eNoItem", + 4: "k_eDisabled", + 5: "k_eTimeout", + 6: "k_eInvalidID", + } + CMsgClientToGCRoadToTIUseItemResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eBadInput": 2, + "k_eNoItem": 3, + "k_eDisabled": 4, + "k_eTimeout": 5, + "k_eInvalidID": 6, + } +) + +func (x CMsgClientToGCRoadToTIUseItemResponse_EResponse) Enum() *CMsgClientToGCRoadToTIUseItemResponse_EResponse { + p := new(CMsgClientToGCRoadToTIUseItemResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCRoadToTIUseItemResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCRoadToTIUseItemResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_proto_enumTypes[80].Descriptor() +} + +func (CMsgClientToGCRoadToTIUseItemResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_proto_enumTypes[80] +} + +func (x CMsgClientToGCRoadToTIUseItemResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCRoadToTIUseItemResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCRoadToTIUseItemResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCRoadToTIUseItemResponse_EResponse.Descriptor instead. +func (CMsgClientToGCRoadToTIUseItemResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{357, 0} } type CMsgClientSuspended struct { @@ -5912,6 +6291,164 @@ func (x *CMsgDOTASubmitPlayerAvoidRequestResponse) GetDebugMessage() string { return "" } +type CMsgDOTASubmitPlayerReportV2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ReportReason []uint32 `protobuf:"varint,2,rep,name=report_reason,json=reportReason" json:"report_reason,omitempty"` + LobbyId *uint64 `protobuf:"varint,3,opt,name=lobby_id,json=lobbyId" json:"lobby_id,omitempty"` + GameTime *float32 `protobuf:"fixed32,4,opt,name=game_time,json=gameTime" json:"game_time,omitempty"` + DebugSlot *uint32 `protobuf:"varint,5,opt,name=debug_slot,json=debugSlot" json:"debug_slot,omitempty"` + DebugMatchId *uint64 `protobuf:"fixed64,6,opt,name=debug_match_id,json=debugMatchId" json:"debug_match_id,omitempty"` +} + +func (x *CMsgDOTASubmitPlayerReportV2) Reset() { + *x = CMsgDOTASubmitPlayerReportV2{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTASubmitPlayerReportV2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTASubmitPlayerReportV2) ProtoMessage() {} + +func (x *CMsgDOTASubmitPlayerReportV2) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTASubmitPlayerReportV2.ProtoReflect.Descriptor instead. +func (*CMsgDOTASubmitPlayerReportV2) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{11} +} + +func (x *CMsgDOTASubmitPlayerReportV2) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgDOTASubmitPlayerReportV2) GetReportReason() []uint32 { + if x != nil { + return x.ReportReason + } + return nil +} + +func (x *CMsgDOTASubmitPlayerReportV2) GetLobbyId() uint64 { + if x != nil && x.LobbyId != nil { + return *x.LobbyId + } + return 0 +} + +func (x *CMsgDOTASubmitPlayerReportV2) GetGameTime() float32 { + if x != nil && x.GameTime != nil { + return *x.GameTime + } + return 0 +} + +func (x *CMsgDOTASubmitPlayerReportV2) GetDebugSlot() uint32 { + if x != nil && x.DebugSlot != nil { + return *x.DebugSlot + } + return 0 +} + +func (x *CMsgDOTASubmitPlayerReportV2) GetDebugMatchId() uint64 { + if x != nil && x.DebugMatchId != nil { + return *x.DebugMatchId + } + return 0 +} + +type CMsgDOTASubmitPlayerReportResponseV2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ReportReason []uint32 `protobuf:"varint,2,rep,name=report_reason,json=reportReason" json:"report_reason,omitempty"` + DebugMessage *string `protobuf:"bytes,4,opt,name=debug_message,json=debugMessage" json:"debug_message,omitempty"` + EnumResult *CMsgDOTASubmitPlayerReportResponseV2_EResult `protobuf:"varint,5,opt,name=enum_result,json=enumResult,enum=dota.CMsgDOTASubmitPlayerReportResponseV2_EResult" json:"enum_result,omitempty"` +} + +func (x *CMsgDOTASubmitPlayerReportResponseV2) Reset() { + *x = CMsgDOTASubmitPlayerReportResponseV2{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTASubmitPlayerReportResponseV2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTASubmitPlayerReportResponseV2) ProtoMessage() {} + +func (x *CMsgDOTASubmitPlayerReportResponseV2) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTASubmitPlayerReportResponseV2.ProtoReflect.Descriptor instead. +func (*CMsgDOTASubmitPlayerReportResponseV2) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{12} +} + +func (x *CMsgDOTASubmitPlayerReportResponseV2) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgDOTASubmitPlayerReportResponseV2) GetReportReason() []uint32 { + if x != nil { + return x.ReportReason + } + return nil +} + +func (x *CMsgDOTASubmitPlayerReportResponseV2) GetDebugMessage() string { + if x != nil && x.DebugMessage != nil { + return *x.DebugMessage + } + return "" +} + +func (x *CMsgDOTASubmitPlayerReportResponseV2) GetEnumResult() CMsgDOTASubmitPlayerReportResponseV2_EResult { + if x != nil && x.EnumResult != nil { + return *x.EnumResult + } + return CMsgDOTASubmitPlayerReportResponseV2_k_eInternalError +} + type CMsgDOTASubmitLobbyMVPVote struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5923,7 +6460,7 @@ type CMsgDOTASubmitLobbyMVPVote struct { func (x *CMsgDOTASubmitLobbyMVPVote) Reset() { *x = CMsgDOTASubmitLobbyMVPVote{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[11] + mi := &file_dota_gcmessages_client_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5936,7 +6473,7 @@ func (x *CMsgDOTASubmitLobbyMVPVote) String() string { func (*CMsgDOTASubmitLobbyMVPVote) ProtoMessage() {} func (x *CMsgDOTASubmitLobbyMVPVote) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[11] + mi := &file_dota_gcmessages_client_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5949,7 +6486,7 @@ func (x *CMsgDOTASubmitLobbyMVPVote) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTASubmitLobbyMVPVote.ProtoReflect.Descriptor instead. func (*CMsgDOTASubmitLobbyMVPVote) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{11} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{13} } func (x *CMsgDOTASubmitLobbyMVPVote) GetTargetAccountId() uint32 { @@ -5971,7 +6508,7 @@ type CMsgDOTASubmitLobbyMVPVoteResponse struct { func (x *CMsgDOTASubmitLobbyMVPVoteResponse) Reset() { *x = CMsgDOTASubmitLobbyMVPVoteResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[12] + mi := &file_dota_gcmessages_client_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5984,7 +6521,7 @@ func (x *CMsgDOTASubmitLobbyMVPVoteResponse) String() string { func (*CMsgDOTASubmitLobbyMVPVoteResponse) ProtoMessage() {} func (x *CMsgDOTASubmitLobbyMVPVoteResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[12] + mi := &file_dota_gcmessages_client_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5997,7 +6534,7 @@ func (x *CMsgDOTASubmitLobbyMVPVoteResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTASubmitLobbyMVPVoteResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTASubmitLobbyMVPVoteResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{12} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{14} } func (x *CMsgDOTASubmitLobbyMVPVoteResponse) GetTargetAccountId() uint32 { @@ -6026,7 +6563,7 @@ type CMsgDOTALobbyMVPAwarded struct { func (x *CMsgDOTALobbyMVPAwarded) Reset() { *x = CMsgDOTALobbyMVPAwarded{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[13] + mi := &file_dota_gcmessages_client_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6039,7 +6576,7 @@ func (x *CMsgDOTALobbyMVPAwarded) String() string { func (*CMsgDOTALobbyMVPAwarded) ProtoMessage() {} func (x *CMsgDOTALobbyMVPAwarded) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[13] + mi := &file_dota_gcmessages_client_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6052,7 +6589,7 @@ func (x *CMsgDOTALobbyMVPAwarded) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTALobbyMVPAwarded.ProtoReflect.Descriptor instead. func (*CMsgDOTALobbyMVPAwarded) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{13} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{15} } func (x *CMsgDOTALobbyMVPAwarded) GetMatchId() uint64 { @@ -6080,7 +6617,7 @@ type CMsgDOTAKickedFromMatchmakingQueue struct { func (x *CMsgDOTAKickedFromMatchmakingQueue) Reset() { *x = CMsgDOTAKickedFromMatchmakingQueue{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[14] + mi := &file_dota_gcmessages_client_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6093,7 +6630,7 @@ func (x *CMsgDOTAKickedFromMatchmakingQueue) String() string { func (*CMsgDOTAKickedFromMatchmakingQueue) ProtoMessage() {} func (x *CMsgDOTAKickedFromMatchmakingQueue) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[14] + mi := &file_dota_gcmessages_client_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6106,7 +6643,7 @@ func (x *CMsgDOTAKickedFromMatchmakingQueue) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTAKickedFromMatchmakingQueue.ProtoReflect.Descriptor instead. func (*CMsgDOTAKickedFromMatchmakingQueue) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{14} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{16} } func (x *CMsgDOTAKickedFromMatchmakingQueue) GetMatchType() MatchType { @@ -6127,7 +6664,7 @@ type CMsgGCMatchDetailsRequest struct { func (x *CMsgGCMatchDetailsRequest) Reset() { *x = CMsgGCMatchDetailsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[15] + mi := &file_dota_gcmessages_client_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6140,7 +6677,7 @@ func (x *CMsgGCMatchDetailsRequest) String() string { func (*CMsgGCMatchDetailsRequest) ProtoMessage() {} func (x *CMsgGCMatchDetailsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[15] + mi := &file_dota_gcmessages_client_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6153,7 +6690,7 @@ func (x *CMsgGCMatchDetailsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCMatchDetailsRequest.ProtoReflect.Descriptor instead. func (*CMsgGCMatchDetailsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{15} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{17} } func (x *CMsgGCMatchDetailsRequest) GetMatchId() uint64 { @@ -6176,7 +6713,7 @@ type CMsgGCMatchDetailsResponse struct { func (x *CMsgGCMatchDetailsResponse) Reset() { *x = CMsgGCMatchDetailsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[16] + mi := &file_dota_gcmessages_client_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6189,7 +6726,7 @@ func (x *CMsgGCMatchDetailsResponse) String() string { func (*CMsgGCMatchDetailsResponse) ProtoMessage() {} func (x *CMsgGCMatchDetailsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[16] + mi := &file_dota_gcmessages_client_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6202,7 +6739,7 @@ func (x *CMsgGCMatchDetailsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCMatchDetailsResponse.ProtoReflect.Descriptor instead. func (*CMsgGCMatchDetailsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{16} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{18} } func (x *CMsgGCMatchDetailsResponse) GetResult() uint32 { @@ -6239,7 +6776,7 @@ type CMsgDOTAProfileTickets struct { func (x *CMsgDOTAProfileTickets) Reset() { *x = CMsgDOTAProfileTickets{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[17] + mi := &file_dota_gcmessages_client_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6252,7 +6789,7 @@ func (x *CMsgDOTAProfileTickets) String() string { func (*CMsgDOTAProfileTickets) ProtoMessage() {} func (x *CMsgDOTAProfileTickets) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[17] + mi := &file_dota_gcmessages_client_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6265,7 +6802,7 @@ func (x *CMsgDOTAProfileTickets) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAProfileTickets.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileTickets) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{17} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{19} } func (x *CMsgDOTAProfileTickets) GetResult() uint32 { @@ -6300,7 +6837,7 @@ type CMsgClientToGCGetProfileTickets struct { func (x *CMsgClientToGCGetProfileTickets) Reset() { *x = CMsgClientToGCGetProfileTickets{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[18] + mi := &file_dota_gcmessages_client_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6313,7 +6850,7 @@ func (x *CMsgClientToGCGetProfileTickets) String() string { func (*CMsgClientToGCGetProfileTickets) ProtoMessage() {} func (x *CMsgClientToGCGetProfileTickets) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[18] + mi := &file_dota_gcmessages_client_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6326,7 +6863,7 @@ func (x *CMsgClientToGCGetProfileTickets) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetProfileTickets.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetProfileTickets) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{18} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{20} } func (x *CMsgClientToGCGetProfileTickets) GetAccountId() uint32 { @@ -6347,7 +6884,7 @@ type CMsgGCToClientPartySearchInvites struct { func (x *CMsgGCToClientPartySearchInvites) Reset() { *x = CMsgGCToClientPartySearchInvites{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[19] + mi := &file_dota_gcmessages_client_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6360,7 +6897,7 @@ func (x *CMsgGCToClientPartySearchInvites) String() string { func (*CMsgGCToClientPartySearchInvites) ProtoMessage() {} func (x *CMsgGCToClientPartySearchInvites) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[19] + mi := &file_dota_gcmessages_client_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6373,7 +6910,7 @@ func (x *CMsgGCToClientPartySearchInvites) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPartySearchInvites.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPartySearchInvites) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{19} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{21} } func (x *CMsgGCToClientPartySearchInvites) GetInvites() []*CMsgGCToClientPartySearchInvite { @@ -6411,7 +6948,7 @@ type CMsgDOTAWelcome struct { func (x *CMsgDOTAWelcome) Reset() { *x = CMsgDOTAWelcome{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[20] + mi := &file_dota_gcmessages_client_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6424,7 +6961,7 @@ func (x *CMsgDOTAWelcome) String() string { func (*CMsgDOTAWelcome) ProtoMessage() {} func (x *CMsgDOTAWelcome) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[20] + mi := &file_dota_gcmessages_client_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6437,7 +6974,7 @@ func (x *CMsgDOTAWelcome) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAWelcome.ProtoReflect.Descriptor instead. func (*CMsgDOTAWelcome) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{20} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{22} } func (x *CMsgDOTAWelcome) GetStoreItemHash() uint32 { @@ -6578,7 +7115,7 @@ type CSODOTAGameHeroFavorites struct { func (x *CSODOTAGameHeroFavorites) Reset() { *x = CSODOTAGameHeroFavorites{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[21] + mi := &file_dota_gcmessages_client_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6591,7 +7128,7 @@ func (x *CSODOTAGameHeroFavorites) String() string { func (*CSODOTAGameHeroFavorites) ProtoMessage() {} func (x *CSODOTAGameHeroFavorites) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[21] + mi := &file_dota_gcmessages_client_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6604,7 +7141,7 @@ func (x *CSODOTAGameHeroFavorites) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAGameHeroFavorites.ProtoReflect.Descriptor instead. func (*CSODOTAGameHeroFavorites) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{21} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{23} } func (x *CSODOTAGameHeroFavorites) GetAccountId() uint32 { @@ -6633,7 +7170,7 @@ type CMsgDOTAMatchVotes struct { func (x *CMsgDOTAMatchVotes) Reset() { *x = CMsgDOTAMatchVotes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[22] + mi := &file_dota_gcmessages_client_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6646,7 +7183,7 @@ func (x *CMsgDOTAMatchVotes) String() string { func (*CMsgDOTAMatchVotes) ProtoMessage() {} func (x *CMsgDOTAMatchVotes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[22] + mi := &file_dota_gcmessages_client_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6659,7 +7196,7 @@ func (x *CMsgDOTAMatchVotes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatchVotes.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatchVotes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{22} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{24} } func (x *CMsgDOTAMatchVotes) GetMatchId() uint64 { @@ -6690,7 +7227,7 @@ type CMsgMatchmakingMatchGroupInfo struct { func (x *CMsgMatchmakingMatchGroupInfo) Reset() { *x = CMsgMatchmakingMatchGroupInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[23] + mi := &file_dota_gcmessages_client_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6703,7 +7240,7 @@ func (x *CMsgMatchmakingMatchGroupInfo) String() string { func (*CMsgMatchmakingMatchGroupInfo) ProtoMessage() {} func (x *CMsgMatchmakingMatchGroupInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[23] + mi := &file_dota_gcmessages_client_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6716,7 +7253,7 @@ func (x *CMsgMatchmakingMatchGroupInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgMatchmakingMatchGroupInfo.ProtoReflect.Descriptor instead. func (*CMsgMatchmakingMatchGroupInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{23} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{25} } func (x *CMsgMatchmakingMatchGroupInfo) GetPlayersSearching() uint32 { @@ -6756,7 +7293,7 @@ type CMsgDOTAMatchmakingStatsRequest struct { func (x *CMsgDOTAMatchmakingStatsRequest) Reset() { *x = CMsgDOTAMatchmakingStatsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[24] + mi := &file_dota_gcmessages_client_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6769,7 +7306,7 @@ func (x *CMsgDOTAMatchmakingStatsRequest) String() string { func (*CMsgDOTAMatchmakingStatsRequest) ProtoMessage() {} func (x *CMsgDOTAMatchmakingStatsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[24] + mi := &file_dota_gcmessages_client_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6782,7 +7319,7 @@ func (x *CMsgDOTAMatchmakingStatsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatchmakingStatsRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatchmakingStatsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{24} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{26} } type CMsgDOTAMatchmakingStatsResponse struct { @@ -6798,7 +7335,7 @@ type CMsgDOTAMatchmakingStatsResponse struct { func (x *CMsgDOTAMatchmakingStatsResponse) Reset() { *x = CMsgDOTAMatchmakingStatsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[25] + mi := &file_dota_gcmessages_client_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6811,7 +7348,7 @@ func (x *CMsgDOTAMatchmakingStatsResponse) String() string { func (*CMsgDOTAMatchmakingStatsResponse) ProtoMessage() {} func (x *CMsgDOTAMatchmakingStatsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[25] + mi := &file_dota_gcmessages_client_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6824,7 +7361,7 @@ func (x *CMsgDOTAMatchmakingStatsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatchmakingStatsResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatchmakingStatsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{25} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{27} } func (x *CMsgDOTAMatchmakingStatsResponse) GetMatchgroupsVersion() uint32 { @@ -6859,7 +7396,7 @@ type CMsgDOTAUpdateMatchmakingStats struct { func (x *CMsgDOTAUpdateMatchmakingStats) Reset() { *x = CMsgDOTAUpdateMatchmakingStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[26] + mi := &file_dota_gcmessages_client_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6872,7 +7409,7 @@ func (x *CMsgDOTAUpdateMatchmakingStats) String() string { func (*CMsgDOTAUpdateMatchmakingStats) ProtoMessage() {} func (x *CMsgDOTAUpdateMatchmakingStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[26] + mi := &file_dota_gcmessages_client_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6885,7 +7422,7 @@ func (x *CMsgDOTAUpdateMatchmakingStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAUpdateMatchmakingStats.ProtoReflect.Descriptor instead. func (*CMsgDOTAUpdateMatchmakingStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{26} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{28} } func (x *CMsgDOTAUpdateMatchmakingStats) GetStats() *CMsgDOTAMatchmakingStatsResponse { @@ -6906,7 +7443,7 @@ type CMsgDOTAUpdateMatchManagementStats struct { func (x *CMsgDOTAUpdateMatchManagementStats) Reset() { *x = CMsgDOTAUpdateMatchManagementStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[27] + mi := &file_dota_gcmessages_client_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6919,7 +7456,7 @@ func (x *CMsgDOTAUpdateMatchManagementStats) String() string { func (*CMsgDOTAUpdateMatchManagementStats) ProtoMessage() {} func (x *CMsgDOTAUpdateMatchManagementStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[27] + mi := &file_dota_gcmessages_client_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6932,7 +7469,7 @@ func (x *CMsgDOTAUpdateMatchManagementStats) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTAUpdateMatchManagementStats.ProtoReflect.Descriptor instead. func (*CMsgDOTAUpdateMatchManagementStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{27} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{29} } func (x *CMsgDOTAUpdateMatchManagementStats) GetStats() *CMsgDOTAMatchmakingStatsResponse { @@ -6953,7 +7490,7 @@ type CMsgDOTASetMatchHistoryAccess struct { func (x *CMsgDOTASetMatchHistoryAccess) Reset() { *x = CMsgDOTASetMatchHistoryAccess{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[28] + mi := &file_dota_gcmessages_client_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6966,7 +7503,7 @@ func (x *CMsgDOTASetMatchHistoryAccess) String() string { func (*CMsgDOTASetMatchHistoryAccess) ProtoMessage() {} func (x *CMsgDOTASetMatchHistoryAccess) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[28] + mi := &file_dota_gcmessages_client_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6979,7 +7516,7 @@ func (x *CMsgDOTASetMatchHistoryAccess) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTASetMatchHistoryAccess.ProtoReflect.Descriptor instead. func (*CMsgDOTASetMatchHistoryAccess) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{28} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{30} } func (x *CMsgDOTASetMatchHistoryAccess) GetAllow_3RdPartyMatchHistory() bool { @@ -7000,7 +7537,7 @@ type CMsgDOTASetMatchHistoryAccessResponse struct { func (x *CMsgDOTASetMatchHistoryAccessResponse) Reset() { *x = CMsgDOTASetMatchHistoryAccessResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[29] + mi := &file_dota_gcmessages_client_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7013,7 +7550,7 @@ func (x *CMsgDOTASetMatchHistoryAccessResponse) String() string { func (*CMsgDOTASetMatchHistoryAccessResponse) ProtoMessage() {} func (x *CMsgDOTASetMatchHistoryAccessResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[29] + mi := &file_dota_gcmessages_client_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7026,7 +7563,7 @@ func (x *CMsgDOTASetMatchHistoryAccessResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTASetMatchHistoryAccessResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTASetMatchHistoryAccessResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{29} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{31} } func (x *CMsgDOTASetMatchHistoryAccessResponse) GetEresult() uint32 { @@ -7048,7 +7585,7 @@ type CMsgDOTANotifyAccountFlagsChange struct { func (x *CMsgDOTANotifyAccountFlagsChange) Reset() { *x = CMsgDOTANotifyAccountFlagsChange{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[30] + mi := &file_dota_gcmessages_client_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7061,7 +7598,7 @@ func (x *CMsgDOTANotifyAccountFlagsChange) String() string { func (*CMsgDOTANotifyAccountFlagsChange) ProtoMessage() {} func (x *CMsgDOTANotifyAccountFlagsChange) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[30] + mi := &file_dota_gcmessages_client_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7074,7 +7611,7 @@ func (x *CMsgDOTANotifyAccountFlagsChange) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTANotifyAccountFlagsChange.ProtoReflect.Descriptor instead. func (*CMsgDOTANotifyAccountFlagsChange) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{30} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{32} } func (x *CMsgDOTANotifyAccountFlagsChange) GetAccountid() uint32 { @@ -7102,7 +7639,7 @@ type CMsgDOTASetProfilePrivacy struct { func (x *CMsgDOTASetProfilePrivacy) Reset() { *x = CMsgDOTASetProfilePrivacy{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[31] + mi := &file_dota_gcmessages_client_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7115,7 +7652,7 @@ func (x *CMsgDOTASetProfilePrivacy) String() string { func (*CMsgDOTASetProfilePrivacy) ProtoMessage() {} func (x *CMsgDOTASetProfilePrivacy) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[31] + mi := &file_dota_gcmessages_client_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7128,7 +7665,7 @@ func (x *CMsgDOTASetProfilePrivacy) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTASetProfilePrivacy.ProtoReflect.Descriptor instead. func (*CMsgDOTASetProfilePrivacy) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{31} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{33} } func (x *CMsgDOTASetProfilePrivacy) GetProfilePrivate() bool { @@ -7149,7 +7686,7 @@ type CMsgDOTASetProfilePrivacyResponse struct { func (x *CMsgDOTASetProfilePrivacyResponse) Reset() { *x = CMsgDOTASetProfilePrivacyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[32] + mi := &file_dota_gcmessages_client_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7162,7 +7699,7 @@ func (x *CMsgDOTASetProfilePrivacyResponse) String() string { func (*CMsgDOTASetProfilePrivacyResponse) ProtoMessage() {} func (x *CMsgDOTASetProfilePrivacyResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[32] + mi := &file_dota_gcmessages_client_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7175,7 +7712,7 @@ func (x *CMsgDOTASetProfilePrivacyResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTASetProfilePrivacyResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTASetProfilePrivacyResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{32} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{34} } func (x *CMsgDOTASetProfilePrivacyResponse) GetEresult() uint32 { @@ -7197,7 +7734,7 @@ type CMsgUpgradeLeagueItem struct { func (x *CMsgUpgradeLeagueItem) Reset() { *x = CMsgUpgradeLeagueItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[33] + mi := &file_dota_gcmessages_client_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7210,7 +7747,7 @@ func (x *CMsgUpgradeLeagueItem) String() string { func (*CMsgUpgradeLeagueItem) ProtoMessage() {} func (x *CMsgUpgradeLeagueItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[33] + mi := &file_dota_gcmessages_client_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7223,7 +7760,7 @@ func (x *CMsgUpgradeLeagueItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgUpgradeLeagueItem.ProtoReflect.Descriptor instead. func (*CMsgUpgradeLeagueItem) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{33} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{35} } func (x *CMsgUpgradeLeagueItem) GetMatchId() uint64 { @@ -7249,7 +7786,7 @@ type CMsgUpgradeLeagueItemResponse struct { func (x *CMsgUpgradeLeagueItemResponse) Reset() { *x = CMsgUpgradeLeagueItemResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[34] + mi := &file_dota_gcmessages_client_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7262,7 +7799,7 @@ func (x *CMsgUpgradeLeagueItemResponse) String() string { func (*CMsgUpgradeLeagueItemResponse) ProtoMessage() {} func (x *CMsgUpgradeLeagueItemResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[34] + mi := &file_dota_gcmessages_client_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7275,7 +7812,7 @@ func (x *CMsgUpgradeLeagueItemResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgUpgradeLeagueItemResponse.ProtoReflect.Descriptor instead. func (*CMsgUpgradeLeagueItemResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{34} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{36} } type CMsgGCWatchDownloadedReplay struct { @@ -7290,7 +7827,7 @@ type CMsgGCWatchDownloadedReplay struct { func (x *CMsgGCWatchDownloadedReplay) Reset() { *x = CMsgGCWatchDownloadedReplay{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[35] + mi := &file_dota_gcmessages_client_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7303,7 +7840,7 @@ func (x *CMsgGCWatchDownloadedReplay) String() string { func (*CMsgGCWatchDownloadedReplay) ProtoMessage() {} func (x *CMsgGCWatchDownloadedReplay) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[35] + mi := &file_dota_gcmessages_client_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7316,7 +7853,7 @@ func (x *CMsgGCWatchDownloadedReplay) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCWatchDownloadedReplay.ProtoReflect.Descriptor instead. func (*CMsgGCWatchDownloadedReplay) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{35} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{37} } func (x *CMsgGCWatchDownloadedReplay) GetMatchId() uint64 { @@ -7342,7 +7879,7 @@ type CMsgClientsRejoinChatChannels struct { func (x *CMsgClientsRejoinChatChannels) Reset() { *x = CMsgClientsRejoinChatChannels{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[36] + mi := &file_dota_gcmessages_client_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7355,7 +7892,7 @@ func (x *CMsgClientsRejoinChatChannels) String() string { func (*CMsgClientsRejoinChatChannels) ProtoMessage() {} func (x *CMsgClientsRejoinChatChannels) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[36] + mi := &file_dota_gcmessages_client_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7368,7 +7905,7 @@ func (x *CMsgClientsRejoinChatChannels) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientsRejoinChatChannels.ProtoReflect.Descriptor instead. func (*CMsgClientsRejoinChatChannels) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{36} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{38} } type CMsgGCGetHeroStandings struct { @@ -7380,7 +7917,7 @@ type CMsgGCGetHeroStandings struct { func (x *CMsgGCGetHeroStandings) Reset() { *x = CMsgGCGetHeroStandings{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[37] + mi := &file_dota_gcmessages_client_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7393,7 +7930,7 @@ func (x *CMsgGCGetHeroStandings) String() string { func (*CMsgGCGetHeroStandings) ProtoMessage() {} func (x *CMsgGCGetHeroStandings) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[37] + mi := &file_dota_gcmessages_client_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7406,7 +7943,7 @@ func (x *CMsgGCGetHeroStandings) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCGetHeroStandings.ProtoReflect.Descriptor instead. func (*CMsgGCGetHeroStandings) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{37} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{39} } type CMsgGCGetHeroStandingsResponse struct { @@ -7420,7 +7957,7 @@ type CMsgGCGetHeroStandingsResponse struct { func (x *CMsgGCGetHeroStandingsResponse) Reset() { *x = CMsgGCGetHeroStandingsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[38] + mi := &file_dota_gcmessages_client_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7433,7 +7970,7 @@ func (x *CMsgGCGetHeroStandingsResponse) String() string { func (*CMsgGCGetHeroStandingsResponse) ProtoMessage() {} func (x *CMsgGCGetHeroStandingsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[38] + mi := &file_dota_gcmessages_client_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7446,7 +7983,7 @@ func (x *CMsgGCGetHeroStandingsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCGetHeroStandingsResponse.ProtoReflect.Descriptor instead. func (*CMsgGCGetHeroStandingsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{38} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{40} } func (x *CMsgGCGetHeroStandingsResponse) GetStandings() []*CMsgGCGetHeroStandingsResponse_Hero { @@ -7479,7 +8016,7 @@ type CMatchPlayerTimedStatAverages struct { func (x *CMatchPlayerTimedStatAverages) Reset() { *x = CMatchPlayerTimedStatAverages{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[39] + mi := &file_dota_gcmessages_client_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7492,7 +8029,7 @@ func (x *CMatchPlayerTimedStatAverages) String() string { func (*CMatchPlayerTimedStatAverages) ProtoMessage() {} func (x *CMatchPlayerTimedStatAverages) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[39] + mi := &file_dota_gcmessages_client_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7505,7 +8042,7 @@ func (x *CMatchPlayerTimedStatAverages) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchPlayerTimedStatAverages.ProtoReflect.Descriptor instead. func (*CMatchPlayerTimedStatAverages) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{39} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{41} } func (x *CMatchPlayerTimedStatAverages) GetKills() float32 { @@ -7622,7 +8159,7 @@ type CMatchPlayerTimedStatStdDeviations struct { func (x *CMatchPlayerTimedStatStdDeviations) Reset() { *x = CMatchPlayerTimedStatStdDeviations{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[40] + mi := &file_dota_gcmessages_client_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7635,7 +8172,7 @@ func (x *CMatchPlayerTimedStatStdDeviations) String() string { func (*CMatchPlayerTimedStatStdDeviations) ProtoMessage() {} func (x *CMatchPlayerTimedStatStdDeviations) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[40] + mi := &file_dota_gcmessages_client_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7648,7 +8185,7 @@ func (x *CMatchPlayerTimedStatStdDeviations) ProtoReflect() protoreflect.Message // Deprecated: Use CMatchPlayerTimedStatStdDeviations.ProtoReflect.Descriptor instead. func (*CMatchPlayerTimedStatStdDeviations) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{40} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{42} } func (x *CMatchPlayerTimedStatStdDeviations) GetKills() float32 { @@ -7754,7 +8291,7 @@ type CMsgGCGetHeroTimedStatsResponse struct { func (x *CMsgGCGetHeroTimedStatsResponse) Reset() { *x = CMsgGCGetHeroTimedStatsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[41] + mi := &file_dota_gcmessages_client_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7767,7 +8304,7 @@ func (x *CMsgGCGetHeroTimedStatsResponse) String() string { func (*CMsgGCGetHeroTimedStatsResponse) ProtoMessage() {} func (x *CMsgGCGetHeroTimedStatsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[41] + mi := &file_dota_gcmessages_client_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7780,7 +8317,7 @@ func (x *CMsgGCGetHeroTimedStatsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCGetHeroTimedStatsResponse.ProtoReflect.Descriptor instead. func (*CMsgGCGetHeroTimedStatsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{41} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{43} } func (x *CMsgGCGetHeroTimedStatsResponse) GetHeroId() uint32 { @@ -7806,7 +8343,7 @@ type CMsgGCItemEditorReservationsRequest struct { func (x *CMsgGCItemEditorReservationsRequest) Reset() { *x = CMsgGCItemEditorReservationsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[42] + mi := &file_dota_gcmessages_client_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7819,7 +8356,7 @@ func (x *CMsgGCItemEditorReservationsRequest) String() string { func (*CMsgGCItemEditorReservationsRequest) ProtoMessage() {} func (x *CMsgGCItemEditorReservationsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[42] + mi := &file_dota_gcmessages_client_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7832,7 +8369,7 @@ func (x *CMsgGCItemEditorReservationsRequest) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgGCItemEditorReservationsRequest.ProtoReflect.Descriptor instead. func (*CMsgGCItemEditorReservationsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{42} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{44} } type CMsgGCItemEditorReservation struct { @@ -7847,7 +8384,7 @@ type CMsgGCItemEditorReservation struct { func (x *CMsgGCItemEditorReservation) Reset() { *x = CMsgGCItemEditorReservation{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[43] + mi := &file_dota_gcmessages_client_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7860,7 +8397,7 @@ func (x *CMsgGCItemEditorReservation) String() string { func (*CMsgGCItemEditorReservation) ProtoMessage() {} func (x *CMsgGCItemEditorReservation) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[43] + mi := &file_dota_gcmessages_client_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7873,7 +8410,7 @@ func (x *CMsgGCItemEditorReservation) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCItemEditorReservation.ProtoReflect.Descriptor instead. func (*CMsgGCItemEditorReservation) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{43} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{45} } func (x *CMsgGCItemEditorReservation) GetDefIndex() uint32 { @@ -7901,7 +8438,7 @@ type CMsgGCItemEditorReservationsResponse struct { func (x *CMsgGCItemEditorReservationsResponse) Reset() { *x = CMsgGCItemEditorReservationsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[44] + mi := &file_dota_gcmessages_client_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7914,7 +8451,7 @@ func (x *CMsgGCItemEditorReservationsResponse) String() string { func (*CMsgGCItemEditorReservationsResponse) ProtoMessage() {} func (x *CMsgGCItemEditorReservationsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[44] + mi := &file_dota_gcmessages_client_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7927,7 +8464,7 @@ func (x *CMsgGCItemEditorReservationsResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgGCItemEditorReservationsResponse.ProtoReflect.Descriptor instead. func (*CMsgGCItemEditorReservationsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{44} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{46} } func (x *CMsgGCItemEditorReservationsResponse) GetReservations() []*CMsgGCItemEditorReservation { @@ -7949,7 +8486,7 @@ type CMsgGCItemEditorReserveItemDef struct { func (x *CMsgGCItemEditorReserveItemDef) Reset() { *x = CMsgGCItemEditorReserveItemDef{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[45] + mi := &file_dota_gcmessages_client_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7962,7 +8499,7 @@ func (x *CMsgGCItemEditorReserveItemDef) String() string { func (*CMsgGCItemEditorReserveItemDef) ProtoMessage() {} func (x *CMsgGCItemEditorReserveItemDef) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[45] + mi := &file_dota_gcmessages_client_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7975,7 +8512,7 @@ func (x *CMsgGCItemEditorReserveItemDef) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCItemEditorReserveItemDef.ProtoReflect.Descriptor instead. func (*CMsgGCItemEditorReserveItemDef) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{45} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{47} } func (x *CMsgGCItemEditorReserveItemDef) GetDefIndex() uint32 { @@ -8005,7 +8542,7 @@ type CMsgGCItemEditorReserveItemDefResponse struct { func (x *CMsgGCItemEditorReserveItemDefResponse) Reset() { *x = CMsgGCItemEditorReserveItemDefResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[46] + mi := &file_dota_gcmessages_client_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8018,7 +8555,7 @@ func (x *CMsgGCItemEditorReserveItemDefResponse) String() string { func (*CMsgGCItemEditorReserveItemDefResponse) ProtoMessage() {} func (x *CMsgGCItemEditorReserveItemDefResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[46] + mi := &file_dota_gcmessages_client_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8031,7 +8568,7 @@ func (x *CMsgGCItemEditorReserveItemDefResponse) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgGCItemEditorReserveItemDefResponse.ProtoReflect.Descriptor instead. func (*CMsgGCItemEditorReserveItemDefResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{46} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{48} } func (x *CMsgGCItemEditorReserveItemDefResponse) GetDefIndex() uint32 { @@ -8067,7 +8604,7 @@ type CMsgGCItemEditorReleaseReservation struct { func (x *CMsgGCItemEditorReleaseReservation) Reset() { *x = CMsgGCItemEditorReleaseReservation{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[47] + mi := &file_dota_gcmessages_client_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8080,7 +8617,7 @@ func (x *CMsgGCItemEditorReleaseReservation) String() string { func (*CMsgGCItemEditorReleaseReservation) ProtoMessage() {} func (x *CMsgGCItemEditorReleaseReservation) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[47] + mi := &file_dota_gcmessages_client_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8093,7 +8630,7 @@ func (x *CMsgGCItemEditorReleaseReservation) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCItemEditorReleaseReservation.ProtoReflect.Descriptor instead. func (*CMsgGCItemEditorReleaseReservation) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{47} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{49} } func (x *CMsgGCItemEditorReleaseReservation) GetDefIndex() uint32 { @@ -8122,7 +8659,7 @@ type CMsgGCItemEditorReleaseReservationResponse struct { func (x *CMsgGCItemEditorReleaseReservationResponse) Reset() { *x = CMsgGCItemEditorReleaseReservationResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[48] + mi := &file_dota_gcmessages_client_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8135,7 +8672,7 @@ func (x *CMsgGCItemEditorReleaseReservationResponse) String() string { func (*CMsgGCItemEditorReleaseReservationResponse) ProtoMessage() {} func (x *CMsgGCItemEditorReleaseReservationResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[48] + mi := &file_dota_gcmessages_client_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8148,7 +8685,7 @@ func (x *CMsgGCItemEditorReleaseReservationResponse) ProtoReflect() protoreflect // Deprecated: Use CMsgGCItemEditorReleaseReservationResponse.ProtoReflect.Descriptor instead. func (*CMsgGCItemEditorReleaseReservationResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{48} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{50} } func (x *CMsgGCItemEditorReleaseReservationResponse) GetDefIndex() uint32 { @@ -8177,7 +8714,7 @@ type CMsgDOTARewardTutorialPrizes struct { func (x *CMsgDOTARewardTutorialPrizes) Reset() { *x = CMsgDOTARewardTutorialPrizes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[49] + mi := &file_dota_gcmessages_client_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8190,7 +8727,7 @@ func (x *CMsgDOTARewardTutorialPrizes) String() string { func (*CMsgDOTARewardTutorialPrizes) ProtoMessage() {} func (x *CMsgDOTARewardTutorialPrizes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[49] + mi := &file_dota_gcmessages_client_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8203,7 +8740,7 @@ func (x *CMsgDOTARewardTutorialPrizes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTARewardTutorialPrizes.ProtoReflect.Descriptor instead. func (*CMsgDOTARewardTutorialPrizes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{49} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{51} } func (x *CMsgDOTARewardTutorialPrizes) GetLocationId() uint32 { @@ -8229,7 +8766,7 @@ type CMsgFlipLobbyTeams struct { func (x *CMsgFlipLobbyTeams) Reset() { *x = CMsgFlipLobbyTeams{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[50] + mi := &file_dota_gcmessages_client_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8242,7 +8779,7 @@ func (x *CMsgFlipLobbyTeams) String() string { func (*CMsgFlipLobbyTeams) ProtoMessage() {} func (x *CMsgFlipLobbyTeams) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[50] + mi := &file_dota_gcmessages_client_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8255,7 +8792,7 @@ func (x *CMsgFlipLobbyTeams) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgFlipLobbyTeams.ProtoReflect.Descriptor instead. func (*CMsgFlipLobbyTeams) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{50} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{52} } type CMsgGCLobbyUpdateBroadcastChannelInfo struct { @@ -8272,7 +8809,7 @@ type CMsgGCLobbyUpdateBroadcastChannelInfo struct { func (x *CMsgGCLobbyUpdateBroadcastChannelInfo) Reset() { *x = CMsgGCLobbyUpdateBroadcastChannelInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[51] + mi := &file_dota_gcmessages_client_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8285,7 +8822,7 @@ func (x *CMsgGCLobbyUpdateBroadcastChannelInfo) String() string { func (*CMsgGCLobbyUpdateBroadcastChannelInfo) ProtoMessage() {} func (x *CMsgGCLobbyUpdateBroadcastChannelInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[51] + mi := &file_dota_gcmessages_client_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8298,7 +8835,7 @@ func (x *CMsgGCLobbyUpdateBroadcastChannelInfo) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCLobbyUpdateBroadcastChannelInfo.ProtoReflect.Descriptor instead. func (*CMsgGCLobbyUpdateBroadcastChannelInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{51} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{53} } func (x *CMsgGCLobbyUpdateBroadcastChannelInfo) GetChannelId() uint32 { @@ -8340,7 +8877,7 @@ type CMsgDOTAClaimEventActionData struct { func (x *CMsgDOTAClaimEventActionData) Reset() { *x = CMsgDOTAClaimEventActionData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[52] + mi := &file_dota_gcmessages_client_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8353,7 +8890,7 @@ func (x *CMsgDOTAClaimEventActionData) String() string { func (*CMsgDOTAClaimEventActionData) ProtoMessage() {} func (x *CMsgDOTAClaimEventActionData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[52] + mi := &file_dota_gcmessages_client_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8366,7 +8903,7 @@ func (x *CMsgDOTAClaimEventActionData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAClaimEventActionData.ProtoReflect.Descriptor instead. func (*CMsgDOTAClaimEventActionData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{52} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{54} } func (x *CMsgDOTAClaimEventActionData) GetGrantItemGiftData() *CMsgDOTAClaimEventActionData_GrantItemGiftData { @@ -8390,7 +8927,7 @@ type CMsgDOTAClaimEventAction struct { func (x *CMsgDOTAClaimEventAction) Reset() { *x = CMsgDOTAClaimEventAction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[53] + mi := &file_dota_gcmessages_client_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8403,7 +8940,7 @@ func (x *CMsgDOTAClaimEventAction) String() string { func (*CMsgDOTAClaimEventAction) ProtoMessage() {} func (x *CMsgDOTAClaimEventAction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[53] + mi := &file_dota_gcmessages_client_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8416,7 +8953,7 @@ func (x *CMsgDOTAClaimEventAction) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAClaimEventAction.ProtoReflect.Descriptor instead. func (*CMsgDOTAClaimEventAction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{53} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{55} } func (x *CMsgDOTAClaimEventAction) GetEventId() uint32 { @@ -8459,7 +8996,7 @@ type CMsgDOTAClaimEventActionResponse struct { func (x *CMsgDOTAClaimEventActionResponse) Reset() { *x = CMsgDOTAClaimEventActionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[54] + mi := &file_dota_gcmessages_client_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8472,7 +9009,7 @@ func (x *CMsgDOTAClaimEventActionResponse) String() string { func (*CMsgDOTAClaimEventActionResponse) ProtoMessage() {} func (x *CMsgDOTAClaimEventActionResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[54] + mi := &file_dota_gcmessages_client_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8485,7 +9022,7 @@ func (x *CMsgDOTAClaimEventActionResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAClaimEventActionResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAClaimEventActionResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{54} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{56} } func (x *CMsgDOTAClaimEventActionResponse) GetResult() CMsgDOTAClaimEventActionResponse_ResultCode { @@ -8516,7 +9053,7 @@ type CMsgClientToGCClaimEventActionUsingItem struct { func (x *CMsgClientToGCClaimEventActionUsingItem) Reset() { *x = CMsgClientToGCClaimEventActionUsingItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[55] + mi := &file_dota_gcmessages_client_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8529,7 +9066,7 @@ func (x *CMsgClientToGCClaimEventActionUsingItem) String() string { func (*CMsgClientToGCClaimEventActionUsingItem) ProtoMessage() {} func (x *CMsgClientToGCClaimEventActionUsingItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[55] + mi := &file_dota_gcmessages_client_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8542,7 +9079,7 @@ func (x *CMsgClientToGCClaimEventActionUsingItem) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgClientToGCClaimEventActionUsingItem.ProtoReflect.Descriptor instead. func (*CMsgClientToGCClaimEventActionUsingItem) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{55} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{57} } func (x *CMsgClientToGCClaimEventActionUsingItem) GetEventId() uint32 { @@ -8584,7 +9121,7 @@ type CMsgClientToGCClaimEventActionUsingItemResponse struct { func (x *CMsgClientToGCClaimEventActionUsingItemResponse) Reset() { *x = CMsgClientToGCClaimEventActionUsingItemResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[56] + mi := &file_dota_gcmessages_client_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8597,7 +9134,7 @@ func (x *CMsgClientToGCClaimEventActionUsingItemResponse) String() string { func (*CMsgClientToGCClaimEventActionUsingItemResponse) ProtoMessage() {} func (x *CMsgClientToGCClaimEventActionUsingItemResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[56] + mi := &file_dota_gcmessages_client_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8610,7 +9147,7 @@ func (x *CMsgClientToGCClaimEventActionUsingItemResponse) ProtoReflect() protore // Deprecated: Use CMsgClientToGCClaimEventActionUsingItemResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCClaimEventActionUsingItemResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{56} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{58} } func (x *CMsgClientToGCClaimEventActionUsingItemResponse) GetActionResults() *CMsgDOTAClaimEventActionResponse { @@ -8632,7 +9169,7 @@ type CMsgGCToClientClaimEventActionUsingItemCompleted struct { func (x *CMsgGCToClientClaimEventActionUsingItemCompleted) Reset() { *x = CMsgGCToClientClaimEventActionUsingItemCompleted{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[57] + mi := &file_dota_gcmessages_client_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8645,7 +9182,7 @@ func (x *CMsgGCToClientClaimEventActionUsingItemCompleted) String() string { func (*CMsgGCToClientClaimEventActionUsingItemCompleted) ProtoMessage() {} func (x *CMsgGCToClientClaimEventActionUsingItemCompleted) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[57] + mi := &file_dota_gcmessages_client_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8658,7 +9195,7 @@ func (x *CMsgGCToClientClaimEventActionUsingItemCompleted) ProtoReflect() protor // Deprecated: Use CMsgGCToClientClaimEventActionUsingItemCompleted.ProtoReflect.Descriptor instead. func (*CMsgGCToClientClaimEventActionUsingItemCompleted) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{57} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{59} } func (x *CMsgGCToClientClaimEventActionUsingItemCompleted) GetItemId() uint64 { @@ -8687,7 +9224,7 @@ type CMsgDOTAGetEventPoints struct { func (x *CMsgDOTAGetEventPoints) Reset() { *x = CMsgDOTAGetEventPoints{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[58] + mi := &file_dota_gcmessages_client_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8700,7 +9237,7 @@ func (x *CMsgDOTAGetEventPoints) String() string { func (*CMsgDOTAGetEventPoints) ProtoMessage() {} func (x *CMsgDOTAGetEventPoints) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[58] + mi := &file_dota_gcmessages_client_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8713,7 +9250,7 @@ func (x *CMsgDOTAGetEventPoints) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAGetEventPoints.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetEventPoints) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{58} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{60} } func (x *CMsgDOTAGetEventPoints) GetEventId() uint32 { @@ -8750,7 +9287,7 @@ type CMsgDOTAGetEventPointsResponse struct { func (x *CMsgDOTAGetEventPointsResponse) Reset() { *x = CMsgDOTAGetEventPointsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[59] + mi := &file_dota_gcmessages_client_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8763,7 +9300,7 @@ func (x *CMsgDOTAGetEventPointsResponse) String() string { func (*CMsgDOTAGetEventPointsResponse) ProtoMessage() {} func (x *CMsgDOTAGetEventPointsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[59] + mi := &file_dota_gcmessages_client_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8776,7 +9313,7 @@ func (x *CMsgDOTAGetEventPointsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAGetEventPointsResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetEventPointsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{59} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{61} } func (x *CMsgDOTAGetEventPointsResponse) GetTotalPoints() uint32 { @@ -8862,7 +9399,7 @@ type CMsgDOTAGetPeriodicResource struct { func (x *CMsgDOTAGetPeriodicResource) Reset() { *x = CMsgDOTAGetPeriodicResource{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[60] + mi := &file_dota_gcmessages_client_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8875,7 +9412,7 @@ func (x *CMsgDOTAGetPeriodicResource) String() string { func (*CMsgDOTAGetPeriodicResource) ProtoMessage() {} func (x *CMsgDOTAGetPeriodicResource) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[60] + mi := &file_dota_gcmessages_client_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8888,7 +9425,7 @@ func (x *CMsgDOTAGetPeriodicResource) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAGetPeriodicResource.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetPeriodicResource) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{60} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{62} } func (x *CMsgDOTAGetPeriodicResource) GetAccountId() uint32 { @@ -8924,7 +9461,7 @@ type CMsgDOTAGetPeriodicResourceResponse struct { func (x *CMsgDOTAGetPeriodicResourceResponse) Reset() { *x = CMsgDOTAGetPeriodicResourceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[61] + mi := &file_dota_gcmessages_client_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8937,7 +9474,7 @@ func (x *CMsgDOTAGetPeriodicResourceResponse) String() string { func (*CMsgDOTAGetPeriodicResourceResponse) ProtoMessage() {} func (x *CMsgDOTAGetPeriodicResourceResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[61] + mi := &file_dota_gcmessages_client_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8950,7 +9487,7 @@ func (x *CMsgDOTAGetPeriodicResourceResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgDOTAGetPeriodicResourceResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetPeriodicResourceResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{61} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{63} } func (x *CMsgDOTAGetPeriodicResourceResponse) GetPeriodicResourceMax() uint32 { @@ -8979,7 +9516,7 @@ type CMsgDOTAPeriodicResourceUpdated struct { func (x *CMsgDOTAPeriodicResourceUpdated) Reset() { *x = CMsgDOTAPeriodicResourceUpdated{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[62] + mi := &file_dota_gcmessages_client_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8992,7 +9529,7 @@ func (x *CMsgDOTAPeriodicResourceUpdated) String() string { func (*CMsgDOTAPeriodicResourceUpdated) ProtoMessage() {} func (x *CMsgDOTAPeriodicResourceUpdated) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[62] + mi := &file_dota_gcmessages_client_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9005,7 +9542,7 @@ func (x *CMsgDOTAPeriodicResourceUpdated) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAPeriodicResourceUpdated.ProtoReflect.Descriptor instead. func (*CMsgDOTAPeriodicResourceUpdated) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{62} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{64} } func (x *CMsgDOTAPeriodicResourceUpdated) GetPeriodicResourceKey() *CMsgDOTAGetPeriodicResource { @@ -9035,7 +9572,7 @@ type CMsgDOTACompendiumSelection struct { func (x *CMsgDOTACompendiumSelection) Reset() { *x = CMsgDOTACompendiumSelection{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[63] + mi := &file_dota_gcmessages_client_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9048,7 +9585,7 @@ func (x *CMsgDOTACompendiumSelection) String() string { func (*CMsgDOTACompendiumSelection) ProtoMessage() {} func (x *CMsgDOTACompendiumSelection) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[63] + mi := &file_dota_gcmessages_client_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9061,7 +9598,7 @@ func (x *CMsgDOTACompendiumSelection) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTACompendiumSelection.ProtoReflect.Descriptor instead. func (*CMsgDOTACompendiumSelection) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{63} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{65} } func (x *CMsgDOTACompendiumSelection) GetSelectionIndex() uint32 { @@ -9096,7 +9633,7 @@ type CMsgDOTACompendiumSelectionResponse struct { func (x *CMsgDOTACompendiumSelectionResponse) Reset() { *x = CMsgDOTACompendiumSelectionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[64] + mi := &file_dota_gcmessages_client_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9109,7 +9646,7 @@ func (x *CMsgDOTACompendiumSelectionResponse) String() string { func (*CMsgDOTACompendiumSelectionResponse) ProtoMessage() {} func (x *CMsgDOTACompendiumSelectionResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[64] + mi := &file_dota_gcmessages_client_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9122,7 +9659,7 @@ func (x *CMsgDOTACompendiumSelectionResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgDOTACompendiumSelectionResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTACompendiumSelectionResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{64} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{66} } func (x *CMsgDOTACompendiumSelectionResponse) GetEresult() uint32 { @@ -9143,7 +9680,7 @@ type CMsgDOTACompendiumData struct { func (x *CMsgDOTACompendiumData) Reset() { *x = CMsgDOTACompendiumData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[65] + mi := &file_dota_gcmessages_client_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9156,7 +9693,7 @@ func (x *CMsgDOTACompendiumData) String() string { func (*CMsgDOTACompendiumData) ProtoMessage() {} func (x *CMsgDOTACompendiumData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[65] + mi := &file_dota_gcmessages_client_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9169,7 +9706,7 @@ func (x *CMsgDOTACompendiumData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTACompendiumData.ProtoReflect.Descriptor instead. func (*CMsgDOTACompendiumData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{65} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{67} } func (x *CMsgDOTACompendiumData) GetSelections() []*CMsgDOTACompendiumSelection { @@ -9191,7 +9728,7 @@ type CMsgDOTACompendiumDataRequest struct { func (x *CMsgDOTACompendiumDataRequest) Reset() { *x = CMsgDOTACompendiumDataRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[66] + mi := &file_dota_gcmessages_client_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9204,7 +9741,7 @@ func (x *CMsgDOTACompendiumDataRequest) String() string { func (*CMsgDOTACompendiumDataRequest) ProtoMessage() {} func (x *CMsgDOTACompendiumDataRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[66] + mi := &file_dota_gcmessages_client_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9217,7 +9754,7 @@ func (x *CMsgDOTACompendiumDataRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTACompendiumDataRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTACompendiumDataRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{66} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{68} } func (x *CMsgDOTACompendiumDataRequest) GetAccountId() uint32 { @@ -9248,7 +9785,7 @@ type CMsgDOTACompendiumDataResponse struct { func (x *CMsgDOTACompendiumDataResponse) Reset() { *x = CMsgDOTACompendiumDataResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[67] + mi := &file_dota_gcmessages_client_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9261,7 +9798,7 @@ func (x *CMsgDOTACompendiumDataResponse) String() string { func (*CMsgDOTACompendiumDataResponse) ProtoMessage() {} func (x *CMsgDOTACompendiumDataResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[67] + mi := &file_dota_gcmessages_client_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9274,7 +9811,7 @@ func (x *CMsgDOTACompendiumDataResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTACompendiumDataResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTACompendiumDataResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{67} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{69} } func (x *CMsgDOTACompendiumDataResponse) GetAccountId() uint32 { @@ -9323,7 +9860,7 @@ type CMsgDOTAGetPlayerMatchHistory struct { func (x *CMsgDOTAGetPlayerMatchHistory) Reset() { *x = CMsgDOTAGetPlayerMatchHistory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[68] + mi := &file_dota_gcmessages_client_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9336,7 +9873,7 @@ func (x *CMsgDOTAGetPlayerMatchHistory) String() string { func (*CMsgDOTAGetPlayerMatchHistory) ProtoMessage() {} func (x *CMsgDOTAGetPlayerMatchHistory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[68] + mi := &file_dota_gcmessages_client_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9349,7 +9886,7 @@ func (x *CMsgDOTAGetPlayerMatchHistory) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAGetPlayerMatchHistory.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetPlayerMatchHistory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{68} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{70} } func (x *CMsgDOTAGetPlayerMatchHistory) GetAccountId() uint32 { @@ -9420,7 +9957,7 @@ type CMsgDOTAGetPlayerMatchHistoryResponse struct { func (x *CMsgDOTAGetPlayerMatchHistoryResponse) Reset() { *x = CMsgDOTAGetPlayerMatchHistoryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[69] + mi := &file_dota_gcmessages_client_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9433,7 +9970,7 @@ func (x *CMsgDOTAGetPlayerMatchHistoryResponse) String() string { func (*CMsgDOTAGetPlayerMatchHistoryResponse) ProtoMessage() {} func (x *CMsgDOTAGetPlayerMatchHistoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[69] + mi := &file_dota_gcmessages_client_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9446,7 +9983,7 @@ func (x *CMsgDOTAGetPlayerMatchHistoryResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTAGetPlayerMatchHistoryResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetPlayerMatchHistoryResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{69} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{71} } func (x *CMsgDOTAGetPlayerMatchHistoryResponse) GetMatches() []*CMsgDOTAGetPlayerMatchHistoryResponse_Match { @@ -9472,7 +10009,7 @@ type CMsgGCNotificationsRequest struct { func (x *CMsgGCNotificationsRequest) Reset() { *x = CMsgGCNotificationsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[70] + mi := &file_dota_gcmessages_client_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9485,7 +10022,7 @@ func (x *CMsgGCNotificationsRequest) String() string { func (*CMsgGCNotificationsRequest) ProtoMessage() {} func (x *CMsgGCNotificationsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[70] + mi := &file_dota_gcmessages_client_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9498,7 +10035,7 @@ func (x *CMsgGCNotificationsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCNotificationsRequest.ProtoReflect.Descriptor instead. func (*CMsgGCNotificationsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{70} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{72} } type CMsgGCNotifications_Notification struct { @@ -9519,7 +10056,7 @@ type CMsgGCNotifications_Notification struct { func (x *CMsgGCNotifications_Notification) Reset() { *x = CMsgGCNotifications_Notification{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[71] + mi := &file_dota_gcmessages_client_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9532,7 +10069,7 @@ func (x *CMsgGCNotifications_Notification) String() string { func (*CMsgGCNotifications_Notification) ProtoMessage() {} func (x *CMsgGCNotifications_Notification) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[71] + mi := &file_dota_gcmessages_client_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9545,7 +10082,7 @@ func (x *CMsgGCNotifications_Notification) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCNotifications_Notification.ProtoReflect.Descriptor instead. func (*CMsgGCNotifications_Notification) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{71} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{73} } func (x *CMsgGCNotifications_Notification) GetId() uint64 { @@ -9616,7 +10153,7 @@ type CMsgGCNotificationsUpdate struct { func (x *CMsgGCNotificationsUpdate) Reset() { *x = CMsgGCNotificationsUpdate{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[72] + mi := &file_dota_gcmessages_client_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9629,7 +10166,7 @@ func (x *CMsgGCNotificationsUpdate) String() string { func (*CMsgGCNotificationsUpdate) ProtoMessage() {} func (x *CMsgGCNotificationsUpdate) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[72] + mi := &file_dota_gcmessages_client_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9642,7 +10179,7 @@ func (x *CMsgGCNotificationsUpdate) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCNotificationsUpdate.ProtoReflect.Descriptor instead. func (*CMsgGCNotificationsUpdate) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{72} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{74} } func (x *CMsgGCNotificationsUpdate) GetResult() CMsgGCNotificationsUpdate_EResult { @@ -9670,7 +10207,7 @@ type CMsgGCNotificationsResponse struct { func (x *CMsgGCNotificationsResponse) Reset() { *x = CMsgGCNotificationsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[73] + mi := &file_dota_gcmessages_client_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9683,7 +10220,7 @@ func (x *CMsgGCNotificationsResponse) String() string { func (*CMsgGCNotificationsResponse) ProtoMessage() {} func (x *CMsgGCNotificationsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[73] + mi := &file_dota_gcmessages_client_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9696,7 +10233,7 @@ func (x *CMsgGCNotificationsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCNotificationsResponse.ProtoReflect.Descriptor instead. func (*CMsgGCNotificationsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{73} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{75} } func (x *CMsgGCNotificationsResponse) GetUpdate() *CMsgGCNotificationsUpdate { @@ -9715,7 +10252,7 @@ type CMsgGCNotificationsMarkReadRequest struct { func (x *CMsgGCNotificationsMarkReadRequest) Reset() { *x = CMsgGCNotificationsMarkReadRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[74] + mi := &file_dota_gcmessages_client_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9728,7 +10265,7 @@ func (x *CMsgGCNotificationsMarkReadRequest) String() string { func (*CMsgGCNotificationsMarkReadRequest) ProtoMessage() {} func (x *CMsgGCNotificationsMarkReadRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[74] + mi := &file_dota_gcmessages_client_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9741,7 +10278,7 @@ func (x *CMsgGCNotificationsMarkReadRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCNotificationsMarkReadRequest.ProtoReflect.Descriptor instead. func (*CMsgGCNotificationsMarkReadRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{74} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{76} } type CMsgGCPlayerInfoSubmit struct { @@ -9759,7 +10296,7 @@ type CMsgGCPlayerInfoSubmit struct { func (x *CMsgGCPlayerInfoSubmit) Reset() { *x = CMsgGCPlayerInfoSubmit{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[75] + mi := &file_dota_gcmessages_client_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9772,7 +10309,7 @@ func (x *CMsgGCPlayerInfoSubmit) String() string { func (*CMsgGCPlayerInfoSubmit) ProtoMessage() {} func (x *CMsgGCPlayerInfoSubmit) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[75] + mi := &file_dota_gcmessages_client_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9785,7 +10322,7 @@ func (x *CMsgGCPlayerInfoSubmit) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCPlayerInfoSubmit.ProtoReflect.Descriptor instead. func (*CMsgGCPlayerInfoSubmit) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{75} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{77} } func (x *CMsgGCPlayerInfoSubmit) GetName() string { @@ -9834,7 +10371,7 @@ type CMsgGCPlayerInfoSubmitResponse struct { func (x *CMsgGCPlayerInfoSubmitResponse) Reset() { *x = CMsgGCPlayerInfoSubmitResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[76] + mi := &file_dota_gcmessages_client_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9847,7 +10384,7 @@ func (x *CMsgGCPlayerInfoSubmitResponse) String() string { func (*CMsgGCPlayerInfoSubmitResponse) ProtoMessage() {} func (x *CMsgGCPlayerInfoSubmitResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[76] + mi := &file_dota_gcmessages_client_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9860,7 +10397,7 @@ func (x *CMsgGCPlayerInfoSubmitResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCPlayerInfoSubmitResponse.ProtoReflect.Descriptor instead. func (*CMsgGCPlayerInfoSubmitResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{76} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{78} } func (x *CMsgGCPlayerInfoSubmitResponse) GetResult() CMsgGCPlayerInfoSubmitResponse_EResult { @@ -9882,7 +10419,7 @@ type CMsgDOTAEmoticonAccessSDO struct { func (x *CMsgDOTAEmoticonAccessSDO) Reset() { *x = CMsgDOTAEmoticonAccessSDO{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[77] + mi := &file_dota_gcmessages_client_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9895,7 +10432,7 @@ func (x *CMsgDOTAEmoticonAccessSDO) String() string { func (*CMsgDOTAEmoticonAccessSDO) ProtoMessage() {} func (x *CMsgDOTAEmoticonAccessSDO) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[77] + mi := &file_dota_gcmessages_client_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9908,7 +10445,7 @@ func (x *CMsgDOTAEmoticonAccessSDO) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAEmoticonAccessSDO.ProtoReflect.Descriptor instead. func (*CMsgDOTAEmoticonAccessSDO) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{77} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{79} } func (x *CMsgDOTAEmoticonAccessSDO) GetAccountId() uint32 { @@ -9934,7 +10471,7 @@ type CMsgClientToGCEmoticonDataRequest struct { func (x *CMsgClientToGCEmoticonDataRequest) Reset() { *x = CMsgClientToGCEmoticonDataRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[78] + mi := &file_dota_gcmessages_client_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9947,7 +10484,7 @@ func (x *CMsgClientToGCEmoticonDataRequest) String() string { func (*CMsgClientToGCEmoticonDataRequest) ProtoMessage() {} func (x *CMsgClientToGCEmoticonDataRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[78] + mi := &file_dota_gcmessages_client_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9960,7 +10497,7 @@ func (x *CMsgClientToGCEmoticonDataRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCEmoticonDataRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCEmoticonDataRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{78} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{80} } type CMsgGCToClientEmoticonData struct { @@ -9974,7 +10511,7 @@ type CMsgGCToClientEmoticonData struct { func (x *CMsgGCToClientEmoticonData) Reset() { *x = CMsgGCToClientEmoticonData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[79] + mi := &file_dota_gcmessages_client_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9987,7 +10524,7 @@ func (x *CMsgGCToClientEmoticonData) String() string { func (*CMsgGCToClientEmoticonData) ProtoMessage() {} func (x *CMsgGCToClientEmoticonData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[79] + mi := &file_dota_gcmessages_client_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10000,7 +10537,7 @@ func (x *CMsgGCToClientEmoticonData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientEmoticonData.ProtoReflect.Descriptor instead. func (*CMsgGCToClientEmoticonData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{79} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{81} } func (x *CMsgGCToClientEmoticonData) GetEmoticonAccess() *CMsgDOTAEmoticonAccessSDO { @@ -10022,7 +10559,7 @@ type CMsgGCToClientTournamentItemDrop struct { func (x *CMsgGCToClientTournamentItemDrop) Reset() { *x = CMsgGCToClientTournamentItemDrop{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[80] + mi := &file_dota_gcmessages_client_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10035,7 +10572,7 @@ func (x *CMsgGCToClientTournamentItemDrop) String() string { func (*CMsgGCToClientTournamentItemDrop) ProtoMessage() {} func (x *CMsgGCToClientTournamentItemDrop) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[80] + mi := &file_dota_gcmessages_client_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10048,7 +10585,7 @@ func (x *CMsgGCToClientTournamentItemDrop) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientTournamentItemDrop.ProtoReflect.Descriptor instead. func (*CMsgGCToClientTournamentItemDrop) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{80} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{82} } func (x *CMsgGCToClientTournamentItemDrop) GetItemDef() uint32 { @@ -10074,7 +10611,7 @@ type CMsgClientToGCGetAllHeroOrder struct { func (x *CMsgClientToGCGetAllHeroOrder) Reset() { *x = CMsgClientToGCGetAllHeroOrder{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[81] + mi := &file_dota_gcmessages_client_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10087,7 +10624,7 @@ func (x *CMsgClientToGCGetAllHeroOrder) String() string { func (*CMsgClientToGCGetAllHeroOrder) ProtoMessage() {} func (x *CMsgClientToGCGetAllHeroOrder) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[81] + mi := &file_dota_gcmessages_client_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10100,7 +10637,7 @@ func (x *CMsgClientToGCGetAllHeroOrder) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetAllHeroOrder.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetAllHeroOrder) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{81} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{83} } type CMsgClientToGCGetAllHeroOrderResponse struct { @@ -10114,7 +10651,7 @@ type CMsgClientToGCGetAllHeroOrderResponse struct { func (x *CMsgClientToGCGetAllHeroOrderResponse) Reset() { *x = CMsgClientToGCGetAllHeroOrderResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[82] + mi := &file_dota_gcmessages_client_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10127,7 +10664,7 @@ func (x *CMsgClientToGCGetAllHeroOrderResponse) String() string { func (*CMsgClientToGCGetAllHeroOrderResponse) ProtoMessage() {} func (x *CMsgClientToGCGetAllHeroOrderResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[82] + mi := &file_dota_gcmessages_client_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10140,7 +10677,7 @@ func (x *CMsgClientToGCGetAllHeroOrderResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCGetAllHeroOrderResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetAllHeroOrderResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{82} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{84} } func (x *CMsgClientToGCGetAllHeroOrderResponse) GetHeroIds() []uint32 { @@ -10161,7 +10698,7 @@ type CMsgClientToGCGetAllHeroProgress struct { func (x *CMsgClientToGCGetAllHeroProgress) Reset() { *x = CMsgClientToGCGetAllHeroProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[83] + mi := &file_dota_gcmessages_client_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10174,7 +10711,7 @@ func (x *CMsgClientToGCGetAllHeroProgress) String() string { func (*CMsgClientToGCGetAllHeroProgress) ProtoMessage() {} func (x *CMsgClientToGCGetAllHeroProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[83] + mi := &file_dota_gcmessages_client_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10187,7 +10724,7 @@ func (x *CMsgClientToGCGetAllHeroProgress) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetAllHeroProgress.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetAllHeroProgress) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{83} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{85} } func (x *CMsgClientToGCGetAllHeroProgress) GetAccountId() uint32 { @@ -10227,7 +10764,7 @@ type CMsgClientToGCGetAllHeroProgressResponse struct { func (x *CMsgClientToGCGetAllHeroProgressResponse) Reset() { *x = CMsgClientToGCGetAllHeroProgressResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[84] + mi := &file_dota_gcmessages_client_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10240,7 +10777,7 @@ func (x *CMsgClientToGCGetAllHeroProgressResponse) String() string { func (*CMsgClientToGCGetAllHeroProgressResponse) ProtoMessage() {} func (x *CMsgClientToGCGetAllHeroProgressResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[84] + mi := &file_dota_gcmessages_client_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10253,7 +10790,7 @@ func (x *CMsgClientToGCGetAllHeroProgressResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCGetAllHeroProgressResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetAllHeroProgressResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{84} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{86} } func (x *CMsgClientToGCGetAllHeroProgressResponse) GetAccountId() uint32 { @@ -10407,7 +10944,7 @@ type CMsgClientToGCGetTrophyList struct { func (x *CMsgClientToGCGetTrophyList) Reset() { *x = CMsgClientToGCGetTrophyList{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[85] + mi := &file_dota_gcmessages_client_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10420,7 +10957,7 @@ func (x *CMsgClientToGCGetTrophyList) String() string { func (*CMsgClientToGCGetTrophyList) ProtoMessage() {} func (x *CMsgClientToGCGetTrophyList) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[85] + mi := &file_dota_gcmessages_client_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10433,7 +10970,7 @@ func (x *CMsgClientToGCGetTrophyList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetTrophyList.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetTrophyList) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{85} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{87} } func (x *CMsgClientToGCGetTrophyList) GetAccountId() uint32 { @@ -10454,7 +10991,7 @@ type CMsgClientToGCGetTrophyListResponse struct { func (x *CMsgClientToGCGetTrophyListResponse) Reset() { *x = CMsgClientToGCGetTrophyListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[86] + mi := &file_dota_gcmessages_client_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10467,7 +11004,7 @@ func (x *CMsgClientToGCGetTrophyListResponse) String() string { func (*CMsgClientToGCGetTrophyListResponse) ProtoMessage() {} func (x *CMsgClientToGCGetTrophyListResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[86] + mi := &file_dota_gcmessages_client_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10480,7 +11017,7 @@ func (x *CMsgClientToGCGetTrophyListResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCGetTrophyListResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetTrophyListResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{86} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{88} } func (x *CMsgClientToGCGetTrophyListResponse) GetTrophies() []*CMsgClientToGCGetTrophyListResponse_Trophy { @@ -10504,7 +11041,7 @@ type CMsgGCToClientTrophyAwarded struct { func (x *CMsgGCToClientTrophyAwarded) Reset() { *x = CMsgGCToClientTrophyAwarded{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[87] + mi := &file_dota_gcmessages_client_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10517,7 +11054,7 @@ func (x *CMsgGCToClientTrophyAwarded) String() string { func (*CMsgGCToClientTrophyAwarded) ProtoMessage() {} func (x *CMsgGCToClientTrophyAwarded) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[87] + mi := &file_dota_gcmessages_client_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10530,7 +11067,7 @@ func (x *CMsgGCToClientTrophyAwarded) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientTrophyAwarded.ProtoReflect.Descriptor instead. func (*CMsgGCToClientTrophyAwarded) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{87} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{89} } func (x *CMsgGCToClientTrophyAwarded) GetTrophyId() uint32 { @@ -10572,7 +11109,7 @@ type CMsgClientToGCRankRequest struct { func (x *CMsgClientToGCRankRequest) Reset() { *x = CMsgClientToGCRankRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[88] + mi := &file_dota_gcmessages_client_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10585,7 +11122,7 @@ func (x *CMsgClientToGCRankRequest) String() string { func (*CMsgClientToGCRankRequest) ProtoMessage() {} func (x *CMsgClientToGCRankRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[88] + mi := &file_dota_gcmessages_client_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10598,7 +11135,7 @@ func (x *CMsgClientToGCRankRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCRankRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRankRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{88} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{90} } func (x *CMsgClientToGCRankRequest) GetRankType() ERankType { @@ -10623,7 +11160,7 @@ type CMsgGCToClientRankResponse struct { func (x *CMsgGCToClientRankResponse) Reset() { *x = CMsgGCToClientRankResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[89] + mi := &file_dota_gcmessages_client_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10636,7 +11173,7 @@ func (x *CMsgGCToClientRankResponse) String() string { func (*CMsgGCToClientRankResponse) ProtoMessage() {} func (x *CMsgGCToClientRankResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[89] + mi := &file_dota_gcmessages_client_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10649,7 +11186,7 @@ func (x *CMsgGCToClientRankResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientRankResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientRankResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{89} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{91} } func (x *CMsgGCToClientRankResponse) GetResult() CMsgGCToClientRankResponse_EResultCode { @@ -10699,7 +11236,7 @@ type CMsgGCToClientRankUpdate struct { func (x *CMsgGCToClientRankUpdate) Reset() { *x = CMsgGCToClientRankUpdate{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[90] + mi := &file_dota_gcmessages_client_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10712,7 +11249,7 @@ func (x *CMsgGCToClientRankUpdate) String() string { func (*CMsgGCToClientRankUpdate) ProtoMessage() {} func (x *CMsgGCToClientRankUpdate) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[90] + mi := &file_dota_gcmessages_client_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10725,7 +11262,7 @@ func (x *CMsgGCToClientRankUpdate) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientRankUpdate.ProtoReflect.Descriptor instead. func (*CMsgGCToClientRankUpdate) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{90} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{92} } func (x *CMsgGCToClientRankUpdate) GetRankType() ERankType { @@ -10753,7 +11290,7 @@ type CMsgClientToGCGetProfileCard struct { func (x *CMsgClientToGCGetProfileCard) Reset() { *x = CMsgClientToGCGetProfileCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[91] + mi := &file_dota_gcmessages_client_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10766,7 +11303,7 @@ func (x *CMsgClientToGCGetProfileCard) String() string { func (*CMsgClientToGCGetProfileCard) ProtoMessage() {} func (x *CMsgClientToGCGetProfileCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[91] + mi := &file_dota_gcmessages_client_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10779,7 +11316,7 @@ func (x *CMsgClientToGCGetProfileCard) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetProfileCard.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetProfileCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{91} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{93} } func (x *CMsgClientToGCGetProfileCard) GetAccountId() uint32 { @@ -10800,7 +11337,7 @@ type CMsgClientToGCSetProfileCardSlots struct { func (x *CMsgClientToGCSetProfileCardSlots) Reset() { *x = CMsgClientToGCSetProfileCardSlots{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[92] + mi := &file_dota_gcmessages_client_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10813,7 +11350,7 @@ func (x *CMsgClientToGCSetProfileCardSlots) String() string { func (*CMsgClientToGCSetProfileCardSlots) ProtoMessage() {} func (x *CMsgClientToGCSetProfileCardSlots) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[92] + mi := &file_dota_gcmessages_client_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10826,7 +11363,7 @@ func (x *CMsgClientToGCSetProfileCardSlots) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCSetProfileCardSlots.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetProfileCardSlots) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{92} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{94} } func (x *CMsgClientToGCSetProfileCardSlots) GetSlots() []*CMsgClientToGCSetProfileCardSlots_CardSlot { @@ -10845,7 +11382,7 @@ type CMsgClientToGCGetProfileCardStats struct { func (x *CMsgClientToGCGetProfileCardStats) Reset() { *x = CMsgClientToGCGetProfileCardStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[93] + mi := &file_dota_gcmessages_client_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10858,7 +11395,7 @@ func (x *CMsgClientToGCGetProfileCardStats) String() string { func (*CMsgClientToGCGetProfileCardStats) ProtoMessage() {} func (x *CMsgClientToGCGetProfileCardStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[93] + mi := &file_dota_gcmessages_client_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10871,7 +11408,7 @@ func (x *CMsgClientToGCGetProfileCardStats) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCGetProfileCardStats.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetProfileCardStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{93} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{95} } type CMsgClientToGCCreateHeroStatue struct { @@ -10893,7 +11430,7 @@ type CMsgClientToGCCreateHeroStatue struct { func (x *CMsgClientToGCCreateHeroStatue) Reset() { *x = CMsgClientToGCCreateHeroStatue{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[94] + mi := &file_dota_gcmessages_client_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10906,7 +11443,7 @@ func (x *CMsgClientToGCCreateHeroStatue) String() string { func (*CMsgClientToGCCreateHeroStatue) ProtoMessage() {} func (x *CMsgClientToGCCreateHeroStatue) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[94] + mi := &file_dota_gcmessages_client_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10919,7 +11456,7 @@ func (x *CMsgClientToGCCreateHeroStatue) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCCreateHeroStatue.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateHeroStatue) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{94} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{96} } func (x *CMsgClientToGCCreateHeroStatue) GetSourceItemId() uint64 { @@ -10996,7 +11533,7 @@ type CMsgGCToClientHeroStatueCreateResult struct { func (x *CMsgGCToClientHeroStatueCreateResult) Reset() { *x = CMsgGCToClientHeroStatueCreateResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[95] + mi := &file_dota_gcmessages_client_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11009,7 +11546,7 @@ func (x *CMsgGCToClientHeroStatueCreateResult) String() string { func (*CMsgGCToClientHeroStatueCreateResult) ProtoMessage() {} func (x *CMsgGCToClientHeroStatueCreateResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[95] + mi := &file_dota_gcmessages_client_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11022,7 +11559,7 @@ func (x *CMsgGCToClientHeroStatueCreateResult) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgGCToClientHeroStatueCreateResult.ProtoReflect.Descriptor instead. func (*CMsgGCToClientHeroStatueCreateResult) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{95} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{97} } func (x *CMsgGCToClientHeroStatueCreateResult) GetResultingItemId() uint64 { @@ -11043,7 +11580,7 @@ type CMsgClientToGCPlayerStatsRequest struct { func (x *CMsgClientToGCPlayerStatsRequest) Reset() { *x = CMsgClientToGCPlayerStatsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[96] + mi := &file_dota_gcmessages_client_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11056,7 +11593,7 @@ func (x *CMsgClientToGCPlayerStatsRequest) String() string { func (*CMsgClientToGCPlayerStatsRequest) ProtoMessage() {} func (x *CMsgClientToGCPlayerStatsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[96] + mi := &file_dota_gcmessages_client_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11069,7 +11606,7 @@ func (x *CMsgClientToGCPlayerStatsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCPlayerStatsRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlayerStatsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{96} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{98} } func (x *CMsgClientToGCPlayerStatsRequest) GetAccountId() uint32 { @@ -11112,7 +11649,7 @@ type CMsgGCToClientPlayerStatsResponse struct { func (x *CMsgGCToClientPlayerStatsResponse) Reset() { *x = CMsgGCToClientPlayerStatsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[97] + mi := &file_dota_gcmessages_client_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11125,7 +11662,7 @@ func (x *CMsgGCToClientPlayerStatsResponse) String() string { func (*CMsgGCToClientPlayerStatsResponse) ProtoMessage() {} func (x *CMsgGCToClientPlayerStatsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[97] + mi := &file_dota_gcmessages_client_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11138,7 +11675,7 @@ func (x *CMsgGCToClientPlayerStatsResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToClientPlayerStatsResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPlayerStatsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{97} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{99} } func (x *CMsgGCToClientPlayerStatsResponse) GetAccountId() uint32 { @@ -11311,7 +11848,7 @@ type CMsgClientToGCCustomGamesFriendsPlayedRequest struct { func (x *CMsgClientToGCCustomGamesFriendsPlayedRequest) Reset() { *x = CMsgClientToGCCustomGamesFriendsPlayedRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[98] + mi := &file_dota_gcmessages_client_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11324,7 +11861,7 @@ func (x *CMsgClientToGCCustomGamesFriendsPlayedRequest) String() string { func (*CMsgClientToGCCustomGamesFriendsPlayedRequest) ProtoMessage() {} func (x *CMsgClientToGCCustomGamesFriendsPlayedRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[98] + mi := &file_dota_gcmessages_client_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11337,7 +11874,7 @@ func (x *CMsgClientToGCCustomGamesFriendsPlayedRequest) ProtoReflect() protorefl // Deprecated: Use CMsgClientToGCCustomGamesFriendsPlayedRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCustomGamesFriendsPlayedRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{98} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{100} } type CMsgGCToClientCustomGamesFriendsPlayedResponse struct { @@ -11352,7 +11889,7 @@ type CMsgGCToClientCustomGamesFriendsPlayedResponse struct { func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse) Reset() { *x = CMsgGCToClientCustomGamesFriendsPlayedResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[99] + mi := &file_dota_gcmessages_client_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11365,7 +11902,7 @@ func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse) String() string { func (*CMsgGCToClientCustomGamesFriendsPlayedResponse) ProtoMessage() {} func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[99] + mi := &file_dota_gcmessages_client_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11378,7 +11915,7 @@ func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse) ProtoReflect() protoref // Deprecated: Use CMsgGCToClientCustomGamesFriendsPlayedResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCustomGamesFriendsPlayedResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{99} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{101} } func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse) GetAccountId() uint32 { @@ -11407,7 +11944,7 @@ type CMsgClientToGCSocialFeedPostCommentRequest struct { func (x *CMsgClientToGCSocialFeedPostCommentRequest) Reset() { *x = CMsgClientToGCSocialFeedPostCommentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[100] + mi := &file_dota_gcmessages_client_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11420,7 +11957,7 @@ func (x *CMsgClientToGCSocialFeedPostCommentRequest) String() string { func (*CMsgClientToGCSocialFeedPostCommentRequest) ProtoMessage() {} func (x *CMsgClientToGCSocialFeedPostCommentRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[100] + mi := &file_dota_gcmessages_client_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11433,7 +11970,7 @@ func (x *CMsgClientToGCSocialFeedPostCommentRequest) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCSocialFeedPostCommentRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSocialFeedPostCommentRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{100} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{102} } func (x *CMsgClientToGCSocialFeedPostCommentRequest) GetEventId() uint64 { @@ -11461,7 +11998,7 @@ type CMsgGCToClientSocialFeedPostCommentResponse struct { func (x *CMsgGCToClientSocialFeedPostCommentResponse) Reset() { *x = CMsgGCToClientSocialFeedPostCommentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[101] + mi := &file_dota_gcmessages_client_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11474,7 +12011,7 @@ func (x *CMsgGCToClientSocialFeedPostCommentResponse) String() string { func (*CMsgGCToClientSocialFeedPostCommentResponse) ProtoMessage() {} func (x *CMsgGCToClientSocialFeedPostCommentResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[101] + mi := &file_dota_gcmessages_client_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11487,7 +12024,7 @@ func (x *CMsgGCToClientSocialFeedPostCommentResponse) ProtoReflect() protoreflec // Deprecated: Use CMsgGCToClientSocialFeedPostCommentResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientSocialFeedPostCommentResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{101} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{103} } func (x *CMsgGCToClientSocialFeedPostCommentResponse) GetSuccess() bool { @@ -11510,7 +12047,7 @@ type CMsgClientToGCSocialFeedPostMessageRequest struct { func (x *CMsgClientToGCSocialFeedPostMessageRequest) Reset() { *x = CMsgClientToGCSocialFeedPostMessageRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[102] + mi := &file_dota_gcmessages_client_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11523,7 +12060,7 @@ func (x *CMsgClientToGCSocialFeedPostMessageRequest) String() string { func (*CMsgClientToGCSocialFeedPostMessageRequest) ProtoMessage() {} func (x *CMsgClientToGCSocialFeedPostMessageRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[102] + mi := &file_dota_gcmessages_client_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11536,7 +12073,7 @@ func (x *CMsgClientToGCSocialFeedPostMessageRequest) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCSocialFeedPostMessageRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSocialFeedPostMessageRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{102} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{104} } func (x *CMsgClientToGCSocialFeedPostMessageRequest) GetMessage() string { @@ -11571,7 +12108,7 @@ type CMsgGCToClientSocialFeedPostMessageResponse struct { func (x *CMsgGCToClientSocialFeedPostMessageResponse) Reset() { *x = CMsgGCToClientSocialFeedPostMessageResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[103] + mi := &file_dota_gcmessages_client_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11584,7 +12121,7 @@ func (x *CMsgGCToClientSocialFeedPostMessageResponse) String() string { func (*CMsgGCToClientSocialFeedPostMessageResponse) ProtoMessage() {} func (x *CMsgGCToClientSocialFeedPostMessageResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[103] + mi := &file_dota_gcmessages_client_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11597,7 +12134,7 @@ func (x *CMsgGCToClientSocialFeedPostMessageResponse) ProtoReflect() protoreflec // Deprecated: Use CMsgGCToClientSocialFeedPostMessageResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientSocialFeedPostMessageResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{103} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{105} } func (x *CMsgGCToClientSocialFeedPostMessageResponse) GetSuccess() bool { @@ -11618,7 +12155,7 @@ type CMsgClientToGCFriendsPlayedCustomGameRequest struct { func (x *CMsgClientToGCFriendsPlayedCustomGameRequest) Reset() { *x = CMsgClientToGCFriendsPlayedCustomGameRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[104] + mi := &file_dota_gcmessages_client_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11631,7 +12168,7 @@ func (x *CMsgClientToGCFriendsPlayedCustomGameRequest) String() string { func (*CMsgClientToGCFriendsPlayedCustomGameRequest) ProtoMessage() {} func (x *CMsgClientToGCFriendsPlayedCustomGameRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[104] + mi := &file_dota_gcmessages_client_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11644,7 +12181,7 @@ func (x *CMsgClientToGCFriendsPlayedCustomGameRequest) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCFriendsPlayedCustomGameRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCFriendsPlayedCustomGameRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{104} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{106} } func (x *CMsgClientToGCFriendsPlayedCustomGameRequest) GetCustomGameId() uint64 { @@ -11666,7 +12203,7 @@ type CMsgGCToClientFriendsPlayedCustomGameResponse struct { func (x *CMsgGCToClientFriendsPlayedCustomGameResponse) Reset() { *x = CMsgGCToClientFriendsPlayedCustomGameResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[105] + mi := &file_dota_gcmessages_client_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11679,7 +12216,7 @@ func (x *CMsgGCToClientFriendsPlayedCustomGameResponse) String() string { func (*CMsgGCToClientFriendsPlayedCustomGameResponse) ProtoMessage() {} func (x *CMsgGCToClientFriendsPlayedCustomGameResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[105] + mi := &file_dota_gcmessages_client_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11692,7 +12229,7 @@ func (x *CMsgGCToClientFriendsPlayedCustomGameResponse) ProtoReflect() protorefl // Deprecated: Use CMsgGCToClientFriendsPlayedCustomGameResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientFriendsPlayedCustomGameResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{105} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{107} } func (x *CMsgGCToClientFriendsPlayedCustomGameResponse) GetCustomGameId() uint64 { @@ -11728,7 +12265,7 @@ type CMsgDOTAPartyRichPresence struct { func (x *CMsgDOTAPartyRichPresence) Reset() { *x = CMsgDOTAPartyRichPresence{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[106] + mi := &file_dota_gcmessages_client_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11741,7 +12278,7 @@ func (x *CMsgDOTAPartyRichPresence) String() string { func (*CMsgDOTAPartyRichPresence) ProtoMessage() {} func (x *CMsgDOTAPartyRichPresence) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[106] + mi := &file_dota_gcmessages_client_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11754,7 +12291,7 @@ func (x *CMsgDOTAPartyRichPresence) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAPartyRichPresence.ProtoReflect.Descriptor instead. func (*CMsgDOTAPartyRichPresence) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{106} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{108} } func (x *CMsgDOTAPartyRichPresence) GetPartyId() uint64 { @@ -11839,7 +12376,7 @@ type CMsgDOTALobbyRichPresence struct { func (x *CMsgDOTALobbyRichPresence) Reset() { *x = CMsgDOTALobbyRichPresence{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[107] + mi := &file_dota_gcmessages_client_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11852,7 +12389,7 @@ func (x *CMsgDOTALobbyRichPresence) String() string { func (*CMsgDOTALobbyRichPresence) ProtoMessage() {} func (x *CMsgDOTALobbyRichPresence) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[107] + mi := &file_dota_gcmessages_client_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11865,7 +12402,7 @@ func (x *CMsgDOTALobbyRichPresence) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTALobbyRichPresence.ProtoReflect.Descriptor instead. func (*CMsgDOTALobbyRichPresence) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{107} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{109} } func (x *CMsgDOTALobbyRichPresence) GetLobbyId() uint64 { @@ -11945,7 +12482,7 @@ type CMsgDOTACustomGameListenServerStartedLoading struct { func (x *CMsgDOTACustomGameListenServerStartedLoading) Reset() { *x = CMsgDOTACustomGameListenServerStartedLoading{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[108] + mi := &file_dota_gcmessages_client_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11958,7 +12495,7 @@ func (x *CMsgDOTACustomGameListenServerStartedLoading) String() string { func (*CMsgDOTACustomGameListenServerStartedLoading) ProtoMessage() {} func (x *CMsgDOTACustomGameListenServerStartedLoading) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[108] + mi := &file_dota_gcmessages_client_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11971,7 +12508,7 @@ func (x *CMsgDOTACustomGameListenServerStartedLoading) ProtoReflect() protorefle // Deprecated: Use CMsgDOTACustomGameListenServerStartedLoading.ProtoReflect.Descriptor instead. func (*CMsgDOTACustomGameListenServerStartedLoading) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{108} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{110} } func (x *CMsgDOTACustomGameListenServerStartedLoading) GetLobbyId() uint64 { @@ -12018,7 +12555,7 @@ type CMsgDOTACustomGameClientFinishedLoading struct { func (x *CMsgDOTACustomGameClientFinishedLoading) Reset() { *x = CMsgDOTACustomGameClientFinishedLoading{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[109] + mi := &file_dota_gcmessages_client_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12031,7 +12568,7 @@ func (x *CMsgDOTACustomGameClientFinishedLoading) String() string { func (*CMsgDOTACustomGameClientFinishedLoading) ProtoMessage() {} func (x *CMsgDOTACustomGameClientFinishedLoading) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[109] + mi := &file_dota_gcmessages_client_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12044,7 +12581,7 @@ func (x *CMsgDOTACustomGameClientFinishedLoading) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgDOTACustomGameClientFinishedLoading.ProtoReflect.Descriptor instead. func (*CMsgDOTACustomGameClientFinishedLoading) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{109} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{111} } func (x *CMsgDOTACustomGameClientFinishedLoading) GetLobbyId() uint64 { @@ -12101,7 +12638,7 @@ type CMsgClientToGCApplyGemCombiner struct { func (x *CMsgClientToGCApplyGemCombiner) Reset() { *x = CMsgClientToGCApplyGemCombiner{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[110] + mi := &file_dota_gcmessages_client_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12114,7 +12651,7 @@ func (x *CMsgClientToGCApplyGemCombiner) String() string { func (*CMsgClientToGCApplyGemCombiner) ProtoMessage() {} func (x *CMsgClientToGCApplyGemCombiner) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[110] + mi := &file_dota_gcmessages_client_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12127,7 +12664,7 @@ func (x *CMsgClientToGCApplyGemCombiner) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCApplyGemCombiner.ProtoReflect.Descriptor instead. func (*CMsgClientToGCApplyGemCombiner) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{110} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{112} } func (x *CMsgClientToGCApplyGemCombiner) GetItemId_1() uint64 { @@ -12153,7 +12690,7 @@ type CMsgClientToGCH264Unsupported struct { func (x *CMsgClientToGCH264Unsupported) Reset() { *x = CMsgClientToGCH264Unsupported{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[111] + mi := &file_dota_gcmessages_client_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12166,7 +12703,7 @@ func (x *CMsgClientToGCH264Unsupported) String() string { func (*CMsgClientToGCH264Unsupported) ProtoMessage() {} func (x *CMsgClientToGCH264Unsupported) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[111] + mi := &file_dota_gcmessages_client_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12179,7 +12716,7 @@ func (x *CMsgClientToGCH264Unsupported) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCH264Unsupported.ProtoReflect.Descriptor instead. func (*CMsgClientToGCH264Unsupported) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{111} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{113} } type CMsgClientToGCGetQuestProgress struct { @@ -12193,7 +12730,7 @@ type CMsgClientToGCGetQuestProgress struct { func (x *CMsgClientToGCGetQuestProgress) Reset() { *x = CMsgClientToGCGetQuestProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[112] + mi := &file_dota_gcmessages_client_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12206,7 +12743,7 @@ func (x *CMsgClientToGCGetQuestProgress) String() string { func (*CMsgClientToGCGetQuestProgress) ProtoMessage() {} func (x *CMsgClientToGCGetQuestProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[112] + mi := &file_dota_gcmessages_client_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12219,7 +12756,7 @@ func (x *CMsgClientToGCGetQuestProgress) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetQuestProgress.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetQuestProgress) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{112} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{114} } func (x *CMsgClientToGCGetQuestProgress) GetQuestIds() []uint32 { @@ -12241,7 +12778,7 @@ type CMsgClientToGCGetQuestProgressResponse struct { func (x *CMsgClientToGCGetQuestProgressResponse) Reset() { *x = CMsgClientToGCGetQuestProgressResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[113] + mi := &file_dota_gcmessages_client_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12254,7 +12791,7 @@ func (x *CMsgClientToGCGetQuestProgressResponse) String() string { func (*CMsgClientToGCGetQuestProgressResponse) ProtoMessage() {} func (x *CMsgClientToGCGetQuestProgressResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[113] + mi := &file_dota_gcmessages_client_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12267,7 +12804,7 @@ func (x *CMsgClientToGCGetQuestProgressResponse) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCGetQuestProgressResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetQuestProgressResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{113} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{115} } func (x *CMsgClientToGCGetQuestProgressResponse) GetSuccess() bool { @@ -12295,7 +12832,7 @@ type CMsgGCToClientMatchSignedOut struct { func (x *CMsgGCToClientMatchSignedOut) Reset() { *x = CMsgGCToClientMatchSignedOut{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[114] + mi := &file_dota_gcmessages_client_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12308,7 +12845,7 @@ func (x *CMsgGCToClientMatchSignedOut) String() string { func (*CMsgGCToClientMatchSignedOut) ProtoMessage() {} func (x *CMsgGCToClientMatchSignedOut) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[114] + mi := &file_dota_gcmessages_client_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12321,7 +12858,7 @@ func (x *CMsgGCToClientMatchSignedOut) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientMatchSignedOut.ProtoReflect.Descriptor instead. func (*CMsgGCToClientMatchSignedOut) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{114} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{116} } func (x *CMsgGCToClientMatchSignedOut) GetMatchId() uint64 { @@ -12342,7 +12879,7 @@ type CMsgGCGetHeroStatsHistory struct { func (x *CMsgGCGetHeroStatsHistory) Reset() { *x = CMsgGCGetHeroStatsHistory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[115] + mi := &file_dota_gcmessages_client_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12355,7 +12892,7 @@ func (x *CMsgGCGetHeroStatsHistory) String() string { func (*CMsgGCGetHeroStatsHistory) ProtoMessage() {} func (x *CMsgGCGetHeroStatsHistory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[115] + mi := &file_dota_gcmessages_client_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12368,7 +12905,7 @@ func (x *CMsgGCGetHeroStatsHistory) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCGetHeroStatsHistory.ProtoReflect.Descriptor instead. func (*CMsgGCGetHeroStatsHistory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{115} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{117} } func (x *CMsgGCGetHeroStatsHistory) GetHeroId() uint32 { @@ -12390,7 +12927,7 @@ type CMsgGCGetHeroStatsHistoryResponse struct { func (x *CMsgGCGetHeroStatsHistoryResponse) Reset() { *x = CMsgGCGetHeroStatsHistoryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[116] + mi := &file_dota_gcmessages_client_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12403,7 +12940,7 @@ func (x *CMsgGCGetHeroStatsHistoryResponse) String() string { func (*CMsgGCGetHeroStatsHistoryResponse) ProtoMessage() {} func (x *CMsgGCGetHeroStatsHistoryResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[116] + mi := &file_dota_gcmessages_client_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12416,7 +12953,7 @@ func (x *CMsgGCGetHeroStatsHistoryResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCGetHeroStatsHistoryResponse.ProtoReflect.Descriptor instead. func (*CMsgGCGetHeroStatsHistoryResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{116} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{118} } func (x *CMsgGCGetHeroStatsHistoryResponse) GetHeroId() uint32 { @@ -12442,7 +12979,7 @@ type CMsgPlayerConductScorecardRequest struct { func (x *CMsgPlayerConductScorecardRequest) Reset() { *x = CMsgPlayerConductScorecardRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[117] + mi := &file_dota_gcmessages_client_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12455,7 +12992,7 @@ func (x *CMsgPlayerConductScorecardRequest) String() string { func (*CMsgPlayerConductScorecardRequest) ProtoMessage() {} func (x *CMsgPlayerConductScorecardRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[117] + mi := &file_dota_gcmessages_client_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12468,7 +13005,7 @@ func (x *CMsgPlayerConductScorecardRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgPlayerConductScorecardRequest.ProtoReflect.Descriptor instead. func (*CMsgPlayerConductScorecardRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{117} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{119} } type CMsgPlayerConductScorecard struct { @@ -12498,7 +13035,7 @@ type CMsgPlayerConductScorecard struct { func (x *CMsgPlayerConductScorecard) Reset() { *x = CMsgPlayerConductScorecard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[118] + mi := &file_dota_gcmessages_client_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12511,7 +13048,7 @@ func (x *CMsgPlayerConductScorecard) String() string { func (*CMsgPlayerConductScorecard) ProtoMessage() {} func (x *CMsgPlayerConductScorecard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[118] + mi := &file_dota_gcmessages_client_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12524,7 +13061,7 @@ func (x *CMsgPlayerConductScorecard) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerConductScorecard.ProtoReflect.Descriptor instead. func (*CMsgPlayerConductScorecard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{118} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{120} } func (x *CMsgPlayerConductScorecard) GetAccountId() uint32 { @@ -12657,7 +13194,7 @@ type CMsgClientToGCWageringRequest struct { func (x *CMsgClientToGCWageringRequest) Reset() { *x = CMsgClientToGCWageringRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[119] + mi := &file_dota_gcmessages_client_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12670,7 +13207,7 @@ func (x *CMsgClientToGCWageringRequest) String() string { func (*CMsgClientToGCWageringRequest) ProtoMessage() {} func (x *CMsgClientToGCWageringRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[119] + mi := &file_dota_gcmessages_client_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12683,7 +13220,7 @@ func (x *CMsgClientToGCWageringRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCWageringRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCWageringRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{119} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{121} } func (x *CMsgClientToGCWageringRequest) GetEventId() uint32 { @@ -12716,7 +13253,7 @@ type CMsgGCToClientWageringResponse struct { func (x *CMsgGCToClientWageringResponse) Reset() { *x = CMsgGCToClientWageringResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[120] + mi := &file_dota_gcmessages_client_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12729,7 +13266,7 @@ func (x *CMsgGCToClientWageringResponse) String() string { func (*CMsgGCToClientWageringResponse) ProtoMessage() {} func (x *CMsgGCToClientWageringResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[120] + mi := &file_dota_gcmessages_client_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12742,7 +13279,7 @@ func (x *CMsgGCToClientWageringResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientWageringResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientWageringResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{120} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{122} } func (x *CMsgGCToClientWageringResponse) GetCoinsRemaining() uint32 { @@ -12848,7 +13385,7 @@ type CMsgGCToClientWageringUpdate struct { func (x *CMsgGCToClientWageringUpdate) Reset() { *x = CMsgGCToClientWageringUpdate{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[121] + mi := &file_dota_gcmessages_client_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12861,7 +13398,7 @@ func (x *CMsgGCToClientWageringUpdate) String() string { func (*CMsgGCToClientWageringUpdate) ProtoMessage() {} func (x *CMsgGCToClientWageringUpdate) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[121] + mi := &file_dota_gcmessages_client_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12874,7 +13411,7 @@ func (x *CMsgGCToClientWageringUpdate) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientWageringUpdate.ProtoReflect.Descriptor instead. func (*CMsgGCToClientWageringUpdate) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{121} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{123} } func (x *CMsgGCToClientWageringUpdate) GetEventId() uint32 { @@ -12903,7 +13440,7 @@ type CMsgGCToClientArcanaVotesUpdate struct { func (x *CMsgGCToClientArcanaVotesUpdate) Reset() { *x = CMsgGCToClientArcanaVotesUpdate{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[122] + mi := &file_dota_gcmessages_client_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12916,7 +13453,7 @@ func (x *CMsgGCToClientArcanaVotesUpdate) String() string { func (*CMsgGCToClientArcanaVotesUpdate) ProtoMessage() {} func (x *CMsgGCToClientArcanaVotesUpdate) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[122] + mi := &file_dota_gcmessages_client_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12929,7 +13466,7 @@ func (x *CMsgGCToClientArcanaVotesUpdate) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientArcanaVotesUpdate.ProtoReflect.Descriptor instead. func (*CMsgGCToClientArcanaVotesUpdate) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{122} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{124} } func (x *CMsgGCToClientArcanaVotesUpdate) GetEventId() uint32 { @@ -12957,7 +13494,7 @@ type CMsgClientToGCGetEventGoals struct { func (x *CMsgClientToGCGetEventGoals) Reset() { *x = CMsgClientToGCGetEventGoals{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[123] + mi := &file_dota_gcmessages_client_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12970,7 +13507,7 @@ func (x *CMsgClientToGCGetEventGoals) String() string { func (*CMsgClientToGCGetEventGoals) ProtoMessage() {} func (x *CMsgClientToGCGetEventGoals) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[123] + mi := &file_dota_gcmessages_client_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12983,7 +13520,7 @@ func (x *CMsgClientToGCGetEventGoals) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetEventGoals.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetEventGoals) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{123} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{125} } func (x *CMsgClientToGCGetEventGoals) GetEventIds() []EEvent { @@ -13004,7 +13541,7 @@ type CMsgEventGoals struct { func (x *CMsgEventGoals) Reset() { *x = CMsgEventGoals{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[124] + mi := &file_dota_gcmessages_client_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13017,7 +13554,7 @@ func (x *CMsgEventGoals) String() string { func (*CMsgEventGoals) ProtoMessage() {} func (x *CMsgEventGoals) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[124] + mi := &file_dota_gcmessages_client_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13030,7 +13567,7 @@ func (x *CMsgEventGoals) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgEventGoals.ProtoReflect.Descriptor instead. func (*CMsgEventGoals) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{124} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{126} } func (x *CMsgEventGoals) GetEventGoals() []*CMsgEventGoals_EventGoal { @@ -13051,7 +13588,7 @@ type CMsgGCToGCLeaguePredictions struct { func (x *CMsgGCToGCLeaguePredictions) Reset() { *x = CMsgGCToGCLeaguePredictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[125] + mi := &file_dota_gcmessages_client_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13064,7 +13601,7 @@ func (x *CMsgGCToGCLeaguePredictions) String() string { func (*CMsgGCToGCLeaguePredictions) ProtoMessage() {} func (x *CMsgGCToGCLeaguePredictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[125] + mi := &file_dota_gcmessages_client_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13077,7 +13614,7 @@ func (x *CMsgGCToGCLeaguePredictions) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCLeaguePredictions.ProtoReflect.Descriptor instead. func (*CMsgGCToGCLeaguePredictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{125} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{127} } func (x *CMsgGCToGCLeaguePredictions) GetLeagueId() uint32 { @@ -13098,7 +13635,7 @@ type CMsgPredictionRankings struct { func (x *CMsgPredictionRankings) Reset() { *x = CMsgPredictionRankings{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[126] + mi := &file_dota_gcmessages_client_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13111,7 +13648,7 @@ func (x *CMsgPredictionRankings) String() string { func (*CMsgPredictionRankings) ProtoMessage() {} func (x *CMsgPredictionRankings) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[126] + mi := &file_dota_gcmessages_client_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13124,7 +13661,7 @@ func (x *CMsgPredictionRankings) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPredictionRankings.ProtoReflect.Descriptor instead. func (*CMsgPredictionRankings) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{126} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{128} } func (x *CMsgPredictionRankings) GetPredictions() []*CMsgPredictionRankings_Prediction { @@ -13145,7 +13682,7 @@ type CMsgPredictionResults struct { func (x *CMsgPredictionResults) Reset() { *x = CMsgPredictionResults{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[127] + mi := &file_dota_gcmessages_client_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13158,7 +13695,7 @@ func (x *CMsgPredictionResults) String() string { func (*CMsgPredictionResults) ProtoMessage() {} func (x *CMsgPredictionResults) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[127] + mi := &file_dota_gcmessages_client_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13171,7 +13708,7 @@ func (x *CMsgPredictionResults) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPredictionResults.ProtoReflect.Descriptor instead. func (*CMsgPredictionResults) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{127} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{129} } func (x *CMsgPredictionResults) GetResults() []*CMsgPredictionResults_Result { @@ -13192,7 +13729,7 @@ type CMsgClientToGCHasPlayerVotedForMVP struct { func (x *CMsgClientToGCHasPlayerVotedForMVP) Reset() { *x = CMsgClientToGCHasPlayerVotedForMVP{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[128] + mi := &file_dota_gcmessages_client_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13205,7 +13742,7 @@ func (x *CMsgClientToGCHasPlayerVotedForMVP) String() string { func (*CMsgClientToGCHasPlayerVotedForMVP) ProtoMessage() {} func (x *CMsgClientToGCHasPlayerVotedForMVP) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[128] + mi := &file_dota_gcmessages_client_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13218,7 +13755,7 @@ func (x *CMsgClientToGCHasPlayerVotedForMVP) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCHasPlayerVotedForMVP.ProtoReflect.Descriptor instead. func (*CMsgClientToGCHasPlayerVotedForMVP) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{128} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{130} } func (x *CMsgClientToGCHasPlayerVotedForMVP) GetMatchId() uint64 { @@ -13239,7 +13776,7 @@ type CMsgClientToGCHasPlayerVotedForMVPResponse struct { func (x *CMsgClientToGCHasPlayerVotedForMVPResponse) Reset() { *x = CMsgClientToGCHasPlayerVotedForMVPResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[129] + mi := &file_dota_gcmessages_client_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13252,7 +13789,7 @@ func (x *CMsgClientToGCHasPlayerVotedForMVPResponse) String() string { func (*CMsgClientToGCHasPlayerVotedForMVPResponse) ProtoMessage() {} func (x *CMsgClientToGCHasPlayerVotedForMVPResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[129] + mi := &file_dota_gcmessages_client_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13265,7 +13802,7 @@ func (x *CMsgClientToGCHasPlayerVotedForMVPResponse) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCHasPlayerVotedForMVPResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCHasPlayerVotedForMVPResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{129} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{131} } func (x *CMsgClientToGCHasPlayerVotedForMVPResponse) GetResult() bool { @@ -13287,7 +13824,7 @@ type CMsgClientToGCVoteForMVP struct { func (x *CMsgClientToGCVoteForMVP) Reset() { *x = CMsgClientToGCVoteForMVP{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[130] + mi := &file_dota_gcmessages_client_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13300,7 +13837,7 @@ func (x *CMsgClientToGCVoteForMVP) String() string { func (*CMsgClientToGCVoteForMVP) ProtoMessage() {} func (x *CMsgClientToGCVoteForMVP) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[130] + mi := &file_dota_gcmessages_client_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13313,7 +13850,7 @@ func (x *CMsgClientToGCVoteForMVP) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCVoteForMVP.ProtoReflect.Descriptor instead. func (*CMsgClientToGCVoteForMVP) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{130} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{132} } func (x *CMsgClientToGCVoteForMVP) GetMatchId() uint64 { @@ -13341,7 +13878,7 @@ type CMsgClientToGCVoteForMVPResponse struct { func (x *CMsgClientToGCVoteForMVPResponse) Reset() { *x = CMsgClientToGCVoteForMVPResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[131] + mi := &file_dota_gcmessages_client_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13354,7 +13891,7 @@ func (x *CMsgClientToGCVoteForMVPResponse) String() string { func (*CMsgClientToGCVoteForMVPResponse) ProtoMessage() {} func (x *CMsgClientToGCVoteForMVPResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[131] + mi := &file_dota_gcmessages_client_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13367,7 +13904,7 @@ func (x *CMsgClientToGCVoteForMVPResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCVoteForMVPResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCVoteForMVPResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{131} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{133} } func (x *CMsgClientToGCVoteForMVPResponse) GetResult() bool { @@ -13388,7 +13925,7 @@ type CMsgClientToGCMVPVoteTimeout struct { func (x *CMsgClientToGCMVPVoteTimeout) Reset() { *x = CMsgClientToGCMVPVoteTimeout{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[132] + mi := &file_dota_gcmessages_client_proto_msgTypes[134] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13401,7 +13938,7 @@ func (x *CMsgClientToGCMVPVoteTimeout) String() string { func (*CMsgClientToGCMVPVoteTimeout) ProtoMessage() {} func (x *CMsgClientToGCMVPVoteTimeout) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[132] + mi := &file_dota_gcmessages_client_proto_msgTypes[134] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13414,7 +13951,7 @@ func (x *CMsgClientToGCMVPVoteTimeout) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCMVPVoteTimeout.ProtoReflect.Descriptor instead. func (*CMsgClientToGCMVPVoteTimeout) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{132} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{134} } func (x *CMsgClientToGCMVPVoteTimeout) GetMatchId() uint64 { @@ -13435,7 +13972,7 @@ type CMsgClientToGCMVPVoteTimeoutResponse struct { func (x *CMsgClientToGCMVPVoteTimeoutResponse) Reset() { *x = CMsgClientToGCMVPVoteTimeoutResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[133] + mi := &file_dota_gcmessages_client_proto_msgTypes[135] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13448,7 +13985,7 @@ func (x *CMsgClientToGCMVPVoteTimeoutResponse) String() string { func (*CMsgClientToGCMVPVoteTimeoutResponse) ProtoMessage() {} func (x *CMsgClientToGCMVPVoteTimeoutResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[133] + mi := &file_dota_gcmessages_client_proto_msgTypes[135] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13461,7 +13998,7 @@ func (x *CMsgClientToGCMVPVoteTimeoutResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCMVPVoteTimeoutResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCMVPVoteTimeoutResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{133} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{135} } func (x *CMsgClientToGCMVPVoteTimeoutResponse) GetResult() bool { @@ -13480,7 +14017,7 @@ type CMsgClientToGCTeammateStatsRequest struct { func (x *CMsgClientToGCTeammateStatsRequest) Reset() { *x = CMsgClientToGCTeammateStatsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[134] + mi := &file_dota_gcmessages_client_proto_msgTypes[136] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13493,7 +14030,7 @@ func (x *CMsgClientToGCTeammateStatsRequest) String() string { func (*CMsgClientToGCTeammateStatsRequest) ProtoMessage() {} func (x *CMsgClientToGCTeammateStatsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[134] + mi := &file_dota_gcmessages_client_proto_msgTypes[136] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13506,7 +14043,7 @@ func (x *CMsgClientToGCTeammateStatsRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCTeammateStatsRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCTeammateStatsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{134} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{136} } type CMsgClientToGCTeammateStatsResponse struct { @@ -13521,7 +14058,7 @@ type CMsgClientToGCTeammateStatsResponse struct { func (x *CMsgClientToGCTeammateStatsResponse) Reset() { *x = CMsgClientToGCTeammateStatsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[135] + mi := &file_dota_gcmessages_client_proto_msgTypes[137] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13534,7 +14071,7 @@ func (x *CMsgClientToGCTeammateStatsResponse) String() string { func (*CMsgClientToGCTeammateStatsResponse) ProtoMessage() {} func (x *CMsgClientToGCTeammateStatsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[135] + mi := &file_dota_gcmessages_client_proto_msgTypes[137] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13547,7 +14084,7 @@ func (x *CMsgClientToGCTeammateStatsResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCTeammateStatsResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCTeammateStatsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{135} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{137} } func (x *CMsgClientToGCTeammateStatsResponse) GetSuccess() bool { @@ -13575,7 +14112,7 @@ type CMsgClientToGCVoteForArcana struct { func (x *CMsgClientToGCVoteForArcana) Reset() { *x = CMsgClientToGCVoteForArcana{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[136] + mi := &file_dota_gcmessages_client_proto_msgTypes[138] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13588,7 +14125,7 @@ func (x *CMsgClientToGCVoteForArcana) String() string { func (*CMsgClientToGCVoteForArcana) ProtoMessage() {} func (x *CMsgClientToGCVoteForArcana) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[136] + mi := &file_dota_gcmessages_client_proto_msgTypes[138] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13601,7 +14138,7 @@ func (x *CMsgClientToGCVoteForArcana) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCVoteForArcana.ProtoReflect.Descriptor instead. func (*CMsgClientToGCVoteForArcana) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{136} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{138} } func (x *CMsgClientToGCVoteForArcana) GetMatches() []*CMsgArcanaVoteMatchVotes { @@ -13622,7 +14159,7 @@ type CMsgClientToGCVoteForArcanaResponse struct { func (x *CMsgClientToGCVoteForArcanaResponse) Reset() { *x = CMsgClientToGCVoteForArcanaResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[137] + mi := &file_dota_gcmessages_client_proto_msgTypes[139] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13635,7 +14172,7 @@ func (x *CMsgClientToGCVoteForArcanaResponse) String() string { func (*CMsgClientToGCVoteForArcanaResponse) ProtoMessage() {} func (x *CMsgClientToGCVoteForArcanaResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[137] + mi := &file_dota_gcmessages_client_proto_msgTypes[139] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13648,7 +14185,7 @@ func (x *CMsgClientToGCVoteForArcanaResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCVoteForArcanaResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCVoteForArcanaResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{137} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{139} } func (x *CMsgClientToGCVoteForArcanaResponse) GetResult() CMsgClientToGCVoteForArcanaResponse_Result { @@ -13667,7 +14204,7 @@ type CMsgClientToGCRequestArcanaVotesRemaining struct { func (x *CMsgClientToGCRequestArcanaVotesRemaining) Reset() { *x = CMsgClientToGCRequestArcanaVotesRemaining{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[138] + mi := &file_dota_gcmessages_client_proto_msgTypes[140] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13680,7 +14217,7 @@ func (x *CMsgClientToGCRequestArcanaVotesRemaining) String() string { func (*CMsgClientToGCRequestArcanaVotesRemaining) ProtoMessage() {} func (x *CMsgClientToGCRequestArcanaVotesRemaining) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[138] + mi := &file_dota_gcmessages_client_proto_msgTypes[140] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13693,7 +14230,7 @@ func (x *CMsgClientToGCRequestArcanaVotesRemaining) ProtoReflect() protoreflect. // Deprecated: Use CMsgClientToGCRequestArcanaVotesRemaining.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestArcanaVotesRemaining) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{138} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{140} } type CMsgClientToGCRequestArcanaVotesRemainingResponse struct { @@ -13710,7 +14247,7 @@ type CMsgClientToGCRequestArcanaVotesRemainingResponse struct { func (x *CMsgClientToGCRequestArcanaVotesRemainingResponse) Reset() { *x = CMsgClientToGCRequestArcanaVotesRemainingResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[139] + mi := &file_dota_gcmessages_client_proto_msgTypes[141] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13723,7 +14260,7 @@ func (x *CMsgClientToGCRequestArcanaVotesRemainingResponse) String() string { func (*CMsgClientToGCRequestArcanaVotesRemainingResponse) ProtoMessage() {} func (x *CMsgClientToGCRequestArcanaVotesRemainingResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[139] + mi := &file_dota_gcmessages_client_proto_msgTypes[141] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13736,7 +14273,7 @@ func (x *CMsgClientToGCRequestArcanaVotesRemainingResponse) ProtoReflect() proto // Deprecated: Use CMsgClientToGCRequestArcanaVotesRemainingResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestArcanaVotesRemainingResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{139} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{141} } func (x *CMsgClientToGCRequestArcanaVotesRemainingResponse) GetResult() bool { @@ -13778,7 +14315,7 @@ type CMsgClientToGCRequestEventPointLogV2 struct { func (x *CMsgClientToGCRequestEventPointLogV2) Reset() { *x = CMsgClientToGCRequestEventPointLogV2{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[140] + mi := &file_dota_gcmessages_client_proto_msgTypes[142] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13791,7 +14328,7 @@ func (x *CMsgClientToGCRequestEventPointLogV2) String() string { func (*CMsgClientToGCRequestEventPointLogV2) ProtoMessage() {} func (x *CMsgClientToGCRequestEventPointLogV2) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[140] + mi := &file_dota_gcmessages_client_proto_msgTypes[142] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13804,7 +14341,7 @@ func (x *CMsgClientToGCRequestEventPointLogV2) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCRequestEventPointLogV2.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestEventPointLogV2) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{140} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{142} } func (x *CMsgClientToGCRequestEventPointLogV2) GetEventId() uint32 { @@ -13827,7 +14364,7 @@ type CMsgClientToGCRequestEventPointLogResponseV2 struct { func (x *CMsgClientToGCRequestEventPointLogResponseV2) Reset() { *x = CMsgClientToGCRequestEventPointLogResponseV2{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[141] + mi := &file_dota_gcmessages_client_proto_msgTypes[143] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13840,7 +14377,7 @@ func (x *CMsgClientToGCRequestEventPointLogResponseV2) String() string { func (*CMsgClientToGCRequestEventPointLogResponseV2) ProtoMessage() {} func (x *CMsgClientToGCRequestEventPointLogResponseV2) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[141] + mi := &file_dota_gcmessages_client_proto_msgTypes[143] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13853,7 +14390,7 @@ func (x *CMsgClientToGCRequestEventPointLogResponseV2) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCRequestEventPointLogResponseV2.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestEventPointLogResponseV2) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{141} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{143} } func (x *CMsgClientToGCRequestEventPointLogResponseV2) GetResult() bool { @@ -13889,7 +14426,7 @@ type CMsgClientToGCPublishUserStat struct { func (x *CMsgClientToGCPublishUserStat) Reset() { *x = CMsgClientToGCPublishUserStat{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[142] + mi := &file_dota_gcmessages_client_proto_msgTypes[144] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13902,7 +14439,7 @@ func (x *CMsgClientToGCPublishUserStat) String() string { func (*CMsgClientToGCPublishUserStat) ProtoMessage() {} func (x *CMsgClientToGCPublishUserStat) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[142] + mi := &file_dota_gcmessages_client_proto_msgTypes[144] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13915,7 +14452,7 @@ func (x *CMsgClientToGCPublishUserStat) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCPublishUserStat.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPublishUserStat) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{142} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{144} } func (x *CMsgClientToGCPublishUserStat) GetUserStatsEvent() uint32 { @@ -13945,7 +14482,7 @@ type CMsgClientToGCRequestSlarkGameResult struct { func (x *CMsgClientToGCRequestSlarkGameResult) Reset() { *x = CMsgClientToGCRequestSlarkGameResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[143] + mi := &file_dota_gcmessages_client_proto_msgTypes[145] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13958,7 +14495,7 @@ func (x *CMsgClientToGCRequestSlarkGameResult) String() string { func (*CMsgClientToGCRequestSlarkGameResult) ProtoMessage() {} func (x *CMsgClientToGCRequestSlarkGameResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[143] + mi := &file_dota_gcmessages_client_proto_msgTypes[145] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13971,7 +14508,7 @@ func (x *CMsgClientToGCRequestSlarkGameResult) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCRequestSlarkGameResult.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestSlarkGameResult) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{143} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{145} } func (x *CMsgClientToGCRequestSlarkGameResult) GetEventId() EEvent { @@ -14007,7 +14544,7 @@ type CMsgClientToGCRequestSlarkGameResultResponse struct { func (x *CMsgClientToGCRequestSlarkGameResultResponse) Reset() { *x = CMsgClientToGCRequestSlarkGameResultResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[144] + mi := &file_dota_gcmessages_client_proto_msgTypes[146] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14020,7 +14557,7 @@ func (x *CMsgClientToGCRequestSlarkGameResultResponse) String() string { func (*CMsgClientToGCRequestSlarkGameResultResponse) ProtoMessage() {} func (x *CMsgClientToGCRequestSlarkGameResultResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[144] + mi := &file_dota_gcmessages_client_proto_msgTypes[146] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14033,7 +14570,7 @@ func (x *CMsgClientToGCRequestSlarkGameResultResponse) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCRequestSlarkGameResultResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestSlarkGameResultResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{144} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{146} } func (x *CMsgClientToGCRequestSlarkGameResultResponse) GetPointsWon() uint32 { @@ -14062,7 +14599,7 @@ type CMsgGCToClientQuestProgressUpdated struct { func (x *CMsgGCToClientQuestProgressUpdated) Reset() { *x = CMsgGCToClientQuestProgressUpdated{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[145] + mi := &file_dota_gcmessages_client_proto_msgTypes[147] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14075,7 +14612,7 @@ func (x *CMsgGCToClientQuestProgressUpdated) String() string { func (*CMsgGCToClientQuestProgressUpdated) ProtoMessage() {} func (x *CMsgGCToClientQuestProgressUpdated) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[145] + mi := &file_dota_gcmessages_client_proto_msgTypes[147] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14088,7 +14625,7 @@ func (x *CMsgGCToClientQuestProgressUpdated) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToClientQuestProgressUpdated.ProtoReflect.Descriptor instead. func (*CMsgGCToClientQuestProgressUpdated) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{145} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{147} } func (x *CMsgGCToClientQuestProgressUpdated) GetQuestId() uint32 { @@ -14117,7 +14654,7 @@ type CMsgDOTARedeemItem struct { func (x *CMsgDOTARedeemItem) Reset() { *x = CMsgDOTARedeemItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[146] + mi := &file_dota_gcmessages_client_proto_msgTypes[148] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14130,7 +14667,7 @@ func (x *CMsgDOTARedeemItem) String() string { func (*CMsgDOTARedeemItem) ProtoMessage() {} func (x *CMsgDOTARedeemItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[146] + mi := &file_dota_gcmessages_client_proto_msgTypes[148] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14143,7 +14680,7 @@ func (x *CMsgDOTARedeemItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTARedeemItem.ProtoReflect.Descriptor instead. func (*CMsgDOTARedeemItem) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{146} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{148} } func (x *CMsgDOTARedeemItem) GetCurrencyId() uint64 { @@ -14171,7 +14708,7 @@ type CMsgDOTARedeemItemResponse struct { func (x *CMsgDOTARedeemItemResponse) Reset() { *x = CMsgDOTARedeemItemResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[147] + mi := &file_dota_gcmessages_client_proto_msgTypes[149] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14184,7 +14721,7 @@ func (x *CMsgDOTARedeemItemResponse) String() string { func (*CMsgDOTARedeemItemResponse) ProtoMessage() {} func (x *CMsgDOTARedeemItemResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[147] + mi := &file_dota_gcmessages_client_proto_msgTypes[149] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14197,7 +14734,7 @@ func (x *CMsgDOTARedeemItemResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTARedeemItemResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTARedeemItemResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{147} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{149} } func (x *CMsgDOTARedeemItemResponse) GetResponse() CMsgDOTARedeemItemResponse_EResultCode { @@ -14220,7 +14757,7 @@ type CMsgClientToGCSelectCompendiumInGamePrediction struct { func (x *CMsgClientToGCSelectCompendiumInGamePrediction) Reset() { *x = CMsgClientToGCSelectCompendiumInGamePrediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[148] + mi := &file_dota_gcmessages_client_proto_msgTypes[150] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14233,7 +14770,7 @@ func (x *CMsgClientToGCSelectCompendiumInGamePrediction) String() string { func (*CMsgClientToGCSelectCompendiumInGamePrediction) ProtoMessage() {} func (x *CMsgClientToGCSelectCompendiumInGamePrediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[148] + mi := &file_dota_gcmessages_client_proto_msgTypes[150] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14246,7 +14783,7 @@ func (x *CMsgClientToGCSelectCompendiumInGamePrediction) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCSelectCompendiumInGamePrediction.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSelectCompendiumInGamePrediction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{148} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{150} } func (x *CMsgClientToGCSelectCompendiumInGamePrediction) GetMatchId() uint64 { @@ -14281,7 +14818,7 @@ type CMsgClientToGCSelectCompendiumInGamePredictionResponse struct { func (x *CMsgClientToGCSelectCompendiumInGamePredictionResponse) Reset() { *x = CMsgClientToGCSelectCompendiumInGamePredictionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[149] + mi := &file_dota_gcmessages_client_proto_msgTypes[151] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14294,7 +14831,7 @@ func (x *CMsgClientToGCSelectCompendiumInGamePredictionResponse) String() string func (*CMsgClientToGCSelectCompendiumInGamePredictionResponse) ProtoMessage() {} func (x *CMsgClientToGCSelectCompendiumInGamePredictionResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[149] + mi := &file_dota_gcmessages_client_proto_msgTypes[151] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14307,7 +14844,7 @@ func (x *CMsgClientToGCSelectCompendiumInGamePredictionResponse) ProtoReflect() // Deprecated: Use CMsgClientToGCSelectCompendiumInGamePredictionResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSelectCompendiumInGamePredictionResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{149} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{151} } func (x *CMsgClientToGCSelectCompendiumInGamePredictionResponse) GetResult() CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult { @@ -14331,7 +14868,7 @@ type CMsgClientToGCOpenPlayerCardPack struct { func (x *CMsgClientToGCOpenPlayerCardPack) Reset() { *x = CMsgClientToGCOpenPlayerCardPack{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[150] + mi := &file_dota_gcmessages_client_proto_msgTypes[152] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14344,7 +14881,7 @@ func (x *CMsgClientToGCOpenPlayerCardPack) String() string { func (*CMsgClientToGCOpenPlayerCardPack) ProtoMessage() {} func (x *CMsgClientToGCOpenPlayerCardPack) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[150] + mi := &file_dota_gcmessages_client_proto_msgTypes[152] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14357,7 +14894,7 @@ func (x *CMsgClientToGCOpenPlayerCardPack) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCOpenPlayerCardPack.ProtoReflect.Descriptor instead. func (*CMsgClientToGCOpenPlayerCardPack) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{150} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{152} } func (x *CMsgClientToGCOpenPlayerCardPack) GetPlayerCardPackItemId() uint64 { @@ -14400,7 +14937,7 @@ type CMsgClientToGCOpenPlayerCardPackResponse struct { func (x *CMsgClientToGCOpenPlayerCardPackResponse) Reset() { *x = CMsgClientToGCOpenPlayerCardPackResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[151] + mi := &file_dota_gcmessages_client_proto_msgTypes[153] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14413,7 +14950,7 @@ func (x *CMsgClientToGCOpenPlayerCardPackResponse) String() string { func (*CMsgClientToGCOpenPlayerCardPackResponse) ProtoMessage() {} func (x *CMsgClientToGCOpenPlayerCardPackResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[151] + mi := &file_dota_gcmessages_client_proto_msgTypes[153] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14426,7 +14963,7 @@ func (x *CMsgClientToGCOpenPlayerCardPackResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCOpenPlayerCardPackResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCOpenPlayerCardPackResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{151} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{153} } func (x *CMsgClientToGCOpenPlayerCardPackResponse) GetResult() CMsgClientToGCOpenPlayerCardPackResponse_Result { @@ -14455,7 +14992,7 @@ type CMsgClientToGCRecyclePlayerCard struct { func (x *CMsgClientToGCRecyclePlayerCard) Reset() { *x = CMsgClientToGCRecyclePlayerCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[152] + mi := &file_dota_gcmessages_client_proto_msgTypes[154] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14468,7 +15005,7 @@ func (x *CMsgClientToGCRecyclePlayerCard) String() string { func (*CMsgClientToGCRecyclePlayerCard) ProtoMessage() {} func (x *CMsgClientToGCRecyclePlayerCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[152] + mi := &file_dota_gcmessages_client_proto_msgTypes[154] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14481,7 +15018,7 @@ func (x *CMsgClientToGCRecyclePlayerCard) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCRecyclePlayerCard.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRecyclePlayerCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{152} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{154} } func (x *CMsgClientToGCRecyclePlayerCard) GetPlayerCardItemIds() []uint64 { @@ -14510,7 +15047,7 @@ type CMsgClientToGCRecyclePlayerCardResponse struct { func (x *CMsgClientToGCRecyclePlayerCardResponse) Reset() { *x = CMsgClientToGCRecyclePlayerCardResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[153] + mi := &file_dota_gcmessages_client_proto_msgTypes[155] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14523,7 +15060,7 @@ func (x *CMsgClientToGCRecyclePlayerCardResponse) String() string { func (*CMsgClientToGCRecyclePlayerCardResponse) ProtoMessage() {} func (x *CMsgClientToGCRecyclePlayerCardResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[153] + mi := &file_dota_gcmessages_client_proto_msgTypes[155] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14536,7 +15073,7 @@ func (x *CMsgClientToGCRecyclePlayerCardResponse) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgClientToGCRecyclePlayerCardResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRecyclePlayerCardResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{153} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{155} } func (x *CMsgClientToGCRecyclePlayerCardResponse) GetResult() CMsgClientToGCRecyclePlayerCardResponse_Result { @@ -14566,7 +15103,7 @@ type CMsgClientToGCCreatePlayerCardPack struct { func (x *CMsgClientToGCCreatePlayerCardPack) Reset() { *x = CMsgClientToGCCreatePlayerCardPack{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[154] + mi := &file_dota_gcmessages_client_proto_msgTypes[156] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14579,7 +15116,7 @@ func (x *CMsgClientToGCCreatePlayerCardPack) String() string { func (*CMsgClientToGCCreatePlayerCardPack) ProtoMessage() {} func (x *CMsgClientToGCCreatePlayerCardPack) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[154] + mi := &file_dota_gcmessages_client_proto_msgTypes[156] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14592,7 +15129,7 @@ func (x *CMsgClientToGCCreatePlayerCardPack) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCCreatePlayerCardPack.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreatePlayerCardPack) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{154} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{156} } func (x *CMsgClientToGCCreatePlayerCardPack) GetCardDustItemId() uint64 { @@ -14627,7 +15164,7 @@ type CMsgClientToGCCreatePlayerCardPackResponse struct { func (x *CMsgClientToGCCreatePlayerCardPackResponse) Reset() { *x = CMsgClientToGCCreatePlayerCardPackResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[155] + mi := &file_dota_gcmessages_client_proto_msgTypes[157] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14640,7 +15177,7 @@ func (x *CMsgClientToGCCreatePlayerCardPackResponse) String() string { func (*CMsgClientToGCCreatePlayerCardPackResponse) ProtoMessage() {} func (x *CMsgClientToGCCreatePlayerCardPackResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[155] + mi := &file_dota_gcmessages_client_proto_msgTypes[157] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14653,7 +15190,7 @@ func (x *CMsgClientToGCCreatePlayerCardPackResponse) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCCreatePlayerCardPackResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreatePlayerCardPackResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{155} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{157} } func (x *CMsgClientToGCCreatePlayerCardPackResponse) GetResult() CMsgClientToGCCreatePlayerCardPackResponse_Result { @@ -14677,7 +15214,7 @@ type CMsgClientToGCCreateTeamPlayerCardPack struct { func (x *CMsgClientToGCCreateTeamPlayerCardPack) Reset() { *x = CMsgClientToGCCreateTeamPlayerCardPack{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[156] + mi := &file_dota_gcmessages_client_proto_msgTypes[158] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14690,7 +15227,7 @@ func (x *CMsgClientToGCCreateTeamPlayerCardPack) String() string { func (*CMsgClientToGCCreateTeamPlayerCardPack) ProtoMessage() {} func (x *CMsgClientToGCCreateTeamPlayerCardPack) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[156] + mi := &file_dota_gcmessages_client_proto_msgTypes[158] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14703,7 +15240,7 @@ func (x *CMsgClientToGCCreateTeamPlayerCardPack) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCCreateTeamPlayerCardPack.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateTeamPlayerCardPack) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{156} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158} } func (x *CMsgClientToGCCreateTeamPlayerCardPack) GetCardDustItemId() uint64 { @@ -14745,7 +15282,7 @@ type CMsgClientToGCCreateTeamPlayerCardPackResponse struct { func (x *CMsgClientToGCCreateTeamPlayerCardPackResponse) Reset() { *x = CMsgClientToGCCreateTeamPlayerCardPackResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[157] + mi := &file_dota_gcmessages_client_proto_msgTypes[159] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14758,7 +15295,7 @@ func (x *CMsgClientToGCCreateTeamPlayerCardPackResponse) String() string { func (*CMsgClientToGCCreateTeamPlayerCardPackResponse) ProtoMessage() {} func (x *CMsgClientToGCCreateTeamPlayerCardPackResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[157] + mi := &file_dota_gcmessages_client_proto_msgTypes[159] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14771,7 +15308,7 @@ func (x *CMsgClientToGCCreateTeamPlayerCardPackResponse) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCCreateTeamPlayerCardPackResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateTeamPlayerCardPackResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{157} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159} } func (x *CMsgClientToGCCreateTeamPlayerCardPackResponse) GetResult() CMsgClientToGCCreateTeamPlayerCardPackResponse_Result { @@ -14800,7 +15337,7 @@ type CMsgGCToClientBattlePassRollup_International2016 struct { func (x *CMsgGCToClientBattlePassRollup_International2016) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[158] + mi := &file_dota_gcmessages_client_proto_msgTypes[160] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14813,7 +15350,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016) String() string { func (*CMsgGCToClientBattlePassRollup_International2016) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[158] + mi := &file_dota_gcmessages_client_proto_msgTypes[160] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14826,7 +15363,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016) ProtoReflect() protor // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160} } func (x *CMsgGCToClientBattlePassRollup_International2016) GetBattlePassLevel() uint32 { @@ -14911,7 +15448,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016 struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[159] + mi := &file_dota_gcmessages_client_proto_msgTypes[161] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14924,7 +15461,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016) String() string { func (*CMsgGCToClientBattlePassRollup_Fall2016) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[159] + mi := &file_dota_gcmessages_client_proto_msgTypes[161] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14937,7 +15474,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161} } func (x *CMsgGCToClientBattlePassRollup_Fall2016) GetBattlePassLevel() uint32 { @@ -15022,7 +15559,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017 struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[160] + mi := &file_dota_gcmessages_client_proto_msgTypes[162] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15035,7 +15572,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017) String() string { func (*CMsgGCToClientBattlePassRollup_Winter2017) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[160] + mi := &file_dota_gcmessages_client_proto_msgTypes[162] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15048,7 +15585,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017) ProtoReflect() protoreflect. // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162} } func (x *CMsgGCToClientBattlePassRollup_Winter2017) GetBattlePassLevel() uint32 { @@ -15133,7 +15670,7 @@ type CMsgGCToClientBattlePassRollup_TI7 struct { func (x *CMsgGCToClientBattlePassRollup_TI7) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[161] + mi := &file_dota_gcmessages_client_proto_msgTypes[163] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15146,7 +15683,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7) String() string { func (*CMsgGCToClientBattlePassRollup_TI7) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[161] + mi := &file_dota_gcmessages_client_proto_msgTypes[163] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15159,7 +15696,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163} } func (x *CMsgGCToClientBattlePassRollup_TI7) GetBattlePassLevel() uint32 { @@ -15243,7 +15780,7 @@ type CMsgGCToClientBattlePassRollup_TI8 struct { func (x *CMsgGCToClientBattlePassRollup_TI8) Reset() { *x = CMsgGCToClientBattlePassRollup_TI8{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[162] + mi := &file_dota_gcmessages_client_proto_msgTypes[164] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15256,7 +15793,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8) String() string { func (*CMsgGCToClientBattlePassRollup_TI8) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI8) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[162] + mi := &file_dota_gcmessages_client_proto_msgTypes[164] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15269,7 +15806,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToClientBattlePassRollup_TI8.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI8) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164} } func (x *CMsgGCToClientBattlePassRollup_TI8) GetBattlePassLevel() uint32 { @@ -15339,7 +15876,7 @@ type CMsgGCToClientBattlePassRollup_TI9 struct { func (x *CMsgGCToClientBattlePassRollup_TI9) Reset() { *x = CMsgGCToClientBattlePassRollup_TI9{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[163] + mi := &file_dota_gcmessages_client_proto_msgTypes[165] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15352,7 +15889,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI9) String() string { func (*CMsgGCToClientBattlePassRollup_TI9) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI9) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[163] + mi := &file_dota_gcmessages_client_proto_msgTypes[165] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15365,7 +15902,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI9) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToClientBattlePassRollup_TI9.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI9) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{165} } func (x *CMsgGCToClientBattlePassRollup_TI9) GetBattlePassLevel() uint32 { @@ -15386,7 +15923,7 @@ type CMsgGCToClientBattlePassRollup_TI10 struct { func (x *CMsgGCToClientBattlePassRollup_TI10) Reset() { *x = CMsgGCToClientBattlePassRollup_TI10{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[164] + mi := &file_dota_gcmessages_client_proto_msgTypes[166] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15399,7 +15936,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI10) String() string { func (*CMsgGCToClientBattlePassRollup_TI10) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI10) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[164] + mi := &file_dota_gcmessages_client_proto_msgTypes[166] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15412,7 +15949,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI10) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgGCToClientBattlePassRollup_TI10.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI10) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{166} } func (x *CMsgGCToClientBattlePassRollup_TI10) GetBattlePassLevel() uint32 { @@ -15434,7 +15971,7 @@ type CMsgGCToClientBattlePassRollupRequest struct { func (x *CMsgGCToClientBattlePassRollupRequest) Reset() { *x = CMsgGCToClientBattlePassRollupRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[165] + mi := &file_dota_gcmessages_client_proto_msgTypes[167] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15447,7 +15984,7 @@ func (x *CMsgGCToClientBattlePassRollupRequest) String() string { func (*CMsgGCToClientBattlePassRollupRequest) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollupRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[165] + mi := &file_dota_gcmessages_client_proto_msgTypes[167] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15460,7 +15997,7 @@ func (x *CMsgGCToClientBattlePassRollupRequest) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCToClientBattlePassRollupRequest.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollupRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{165} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{167} } func (x *CMsgGCToClientBattlePassRollupRequest) GetEventId() uint32 { @@ -15494,7 +16031,7 @@ type CMsgGCToClientBattlePassRollupResponse struct { func (x *CMsgGCToClientBattlePassRollupResponse) Reset() { *x = CMsgGCToClientBattlePassRollupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[166] + mi := &file_dota_gcmessages_client_proto_msgTypes[168] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15507,7 +16044,7 @@ func (x *CMsgGCToClientBattlePassRollupResponse) String() string { func (*CMsgGCToClientBattlePassRollupResponse) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollupResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[166] + mi := &file_dota_gcmessages_client_proto_msgTypes[168] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15520,7 +16057,7 @@ func (x *CMsgGCToClientBattlePassRollupResponse) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgGCToClientBattlePassRollupResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollupResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{166} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{168} } func (x *CMsgGCToClientBattlePassRollupResponse) GetEventTi6() *CMsgGCToClientBattlePassRollup_International2016 { @@ -15583,7 +16120,7 @@ type CMsgGCToClientBattlePassRollupListRequest struct { func (x *CMsgGCToClientBattlePassRollupListRequest) Reset() { *x = CMsgGCToClientBattlePassRollupListRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[167] + mi := &file_dota_gcmessages_client_proto_msgTypes[169] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15596,7 +16133,7 @@ func (x *CMsgGCToClientBattlePassRollupListRequest) String() string { func (*CMsgGCToClientBattlePassRollupListRequest) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollupListRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[167] + mi := &file_dota_gcmessages_client_proto_msgTypes[169] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15609,7 +16146,7 @@ func (x *CMsgGCToClientBattlePassRollupListRequest) ProtoReflect() protoreflect. // Deprecated: Use CMsgGCToClientBattlePassRollupListRequest.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollupListRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{167} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{169} } func (x *CMsgGCToClientBattlePassRollupListRequest) GetAccountId() uint32 { @@ -15630,7 +16167,7 @@ type CMsgGCToClientBattlePassRollupListResponse struct { func (x *CMsgGCToClientBattlePassRollupListResponse) Reset() { *x = CMsgGCToClientBattlePassRollupListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[168] + mi := &file_dota_gcmessages_client_proto_msgTypes[170] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15643,7 +16180,7 @@ func (x *CMsgGCToClientBattlePassRollupListResponse) String() string { func (*CMsgGCToClientBattlePassRollupListResponse) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollupListResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[168] + mi := &file_dota_gcmessages_client_proto_msgTypes[170] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15656,7 +16193,7 @@ func (x *CMsgGCToClientBattlePassRollupListResponse) ProtoReflect() protoreflect // Deprecated: Use CMsgGCToClientBattlePassRollupListResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollupListResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{168} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{170} } func (x *CMsgGCToClientBattlePassRollupListResponse) GetEventInfo() []*CMsgGCToClientBattlePassRollupListResponse_EventInfo { @@ -15677,7 +16214,7 @@ type CMsgClientToGCTransferSeasonalMMRRequest struct { func (x *CMsgClientToGCTransferSeasonalMMRRequest) Reset() { *x = CMsgClientToGCTransferSeasonalMMRRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[169] + mi := &file_dota_gcmessages_client_proto_msgTypes[171] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15690,7 +16227,7 @@ func (x *CMsgClientToGCTransferSeasonalMMRRequest) String() string { func (*CMsgClientToGCTransferSeasonalMMRRequest) ProtoMessage() {} func (x *CMsgClientToGCTransferSeasonalMMRRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[169] + mi := &file_dota_gcmessages_client_proto_msgTypes[171] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15703,7 +16240,7 @@ func (x *CMsgClientToGCTransferSeasonalMMRRequest) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCTransferSeasonalMMRRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCTransferSeasonalMMRRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{169} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{171} } func (x *CMsgClientToGCTransferSeasonalMMRRequest) GetIsParty() bool { @@ -15724,7 +16261,7 @@ type CMsgClientToGCTransferSeasonalMMRResponse struct { func (x *CMsgClientToGCTransferSeasonalMMRResponse) Reset() { *x = CMsgClientToGCTransferSeasonalMMRResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[170] + mi := &file_dota_gcmessages_client_proto_msgTypes[172] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15737,7 +16274,7 @@ func (x *CMsgClientToGCTransferSeasonalMMRResponse) String() string { func (*CMsgClientToGCTransferSeasonalMMRResponse) ProtoMessage() {} func (x *CMsgClientToGCTransferSeasonalMMRResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[170] + mi := &file_dota_gcmessages_client_proto_msgTypes[172] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15750,7 +16287,7 @@ func (x *CMsgClientToGCTransferSeasonalMMRResponse) ProtoReflect() protoreflect. // Deprecated: Use CMsgClientToGCTransferSeasonalMMRResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCTransferSeasonalMMRResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{170} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{172} } func (x *CMsgClientToGCTransferSeasonalMMRResponse) GetSuccess() bool { @@ -15771,7 +16308,7 @@ type CMsgGCToClientPlaytestStatus struct { func (x *CMsgGCToClientPlaytestStatus) Reset() { *x = CMsgGCToClientPlaytestStatus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[171] + mi := &file_dota_gcmessages_client_proto_msgTypes[173] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15784,7 +16321,7 @@ func (x *CMsgGCToClientPlaytestStatus) String() string { func (*CMsgGCToClientPlaytestStatus) ProtoMessage() {} func (x *CMsgGCToClientPlaytestStatus) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[171] + mi := &file_dota_gcmessages_client_proto_msgTypes[173] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15797,7 +16334,7 @@ func (x *CMsgGCToClientPlaytestStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPlaytestStatus.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPlaytestStatus) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{171} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{173} } func (x *CMsgGCToClientPlaytestStatus) GetActive() bool { @@ -15818,7 +16355,7 @@ type CMsgClientToGCJoinPlaytest struct { func (x *CMsgClientToGCJoinPlaytest) Reset() { *x = CMsgClientToGCJoinPlaytest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[172] + mi := &file_dota_gcmessages_client_proto_msgTypes[174] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15831,7 +16368,7 @@ func (x *CMsgClientToGCJoinPlaytest) String() string { func (*CMsgClientToGCJoinPlaytest) ProtoMessage() {} func (x *CMsgClientToGCJoinPlaytest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[172] + mi := &file_dota_gcmessages_client_proto_msgTypes[174] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15844,7 +16381,7 @@ func (x *CMsgClientToGCJoinPlaytest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCJoinPlaytest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCJoinPlaytest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{172} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{174} } func (x *CMsgClientToGCJoinPlaytest) GetClientVersion() uint32 { @@ -15865,7 +16402,7 @@ type CMsgClientToGCJoinPlaytestResponse struct { func (x *CMsgClientToGCJoinPlaytestResponse) Reset() { *x = CMsgClientToGCJoinPlaytestResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[173] + mi := &file_dota_gcmessages_client_proto_msgTypes[175] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15878,7 +16415,7 @@ func (x *CMsgClientToGCJoinPlaytestResponse) String() string { func (*CMsgClientToGCJoinPlaytestResponse) ProtoMessage() {} func (x *CMsgClientToGCJoinPlaytestResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[173] + mi := &file_dota_gcmessages_client_proto_msgTypes[175] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15891,7 +16428,7 @@ func (x *CMsgClientToGCJoinPlaytestResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCJoinPlaytestResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCJoinPlaytestResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{173} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{175} } func (x *CMsgClientToGCJoinPlaytestResponse) GetError() string { @@ -15913,7 +16450,7 @@ type CMsgDOTASetFavoriteTeam struct { func (x *CMsgDOTASetFavoriteTeam) Reset() { *x = CMsgDOTASetFavoriteTeam{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[174] + mi := &file_dota_gcmessages_client_proto_msgTypes[176] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15926,7 +16463,7 @@ func (x *CMsgDOTASetFavoriteTeam) String() string { func (*CMsgDOTASetFavoriteTeam) ProtoMessage() {} func (x *CMsgDOTASetFavoriteTeam) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[174] + mi := &file_dota_gcmessages_client_proto_msgTypes[176] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15939,7 +16476,7 @@ func (x *CMsgDOTASetFavoriteTeam) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTASetFavoriteTeam.ProtoReflect.Descriptor instead. func (*CMsgDOTASetFavoriteTeam) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{174} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{176} } func (x *CMsgDOTASetFavoriteTeam) GetTeamId() uint32 { @@ -15968,7 +16505,7 @@ type CMsgDOTATriviaCurrentQuestions struct { func (x *CMsgDOTATriviaCurrentQuestions) Reset() { *x = CMsgDOTATriviaCurrentQuestions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[175] + mi := &file_dota_gcmessages_client_proto_msgTypes[177] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15981,7 +16518,7 @@ func (x *CMsgDOTATriviaCurrentQuestions) String() string { func (*CMsgDOTATriviaCurrentQuestions) ProtoMessage() {} func (x *CMsgDOTATriviaCurrentQuestions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[175] + mi := &file_dota_gcmessages_client_proto_msgTypes[177] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15994,7 +16531,7 @@ func (x *CMsgDOTATriviaCurrentQuestions) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTATriviaCurrentQuestions.ProtoReflect.Descriptor instead. func (*CMsgDOTATriviaCurrentQuestions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{175} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{177} } func (x *CMsgDOTATriviaCurrentQuestions) GetQuestions() []*CMsgDOTATriviaQuestion { @@ -16023,7 +16560,7 @@ type CMsgDOTASubmitTriviaQuestionAnswer struct { func (x *CMsgDOTASubmitTriviaQuestionAnswer) Reset() { *x = CMsgDOTASubmitTriviaQuestionAnswer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[176] + mi := &file_dota_gcmessages_client_proto_msgTypes[178] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16036,7 +16573,7 @@ func (x *CMsgDOTASubmitTriviaQuestionAnswer) String() string { func (*CMsgDOTASubmitTriviaQuestionAnswer) ProtoMessage() {} func (x *CMsgDOTASubmitTriviaQuestionAnswer) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[176] + mi := &file_dota_gcmessages_client_proto_msgTypes[178] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16049,7 +16586,7 @@ func (x *CMsgDOTASubmitTriviaQuestionAnswer) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTASubmitTriviaQuestionAnswer.ProtoReflect.Descriptor instead. func (*CMsgDOTASubmitTriviaQuestionAnswer) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{176} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{178} } func (x *CMsgDOTASubmitTriviaQuestionAnswer) GetQuestionId() uint32 { @@ -16077,7 +16614,7 @@ type CMsgDOTASubmitTriviaQuestionAnswerResponse struct { func (x *CMsgDOTASubmitTriviaQuestionAnswerResponse) Reset() { *x = CMsgDOTASubmitTriviaQuestionAnswerResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[177] + mi := &file_dota_gcmessages_client_proto_msgTypes[179] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16090,7 +16627,7 @@ func (x *CMsgDOTASubmitTriviaQuestionAnswerResponse) String() string { func (*CMsgDOTASubmitTriviaQuestionAnswerResponse) ProtoMessage() {} func (x *CMsgDOTASubmitTriviaQuestionAnswerResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[177] + mi := &file_dota_gcmessages_client_proto_msgTypes[179] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16103,7 +16640,7 @@ func (x *CMsgDOTASubmitTriviaQuestionAnswerResponse) ProtoReflect() protoreflect // Deprecated: Use CMsgDOTASubmitTriviaQuestionAnswerResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTASubmitTriviaQuestionAnswerResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{177} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{179} } func (x *CMsgDOTASubmitTriviaQuestionAnswerResponse) GetResult() EDOTATriviaAnswerResult { @@ -16122,7 +16659,7 @@ type CMsgDOTAStartTriviaSession struct { func (x *CMsgDOTAStartTriviaSession) Reset() { *x = CMsgDOTAStartTriviaSession{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[178] + mi := &file_dota_gcmessages_client_proto_msgTypes[180] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16135,7 +16672,7 @@ func (x *CMsgDOTAStartTriviaSession) String() string { func (*CMsgDOTAStartTriviaSession) ProtoMessage() {} func (x *CMsgDOTAStartTriviaSession) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[178] + mi := &file_dota_gcmessages_client_proto_msgTypes[180] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16148,7 +16685,7 @@ func (x *CMsgDOTAStartTriviaSession) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAStartTriviaSession.ProtoReflect.Descriptor instead. func (*CMsgDOTAStartTriviaSession) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{178} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{180} } type CMsgDOTAStartTriviaSessionResponse struct { @@ -16163,7 +16700,7 @@ type CMsgDOTAStartTriviaSessionResponse struct { func (x *CMsgDOTAStartTriviaSessionResponse) Reset() { *x = CMsgDOTAStartTriviaSessionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[179] + mi := &file_dota_gcmessages_client_proto_msgTypes[181] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16176,7 +16713,7 @@ func (x *CMsgDOTAStartTriviaSessionResponse) String() string { func (*CMsgDOTAStartTriviaSessionResponse) ProtoMessage() {} func (x *CMsgDOTAStartTriviaSessionResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[179] + mi := &file_dota_gcmessages_client_proto_msgTypes[181] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16189,7 +16726,7 @@ func (x *CMsgDOTAStartTriviaSessionResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTAStartTriviaSessionResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAStartTriviaSessionResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{179} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{181} } func (x *CMsgDOTAStartTriviaSessionResponse) GetTriviaEnabled() bool { @@ -16215,7 +16752,7 @@ type CMsgDOTAAnchorPhoneNumberRequest struct { func (x *CMsgDOTAAnchorPhoneNumberRequest) Reset() { *x = CMsgDOTAAnchorPhoneNumberRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[180] + mi := &file_dota_gcmessages_client_proto_msgTypes[182] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16228,7 +16765,7 @@ func (x *CMsgDOTAAnchorPhoneNumberRequest) String() string { func (*CMsgDOTAAnchorPhoneNumberRequest) ProtoMessage() {} func (x *CMsgDOTAAnchorPhoneNumberRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[180] + mi := &file_dota_gcmessages_client_proto_msgTypes[182] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16241,7 +16778,7 @@ func (x *CMsgDOTAAnchorPhoneNumberRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAAnchorPhoneNumberRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTAAnchorPhoneNumberRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{180} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{182} } type CMsgDOTAAnchorPhoneNumberResponse struct { @@ -16255,7 +16792,7 @@ type CMsgDOTAAnchorPhoneNumberResponse struct { func (x *CMsgDOTAAnchorPhoneNumberResponse) Reset() { *x = CMsgDOTAAnchorPhoneNumberResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[181] + mi := &file_dota_gcmessages_client_proto_msgTypes[183] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16268,7 +16805,7 @@ func (x *CMsgDOTAAnchorPhoneNumberResponse) String() string { func (*CMsgDOTAAnchorPhoneNumberResponse) ProtoMessage() {} func (x *CMsgDOTAAnchorPhoneNumberResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[181] + mi := &file_dota_gcmessages_client_proto_msgTypes[183] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16281,7 +16818,7 @@ func (x *CMsgDOTAAnchorPhoneNumberResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTAAnchorPhoneNumberResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAAnchorPhoneNumberResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{181} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{183} } func (x *CMsgDOTAAnchorPhoneNumberResponse) GetResult() CMsgDOTAAnchorPhoneNumberResponse_Result { @@ -16300,7 +16837,7 @@ type CMsgDOTAUnanchorPhoneNumberRequest struct { func (x *CMsgDOTAUnanchorPhoneNumberRequest) Reset() { *x = CMsgDOTAUnanchorPhoneNumberRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[182] + mi := &file_dota_gcmessages_client_proto_msgTypes[184] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16313,7 +16850,7 @@ func (x *CMsgDOTAUnanchorPhoneNumberRequest) String() string { func (*CMsgDOTAUnanchorPhoneNumberRequest) ProtoMessage() {} func (x *CMsgDOTAUnanchorPhoneNumberRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[182] + mi := &file_dota_gcmessages_client_proto_msgTypes[184] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16326,7 +16863,7 @@ func (x *CMsgDOTAUnanchorPhoneNumberRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTAUnanchorPhoneNumberRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTAUnanchorPhoneNumberRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{182} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{184} } type CMsgDOTAUnanchorPhoneNumberResponse struct { @@ -16340,7 +16877,7 @@ type CMsgDOTAUnanchorPhoneNumberResponse struct { func (x *CMsgDOTAUnanchorPhoneNumberResponse) Reset() { *x = CMsgDOTAUnanchorPhoneNumberResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[183] + mi := &file_dota_gcmessages_client_proto_msgTypes[185] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16353,7 +16890,7 @@ func (x *CMsgDOTAUnanchorPhoneNumberResponse) String() string { func (*CMsgDOTAUnanchorPhoneNumberResponse) ProtoMessage() {} func (x *CMsgDOTAUnanchorPhoneNumberResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[183] + mi := &file_dota_gcmessages_client_proto_msgTypes[185] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16366,7 +16903,7 @@ func (x *CMsgDOTAUnanchorPhoneNumberResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgDOTAUnanchorPhoneNumberResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAUnanchorPhoneNumberResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{183} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{185} } func (x *CMsgDOTAUnanchorPhoneNumberResponse) GetResult() CMsgDOTAUnanchorPhoneNumberResponse_Result { @@ -16384,12 +16921,13 @@ type CMsgGCToClientCommendNotification struct { CommenderAccountId *uint32 `protobuf:"varint,1,opt,name=commender_account_id,json=commenderAccountId" json:"commender_account_id,omitempty"` CommenderName *string `protobuf:"bytes,2,opt,name=commender_name,json=commenderName" json:"commender_name,omitempty"` Flags *uint32 `protobuf:"varint,3,opt,name=flags" json:"flags,omitempty"` + CommenderHeroId *uint32 `protobuf:"varint,4,opt,name=commender_hero_id,json=commenderHeroId" json:"commender_hero_id,omitempty"` } func (x *CMsgGCToClientCommendNotification) Reset() { *x = CMsgGCToClientCommendNotification{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[184] + mi := &file_dota_gcmessages_client_proto_msgTypes[186] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16402,7 +16940,7 @@ func (x *CMsgGCToClientCommendNotification) String() string { func (*CMsgGCToClientCommendNotification) ProtoMessage() {} func (x *CMsgGCToClientCommendNotification) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[184] + mi := &file_dota_gcmessages_client_proto_msgTypes[186] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16415,7 +16953,7 @@ func (x *CMsgGCToClientCommendNotification) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToClientCommendNotification.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCommendNotification) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{184} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{186} } func (x *CMsgGCToClientCommendNotification) GetCommenderAccountId() uint32 { @@ -16439,6 +16977,13 @@ func (x *CMsgGCToClientCommendNotification) GetFlags() uint32 { return 0 } +func (x *CMsgGCToClientCommendNotification) GetCommenderHeroId() uint32 { + if x != nil && x.CommenderHeroId != nil { + return *x.CommenderHeroId + } + return 0 +} + type CMsgDOTAClientToGCQuickStatsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -16453,7 +16998,7 @@ type CMsgDOTAClientToGCQuickStatsRequest struct { func (x *CMsgDOTAClientToGCQuickStatsRequest) Reset() { *x = CMsgDOTAClientToGCQuickStatsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[185] + mi := &file_dota_gcmessages_client_proto_msgTypes[187] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16466,7 +17011,7 @@ func (x *CMsgDOTAClientToGCQuickStatsRequest) String() string { func (*CMsgDOTAClientToGCQuickStatsRequest) ProtoMessage() {} func (x *CMsgDOTAClientToGCQuickStatsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[185] + mi := &file_dota_gcmessages_client_proto_msgTypes[187] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16479,7 +17024,7 @@ func (x *CMsgDOTAClientToGCQuickStatsRequest) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgDOTAClientToGCQuickStatsRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTAClientToGCQuickStatsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{185} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{187} } func (x *CMsgDOTAClientToGCQuickStatsRequest) GetPlayerAccountId() uint32 { @@ -16527,7 +17072,7 @@ type CMsgDOTAClientToGCQuickStatsResponse struct { func (x *CMsgDOTAClientToGCQuickStatsResponse) Reset() { *x = CMsgDOTAClientToGCQuickStatsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[186] + mi := &file_dota_gcmessages_client_proto_msgTypes[188] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16540,7 +17085,7 @@ func (x *CMsgDOTAClientToGCQuickStatsResponse) String() string { func (*CMsgDOTAClientToGCQuickStatsResponse) ProtoMessage() {} func (x *CMsgDOTAClientToGCQuickStatsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[186] + mi := &file_dota_gcmessages_client_proto_msgTypes[188] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16553,7 +17098,7 @@ func (x *CMsgDOTAClientToGCQuickStatsResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgDOTAClientToGCQuickStatsResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAClientToGCQuickStatsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{186} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{188} } func (x *CMsgDOTAClientToGCQuickStatsResponse) GetOriginalRequest() *CMsgDOTAClientToGCQuickStatsRequest { @@ -16616,7 +17161,7 @@ type CMsgDOTASelectionPriorityChoiceRequest struct { func (x *CMsgDOTASelectionPriorityChoiceRequest) Reset() { *x = CMsgDOTASelectionPriorityChoiceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[187] + mi := &file_dota_gcmessages_client_proto_msgTypes[189] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16629,7 +17174,7 @@ func (x *CMsgDOTASelectionPriorityChoiceRequest) String() string { func (*CMsgDOTASelectionPriorityChoiceRequest) ProtoMessage() {} func (x *CMsgDOTASelectionPriorityChoiceRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[187] + mi := &file_dota_gcmessages_client_proto_msgTypes[189] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16642,7 +17187,7 @@ func (x *CMsgDOTASelectionPriorityChoiceRequest) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgDOTASelectionPriorityChoiceRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTASelectionPriorityChoiceRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{187} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{189} } func (x *CMsgDOTASelectionPriorityChoiceRequest) GetChoice() DOTASelectionPriorityChoice { @@ -16663,7 +17208,7 @@ type CMsgDOTASelectionPriorityChoiceResponse struct { func (x *CMsgDOTASelectionPriorityChoiceResponse) Reset() { *x = CMsgDOTASelectionPriorityChoiceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[188] + mi := &file_dota_gcmessages_client_proto_msgTypes[190] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16676,7 +17221,7 @@ func (x *CMsgDOTASelectionPriorityChoiceResponse) String() string { func (*CMsgDOTASelectionPriorityChoiceResponse) ProtoMessage() {} func (x *CMsgDOTASelectionPriorityChoiceResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[188] + mi := &file_dota_gcmessages_client_proto_msgTypes[190] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16689,7 +17234,7 @@ func (x *CMsgDOTASelectionPriorityChoiceResponse) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgDOTASelectionPriorityChoiceResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTASelectionPriorityChoiceResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{188} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{190} } func (x *CMsgDOTASelectionPriorityChoiceResponse) GetResult() CMsgDOTASelectionPriorityChoiceResponse_Result { @@ -16710,7 +17255,7 @@ type CMsgDOTAGameAutographReward struct { func (x *CMsgDOTAGameAutographReward) Reset() { *x = CMsgDOTAGameAutographReward{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[189] + mi := &file_dota_gcmessages_client_proto_msgTypes[191] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16723,7 +17268,7 @@ func (x *CMsgDOTAGameAutographReward) String() string { func (*CMsgDOTAGameAutographReward) ProtoMessage() {} func (x *CMsgDOTAGameAutographReward) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[189] + mi := &file_dota_gcmessages_client_proto_msgTypes[191] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16736,7 +17281,7 @@ func (x *CMsgDOTAGameAutographReward) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAGameAutographReward.ProtoReflect.Descriptor instead. func (*CMsgDOTAGameAutographReward) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{189} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{191} } func (x *CMsgDOTAGameAutographReward) GetBadgeId() string { @@ -16757,7 +17302,7 @@ type CMsgDOTAGameAutographRewardResponse struct { func (x *CMsgDOTAGameAutographRewardResponse) Reset() { *x = CMsgDOTAGameAutographRewardResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[190] + mi := &file_dota_gcmessages_client_proto_msgTypes[192] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16770,7 +17315,7 @@ func (x *CMsgDOTAGameAutographRewardResponse) String() string { func (*CMsgDOTAGameAutographRewardResponse) ProtoMessage() {} func (x *CMsgDOTAGameAutographRewardResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[190] + mi := &file_dota_gcmessages_client_proto_msgTypes[192] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16783,7 +17328,7 @@ func (x *CMsgDOTAGameAutographRewardResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgDOTAGameAutographRewardResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAGameAutographRewardResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{190} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{192} } func (x *CMsgDOTAGameAutographRewardResponse) GetResult() CMsgDOTAGameAutographRewardResponse_Result { @@ -16802,7 +17347,7 @@ type CMsgDOTADestroyLobbyRequest struct { func (x *CMsgDOTADestroyLobbyRequest) Reset() { *x = CMsgDOTADestroyLobbyRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[191] + mi := &file_dota_gcmessages_client_proto_msgTypes[193] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16815,7 +17360,7 @@ func (x *CMsgDOTADestroyLobbyRequest) String() string { func (*CMsgDOTADestroyLobbyRequest) ProtoMessage() {} func (x *CMsgDOTADestroyLobbyRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[191] + mi := &file_dota_gcmessages_client_proto_msgTypes[193] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16828,7 +17373,7 @@ func (x *CMsgDOTADestroyLobbyRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTADestroyLobbyRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTADestroyLobbyRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{191} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{193} } type CMsgDOTADestroyLobbyResponse struct { @@ -16842,7 +17387,7 @@ type CMsgDOTADestroyLobbyResponse struct { func (x *CMsgDOTADestroyLobbyResponse) Reset() { *x = CMsgDOTADestroyLobbyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[192] + mi := &file_dota_gcmessages_client_proto_msgTypes[194] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16855,7 +17400,7 @@ func (x *CMsgDOTADestroyLobbyResponse) String() string { func (*CMsgDOTADestroyLobbyResponse) ProtoMessage() {} func (x *CMsgDOTADestroyLobbyResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[192] + mi := &file_dota_gcmessages_client_proto_msgTypes[194] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16868,7 +17413,7 @@ func (x *CMsgDOTADestroyLobbyResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTADestroyLobbyResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTADestroyLobbyResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{192} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{194} } func (x *CMsgDOTADestroyLobbyResponse) GetResult() CMsgDOTADestroyLobbyResponse_Result { @@ -16887,7 +17432,7 @@ type CMsgDOTAGetRecentPlayTimeFriendsRequest struct { func (x *CMsgDOTAGetRecentPlayTimeFriendsRequest) Reset() { *x = CMsgDOTAGetRecentPlayTimeFriendsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[193] + mi := &file_dota_gcmessages_client_proto_msgTypes[195] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16900,7 +17445,7 @@ func (x *CMsgDOTAGetRecentPlayTimeFriendsRequest) String() string { func (*CMsgDOTAGetRecentPlayTimeFriendsRequest) ProtoMessage() {} func (x *CMsgDOTAGetRecentPlayTimeFriendsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[193] + mi := &file_dota_gcmessages_client_proto_msgTypes[195] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16913,7 +17458,7 @@ func (x *CMsgDOTAGetRecentPlayTimeFriendsRequest) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgDOTAGetRecentPlayTimeFriendsRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetRecentPlayTimeFriendsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{193} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{195} } type CMsgDOTAGetRecentPlayTimeFriendsResponse struct { @@ -16927,7 +17472,7 @@ type CMsgDOTAGetRecentPlayTimeFriendsResponse struct { func (x *CMsgDOTAGetRecentPlayTimeFriendsResponse) Reset() { *x = CMsgDOTAGetRecentPlayTimeFriendsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[194] + mi := &file_dota_gcmessages_client_proto_msgTypes[196] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16940,7 +17485,7 @@ func (x *CMsgDOTAGetRecentPlayTimeFriendsResponse) String() string { func (*CMsgDOTAGetRecentPlayTimeFriendsResponse) ProtoMessage() {} func (x *CMsgDOTAGetRecentPlayTimeFriendsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[194] + mi := &file_dota_gcmessages_client_proto_msgTypes[196] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16953,7 +17498,7 @@ func (x *CMsgDOTAGetRecentPlayTimeFriendsResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgDOTAGetRecentPlayTimeFriendsResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetRecentPlayTimeFriendsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{194} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{196} } func (x *CMsgDOTAGetRecentPlayTimeFriendsResponse) GetAccountIds() []uint32 { @@ -16977,7 +17522,7 @@ type CMsgPurchaseItemWithEventPoints struct { func (x *CMsgPurchaseItemWithEventPoints) Reset() { *x = CMsgPurchaseItemWithEventPoints{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[195] + mi := &file_dota_gcmessages_client_proto_msgTypes[197] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16990,7 +17535,7 @@ func (x *CMsgPurchaseItemWithEventPoints) String() string { func (*CMsgPurchaseItemWithEventPoints) ProtoMessage() {} func (x *CMsgPurchaseItemWithEventPoints) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[195] + mi := &file_dota_gcmessages_client_proto_msgTypes[197] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17003,7 +17548,7 @@ func (x *CMsgPurchaseItemWithEventPoints) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPurchaseItemWithEventPoints.ProtoReflect.Descriptor instead. func (*CMsgPurchaseItemWithEventPoints) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{195} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{197} } func (x *CMsgPurchaseItemWithEventPoints) GetItemDef() uint32 { @@ -17045,7 +17590,7 @@ type CMsgPurchaseItemWithEventPointsResponse struct { func (x *CMsgPurchaseItemWithEventPointsResponse) Reset() { *x = CMsgPurchaseItemWithEventPointsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[196] + mi := &file_dota_gcmessages_client_proto_msgTypes[198] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17058,7 +17603,7 @@ func (x *CMsgPurchaseItemWithEventPointsResponse) String() string { func (*CMsgPurchaseItemWithEventPointsResponse) ProtoMessage() {} func (x *CMsgPurchaseItemWithEventPointsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[196] + mi := &file_dota_gcmessages_client_proto_msgTypes[198] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17071,7 +17616,7 @@ func (x *CMsgPurchaseItemWithEventPointsResponse) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgPurchaseItemWithEventPointsResponse.ProtoReflect.Descriptor instead. func (*CMsgPurchaseItemWithEventPointsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{196} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{198} } func (x *CMsgPurchaseItemWithEventPointsResponse) GetResult() CMsgPurchaseItemWithEventPointsResponse_Result { @@ -17093,7 +17638,7 @@ type CMsgPurchaseHeroRandomRelic struct { func (x *CMsgPurchaseHeroRandomRelic) Reset() { *x = CMsgPurchaseHeroRandomRelic{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[197] + mi := &file_dota_gcmessages_client_proto_msgTypes[199] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17106,7 +17651,7 @@ func (x *CMsgPurchaseHeroRandomRelic) String() string { func (*CMsgPurchaseHeroRandomRelic) ProtoMessage() {} func (x *CMsgPurchaseHeroRandomRelic) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[197] + mi := &file_dota_gcmessages_client_proto_msgTypes[199] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17119,7 +17664,7 @@ func (x *CMsgPurchaseHeroRandomRelic) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPurchaseHeroRandomRelic.ProtoReflect.Descriptor instead. func (*CMsgPurchaseHeroRandomRelic) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{197} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{199} } func (x *CMsgPurchaseHeroRandomRelic) GetHeroId() uint32 { @@ -17148,7 +17693,7 @@ type CMsgPurchaseHeroRandomRelicResponse struct { func (x *CMsgPurchaseHeroRandomRelicResponse) Reset() { *x = CMsgPurchaseHeroRandomRelicResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[198] + mi := &file_dota_gcmessages_client_proto_msgTypes[200] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17161,7 +17706,7 @@ func (x *CMsgPurchaseHeroRandomRelicResponse) String() string { func (*CMsgPurchaseHeroRandomRelicResponse) ProtoMessage() {} func (x *CMsgPurchaseHeroRandomRelicResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[198] + mi := &file_dota_gcmessages_client_proto_msgTypes[200] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17174,7 +17719,7 @@ func (x *CMsgPurchaseHeroRandomRelicResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgPurchaseHeroRandomRelicResponse.ProtoReflect.Descriptor instead. func (*CMsgPurchaseHeroRandomRelicResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{198} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{200} } func (x *CMsgPurchaseHeroRandomRelicResponse) GetResult() EPurchaseHeroRelicResult { @@ -17203,7 +17748,7 @@ type CMsgClientToGCRequestPlusWeeklyChallengeResult struct { func (x *CMsgClientToGCRequestPlusWeeklyChallengeResult) Reset() { *x = CMsgClientToGCRequestPlusWeeklyChallengeResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[199] + mi := &file_dota_gcmessages_client_proto_msgTypes[201] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17216,7 +17761,7 @@ func (x *CMsgClientToGCRequestPlusWeeklyChallengeResult) String() string { func (*CMsgClientToGCRequestPlusWeeklyChallengeResult) ProtoMessage() {} func (x *CMsgClientToGCRequestPlusWeeklyChallengeResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[199] + mi := &file_dota_gcmessages_client_proto_msgTypes[201] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17229,7 +17774,7 @@ func (x *CMsgClientToGCRequestPlusWeeklyChallengeResult) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCRequestPlusWeeklyChallengeResult.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestPlusWeeklyChallengeResult) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{199} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{201} } func (x *CMsgClientToGCRequestPlusWeeklyChallengeResult) GetEventId() EEvent { @@ -17255,7 +17800,7 @@ type CMsgClientToGCRequestPlusWeeklyChallengeResultResponse struct { func (x *CMsgClientToGCRequestPlusWeeklyChallengeResultResponse) Reset() { *x = CMsgClientToGCRequestPlusWeeklyChallengeResultResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[200] + mi := &file_dota_gcmessages_client_proto_msgTypes[202] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17268,7 +17813,7 @@ func (x *CMsgClientToGCRequestPlusWeeklyChallengeResultResponse) String() string func (*CMsgClientToGCRequestPlusWeeklyChallengeResultResponse) ProtoMessage() {} func (x *CMsgClientToGCRequestPlusWeeklyChallengeResultResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[200] + mi := &file_dota_gcmessages_client_proto_msgTypes[202] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17281,7 +17826,7 @@ func (x *CMsgClientToGCRequestPlusWeeklyChallengeResultResponse) ProtoReflect() // Deprecated: Use CMsgClientToGCRequestPlusWeeklyChallengeResultResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestPlusWeeklyChallengeResultResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{200} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{202} } type CMsgProfileRequest struct { @@ -17295,7 +17840,7 @@ type CMsgProfileRequest struct { func (x *CMsgProfileRequest) Reset() { *x = CMsgProfileRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[201] + mi := &file_dota_gcmessages_client_proto_msgTypes[203] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17308,7 +17853,7 @@ func (x *CMsgProfileRequest) String() string { func (*CMsgProfileRequest) ProtoMessage() {} func (x *CMsgProfileRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[201] + mi := &file_dota_gcmessages_client_proto_msgTypes[203] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17321,7 +17866,7 @@ func (x *CMsgProfileRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgProfileRequest.ProtoReflect.Descriptor instead. func (*CMsgProfileRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{201} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{203} } func (x *CMsgProfileRequest) GetAccountId() uint32 { @@ -17348,7 +17893,7 @@ type CMsgProfileResponse struct { func (x *CMsgProfileResponse) Reset() { *x = CMsgProfileResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[202] + mi := &file_dota_gcmessages_client_proto_msgTypes[204] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17361,7 +17906,7 @@ func (x *CMsgProfileResponse) String() string { func (*CMsgProfileResponse) ProtoMessage() {} func (x *CMsgProfileResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[202] + mi := &file_dota_gcmessages_client_proto_msgTypes[204] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17374,7 +17919,7 @@ func (x *CMsgProfileResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgProfileResponse.ProtoReflect.Descriptor instead. func (*CMsgProfileResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{202} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{204} } func (x *CMsgProfileResponse) GetBackgroundItem() *CSOEconItem { @@ -17438,7 +17983,7 @@ type CMsgProfileUpdate struct { func (x *CMsgProfileUpdate) Reset() { *x = CMsgProfileUpdate{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[203] + mi := &file_dota_gcmessages_client_proto_msgTypes[205] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17451,7 +17996,7 @@ func (x *CMsgProfileUpdate) String() string { func (*CMsgProfileUpdate) ProtoMessage() {} func (x *CMsgProfileUpdate) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[203] + mi := &file_dota_gcmessages_client_proto_msgTypes[205] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17464,7 +18009,7 @@ func (x *CMsgProfileUpdate) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgProfileUpdate.ProtoReflect.Descriptor instead. func (*CMsgProfileUpdate) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{203} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{205} } func (x *CMsgProfileUpdate) GetBackgroundItemId() uint64 { @@ -17492,7 +18037,7 @@ type CMsgProfileUpdateResponse struct { func (x *CMsgProfileUpdateResponse) Reset() { *x = CMsgProfileUpdateResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[204] + mi := &file_dota_gcmessages_client_proto_msgTypes[206] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17505,7 +18050,7 @@ func (x *CMsgProfileUpdateResponse) String() string { func (*CMsgProfileUpdateResponse) ProtoMessage() {} func (x *CMsgProfileUpdateResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[204] + mi := &file_dota_gcmessages_client_proto_msgTypes[206] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17518,7 +18063,7 @@ func (x *CMsgProfileUpdateResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgProfileUpdateResponse.ProtoReflect.Descriptor instead. func (*CMsgProfileUpdateResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{204} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{206} } func (x *CMsgProfileUpdateResponse) GetResult() CMsgProfileUpdateResponse_Result { @@ -17542,7 +18087,7 @@ type CMsgTalentWinRates struct { func (x *CMsgTalentWinRates) Reset() { *x = CMsgTalentWinRates{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[205] + mi := &file_dota_gcmessages_client_proto_msgTypes[207] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17555,7 +18100,7 @@ func (x *CMsgTalentWinRates) String() string { func (*CMsgTalentWinRates) ProtoMessage() {} func (x *CMsgTalentWinRates) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[205] + mi := &file_dota_gcmessages_client_proto_msgTypes[207] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17568,7 +18113,7 @@ func (x *CMsgTalentWinRates) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgTalentWinRates.ProtoReflect.Descriptor instead. func (*CMsgTalentWinRates) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{205} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{207} } func (x *CMsgTalentWinRates) GetLastRun() uint32 { @@ -17618,7 +18163,7 @@ type CMsgGlobalHeroAverages struct { func (x *CMsgGlobalHeroAverages) Reset() { *x = CMsgGlobalHeroAverages{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[206] + mi := &file_dota_gcmessages_client_proto_msgTypes[208] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17631,7 +18176,7 @@ func (x *CMsgGlobalHeroAverages) String() string { func (*CMsgGlobalHeroAverages) ProtoMessage() {} func (x *CMsgGlobalHeroAverages) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[206] + mi := &file_dota_gcmessages_client_proto_msgTypes[208] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17644,7 +18189,7 @@ func (x *CMsgGlobalHeroAverages) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGlobalHeroAverages.ProtoReflect.Descriptor instead. func (*CMsgGlobalHeroAverages) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{206} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{208} } func (x *CMsgGlobalHeroAverages) GetLastRun() uint32 { @@ -17721,7 +18266,7 @@ type CMsgHeroGlobalDataRequest struct { func (x *CMsgHeroGlobalDataRequest) Reset() { *x = CMsgHeroGlobalDataRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[207] + mi := &file_dota_gcmessages_client_proto_msgTypes[209] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17734,7 +18279,7 @@ func (x *CMsgHeroGlobalDataRequest) String() string { func (*CMsgHeroGlobalDataRequest) ProtoMessage() {} func (x *CMsgHeroGlobalDataRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[207] + mi := &file_dota_gcmessages_client_proto_msgTypes[209] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17747,7 +18292,7 @@ func (x *CMsgHeroGlobalDataRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgHeroGlobalDataRequest.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{207} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{209} } func (x *CMsgHeroGlobalDataRequest) GetHeroId() uint32 { @@ -17769,7 +18314,7 @@ type CMsgHeroGlobalDataResponse struct { func (x *CMsgHeroGlobalDataResponse) Reset() { *x = CMsgHeroGlobalDataResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[208] + mi := &file_dota_gcmessages_client_proto_msgTypes[210] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17782,7 +18327,7 @@ func (x *CMsgHeroGlobalDataResponse) String() string { func (*CMsgHeroGlobalDataResponse) ProtoMessage() {} func (x *CMsgHeroGlobalDataResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[208] + mi := &file_dota_gcmessages_client_proto_msgTypes[210] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17795,7 +18340,7 @@ func (x *CMsgHeroGlobalDataResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgHeroGlobalDataResponse.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{208} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{210} } func (x *CMsgHeroGlobalDataResponse) GetHeroId() uint32 { @@ -17823,7 +18368,7 @@ type CMsgHeroGlobalDataAllHeroes struct { func (x *CMsgHeroGlobalDataAllHeroes) Reset() { *x = CMsgHeroGlobalDataAllHeroes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[209] + mi := &file_dota_gcmessages_client_proto_msgTypes[211] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17836,7 +18381,7 @@ func (x *CMsgHeroGlobalDataAllHeroes) String() string { func (*CMsgHeroGlobalDataAllHeroes) ProtoMessage() {} func (x *CMsgHeroGlobalDataAllHeroes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[209] + mi := &file_dota_gcmessages_client_proto_msgTypes[211] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17849,7 +18394,7 @@ func (x *CMsgHeroGlobalDataAllHeroes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgHeroGlobalDataAllHeroes.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataAllHeroes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{209} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{211} } func (x *CMsgHeroGlobalDataAllHeroes) GetHeroes() []*CMsgHeroGlobalDataResponse { @@ -17870,7 +18415,7 @@ type CMsgHeroGlobalDataHeroesAlliesAndEnemies struct { func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies) Reset() { *x = CMsgHeroGlobalDataHeroesAlliesAndEnemies{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[210] + mi := &file_dota_gcmessages_client_proto_msgTypes[212] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17883,7 +18428,7 @@ func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies) String() string { func (*CMsgHeroGlobalDataHeroesAlliesAndEnemies) ProtoMessage() {} func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[210] + mi := &file_dota_gcmessages_client_proto_msgTypes[212] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17896,7 +18441,7 @@ func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies) ProtoReflect() protoreflect.M // Deprecated: Use CMsgHeroGlobalDataHeroesAlliesAndEnemies.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataHeroesAlliesAndEnemies) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{210} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{212} } func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies) GetRankedHeroData() []*CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData { @@ -17917,7 +18462,7 @@ type CMsgPrivateMetadataKeyRequest struct { func (x *CMsgPrivateMetadataKeyRequest) Reset() { *x = CMsgPrivateMetadataKeyRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[211] + mi := &file_dota_gcmessages_client_proto_msgTypes[213] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17930,7 +18475,7 @@ func (x *CMsgPrivateMetadataKeyRequest) String() string { func (*CMsgPrivateMetadataKeyRequest) ProtoMessage() {} func (x *CMsgPrivateMetadataKeyRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[211] + mi := &file_dota_gcmessages_client_proto_msgTypes[213] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17943,7 +18488,7 @@ func (x *CMsgPrivateMetadataKeyRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPrivateMetadataKeyRequest.ProtoReflect.Descriptor instead. func (*CMsgPrivateMetadataKeyRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{211} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{213} } func (x *CMsgPrivateMetadataKeyRequest) GetMatchId() uint64 { @@ -17964,7 +18509,7 @@ type CMsgPrivateMetadataKeyResponse struct { func (x *CMsgPrivateMetadataKeyResponse) Reset() { *x = CMsgPrivateMetadataKeyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[212] + mi := &file_dota_gcmessages_client_proto_msgTypes[214] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17977,7 +18522,7 @@ func (x *CMsgPrivateMetadataKeyResponse) String() string { func (*CMsgPrivateMetadataKeyResponse) ProtoMessage() {} func (x *CMsgPrivateMetadataKeyResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[212] + mi := &file_dota_gcmessages_client_proto_msgTypes[214] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17990,7 +18535,7 @@ func (x *CMsgPrivateMetadataKeyResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPrivateMetadataKeyResponse.ProtoReflect.Descriptor instead. func (*CMsgPrivateMetadataKeyResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{212} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{214} } func (x *CMsgPrivateMetadataKeyResponse) GetPrivateKey() uint32 { @@ -18011,7 +18556,7 @@ type CMsgActivatePlusFreeTrialResponse struct { func (x *CMsgActivatePlusFreeTrialResponse) Reset() { *x = CMsgActivatePlusFreeTrialResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[213] + mi := &file_dota_gcmessages_client_proto_msgTypes[215] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18024,7 +18569,7 @@ func (x *CMsgActivatePlusFreeTrialResponse) String() string { func (*CMsgActivatePlusFreeTrialResponse) ProtoMessage() {} func (x *CMsgActivatePlusFreeTrialResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[213] + mi := &file_dota_gcmessages_client_proto_msgTypes[215] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18037,7 +18582,7 @@ func (x *CMsgActivatePlusFreeTrialResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgActivatePlusFreeTrialResponse.ProtoReflect.Descriptor instead. func (*CMsgActivatePlusFreeTrialResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{213} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{215} } func (x *CMsgActivatePlusFreeTrialResponse) GetResult() CMsgActivatePlusFreeTrialResponse_Result { @@ -18061,7 +18606,7 @@ type CMsgGCToClientCavernCrawlMapPathCompleted struct { func (x *CMsgGCToClientCavernCrawlMapPathCompleted) Reset() { *x = CMsgGCToClientCavernCrawlMapPathCompleted{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[214] + mi := &file_dota_gcmessages_client_proto_msgTypes[216] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18074,7 +18619,7 @@ func (x *CMsgGCToClientCavernCrawlMapPathCompleted) String() string { func (*CMsgGCToClientCavernCrawlMapPathCompleted) ProtoMessage() {} func (x *CMsgGCToClientCavernCrawlMapPathCompleted) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[214] + mi := &file_dota_gcmessages_client_proto_msgTypes[216] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18087,7 +18632,7 @@ func (x *CMsgGCToClientCavernCrawlMapPathCompleted) ProtoReflect() protoreflect. // Deprecated: Use CMsgGCToClientCavernCrawlMapPathCompleted.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCavernCrawlMapPathCompleted) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{214} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{216} } func (x *CMsgGCToClientCavernCrawlMapPathCompleted) GetEventId() uint32 { @@ -18129,7 +18674,7 @@ type CMsgGCToClientCavernCrawlMapUpdated struct { func (x *CMsgGCToClientCavernCrawlMapUpdated) Reset() { *x = CMsgGCToClientCavernCrawlMapUpdated{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[215] + mi := &file_dota_gcmessages_client_proto_msgTypes[217] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18142,7 +18687,7 @@ func (x *CMsgGCToClientCavernCrawlMapUpdated) String() string { func (*CMsgGCToClientCavernCrawlMapUpdated) ProtoMessage() {} func (x *CMsgGCToClientCavernCrawlMapUpdated) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[215] + mi := &file_dota_gcmessages_client_proto_msgTypes[217] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18155,7 +18700,7 @@ func (x *CMsgGCToClientCavernCrawlMapUpdated) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgGCToClientCavernCrawlMapUpdated.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCavernCrawlMapUpdated) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{215} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{217} } func (x *CMsgGCToClientCavernCrawlMapUpdated) GetEventId() uint32 { @@ -18178,7 +18723,7 @@ type CMsgClientToGCCavernCrawlClaimRoom struct { func (x *CMsgClientToGCCavernCrawlClaimRoom) Reset() { *x = CMsgClientToGCCavernCrawlClaimRoom{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[216] + mi := &file_dota_gcmessages_client_proto_msgTypes[218] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18191,7 +18736,7 @@ func (x *CMsgClientToGCCavernCrawlClaimRoom) String() string { func (*CMsgClientToGCCavernCrawlClaimRoom) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlClaimRoom) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[216] + mi := &file_dota_gcmessages_client_proto_msgTypes[218] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18204,7 +18749,7 @@ func (x *CMsgClientToGCCavernCrawlClaimRoom) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCCavernCrawlClaimRoom.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlClaimRoom) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{216} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{218} } func (x *CMsgClientToGCCavernCrawlClaimRoom) GetEventId() uint32 { @@ -18239,7 +18784,7 @@ type CMsgClientToGCCavernCrawlClaimRoomResponse struct { func (x *CMsgClientToGCCavernCrawlClaimRoomResponse) Reset() { *x = CMsgClientToGCCavernCrawlClaimRoomResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[217] + mi := &file_dota_gcmessages_client_proto_msgTypes[219] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18252,7 +18797,7 @@ func (x *CMsgClientToGCCavernCrawlClaimRoomResponse) String() string { func (*CMsgClientToGCCavernCrawlClaimRoomResponse) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlClaimRoomResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[217] + mi := &file_dota_gcmessages_client_proto_msgTypes[219] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18265,7 +18810,7 @@ func (x *CMsgClientToGCCavernCrawlClaimRoomResponse) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCCavernCrawlClaimRoomResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlClaimRoomResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{217} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{219} } func (x *CMsgClientToGCCavernCrawlClaimRoomResponse) GetResult() CMsgClientToGCCavernCrawlClaimRoomResponse_Result { @@ -18289,7 +18834,7 @@ type CMsgClientToGCCavernCrawlUseItemOnRoom struct { func (x *CMsgClientToGCCavernCrawlUseItemOnRoom) Reset() { *x = CMsgClientToGCCavernCrawlUseItemOnRoom{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[218] + mi := &file_dota_gcmessages_client_proto_msgTypes[220] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18302,7 +18847,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnRoom) String() string { func (*CMsgClientToGCCavernCrawlUseItemOnRoom) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlUseItemOnRoom) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[218] + mi := &file_dota_gcmessages_client_proto_msgTypes[220] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18315,7 +18860,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnRoom) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCCavernCrawlUseItemOnRoom.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlUseItemOnRoom) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{218} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{220} } func (x *CMsgClientToGCCavernCrawlUseItemOnRoom) GetEventId() uint32 { @@ -18357,7 +18902,7 @@ type CMsgClientToGCCavernCrawlUseItemOnRoomResponse struct { func (x *CMsgClientToGCCavernCrawlUseItemOnRoomResponse) Reset() { *x = CMsgClientToGCCavernCrawlUseItemOnRoomResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[219] + mi := &file_dota_gcmessages_client_proto_msgTypes[221] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18370,7 +18915,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnRoomResponse) String() string { func (*CMsgClientToGCCavernCrawlUseItemOnRoomResponse) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlUseItemOnRoomResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[219] + mi := &file_dota_gcmessages_client_proto_msgTypes[221] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18383,7 +18928,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnRoomResponse) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCCavernCrawlUseItemOnRoomResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlUseItemOnRoomResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{219} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{221} } func (x *CMsgClientToGCCavernCrawlUseItemOnRoomResponse) GetResult() CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result { @@ -18407,7 +18952,7 @@ type CMsgClientToGCCavernCrawlUseItemOnPath struct { func (x *CMsgClientToGCCavernCrawlUseItemOnPath) Reset() { *x = CMsgClientToGCCavernCrawlUseItemOnPath{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[220] + mi := &file_dota_gcmessages_client_proto_msgTypes[222] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18420,7 +18965,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnPath) String() string { func (*CMsgClientToGCCavernCrawlUseItemOnPath) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlUseItemOnPath) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[220] + mi := &file_dota_gcmessages_client_proto_msgTypes[222] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18433,7 +18978,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnPath) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCCavernCrawlUseItemOnPath.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlUseItemOnPath) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{220} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{222} } func (x *CMsgClientToGCCavernCrawlUseItemOnPath) GetEventId() uint32 { @@ -18475,7 +19020,7 @@ type CMsgClientToGCCavernCrawlUseItemOnPathResponse struct { func (x *CMsgClientToGCCavernCrawlUseItemOnPathResponse) Reset() { *x = CMsgClientToGCCavernCrawlUseItemOnPathResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[221] + mi := &file_dota_gcmessages_client_proto_msgTypes[223] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18488,7 +19033,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnPathResponse) String() string { func (*CMsgClientToGCCavernCrawlUseItemOnPathResponse) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlUseItemOnPathResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[221] + mi := &file_dota_gcmessages_client_proto_msgTypes[223] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18501,7 +19046,7 @@ func (x *CMsgClientToGCCavernCrawlUseItemOnPathResponse) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCCavernCrawlUseItemOnPathResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlUseItemOnPathResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{221} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{223} } func (x *CMsgClientToGCCavernCrawlUseItemOnPathResponse) GetResult() CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result { @@ -18522,7 +19067,7 @@ type CMsgClientToGCCavernCrawlRequestMapState struct { func (x *CMsgClientToGCCavernCrawlRequestMapState) Reset() { *x = CMsgClientToGCCavernCrawlRequestMapState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[222] + mi := &file_dota_gcmessages_client_proto_msgTypes[224] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18535,7 +19080,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapState) String() string { func (*CMsgClientToGCCavernCrawlRequestMapState) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlRequestMapState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[222] + mi := &file_dota_gcmessages_client_proto_msgTypes[224] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18548,7 +19093,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapState) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCCavernCrawlRequestMapState.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlRequestMapState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{222} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{224} } func (x *CMsgClientToGCCavernCrawlRequestMapState) GetEventId() uint32 { @@ -18572,7 +19117,7 @@ type CMsgClientToGCCavernCrawlRequestMapStateResponse struct { func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse) Reset() { *x = CMsgClientToGCCavernCrawlRequestMapStateResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[223] + mi := &file_dota_gcmessages_client_proto_msgTypes[225] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18585,7 +19130,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse) String() string { func (*CMsgClientToGCCavernCrawlRequestMapStateResponse) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[223] + mi := &file_dota_gcmessages_client_proto_msgTypes[225] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18598,7 +19143,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse) ProtoReflect() protor // Deprecated: Use CMsgClientToGCCavernCrawlRequestMapStateResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlRequestMapStateResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{223} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225} } func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse) GetResult() CMsgClientToGCCavernCrawlRequestMapStateResponse_Result { @@ -18640,7 +19185,7 @@ type CMsgClientToGCCavernCrawlGetClaimedRoomCount struct { func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCount) Reset() { *x = CMsgClientToGCCavernCrawlGetClaimedRoomCount{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[224] + mi := &file_dota_gcmessages_client_proto_msgTypes[226] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18653,7 +19198,7 @@ func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCount) String() string { func (*CMsgClientToGCCavernCrawlGetClaimedRoomCount) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCount) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[224] + mi := &file_dota_gcmessages_client_proto_msgTypes[226] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18666,7 +19211,7 @@ func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCount) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCCavernCrawlGetClaimedRoomCount.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlGetClaimedRoomCount) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{224} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{226} } func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCount) GetEventId() uint32 { @@ -18689,7 +19234,7 @@ type CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse struct { func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse) Reset() { *x = CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[225] + mi := &file_dota_gcmessages_client_proto_msgTypes[227] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18702,7 +19247,7 @@ func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse) String() string { func (*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[225] + mi := &file_dota_gcmessages_client_proto_msgTypes[227] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18715,7 +19260,7 @@ func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse) ProtoReflect() pr // Deprecated: Use CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{227} } func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse) GetResult() CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result { @@ -18750,7 +19295,7 @@ type CMsgDOTAMutationList struct { func (x *CMsgDOTAMutationList) Reset() { *x = CMsgDOTAMutationList{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[226] + mi := &file_dota_gcmessages_client_proto_msgTypes[228] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18763,7 +19308,7 @@ func (x *CMsgDOTAMutationList) String() string { func (*CMsgDOTAMutationList) ProtoMessage() {} func (x *CMsgDOTAMutationList) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[226] + mi := &file_dota_gcmessages_client_proto_msgTypes[228] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18776,7 +19321,7 @@ func (x *CMsgDOTAMutationList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMutationList.ProtoReflect.Descriptor instead. func (*CMsgDOTAMutationList) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{226} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{228} } func (x *CMsgDOTAMutationList) GetMutations() []*CMsgDOTAMutationList_Mutation { @@ -18798,7 +19343,7 @@ type CMsgEventTipsSummaryRequest struct { func (x *CMsgEventTipsSummaryRequest) Reset() { *x = CMsgEventTipsSummaryRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[227] + mi := &file_dota_gcmessages_client_proto_msgTypes[229] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18811,7 +19356,7 @@ func (x *CMsgEventTipsSummaryRequest) String() string { func (*CMsgEventTipsSummaryRequest) ProtoMessage() {} func (x *CMsgEventTipsSummaryRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[227] + mi := &file_dota_gcmessages_client_proto_msgTypes[229] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18824,7 +19369,7 @@ func (x *CMsgEventTipsSummaryRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgEventTipsSummaryRequest.ProtoReflect.Descriptor instead. func (*CMsgEventTipsSummaryRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{227} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{229} } func (x *CMsgEventTipsSummaryRequest) GetEventId() EEvent { @@ -18853,7 +19398,7 @@ type CMsgEventTipsSummaryResponse struct { func (x *CMsgEventTipsSummaryResponse) Reset() { *x = CMsgEventTipsSummaryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[228] + mi := &file_dota_gcmessages_client_proto_msgTypes[230] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18866,7 +19411,7 @@ func (x *CMsgEventTipsSummaryResponse) String() string { func (*CMsgEventTipsSummaryResponse) ProtoMessage() {} func (x *CMsgEventTipsSummaryResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[228] + mi := &file_dota_gcmessages_client_proto_msgTypes[230] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18879,7 +19424,7 @@ func (x *CMsgEventTipsSummaryResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgEventTipsSummaryResponse.ProtoReflect.Descriptor instead. func (*CMsgEventTipsSummaryResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{228} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{230} } func (x *CMsgEventTipsSummaryResponse) GetResult() bool { @@ -18908,7 +19453,7 @@ type CMsgSocialFeedRequest struct { func (x *CMsgSocialFeedRequest) Reset() { *x = CMsgSocialFeedRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[229] + mi := &file_dota_gcmessages_client_proto_msgTypes[231] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18921,7 +19466,7 @@ func (x *CMsgSocialFeedRequest) String() string { func (*CMsgSocialFeedRequest) ProtoMessage() {} func (x *CMsgSocialFeedRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[229] + mi := &file_dota_gcmessages_client_proto_msgTypes[231] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18934,7 +19479,7 @@ func (x *CMsgSocialFeedRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSocialFeedRequest.ProtoReflect.Descriptor instead. func (*CMsgSocialFeedRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{229} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{231} } func (x *CMsgSocialFeedRequest) GetAccountId() uint32 { @@ -18963,7 +19508,7 @@ type CMsgSocialFeedResponse struct { func (x *CMsgSocialFeedResponse) Reset() { *x = CMsgSocialFeedResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[230] + mi := &file_dota_gcmessages_client_proto_msgTypes[232] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18976,7 +19521,7 @@ func (x *CMsgSocialFeedResponse) String() string { func (*CMsgSocialFeedResponse) ProtoMessage() {} func (x *CMsgSocialFeedResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[230] + mi := &file_dota_gcmessages_client_proto_msgTypes[232] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18989,7 +19534,7 @@ func (x *CMsgSocialFeedResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSocialFeedResponse.ProtoReflect.Descriptor instead. func (*CMsgSocialFeedResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{230} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{232} } func (x *CMsgSocialFeedResponse) GetResult() CMsgSocialFeedResponse_Result { @@ -19017,7 +19562,7 @@ type CMsgSocialFeedCommentsRequest struct { func (x *CMsgSocialFeedCommentsRequest) Reset() { *x = CMsgSocialFeedCommentsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[231] + mi := &file_dota_gcmessages_client_proto_msgTypes[233] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19030,7 +19575,7 @@ func (x *CMsgSocialFeedCommentsRequest) String() string { func (*CMsgSocialFeedCommentsRequest) ProtoMessage() {} func (x *CMsgSocialFeedCommentsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[231] + mi := &file_dota_gcmessages_client_proto_msgTypes[233] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19043,7 +19588,7 @@ func (x *CMsgSocialFeedCommentsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSocialFeedCommentsRequest.ProtoReflect.Descriptor instead. func (*CMsgSocialFeedCommentsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{231} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{233} } func (x *CMsgSocialFeedCommentsRequest) GetFeedEventId() uint64 { @@ -19065,7 +19610,7 @@ type CMsgSocialFeedCommentsResponse struct { func (x *CMsgSocialFeedCommentsResponse) Reset() { *x = CMsgSocialFeedCommentsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[232] + mi := &file_dota_gcmessages_client_proto_msgTypes[234] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19078,7 +19623,7 @@ func (x *CMsgSocialFeedCommentsResponse) String() string { func (*CMsgSocialFeedCommentsResponse) ProtoMessage() {} func (x *CMsgSocialFeedCommentsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[232] + mi := &file_dota_gcmessages_client_proto_msgTypes[234] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19091,7 +19636,7 @@ func (x *CMsgSocialFeedCommentsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSocialFeedCommentsResponse.ProtoReflect.Descriptor instead. func (*CMsgSocialFeedCommentsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{232} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{234} } func (x *CMsgSocialFeedCommentsResponse) GetResult() CMsgSocialFeedCommentsResponse_Result { @@ -19121,7 +19666,7 @@ type CMsgClientToGCPlayerCardSpecificPurchaseRequest struct { func (x *CMsgClientToGCPlayerCardSpecificPurchaseRequest) Reset() { *x = CMsgClientToGCPlayerCardSpecificPurchaseRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[233] + mi := &file_dota_gcmessages_client_proto_msgTypes[235] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19134,7 +19679,7 @@ func (x *CMsgClientToGCPlayerCardSpecificPurchaseRequest) String() string { func (*CMsgClientToGCPlayerCardSpecificPurchaseRequest) ProtoMessage() {} func (x *CMsgClientToGCPlayerCardSpecificPurchaseRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[233] + mi := &file_dota_gcmessages_client_proto_msgTypes[235] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19147,7 +19692,7 @@ func (x *CMsgClientToGCPlayerCardSpecificPurchaseRequest) ProtoReflect() protore // Deprecated: Use CMsgClientToGCPlayerCardSpecificPurchaseRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlayerCardSpecificPurchaseRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{233} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{235} } func (x *CMsgClientToGCPlayerCardSpecificPurchaseRequest) GetPlayerAccountId() uint32 { @@ -19183,7 +19728,7 @@ type CMsgClientToGCPlayerCardSpecificPurchaseResponse struct { func (x *CMsgClientToGCPlayerCardSpecificPurchaseResponse) Reset() { *x = CMsgClientToGCPlayerCardSpecificPurchaseResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[234] + mi := &file_dota_gcmessages_client_proto_msgTypes[236] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19196,7 +19741,7 @@ func (x *CMsgClientToGCPlayerCardSpecificPurchaseResponse) String() string { func (*CMsgClientToGCPlayerCardSpecificPurchaseResponse) ProtoMessage() {} func (x *CMsgClientToGCPlayerCardSpecificPurchaseResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[234] + mi := &file_dota_gcmessages_client_proto_msgTypes[236] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19209,7 +19754,7 @@ func (x *CMsgClientToGCPlayerCardSpecificPurchaseResponse) ProtoReflect() protor // Deprecated: Use CMsgClientToGCPlayerCardSpecificPurchaseResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlayerCardSpecificPurchaseResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{234} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{236} } func (x *CMsgClientToGCPlayerCardSpecificPurchaseResponse) GetResult() CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result { @@ -19237,7 +19782,7 @@ type CMsgClientToGCRequestContestVotes struct { func (x *CMsgClientToGCRequestContestVotes) Reset() { *x = CMsgClientToGCRequestContestVotes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[235] + mi := &file_dota_gcmessages_client_proto_msgTypes[237] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19250,7 +19795,7 @@ func (x *CMsgClientToGCRequestContestVotes) String() string { func (*CMsgClientToGCRequestContestVotes) ProtoMessage() {} func (x *CMsgClientToGCRequestContestVotes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[235] + mi := &file_dota_gcmessages_client_proto_msgTypes[237] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19263,7 +19808,7 @@ func (x *CMsgClientToGCRequestContestVotes) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCRequestContestVotes.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestContestVotes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{235} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{237} } func (x *CMsgClientToGCRequestContestVotes) GetContestId() uint32 { @@ -19285,7 +19830,7 @@ type CMsgClientToGCRequestContestVotesResponse struct { func (x *CMsgClientToGCRequestContestVotesResponse) Reset() { *x = CMsgClientToGCRequestContestVotesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[236] + mi := &file_dota_gcmessages_client_proto_msgTypes[238] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19298,7 +19843,7 @@ func (x *CMsgClientToGCRequestContestVotesResponse) String() string { func (*CMsgClientToGCRequestContestVotesResponse) ProtoMessage() {} func (x *CMsgClientToGCRequestContestVotesResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[236] + mi := &file_dota_gcmessages_client_proto_msgTypes[238] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19311,7 +19856,7 @@ func (x *CMsgClientToGCRequestContestVotesResponse) ProtoReflect() protoreflect. // Deprecated: Use CMsgClientToGCRequestContestVotesResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestContestVotesResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{236} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{238} } func (x *CMsgClientToGCRequestContestVotesResponse) GetResult() CMsgClientToGCRequestContestVotesResponse_EResponse { @@ -19341,7 +19886,7 @@ type CMsgClientToGCRecordContestVote struct { func (x *CMsgClientToGCRecordContestVote) Reset() { *x = CMsgClientToGCRecordContestVote{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[237] + mi := &file_dota_gcmessages_client_proto_msgTypes[239] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19354,7 +19899,7 @@ func (x *CMsgClientToGCRecordContestVote) String() string { func (*CMsgClientToGCRecordContestVote) ProtoMessage() {} func (x *CMsgClientToGCRecordContestVote) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[237] + mi := &file_dota_gcmessages_client_proto_msgTypes[239] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19367,7 +19912,7 @@ func (x *CMsgClientToGCRecordContestVote) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCRecordContestVote.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRecordContestVote) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{237} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{239} } func (x *CMsgClientToGCRecordContestVote) GetContestId() uint32 { @@ -19402,7 +19947,7 @@ type CMsgGCToClientRecordContestVoteResponse struct { func (x *CMsgGCToClientRecordContestVoteResponse) Reset() { *x = CMsgGCToClientRecordContestVoteResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[238] + mi := &file_dota_gcmessages_client_proto_msgTypes[240] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19415,7 +19960,7 @@ func (x *CMsgGCToClientRecordContestVoteResponse) String() string { func (*CMsgGCToClientRecordContestVoteResponse) ProtoMessage() {} func (x *CMsgGCToClientRecordContestVoteResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[238] + mi := &file_dota_gcmessages_client_proto_msgTypes[240] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19428,7 +19973,7 @@ func (x *CMsgGCToClientRecordContestVoteResponse) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgGCToClientRecordContestVoteResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientRecordContestVoteResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{238} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{240} } func (x *CMsgGCToClientRecordContestVoteResponse) GetEresult() CMsgGCToClientRecordContestVoteResponse_EResult { @@ -19451,7 +19996,7 @@ type CMsgDevGrantEventPoints struct { func (x *CMsgDevGrantEventPoints) Reset() { *x = CMsgDevGrantEventPoints{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[239] + mi := &file_dota_gcmessages_client_proto_msgTypes[241] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19464,7 +20009,7 @@ func (x *CMsgDevGrantEventPoints) String() string { func (*CMsgDevGrantEventPoints) ProtoMessage() {} func (x *CMsgDevGrantEventPoints) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[239] + mi := &file_dota_gcmessages_client_proto_msgTypes[241] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19477,7 +20022,7 @@ func (x *CMsgDevGrantEventPoints) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDevGrantEventPoints.ProtoReflect.Descriptor instead. func (*CMsgDevGrantEventPoints) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{239} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{241} } func (x *CMsgDevGrantEventPoints) GetEventId() EEvent { @@ -19512,7 +20057,7 @@ type CMsgDevGrantEventPointsResponse struct { func (x *CMsgDevGrantEventPointsResponse) Reset() { *x = CMsgDevGrantEventPointsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[240] + mi := &file_dota_gcmessages_client_proto_msgTypes[242] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19525,7 +20070,7 @@ func (x *CMsgDevGrantEventPointsResponse) String() string { func (*CMsgDevGrantEventPointsResponse) ProtoMessage() {} func (x *CMsgDevGrantEventPointsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[240] + mi := &file_dota_gcmessages_client_proto_msgTypes[242] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19538,7 +20083,7 @@ func (x *CMsgDevGrantEventPointsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDevGrantEventPointsResponse.ProtoReflect.Descriptor instead. func (*CMsgDevGrantEventPointsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{240} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{242} } func (x *CMsgDevGrantEventPointsResponse) GetResult() EDevEventRequestResult { @@ -19561,7 +20106,7 @@ type CMsgDevGrantEventAction struct { func (x *CMsgDevGrantEventAction) Reset() { *x = CMsgDevGrantEventAction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[241] + mi := &file_dota_gcmessages_client_proto_msgTypes[243] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19574,7 +20119,7 @@ func (x *CMsgDevGrantEventAction) String() string { func (*CMsgDevGrantEventAction) ProtoMessage() {} func (x *CMsgDevGrantEventAction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[241] + mi := &file_dota_gcmessages_client_proto_msgTypes[243] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19587,7 +20132,7 @@ func (x *CMsgDevGrantEventAction) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDevGrantEventAction.ProtoReflect.Descriptor instead. func (*CMsgDevGrantEventAction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{241} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{243} } func (x *CMsgDevGrantEventAction) GetEventId() EEvent { @@ -19622,7 +20167,7 @@ type CMsgDevGrantEventActionResponse struct { func (x *CMsgDevGrantEventActionResponse) Reset() { *x = CMsgDevGrantEventActionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[242] + mi := &file_dota_gcmessages_client_proto_msgTypes[244] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19635,7 +20180,7 @@ func (x *CMsgDevGrantEventActionResponse) String() string { func (*CMsgDevGrantEventActionResponse) ProtoMessage() {} func (x *CMsgDevGrantEventActionResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[242] + mi := &file_dota_gcmessages_client_proto_msgTypes[244] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19648,7 +20193,7 @@ func (x *CMsgDevGrantEventActionResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDevGrantEventActionResponse.ProtoReflect.Descriptor instead. func (*CMsgDevGrantEventActionResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{242} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{244} } func (x *CMsgDevGrantEventActionResponse) GetResult() EDevEventRequestResult { @@ -19672,7 +20217,7 @@ type CMsgDevDeleteEventActions struct { func (x *CMsgDevDeleteEventActions) Reset() { *x = CMsgDevDeleteEventActions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[243] + mi := &file_dota_gcmessages_client_proto_msgTypes[245] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19685,7 +20230,7 @@ func (x *CMsgDevDeleteEventActions) String() string { func (*CMsgDevDeleteEventActions) ProtoMessage() {} func (x *CMsgDevDeleteEventActions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[243] + mi := &file_dota_gcmessages_client_proto_msgTypes[245] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19698,7 +20243,7 @@ func (x *CMsgDevDeleteEventActions) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDevDeleteEventActions.ProtoReflect.Descriptor instead. func (*CMsgDevDeleteEventActions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{243} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{245} } func (x *CMsgDevDeleteEventActions) GetEventId() EEvent { @@ -19740,7 +20285,7 @@ type CMsgDevDeleteEventActionsResponse struct { func (x *CMsgDevDeleteEventActionsResponse) Reset() { *x = CMsgDevDeleteEventActionsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[244] + mi := &file_dota_gcmessages_client_proto_msgTypes[246] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19753,7 +20298,7 @@ func (x *CMsgDevDeleteEventActionsResponse) String() string { func (*CMsgDevDeleteEventActionsResponse) ProtoMessage() {} func (x *CMsgDevDeleteEventActionsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[244] + mi := &file_dota_gcmessages_client_proto_msgTypes[246] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19766,7 +20311,7 @@ func (x *CMsgDevDeleteEventActionsResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDevDeleteEventActionsResponse.ProtoReflect.Descriptor instead. func (*CMsgDevDeleteEventActionsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{244} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{246} } func (x *CMsgDevDeleteEventActionsResponse) GetResult() EDevEventRequestResult { @@ -19788,7 +20333,7 @@ type CMsgDevResetEventState struct { func (x *CMsgDevResetEventState) Reset() { *x = CMsgDevResetEventState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[245] + mi := &file_dota_gcmessages_client_proto_msgTypes[247] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19801,7 +20346,7 @@ func (x *CMsgDevResetEventState) String() string { func (*CMsgDevResetEventState) ProtoMessage() {} func (x *CMsgDevResetEventState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[245] + mi := &file_dota_gcmessages_client_proto_msgTypes[247] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19814,7 +20359,7 @@ func (x *CMsgDevResetEventState) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDevResetEventState.ProtoReflect.Descriptor instead. func (*CMsgDevResetEventState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{245} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{247} } func (x *CMsgDevResetEventState) GetEventId() EEvent { @@ -19842,7 +20387,7 @@ type CMsgDevResetEventStateResponse struct { func (x *CMsgDevResetEventStateResponse) Reset() { *x = CMsgDevResetEventStateResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[246] + mi := &file_dota_gcmessages_client_proto_msgTypes[248] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19855,7 +20400,7 @@ func (x *CMsgDevResetEventStateResponse) String() string { func (*CMsgDevResetEventStateResponse) ProtoMessage() {} func (x *CMsgDevResetEventStateResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[246] + mi := &file_dota_gcmessages_client_proto_msgTypes[248] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19868,7 +20413,7 @@ func (x *CMsgDevResetEventStateResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDevResetEventStateResponse.ProtoReflect.Descriptor instead. func (*CMsgDevResetEventStateResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{246} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{248} } func (x *CMsgDevResetEventStateResponse) GetResult() EDevEventRequestResult { @@ -19889,7 +20434,7 @@ type CMsgConsumeEventSupportGrantItem struct { func (x *CMsgConsumeEventSupportGrantItem) Reset() { *x = CMsgConsumeEventSupportGrantItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[247] + mi := &file_dota_gcmessages_client_proto_msgTypes[249] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19902,7 +20447,7 @@ func (x *CMsgConsumeEventSupportGrantItem) String() string { func (*CMsgConsumeEventSupportGrantItem) ProtoMessage() {} func (x *CMsgConsumeEventSupportGrantItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[247] + mi := &file_dota_gcmessages_client_proto_msgTypes[249] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19915,7 +20460,7 @@ func (x *CMsgConsumeEventSupportGrantItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgConsumeEventSupportGrantItem.ProtoReflect.Descriptor instead. func (*CMsgConsumeEventSupportGrantItem) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{247} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{249} } func (x *CMsgConsumeEventSupportGrantItem) GetItemId() uint64 { @@ -19936,7 +20481,7 @@ type CMsgConsumeEventSupportGrantItemResponse struct { func (x *CMsgConsumeEventSupportGrantItemResponse) Reset() { *x = CMsgConsumeEventSupportGrantItemResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[248] + mi := &file_dota_gcmessages_client_proto_msgTypes[250] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19949,7 +20494,7 @@ func (x *CMsgConsumeEventSupportGrantItemResponse) String() string { func (*CMsgConsumeEventSupportGrantItemResponse) ProtoMessage() {} func (x *CMsgConsumeEventSupportGrantItemResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[248] + mi := &file_dota_gcmessages_client_proto_msgTypes[250] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -19962,7 +20507,7 @@ func (x *CMsgConsumeEventSupportGrantItemResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgConsumeEventSupportGrantItemResponse.ProtoReflect.Descriptor instead. func (*CMsgConsumeEventSupportGrantItemResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{248} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{250} } func (x *CMsgConsumeEventSupportGrantItemResponse) GetResult() ESupportEventRequestResult { @@ -19981,7 +20526,7 @@ type CMsgClientToGCGetFilteredPlayers struct { func (x *CMsgClientToGCGetFilteredPlayers) Reset() { *x = CMsgClientToGCGetFilteredPlayers{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[249] + mi := &file_dota_gcmessages_client_proto_msgTypes[251] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -19994,7 +20539,7 @@ func (x *CMsgClientToGCGetFilteredPlayers) String() string { func (*CMsgClientToGCGetFilteredPlayers) ProtoMessage() {} func (x *CMsgClientToGCGetFilteredPlayers) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[249] + mi := &file_dota_gcmessages_client_proto_msgTypes[251] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20007,7 +20552,7 @@ func (x *CMsgClientToGCGetFilteredPlayers) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetFilteredPlayers.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetFilteredPlayers) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{249} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{251} } type CMsgGCToClientGetFilteredPlayersResponse struct { @@ -20025,7 +20570,7 @@ type CMsgGCToClientGetFilteredPlayersResponse struct { func (x *CMsgGCToClientGetFilteredPlayersResponse) Reset() { *x = CMsgGCToClientGetFilteredPlayersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[250] + mi := &file_dota_gcmessages_client_proto_msgTypes[252] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20038,7 +20583,7 @@ func (x *CMsgGCToClientGetFilteredPlayersResponse) String() string { func (*CMsgGCToClientGetFilteredPlayersResponse) ProtoMessage() {} func (x *CMsgGCToClientGetFilteredPlayersResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[250] + mi := &file_dota_gcmessages_client_proto_msgTypes[252] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20051,7 +20596,7 @@ func (x *CMsgGCToClientGetFilteredPlayersResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgGCToClientGetFilteredPlayersResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientGetFilteredPlayersResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{250} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{252} } func (x *CMsgGCToClientGetFilteredPlayersResponse) GetResult() CMsgGCToClientGetFilteredPlayersResponse_Result { @@ -20100,7 +20645,7 @@ type CMsgClientToGCRemoveFilteredPlayer struct { func (x *CMsgClientToGCRemoveFilteredPlayer) Reset() { *x = CMsgClientToGCRemoveFilteredPlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[251] + mi := &file_dota_gcmessages_client_proto_msgTypes[253] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20113,7 +20658,7 @@ func (x *CMsgClientToGCRemoveFilteredPlayer) String() string { func (*CMsgClientToGCRemoveFilteredPlayer) ProtoMessage() {} func (x *CMsgClientToGCRemoveFilteredPlayer) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[251] + mi := &file_dota_gcmessages_client_proto_msgTypes[253] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20126,7 +20671,7 @@ func (x *CMsgClientToGCRemoveFilteredPlayer) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCRemoveFilteredPlayer.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRemoveFilteredPlayer) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{251} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{253} } func (x *CMsgClientToGCRemoveFilteredPlayer) GetAccountIdToRemove() uint32 { @@ -20147,7 +20692,7 @@ type CMsgGCToClientRemoveFilteredPlayerResponse struct { func (x *CMsgGCToClientRemoveFilteredPlayerResponse) Reset() { *x = CMsgGCToClientRemoveFilteredPlayerResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[252] + mi := &file_dota_gcmessages_client_proto_msgTypes[254] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20160,7 +20705,7 @@ func (x *CMsgGCToClientRemoveFilteredPlayerResponse) String() string { func (*CMsgGCToClientRemoveFilteredPlayerResponse) ProtoMessage() {} func (x *CMsgGCToClientRemoveFilteredPlayerResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[252] + mi := &file_dota_gcmessages_client_proto_msgTypes[254] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20173,7 +20718,7 @@ func (x *CMsgGCToClientRemoveFilteredPlayerResponse) ProtoReflect() protoreflect // Deprecated: Use CMsgGCToClientRemoveFilteredPlayerResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientRemoveFilteredPlayerResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{252} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{254} } func (x *CMsgGCToClientRemoveFilteredPlayerResponse) GetResult() CMsgGCToClientRemoveFilteredPlayerResponse_Result { @@ -20194,7 +20739,7 @@ type CMsgClientToGCPurchaseFilteredPlayerSlot struct { func (x *CMsgClientToGCPurchaseFilteredPlayerSlot) Reset() { *x = CMsgClientToGCPurchaseFilteredPlayerSlot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[253] + mi := &file_dota_gcmessages_client_proto_msgTypes[255] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20207,7 +20752,7 @@ func (x *CMsgClientToGCPurchaseFilteredPlayerSlot) String() string { func (*CMsgClientToGCPurchaseFilteredPlayerSlot) ProtoMessage() {} func (x *CMsgClientToGCPurchaseFilteredPlayerSlot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[253] + mi := &file_dota_gcmessages_client_proto_msgTypes[255] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20220,7 +20765,7 @@ func (x *CMsgClientToGCPurchaseFilteredPlayerSlot) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCPurchaseFilteredPlayerSlot.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPurchaseFilteredPlayerSlot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{253} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{255} } func (x *CMsgClientToGCPurchaseFilteredPlayerSlot) GetAdditionalSlotsCurrent() int32 { @@ -20243,7 +20788,7 @@ type CMsgGCToClientPurchaseFilteredPlayerSlotResponse struct { func (x *CMsgGCToClientPurchaseFilteredPlayerSlotResponse) Reset() { *x = CMsgGCToClientPurchaseFilteredPlayerSlotResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[254] + mi := &file_dota_gcmessages_client_proto_msgTypes[256] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20256,7 +20801,7 @@ func (x *CMsgGCToClientPurchaseFilteredPlayerSlotResponse) String() string { func (*CMsgGCToClientPurchaseFilteredPlayerSlotResponse) ProtoMessage() {} func (x *CMsgGCToClientPurchaseFilteredPlayerSlotResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[254] + mi := &file_dota_gcmessages_client_proto_msgTypes[256] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20269,7 +20814,7 @@ func (x *CMsgGCToClientPurchaseFilteredPlayerSlotResponse) ProtoReflect() protor // Deprecated: Use CMsgGCToClientPurchaseFilteredPlayerSlotResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPurchaseFilteredPlayerSlotResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{254} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{256} } func (x *CMsgGCToClientPurchaseFilteredPlayerSlotResponse) GetResult() CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result { @@ -20305,7 +20850,7 @@ type CMsgClientToGCUpdateFilteredPlayerNote struct { func (x *CMsgClientToGCUpdateFilteredPlayerNote) Reset() { *x = CMsgClientToGCUpdateFilteredPlayerNote{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[255] + mi := &file_dota_gcmessages_client_proto_msgTypes[257] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20318,7 +20863,7 @@ func (x *CMsgClientToGCUpdateFilteredPlayerNote) String() string { func (*CMsgClientToGCUpdateFilteredPlayerNote) ProtoMessage() {} func (x *CMsgClientToGCUpdateFilteredPlayerNote) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[255] + mi := &file_dota_gcmessages_client_proto_msgTypes[257] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20331,7 +20876,7 @@ func (x *CMsgClientToGCUpdateFilteredPlayerNote) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCUpdateFilteredPlayerNote.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUpdateFilteredPlayerNote) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{255} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{257} } func (x *CMsgClientToGCUpdateFilteredPlayerNote) GetTargetAccountId() uint32 { @@ -20359,7 +20904,7 @@ type CMsgGCToClientUpdateFilteredPlayerNoteResponse struct { func (x *CMsgGCToClientUpdateFilteredPlayerNoteResponse) Reset() { *x = CMsgGCToClientUpdateFilteredPlayerNoteResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[256] + mi := &file_dota_gcmessages_client_proto_msgTypes[258] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20372,7 +20917,7 @@ func (x *CMsgGCToClientUpdateFilteredPlayerNoteResponse) String() string { func (*CMsgGCToClientUpdateFilteredPlayerNoteResponse) ProtoMessage() {} func (x *CMsgGCToClientUpdateFilteredPlayerNoteResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[256] + mi := &file_dota_gcmessages_client_proto_msgTypes[258] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20385,7 +20930,7 @@ func (x *CMsgGCToClientUpdateFilteredPlayerNoteResponse) ProtoReflect() protoref // Deprecated: Use CMsgGCToClientUpdateFilteredPlayerNoteResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientUpdateFilteredPlayerNoteResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{256} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{258} } func (x *CMsgGCToClientUpdateFilteredPlayerNoteResponse) GetResult() CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result { @@ -20408,7 +20953,7 @@ type CMsgPartySearchPlayer struct { func (x *CMsgPartySearchPlayer) Reset() { *x = CMsgPartySearchPlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[257] + mi := &file_dota_gcmessages_client_proto_msgTypes[259] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20421,7 +20966,7 @@ func (x *CMsgPartySearchPlayer) String() string { func (*CMsgPartySearchPlayer) ProtoMessage() {} func (x *CMsgPartySearchPlayer) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[257] + mi := &file_dota_gcmessages_client_proto_msgTypes[259] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20434,7 +20979,7 @@ func (x *CMsgPartySearchPlayer) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPartySearchPlayer.ProtoReflect.Descriptor instead. func (*CMsgPartySearchPlayer) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{257} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{259} } func (x *CMsgPartySearchPlayer) GetAccountId() uint32 { @@ -20469,7 +21014,7 @@ type CMsgGCToClientPlayerBeaconState struct { func (x *CMsgGCToClientPlayerBeaconState) Reset() { *x = CMsgGCToClientPlayerBeaconState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[258] + mi := &file_dota_gcmessages_client_proto_msgTypes[260] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20482,7 +21027,7 @@ func (x *CMsgGCToClientPlayerBeaconState) String() string { func (*CMsgGCToClientPlayerBeaconState) ProtoMessage() {} func (x *CMsgGCToClientPlayerBeaconState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[258] + mi := &file_dota_gcmessages_client_proto_msgTypes[260] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20495,7 +21040,7 @@ func (x *CMsgGCToClientPlayerBeaconState) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPlayerBeaconState.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPlayerBeaconState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{258} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{260} } func (x *CMsgGCToClientPlayerBeaconState) GetNumActiveBeacons() []int32 { @@ -20518,7 +21063,7 @@ type CMsgGCToClientPartyBeaconUpdate struct { func (x *CMsgGCToClientPartyBeaconUpdate) Reset() { *x = CMsgGCToClientPartyBeaconUpdate{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[259] + mi := &file_dota_gcmessages_client_proto_msgTypes[261] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20531,7 +21076,7 @@ func (x *CMsgGCToClientPartyBeaconUpdate) String() string { func (*CMsgGCToClientPartyBeaconUpdate) ProtoMessage() {} func (x *CMsgGCToClientPartyBeaconUpdate) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[259] + mi := &file_dota_gcmessages_client_proto_msgTypes[261] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20544,7 +21089,7 @@ func (x *CMsgGCToClientPartyBeaconUpdate) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPartyBeaconUpdate.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPartyBeaconUpdate) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{259} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{261} } func (x *CMsgGCToClientPartyBeaconUpdate) GetBeaconAdded() bool { @@ -20579,7 +21124,7 @@ type CMsgClientToGCUpdatePartyBeacon struct { func (x *CMsgClientToGCUpdatePartyBeacon) Reset() { *x = CMsgClientToGCUpdatePartyBeacon{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[260] + mi := &file_dota_gcmessages_client_proto_msgTypes[262] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20592,7 +21137,7 @@ func (x *CMsgClientToGCUpdatePartyBeacon) String() string { func (*CMsgClientToGCUpdatePartyBeacon) ProtoMessage() {} func (x *CMsgClientToGCUpdatePartyBeacon) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[260] + mi := &file_dota_gcmessages_client_proto_msgTypes[262] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20605,7 +21150,7 @@ func (x *CMsgClientToGCUpdatePartyBeacon) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUpdatePartyBeacon.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUpdatePartyBeacon) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{260} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{262} } func (x *CMsgClientToGCUpdatePartyBeacon) GetAction() CMsgClientToGCUpdatePartyBeacon_Action { @@ -20624,7 +21169,7 @@ type CMsgClientToGCRequestActiveBeaconParties struct { func (x *CMsgClientToGCRequestActiveBeaconParties) Reset() { *x = CMsgClientToGCRequestActiveBeaconParties{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[261] + mi := &file_dota_gcmessages_client_proto_msgTypes[263] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20637,7 +21182,7 @@ func (x *CMsgClientToGCRequestActiveBeaconParties) String() string { func (*CMsgClientToGCRequestActiveBeaconParties) ProtoMessage() {} func (x *CMsgClientToGCRequestActiveBeaconParties) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[261] + mi := &file_dota_gcmessages_client_proto_msgTypes[263] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20650,7 +21195,7 @@ func (x *CMsgClientToGCRequestActiveBeaconParties) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCRequestActiveBeaconParties.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestActiveBeaconParties) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{261} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{263} } type CMsgGCToClientRequestActiveBeaconPartiesResponse struct { @@ -20665,7 +21210,7 @@ type CMsgGCToClientRequestActiveBeaconPartiesResponse struct { func (x *CMsgGCToClientRequestActiveBeaconPartiesResponse) Reset() { *x = CMsgGCToClientRequestActiveBeaconPartiesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[262] + mi := &file_dota_gcmessages_client_proto_msgTypes[264] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20678,7 +21223,7 @@ func (x *CMsgGCToClientRequestActiveBeaconPartiesResponse) String() string { func (*CMsgGCToClientRequestActiveBeaconPartiesResponse) ProtoMessage() {} func (x *CMsgGCToClientRequestActiveBeaconPartiesResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[262] + mi := &file_dota_gcmessages_client_proto_msgTypes[264] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20691,7 +21236,7 @@ func (x *CMsgGCToClientRequestActiveBeaconPartiesResponse) ProtoReflect() protor // Deprecated: Use CMsgGCToClientRequestActiveBeaconPartiesResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientRequestActiveBeaconPartiesResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{262} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{264} } func (x *CMsgGCToClientRequestActiveBeaconPartiesResponse) GetResponse() CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse { @@ -20721,7 +21266,7 @@ type CMsgClientToGCJoinPartyFromBeacon struct { func (x *CMsgClientToGCJoinPartyFromBeacon) Reset() { *x = CMsgClientToGCJoinPartyFromBeacon{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[263] + mi := &file_dota_gcmessages_client_proto_msgTypes[265] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20734,7 +21279,7 @@ func (x *CMsgClientToGCJoinPartyFromBeacon) String() string { func (*CMsgClientToGCJoinPartyFromBeacon) ProtoMessage() {} func (x *CMsgClientToGCJoinPartyFromBeacon) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[263] + mi := &file_dota_gcmessages_client_proto_msgTypes[265] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20747,7 +21292,7 @@ func (x *CMsgClientToGCJoinPartyFromBeacon) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCJoinPartyFromBeacon.ProtoReflect.Descriptor instead. func (*CMsgClientToGCJoinPartyFromBeacon) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{263} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{265} } func (x *CMsgClientToGCJoinPartyFromBeacon) GetPartyId() uint64 { @@ -20782,7 +21327,7 @@ type CMsgGCToClientJoinPartyFromBeaconResponse struct { func (x *CMsgGCToClientJoinPartyFromBeaconResponse) Reset() { *x = CMsgGCToClientJoinPartyFromBeaconResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[264] + mi := &file_dota_gcmessages_client_proto_msgTypes[266] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20795,7 +21340,7 @@ func (x *CMsgGCToClientJoinPartyFromBeaconResponse) String() string { func (*CMsgGCToClientJoinPartyFromBeaconResponse) ProtoMessage() {} func (x *CMsgGCToClientJoinPartyFromBeaconResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[264] + mi := &file_dota_gcmessages_client_proto_msgTypes[266] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20808,7 +21353,7 @@ func (x *CMsgGCToClientJoinPartyFromBeaconResponse) ProtoReflect() protoreflect. // Deprecated: Use CMsgGCToClientJoinPartyFromBeaconResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientJoinPartyFromBeaconResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{264} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{266} } func (x *CMsgGCToClientJoinPartyFromBeaconResponse) GetResponse() CMsgGCToClientJoinPartyFromBeaconResponse_EResponse { @@ -20834,7 +21379,7 @@ type CMsgClientToGCManageFavorites struct { func (x *CMsgClientToGCManageFavorites) Reset() { *x = CMsgClientToGCManageFavorites{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[265] + mi := &file_dota_gcmessages_client_proto_msgTypes[267] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20847,7 +21392,7 @@ func (x *CMsgClientToGCManageFavorites) String() string { func (*CMsgClientToGCManageFavorites) ProtoMessage() {} func (x *CMsgClientToGCManageFavorites) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[265] + mi := &file_dota_gcmessages_client_proto_msgTypes[267] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20860,7 +21405,7 @@ func (x *CMsgClientToGCManageFavorites) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCManageFavorites.ProtoReflect.Descriptor instead. func (*CMsgClientToGCManageFavorites) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{265} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{267} } func (x *CMsgClientToGCManageFavorites) GetAction() CMsgClientToGCManageFavorites_Action { @@ -20918,7 +21463,7 @@ type CMsgGCToClientManageFavoritesResponse struct { func (x *CMsgGCToClientManageFavoritesResponse) Reset() { *x = CMsgGCToClientManageFavoritesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[266] + mi := &file_dota_gcmessages_client_proto_msgTypes[268] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20931,7 +21476,7 @@ func (x *CMsgGCToClientManageFavoritesResponse) String() string { func (*CMsgGCToClientManageFavoritesResponse) ProtoMessage() {} func (x *CMsgGCToClientManageFavoritesResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[266] + mi := &file_dota_gcmessages_client_proto_msgTypes[268] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -20944,7 +21489,7 @@ func (x *CMsgGCToClientManageFavoritesResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCToClientManageFavoritesResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientManageFavoritesResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{266} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{268} } func (x *CMsgGCToClientManageFavoritesResponse) GetResponse() CMsgGCToClientManageFavoritesResponse_EResponse { @@ -20980,7 +21525,7 @@ type CMsgClientToGCGetFavoritePlayers struct { func (x *CMsgClientToGCGetFavoritePlayers) Reset() { *x = CMsgClientToGCGetFavoritePlayers{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[267] + mi := &file_dota_gcmessages_client_proto_msgTypes[269] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -20993,7 +21538,7 @@ func (x *CMsgClientToGCGetFavoritePlayers) String() string { func (*CMsgClientToGCGetFavoritePlayers) ProtoMessage() {} func (x *CMsgClientToGCGetFavoritePlayers) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[267] + mi := &file_dota_gcmessages_client_proto_msgTypes[269] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21006,7 +21551,7 @@ func (x *CMsgClientToGCGetFavoritePlayers) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetFavoritePlayers.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetFavoritePlayers) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{267} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{269} } func (x *CMsgClientToGCGetFavoritePlayers) GetPaginationKey() uint64 { @@ -21036,7 +21581,7 @@ type CMsgGCToClientGetFavoritePlayersResponse struct { func (x *CMsgGCToClientGetFavoritePlayersResponse) Reset() { *x = CMsgGCToClientGetFavoritePlayersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[268] + mi := &file_dota_gcmessages_client_proto_msgTypes[270] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21049,7 +21594,7 @@ func (x *CMsgGCToClientGetFavoritePlayersResponse) String() string { func (*CMsgGCToClientGetFavoritePlayersResponse) ProtoMessage() {} func (x *CMsgGCToClientGetFavoritePlayersResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[268] + mi := &file_dota_gcmessages_client_proto_msgTypes[270] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21062,7 +21607,7 @@ func (x *CMsgGCToClientGetFavoritePlayersResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgGCToClientGetFavoritePlayersResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientGetFavoritePlayersResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{268} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{270} } func (x *CMsgGCToClientGetFavoritePlayersResponse) GetResponse() CMsgGCToClientGetFavoritePlayersResponse_EResponse { @@ -21097,7 +21642,7 @@ type CMsgGCToClientPartySearchInvite struct { func (x *CMsgGCToClientPartySearchInvite) Reset() { *x = CMsgGCToClientPartySearchInvite{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[269] + mi := &file_dota_gcmessages_client_proto_msgTypes[271] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21110,7 +21655,7 @@ func (x *CMsgGCToClientPartySearchInvite) String() string { func (*CMsgGCToClientPartySearchInvite) ProtoMessage() {} func (x *CMsgGCToClientPartySearchInvite) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[269] + mi := &file_dota_gcmessages_client_proto_msgTypes[271] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21123,7 +21668,7 @@ func (x *CMsgGCToClientPartySearchInvite) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPartySearchInvite.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPartySearchInvite) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{269} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{271} } func (x *CMsgGCToClientPartySearchInvite) GetAccountId() uint32 { @@ -21144,7 +21689,7 @@ type CMsgClientToGCVerifyFavoritePlayers struct { func (x *CMsgClientToGCVerifyFavoritePlayers) Reset() { *x = CMsgClientToGCVerifyFavoritePlayers{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[270] + mi := &file_dota_gcmessages_client_proto_msgTypes[272] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21157,7 +21702,7 @@ func (x *CMsgClientToGCVerifyFavoritePlayers) String() string { func (*CMsgClientToGCVerifyFavoritePlayers) ProtoMessage() {} func (x *CMsgClientToGCVerifyFavoritePlayers) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[270] + mi := &file_dota_gcmessages_client_proto_msgTypes[272] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21170,7 +21715,7 @@ func (x *CMsgClientToGCVerifyFavoritePlayers) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCVerifyFavoritePlayers.ProtoReflect.Descriptor instead. func (*CMsgClientToGCVerifyFavoritePlayers) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{270} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{272} } func (x *CMsgClientToGCVerifyFavoritePlayers) GetAccountIds() []uint32 { @@ -21191,7 +21736,7 @@ type CMsgGCToClientVerifyFavoritePlayersResponse struct { func (x *CMsgGCToClientVerifyFavoritePlayersResponse) Reset() { *x = CMsgGCToClientVerifyFavoritePlayersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[271] + mi := &file_dota_gcmessages_client_proto_msgTypes[273] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21204,7 +21749,7 @@ func (x *CMsgGCToClientVerifyFavoritePlayersResponse) String() string { func (*CMsgGCToClientVerifyFavoritePlayersResponse) ProtoMessage() {} func (x *CMsgGCToClientVerifyFavoritePlayersResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[271] + mi := &file_dota_gcmessages_client_proto_msgTypes[273] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21217,7 +21762,7 @@ func (x *CMsgGCToClientVerifyFavoritePlayersResponse) ProtoReflect() protoreflec // Deprecated: Use CMsgGCToClientVerifyFavoritePlayersResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientVerifyFavoritePlayersResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{271} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{273} } func (x *CMsgGCToClientVerifyFavoritePlayersResponse) GetResults() []*CMsgGCToClientVerifyFavoritePlayersResponse_Result { @@ -21238,7 +21783,7 @@ type CMsgClientToGCRequestPlayerRecentAccomplishments struct { func (x *CMsgClientToGCRequestPlayerRecentAccomplishments) Reset() { *x = CMsgClientToGCRequestPlayerRecentAccomplishments{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[272] + mi := &file_dota_gcmessages_client_proto_msgTypes[274] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21251,7 +21796,7 @@ func (x *CMsgClientToGCRequestPlayerRecentAccomplishments) String() string { func (*CMsgClientToGCRequestPlayerRecentAccomplishments) ProtoMessage() {} func (x *CMsgClientToGCRequestPlayerRecentAccomplishments) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[272] + mi := &file_dota_gcmessages_client_proto_msgTypes[274] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21264,7 +21809,7 @@ func (x *CMsgClientToGCRequestPlayerRecentAccomplishments) ProtoReflect() protor // Deprecated: Use CMsgClientToGCRequestPlayerRecentAccomplishments.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestPlayerRecentAccomplishments) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{272} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{274} } func (x *CMsgClientToGCRequestPlayerRecentAccomplishments) GetAccountId() uint32 { @@ -21286,7 +21831,7 @@ type CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse struct { func (x *CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse) Reset() { *x = CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[273] + mi := &file_dota_gcmessages_client_proto_msgTypes[275] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21299,7 +21844,7 @@ func (x *CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse) String() stri func (*CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse) ProtoMessage() {} func (x *CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[273] + mi := &file_dota_gcmessages_client_proto_msgTypes[275] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21312,7 +21857,7 @@ func (x *CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse) ProtoReflect( // Deprecated: Use CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{273} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{275} } func (x *CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse) GetResult() CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse { @@ -21341,7 +21886,7 @@ type CMsgClientToGCRequestPlayerHeroRecentAccomplishments struct { func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishments) Reset() { *x = CMsgClientToGCRequestPlayerHeroRecentAccomplishments{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[274] + mi := &file_dota_gcmessages_client_proto_msgTypes[276] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21354,7 +21899,7 @@ func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishments) String() string { func (*CMsgClientToGCRequestPlayerHeroRecentAccomplishments) ProtoMessage() {} func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishments) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[274] + mi := &file_dota_gcmessages_client_proto_msgTypes[276] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21367,7 +21912,7 @@ func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishments) ProtoReflect() pr // Deprecated: Use CMsgClientToGCRequestPlayerHeroRecentAccomplishments.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestPlayerHeroRecentAccomplishments) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{274} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{276} } func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishments) GetAccountId() uint32 { @@ -21396,7 +21941,7 @@ type CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse struct { func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse) Reset() { *x = CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[275] + mi := &file_dota_gcmessages_client_proto_msgTypes[277] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21409,7 +21954,7 @@ func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse) String() func (*CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse) ProtoMessage() {} func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[275] + mi := &file_dota_gcmessages_client_proto_msgTypes[277] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21422,7 +21967,7 @@ func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse) ProtoRefl // Deprecated: Use CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{275} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{277} } func (x *CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse) GetResult() CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse { @@ -21452,7 +21997,7 @@ type CMsgClientToGCSubmitPlayerMatchSurvey struct { func (x *CMsgClientToGCSubmitPlayerMatchSurvey) Reset() { *x = CMsgClientToGCSubmitPlayerMatchSurvey{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[276] + mi := &file_dota_gcmessages_client_proto_msgTypes[278] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21465,7 +22010,7 @@ func (x *CMsgClientToGCSubmitPlayerMatchSurvey) String() string { func (*CMsgClientToGCSubmitPlayerMatchSurvey) ProtoMessage() {} func (x *CMsgClientToGCSubmitPlayerMatchSurvey) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[276] + mi := &file_dota_gcmessages_client_proto_msgTypes[278] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21478,7 +22023,7 @@ func (x *CMsgClientToGCSubmitPlayerMatchSurvey) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCSubmitPlayerMatchSurvey.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSubmitPlayerMatchSurvey) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{276} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{278} } func (x *CMsgClientToGCSubmitPlayerMatchSurvey) GetMatchId() uint64 { @@ -21514,7 +22059,7 @@ type CMsgClientToGCSubmitPlayerMatchSurveyResponse struct { func (x *CMsgClientToGCSubmitPlayerMatchSurveyResponse) Reset() { *x = CMsgClientToGCSubmitPlayerMatchSurveyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[277] + mi := &file_dota_gcmessages_client_proto_msgTypes[279] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21527,7 +22072,7 @@ func (x *CMsgClientToGCSubmitPlayerMatchSurveyResponse) String() string { func (*CMsgClientToGCSubmitPlayerMatchSurveyResponse) ProtoMessage() {} func (x *CMsgClientToGCSubmitPlayerMatchSurveyResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[277] + mi := &file_dota_gcmessages_client_proto_msgTypes[279] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21540,7 +22085,7 @@ func (x *CMsgClientToGCSubmitPlayerMatchSurveyResponse) ProtoReflect() protorefl // Deprecated: Use CMsgClientToGCSubmitPlayerMatchSurveyResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSubmitPlayerMatchSurveyResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{277} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{279} } func (x *CMsgClientToGCSubmitPlayerMatchSurveyResponse) GetEresult() CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse { @@ -21566,7 +22111,7 @@ type CMsgGCToClientVACReminder struct { func (x *CMsgGCToClientVACReminder) Reset() { *x = CMsgGCToClientVACReminder{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[278] + mi := &file_dota_gcmessages_client_proto_msgTypes[280] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21579,7 +22124,7 @@ func (x *CMsgGCToClientVACReminder) String() string { func (*CMsgGCToClientVACReminder) ProtoMessage() {} func (x *CMsgGCToClientVACReminder) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[278] + mi := &file_dota_gcmessages_client_proto_msgTypes[280] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21592,7 +22137,7 @@ func (x *CMsgGCToClientVACReminder) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientVACReminder.ProtoReflect.Descriptor instead. func (*CMsgGCToClientVACReminder) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{278} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{280} } type CMsgClientToGCUnderDraftRequest struct { @@ -21607,7 +22152,7 @@ type CMsgClientToGCUnderDraftRequest struct { func (x *CMsgClientToGCUnderDraftRequest) Reset() { *x = CMsgClientToGCUnderDraftRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[279] + mi := &file_dota_gcmessages_client_proto_msgTypes[281] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21620,7 +22165,7 @@ func (x *CMsgClientToGCUnderDraftRequest) String() string { func (*CMsgClientToGCUnderDraftRequest) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[279] + mi := &file_dota_gcmessages_client_proto_msgTypes[281] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21633,7 +22178,7 @@ func (x *CMsgClientToGCUnderDraftRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnderDraftRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{279} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{281} } func (x *CMsgClientToGCUnderDraftRequest) GetAccountId() uint32 { @@ -21664,7 +22209,7 @@ type CMsgClientToGCUnderDraftResponse struct { func (x *CMsgClientToGCUnderDraftResponse) Reset() { *x = CMsgClientToGCUnderDraftResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[280] + mi := &file_dota_gcmessages_client_proto_msgTypes[282] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21677,7 +22222,7 @@ func (x *CMsgClientToGCUnderDraftResponse) String() string { func (*CMsgClientToGCUnderDraftResponse) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[280] + mi := &file_dota_gcmessages_client_proto_msgTypes[282] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21690,7 +22235,7 @@ func (x *CMsgClientToGCUnderDraftResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnderDraftResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{280} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{282} } func (x *CMsgClientToGCUnderDraftResponse) GetResult() EUnderDraftResponse { @@ -21732,7 +22277,7 @@ type CMsgClientToGCUnderDraftReroll struct { func (x *CMsgClientToGCUnderDraftReroll) Reset() { *x = CMsgClientToGCUnderDraftReroll{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[281] + mi := &file_dota_gcmessages_client_proto_msgTypes[283] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21745,7 +22290,7 @@ func (x *CMsgClientToGCUnderDraftReroll) String() string { func (*CMsgClientToGCUnderDraftReroll) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftReroll) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[281] + mi := &file_dota_gcmessages_client_proto_msgTypes[283] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21758,7 +22303,7 @@ func (x *CMsgClientToGCUnderDraftReroll) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnderDraftReroll.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftReroll) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{281} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{283} } func (x *CMsgClientToGCUnderDraftReroll) GetEventId() uint32 { @@ -21781,7 +22326,7 @@ type CMsgClientToGCUnderDraftRerollResponse struct { func (x *CMsgClientToGCUnderDraftRerollResponse) Reset() { *x = CMsgClientToGCUnderDraftRerollResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[282] + mi := &file_dota_gcmessages_client_proto_msgTypes[284] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21794,7 +22339,7 @@ func (x *CMsgClientToGCUnderDraftRerollResponse) String() string { func (*CMsgClientToGCUnderDraftRerollResponse) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftRerollResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[282] + mi := &file_dota_gcmessages_client_proto_msgTypes[284] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21807,7 +22352,7 @@ func (x *CMsgClientToGCUnderDraftRerollResponse) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCUnderDraftRerollResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftRerollResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{282} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{284} } func (x *CMsgClientToGCUnderDraftRerollResponse) GetResult() EUnderDraftResponse { @@ -21843,7 +22388,7 @@ type CMsgClientToGCUnderDraftBuy struct { func (x *CMsgClientToGCUnderDraftBuy) Reset() { *x = CMsgClientToGCUnderDraftBuy{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[283] + mi := &file_dota_gcmessages_client_proto_msgTypes[285] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21856,7 +22401,7 @@ func (x *CMsgClientToGCUnderDraftBuy) String() string { func (*CMsgClientToGCUnderDraftBuy) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftBuy) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[283] + mi := &file_dota_gcmessages_client_proto_msgTypes[285] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21869,7 +22414,7 @@ func (x *CMsgClientToGCUnderDraftBuy) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnderDraftBuy.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftBuy) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{283} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{285} } func (x *CMsgClientToGCUnderDraftBuy) GetEventId() uint32 { @@ -21897,7 +22442,7 @@ type CMsgGCToClientGuildUnderDraftGoldUpdated struct { func (x *CMsgGCToClientGuildUnderDraftGoldUpdated) Reset() { *x = CMsgGCToClientGuildUnderDraftGoldUpdated{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[284] + mi := &file_dota_gcmessages_client_proto_msgTypes[286] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21910,7 +22455,7 @@ func (x *CMsgGCToClientGuildUnderDraftGoldUpdated) String() string { func (*CMsgGCToClientGuildUnderDraftGoldUpdated) ProtoMessage() {} func (x *CMsgGCToClientGuildUnderDraftGoldUpdated) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[284] + mi := &file_dota_gcmessages_client_proto_msgTypes[286] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21923,7 +22468,7 @@ func (x *CMsgGCToClientGuildUnderDraftGoldUpdated) ProtoReflect() protoreflect.M // Deprecated: Use CMsgGCToClientGuildUnderDraftGoldUpdated.ProtoReflect.Descriptor instead. func (*CMsgGCToClientGuildUnderDraftGoldUpdated) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{284} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{286} } func (x *CMsgGCToClientGuildUnderDraftGoldUpdated) GetEventId() uint32 { @@ -21947,7 +22492,7 @@ type CMsgClientToGCUnderDraftBuyResponse struct { func (x *CMsgClientToGCUnderDraftBuyResponse) Reset() { *x = CMsgClientToGCUnderDraftBuyResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[285] + mi := &file_dota_gcmessages_client_proto_msgTypes[287] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -21960,7 +22505,7 @@ func (x *CMsgClientToGCUnderDraftBuyResponse) String() string { func (*CMsgClientToGCUnderDraftBuyResponse) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftBuyResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[285] + mi := &file_dota_gcmessages_client_proto_msgTypes[287] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21973,7 +22518,7 @@ func (x *CMsgClientToGCUnderDraftBuyResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCUnderDraftBuyResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftBuyResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{285} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{287} } func (x *CMsgClientToGCUnderDraftBuyResponse) GetResult() EUnderDraftResponse { @@ -22015,7 +22560,7 @@ type CMsgClientToGCUnderDraftRollBackBench struct { func (x *CMsgClientToGCUnderDraftRollBackBench) Reset() { *x = CMsgClientToGCUnderDraftRollBackBench{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[286] + mi := &file_dota_gcmessages_client_proto_msgTypes[288] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22028,7 +22573,7 @@ func (x *CMsgClientToGCUnderDraftRollBackBench) String() string { func (*CMsgClientToGCUnderDraftRollBackBench) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftRollBackBench) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[286] + mi := &file_dota_gcmessages_client_proto_msgTypes[288] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22041,7 +22586,7 @@ func (x *CMsgClientToGCUnderDraftRollBackBench) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCUnderDraftRollBackBench.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftRollBackBench) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{286} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{288} } func (x *CMsgClientToGCUnderDraftRollBackBench) GetEventId() uint32 { @@ -22064,7 +22609,7 @@ type CMsgClientToGCUnderDraftRollBackBenchResponse struct { func (x *CMsgClientToGCUnderDraftRollBackBenchResponse) Reset() { *x = CMsgClientToGCUnderDraftRollBackBenchResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[287] + mi := &file_dota_gcmessages_client_proto_msgTypes[289] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22077,7 +22622,7 @@ func (x *CMsgClientToGCUnderDraftRollBackBenchResponse) String() string { func (*CMsgClientToGCUnderDraftRollBackBenchResponse) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftRollBackBenchResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[287] + mi := &file_dota_gcmessages_client_proto_msgTypes[289] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22090,7 +22635,7 @@ func (x *CMsgClientToGCUnderDraftRollBackBenchResponse) ProtoReflect() protorefl // Deprecated: Use CMsgClientToGCUnderDraftRollBackBenchResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftRollBackBenchResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{287} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{289} } func (x *CMsgClientToGCUnderDraftRollBackBenchResponse) GetResult() EUnderDraftResponse { @@ -22126,7 +22671,7 @@ type CMsgClientToGCUnderDraftSell struct { func (x *CMsgClientToGCUnderDraftSell) Reset() { *x = CMsgClientToGCUnderDraftSell{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[288] + mi := &file_dota_gcmessages_client_proto_msgTypes[290] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22139,7 +22684,7 @@ func (x *CMsgClientToGCUnderDraftSell) String() string { func (*CMsgClientToGCUnderDraftSell) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftSell) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[288] + mi := &file_dota_gcmessages_client_proto_msgTypes[290] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22152,7 +22697,7 @@ func (x *CMsgClientToGCUnderDraftSell) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnderDraftSell.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftSell) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{288} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{290} } func (x *CMsgClientToGCUnderDraftSell) GetEventId() uint32 { @@ -22183,7 +22728,7 @@ type CMsgClientToGCUnderDraftSellResponse struct { func (x *CMsgClientToGCUnderDraftSellResponse) Reset() { *x = CMsgClientToGCUnderDraftSellResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[289] + mi := &file_dota_gcmessages_client_proto_msgTypes[291] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22196,7 +22741,7 @@ func (x *CMsgClientToGCUnderDraftSellResponse) String() string { func (*CMsgClientToGCUnderDraftSellResponse) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftSellResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[289] + mi := &file_dota_gcmessages_client_proto_msgTypes[291] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22209,7 +22754,7 @@ func (x *CMsgClientToGCUnderDraftSellResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCUnderDraftSellResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftSellResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{289} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{291} } func (x *CMsgClientToGCUnderDraftSellResponse) GetResult() EUnderDraftResponse { @@ -22252,7 +22797,7 @@ type CMsgClientToGCUnderDraftRedeemReward struct { func (x *CMsgClientToGCUnderDraftRedeemReward) Reset() { *x = CMsgClientToGCUnderDraftRedeemReward{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[290] + mi := &file_dota_gcmessages_client_proto_msgTypes[292] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22265,7 +22810,7 @@ func (x *CMsgClientToGCUnderDraftRedeemReward) String() string { func (*CMsgClientToGCUnderDraftRedeemReward) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftRedeemReward) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[290] + mi := &file_dota_gcmessages_client_proto_msgTypes[292] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22278,7 +22823,7 @@ func (x *CMsgClientToGCUnderDraftRedeemReward) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCUnderDraftRedeemReward.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftRedeemReward) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{290} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{292} } func (x *CMsgClientToGCUnderDraftRedeemReward) GetEventId() uint32 { @@ -22306,7 +22851,7 @@ type CMsgClientToGCUnderDraftRedeemRewardResponse struct { func (x *CMsgClientToGCUnderDraftRedeemRewardResponse) Reset() { *x = CMsgClientToGCUnderDraftRedeemRewardResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[291] + mi := &file_dota_gcmessages_client_proto_msgTypes[293] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22319,7 +22864,7 @@ func (x *CMsgClientToGCUnderDraftRedeemRewardResponse) String() string { func (*CMsgClientToGCUnderDraftRedeemRewardResponse) ProtoMessage() {} func (x *CMsgClientToGCUnderDraftRedeemRewardResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[291] + mi := &file_dota_gcmessages_client_proto_msgTypes[293] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22332,7 +22877,7 @@ func (x *CMsgClientToGCUnderDraftRedeemRewardResponse) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCUnderDraftRedeemRewardResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnderDraftRedeemRewardResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{291} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{293} } func (x *CMsgClientToGCUnderDraftRedeemRewardResponse) GetResult() EUnderDraftResponse { @@ -22355,7 +22900,7 @@ type CMsgClientToGCSubmitDraftTriviaMatchAnswer struct { func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswer) Reset() { *x = CMsgClientToGCSubmitDraftTriviaMatchAnswer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[292] + mi := &file_dota_gcmessages_client_proto_msgTypes[294] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22368,7 +22913,7 @@ func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswer) String() string { func (*CMsgClientToGCSubmitDraftTriviaMatchAnswer) ProtoMessage() {} func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswer) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[292] + mi := &file_dota_gcmessages_client_proto_msgTypes[294] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22381,7 +22926,7 @@ func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswer) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCSubmitDraftTriviaMatchAnswer.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSubmitDraftTriviaMatchAnswer) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{292} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{294} } func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswer) GetChoseRadiantAsWinner() bool { @@ -22416,7 +22961,7 @@ type CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse struct { func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse) Reset() { *x = CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[293] + mi := &file_dota_gcmessages_client_proto_msgTypes[295] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22429,7 +22974,7 @@ func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse) String() string { func (*CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse) ProtoMessage() {} func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[293] + mi := &file_dota_gcmessages_client_proto_msgTypes[295] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22442,7 +22987,7 @@ func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse) ProtoReflect() prot // Deprecated: Use CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{293} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{295} } func (x *CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse) GetResult() EDOTADraftTriviaAnswerResult { @@ -22465,7 +23010,7 @@ type CMsgDraftTriviaVoteCount struct { func (x *CMsgDraftTriviaVoteCount) Reset() { *x = CMsgDraftTriviaVoteCount{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[294] + mi := &file_dota_gcmessages_client_proto_msgTypes[296] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22478,7 +23023,7 @@ func (x *CMsgDraftTriviaVoteCount) String() string { func (*CMsgDraftTriviaVoteCount) ProtoMessage() {} func (x *CMsgDraftTriviaVoteCount) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[294] + mi := &file_dota_gcmessages_client_proto_msgTypes[296] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22491,7 +23036,7 @@ func (x *CMsgDraftTriviaVoteCount) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDraftTriviaVoteCount.ProtoReflect.Descriptor instead. func (*CMsgDraftTriviaVoteCount) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{294} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{296} } func (x *CMsgDraftTriviaVoteCount) GetTotalVotes() uint32 { @@ -22515,6 +23060,162 @@ func (x *CMsgDraftTriviaVoteCount) GetDireVotes() uint32 { return 0 } +type CMsgClientToGCRequestReporterUpdates struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CMsgClientToGCRequestReporterUpdates) Reset() { + *x = CMsgClientToGCRequestReporterUpdates{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[297] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRequestReporterUpdates) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRequestReporterUpdates) ProtoMessage() {} + +func (x *CMsgClientToGCRequestReporterUpdates) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[297] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRequestReporterUpdates.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRequestReporterUpdates) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{297} +} + +type CMsgClientToGCRequestReporterUpdatesResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EnumResult *CMsgClientToGCRequestReporterUpdatesResponse_EResponse `protobuf:"varint,1,opt,name=enum_result,json=enumResult,enum=dota.CMsgClientToGCRequestReporterUpdatesResponse_EResponse" json:"enum_result,omitempty"` + Updates []*CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate `protobuf:"bytes,2,rep,name=updates" json:"updates,omitempty"` + NumReported *int32 `protobuf:"varint,3,opt,name=num_reported,json=numReported" json:"num_reported,omitempty"` + NumNoActionTaken *int32 `protobuf:"varint,4,opt,name=num_no_action_taken,json=numNoActionTaken" json:"num_no_action_taken,omitempty"` +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse) Reset() { + *x = CMsgClientToGCRequestReporterUpdatesResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[298] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRequestReporterUpdatesResponse) ProtoMessage() {} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[298] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRequestReporterUpdatesResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRequestReporterUpdatesResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{298} +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse) GetEnumResult() CMsgClientToGCRequestReporterUpdatesResponse_EResponse { + if x != nil && x.EnumResult != nil { + return *x.EnumResult + } + return CMsgClientToGCRequestReporterUpdatesResponse_k_eInternalError +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse) GetUpdates() []*CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate { + if x != nil { + return x.Updates + } + return nil +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse) GetNumReported() int32 { + if x != nil && x.NumReported != nil { + return *x.NumReported + } + return 0 +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse) GetNumNoActionTaken() int32 { + if x != nil && x.NumNoActionTaken != nil { + return *x.NumNoActionTaken + } + return 0 +} + +type CMsgClientToGCAcknowledgeReporterUpdates struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MatchIds []uint64 `protobuf:"varint,1,rep,name=match_ids,json=matchIds" json:"match_ids,omitempty"` +} + +func (x *CMsgClientToGCAcknowledgeReporterUpdates) Reset() { + *x = CMsgClientToGCAcknowledgeReporterUpdates{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[299] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCAcknowledgeReporterUpdates) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCAcknowledgeReporterUpdates) ProtoMessage() {} + +func (x *CMsgClientToGCAcknowledgeReporterUpdates) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[299] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCAcknowledgeReporterUpdates.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCAcknowledgeReporterUpdates) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{299} +} + +func (x *CMsgClientToGCAcknowledgeReporterUpdates) GetMatchIds() []uint64 { + if x != nil { + return x.MatchIds + } + return nil +} + type CMsgClientToGCRecalibrateMMR struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -22524,7 +23225,7 @@ type CMsgClientToGCRecalibrateMMR struct { func (x *CMsgClientToGCRecalibrateMMR) Reset() { *x = CMsgClientToGCRecalibrateMMR{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[295] + mi := &file_dota_gcmessages_client_proto_msgTypes[300] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22537,7 +23238,7 @@ func (x *CMsgClientToGCRecalibrateMMR) String() string { func (*CMsgClientToGCRecalibrateMMR) ProtoMessage() {} func (x *CMsgClientToGCRecalibrateMMR) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[295] + mi := &file_dota_gcmessages_client_proto_msgTypes[300] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22550,7 +23251,7 @@ func (x *CMsgClientToGCRecalibrateMMR) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCRecalibrateMMR.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRecalibrateMMR) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{295} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{300} } type CMsgClientToGCRecalibrateMMRResponse struct { @@ -22564,7 +23265,7 @@ type CMsgClientToGCRecalibrateMMRResponse struct { func (x *CMsgClientToGCRecalibrateMMRResponse) Reset() { *x = CMsgClientToGCRecalibrateMMRResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[296] + mi := &file_dota_gcmessages_client_proto_msgTypes[301] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22577,7 +23278,7 @@ func (x *CMsgClientToGCRecalibrateMMRResponse) String() string { func (*CMsgClientToGCRecalibrateMMRResponse) ProtoMessage() {} func (x *CMsgClientToGCRecalibrateMMRResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[296] + mi := &file_dota_gcmessages_client_proto_msgTypes[301] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22590,7 +23291,7 @@ func (x *CMsgClientToGCRecalibrateMMRResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCRecalibrateMMRResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRecalibrateMMRResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{296} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{301} } func (x *CMsgClientToGCRecalibrateMMRResponse) GetResult() CMsgClientToGCRecalibrateMMRResponse_EResponse { @@ -22613,7 +23314,7 @@ type CMsgDOTAPostGameItemAwardNotification struct { func (x *CMsgDOTAPostGameItemAwardNotification) Reset() { *x = CMsgDOTAPostGameItemAwardNotification{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[297] + mi := &file_dota_gcmessages_client_proto_msgTypes[302] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22626,7 +23327,7 @@ func (x *CMsgDOTAPostGameItemAwardNotification) String() string { func (*CMsgDOTAPostGameItemAwardNotification) ProtoMessage() {} func (x *CMsgDOTAPostGameItemAwardNotification) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[297] + mi := &file_dota_gcmessages_client_proto_msgTypes[302] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22639,7 +23340,7 @@ func (x *CMsgDOTAPostGameItemAwardNotification) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTAPostGameItemAwardNotification.ProtoReflect.Descriptor instead. func (*CMsgDOTAPostGameItemAwardNotification) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{297} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{302} } func (x *CMsgDOTAPostGameItemAwardNotification) GetReceiverAccountId() uint32 { @@ -22672,7 +23373,7 @@ type CMsgClientToGCGetOWMatchDetails struct { func (x *CMsgClientToGCGetOWMatchDetails) Reset() { *x = CMsgClientToGCGetOWMatchDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[298] + mi := &file_dota_gcmessages_client_proto_msgTypes[303] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22685,7 +23386,7 @@ func (x *CMsgClientToGCGetOWMatchDetails) String() string { func (*CMsgClientToGCGetOWMatchDetails) ProtoMessage() {} func (x *CMsgClientToGCGetOWMatchDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[298] + mi := &file_dota_gcmessages_client_proto_msgTypes[303] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22698,7 +23399,7 @@ func (x *CMsgClientToGCGetOWMatchDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetOWMatchDetails.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetOWMatchDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{298} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{303} } type CMsgClientToGCGetOWMatchDetailsResponse struct { @@ -22722,7 +23423,7 @@ type CMsgClientToGCGetOWMatchDetailsResponse struct { func (x *CMsgClientToGCGetOWMatchDetailsResponse) Reset() { *x = CMsgClientToGCGetOWMatchDetailsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[299] + mi := &file_dota_gcmessages_client_proto_msgTypes[304] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22735,7 +23436,7 @@ func (x *CMsgClientToGCGetOWMatchDetailsResponse) String() string { func (*CMsgClientToGCGetOWMatchDetailsResponse) ProtoMessage() {} func (x *CMsgClientToGCGetOWMatchDetailsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[299] + mi := &file_dota_gcmessages_client_proto_msgTypes[304] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22748,7 +23449,7 @@ func (x *CMsgClientToGCGetOWMatchDetailsResponse) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgClientToGCGetOWMatchDetailsResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetOWMatchDetailsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{299} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{304} } func (x *CMsgClientToGCGetOWMatchDetailsResponse) GetResult() CMsgClientToGCGetOWMatchDetailsResponse_EResponse { @@ -22842,7 +23543,7 @@ type CMsgClientToGCSubmitOWConviction struct { func (x *CMsgClientToGCSubmitOWConviction) Reset() { *x = CMsgClientToGCSubmitOWConviction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[300] + mi := &file_dota_gcmessages_client_proto_msgTypes[305] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22855,7 +23556,7 @@ func (x *CMsgClientToGCSubmitOWConviction) String() string { func (*CMsgClientToGCSubmitOWConviction) ProtoMessage() {} func (x *CMsgClientToGCSubmitOWConviction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[300] + mi := &file_dota_gcmessages_client_proto_msgTypes[305] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22868,7 +23569,7 @@ func (x *CMsgClientToGCSubmitOWConviction) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCSubmitOWConviction.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSubmitOWConviction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{300} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{305} } func (x *CMsgClientToGCSubmitOWConviction) GetOverwatchReplayId() uint64 { @@ -22911,7 +23612,7 @@ type CMsgClientToGCSubmitOWConvictionResponse struct { func (x *CMsgClientToGCSubmitOWConvictionResponse) Reset() { *x = CMsgClientToGCSubmitOWConvictionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[301] + mi := &file_dota_gcmessages_client_proto_msgTypes[306] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22924,7 +23625,7 @@ func (x *CMsgClientToGCSubmitOWConvictionResponse) String() string { func (*CMsgClientToGCSubmitOWConvictionResponse) ProtoMessage() {} func (x *CMsgClientToGCSubmitOWConvictionResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[301] + mi := &file_dota_gcmessages_client_proto_msgTypes[306] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22937,7 +23638,7 @@ func (x *CMsgClientToGCSubmitOWConvictionResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCSubmitOWConvictionResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSubmitOWConvictionResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{301} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{306} } func (x *CMsgClientToGCSubmitOWConvictionResponse) GetResult() CMsgClientToGCSubmitOWConvictionResponse_EResponse { @@ -22963,7 +23664,7 @@ type CMsgClientToGCChinaSSAURLRequest struct { func (x *CMsgClientToGCChinaSSAURLRequest) Reset() { *x = CMsgClientToGCChinaSSAURLRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[302] + mi := &file_dota_gcmessages_client_proto_msgTypes[307] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -22976,7 +23677,7 @@ func (x *CMsgClientToGCChinaSSAURLRequest) String() string { func (*CMsgClientToGCChinaSSAURLRequest) ProtoMessage() {} func (x *CMsgClientToGCChinaSSAURLRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[302] + mi := &file_dota_gcmessages_client_proto_msgTypes[307] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22989,7 +23690,7 @@ func (x *CMsgClientToGCChinaSSAURLRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCChinaSSAURLRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCChinaSSAURLRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{302} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{307} } type CMsgClientToGCChinaSSAURLResponse struct { @@ -23003,7 +23704,7 @@ type CMsgClientToGCChinaSSAURLResponse struct { func (x *CMsgClientToGCChinaSSAURLResponse) Reset() { *x = CMsgClientToGCChinaSSAURLResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[303] + mi := &file_dota_gcmessages_client_proto_msgTypes[308] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23016,7 +23717,7 @@ func (x *CMsgClientToGCChinaSSAURLResponse) String() string { func (*CMsgClientToGCChinaSSAURLResponse) ProtoMessage() {} func (x *CMsgClientToGCChinaSSAURLResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[303] + mi := &file_dota_gcmessages_client_proto_msgTypes[308] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23029,7 +23730,7 @@ func (x *CMsgClientToGCChinaSSAURLResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCChinaSSAURLResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCChinaSSAURLResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{303} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{308} } func (x *CMsgClientToGCChinaSSAURLResponse) GetAgreementUrl() string { @@ -23048,7 +23749,7 @@ type CMsgClientToGCChinaSSAAcceptedRequest struct { func (x *CMsgClientToGCChinaSSAAcceptedRequest) Reset() { *x = CMsgClientToGCChinaSSAAcceptedRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[304] + mi := &file_dota_gcmessages_client_proto_msgTypes[309] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23061,7 +23762,7 @@ func (x *CMsgClientToGCChinaSSAAcceptedRequest) String() string { func (*CMsgClientToGCChinaSSAAcceptedRequest) ProtoMessage() {} func (x *CMsgClientToGCChinaSSAAcceptedRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[304] + mi := &file_dota_gcmessages_client_proto_msgTypes[309] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23074,7 +23775,7 @@ func (x *CMsgClientToGCChinaSSAAcceptedRequest) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCChinaSSAAcceptedRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCChinaSSAAcceptedRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{304} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{309} } type CMsgClientToGCChinaSSAAcceptedResponse struct { @@ -23088,7 +23789,7 @@ type CMsgClientToGCChinaSSAAcceptedResponse struct { func (x *CMsgClientToGCChinaSSAAcceptedResponse) Reset() { *x = CMsgClientToGCChinaSSAAcceptedResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[305] + mi := &file_dota_gcmessages_client_proto_msgTypes[310] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23101,7 +23802,7 @@ func (x *CMsgClientToGCChinaSSAAcceptedResponse) String() string { func (*CMsgClientToGCChinaSSAAcceptedResponse) ProtoMessage() {} func (x *CMsgClientToGCChinaSSAAcceptedResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[305] + mi := &file_dota_gcmessages_client_proto_msgTypes[310] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23114,7 +23815,7 @@ func (x *CMsgClientToGCChinaSSAAcceptedResponse) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCChinaSSAAcceptedResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCChinaSSAAcceptedResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{305} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{310} } func (x *CMsgClientToGCChinaSSAAcceptedResponse) GetAgreementAccepted() bool { @@ -23135,7 +23836,7 @@ type CMsgGCToClientOverwatchCasesAvailable struct { func (x *CMsgGCToClientOverwatchCasesAvailable) Reset() { *x = CMsgGCToClientOverwatchCasesAvailable{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[306] + mi := &file_dota_gcmessages_client_proto_msgTypes[311] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23148,7 +23849,7 @@ func (x *CMsgGCToClientOverwatchCasesAvailable) String() string { func (*CMsgGCToClientOverwatchCasesAvailable) ProtoMessage() {} func (x *CMsgGCToClientOverwatchCasesAvailable) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[306] + mi := &file_dota_gcmessages_client_proto_msgTypes[311] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23161,7 +23862,7 @@ func (x *CMsgGCToClientOverwatchCasesAvailable) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCToClientOverwatchCasesAvailable.ProtoReflect.Descriptor instead. func (*CMsgGCToClientOverwatchCasesAvailable) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{306} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{311} } func (x *CMsgGCToClientOverwatchCasesAvailable) GetExpireTime() uint32 { @@ -23183,7 +23884,7 @@ type CMsgClientToGCStartWatchingOverwatch struct { func (x *CMsgClientToGCStartWatchingOverwatch) Reset() { *x = CMsgClientToGCStartWatchingOverwatch{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[307] + mi := &file_dota_gcmessages_client_proto_msgTypes[312] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23196,7 +23897,7 @@ func (x *CMsgClientToGCStartWatchingOverwatch) String() string { func (*CMsgClientToGCStartWatchingOverwatch) ProtoMessage() {} func (x *CMsgClientToGCStartWatchingOverwatch) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[307] + mi := &file_dota_gcmessages_client_proto_msgTypes[312] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23209,7 +23910,7 @@ func (x *CMsgClientToGCStartWatchingOverwatch) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCStartWatchingOverwatch.ProtoReflect.Descriptor instead. func (*CMsgClientToGCStartWatchingOverwatch) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{307} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{312} } func (x *CMsgClientToGCStartWatchingOverwatch) GetOverwatchReplayId() uint64 { @@ -23238,7 +23939,7 @@ type CMsgClientToGCStopWatchingOverwatch struct { func (x *CMsgClientToGCStopWatchingOverwatch) Reset() { *x = CMsgClientToGCStopWatchingOverwatch{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[308] + mi := &file_dota_gcmessages_client_proto_msgTypes[313] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23251,7 +23952,7 @@ func (x *CMsgClientToGCStopWatchingOverwatch) String() string { func (*CMsgClientToGCStopWatchingOverwatch) ProtoMessage() {} func (x *CMsgClientToGCStopWatchingOverwatch) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[308] + mi := &file_dota_gcmessages_client_proto_msgTypes[313] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23264,7 +23965,7 @@ func (x *CMsgClientToGCStopWatchingOverwatch) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCStopWatchingOverwatch.ProtoReflect.Descriptor instead. func (*CMsgClientToGCStopWatchingOverwatch) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{308} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{313} } func (x *CMsgClientToGCStopWatchingOverwatch) GetOverwatchReplayId() uint64 { @@ -23292,7 +23993,7 @@ type CMsgClientToGCOverwatchReplayError struct { func (x *CMsgClientToGCOverwatchReplayError) Reset() { *x = CMsgClientToGCOverwatchReplayError{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[309] + mi := &file_dota_gcmessages_client_proto_msgTypes[314] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23305,7 +24006,7 @@ func (x *CMsgClientToGCOverwatchReplayError) String() string { func (*CMsgClientToGCOverwatchReplayError) ProtoMessage() {} func (x *CMsgClientToGCOverwatchReplayError) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[309] + mi := &file_dota_gcmessages_client_proto_msgTypes[314] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23318,7 +24019,7 @@ func (x *CMsgClientToGCOverwatchReplayError) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCOverwatchReplayError.ProtoReflect.Descriptor instead. func (*CMsgClientToGCOverwatchReplayError) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{309} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{314} } func (x *CMsgClientToGCOverwatchReplayError) GetOverwatchReplayId() uint64 { @@ -23337,7 +24038,7 @@ type CMsgClientToGCGetDPCFavorites struct { func (x *CMsgClientToGCGetDPCFavorites) Reset() { *x = CMsgClientToGCGetDPCFavorites{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[310] + mi := &file_dota_gcmessages_client_proto_msgTypes[315] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23350,7 +24051,7 @@ func (x *CMsgClientToGCGetDPCFavorites) String() string { func (*CMsgClientToGCGetDPCFavorites) ProtoMessage() {} func (x *CMsgClientToGCGetDPCFavorites) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[310] + mi := &file_dota_gcmessages_client_proto_msgTypes[315] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23363,7 +24064,7 @@ func (x *CMsgClientToGCGetDPCFavorites) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetDPCFavorites.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetDPCFavorites) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{310} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{315} } type CMsgClientToGCGetDPCFavoritesResponse struct { @@ -23378,7 +24079,7 @@ type CMsgClientToGCGetDPCFavoritesResponse struct { func (x *CMsgClientToGCGetDPCFavoritesResponse) Reset() { *x = CMsgClientToGCGetDPCFavoritesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[311] + mi := &file_dota_gcmessages_client_proto_msgTypes[316] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23391,7 +24092,7 @@ func (x *CMsgClientToGCGetDPCFavoritesResponse) String() string { func (*CMsgClientToGCGetDPCFavoritesResponse) ProtoMessage() {} func (x *CMsgClientToGCGetDPCFavoritesResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[311] + mi := &file_dota_gcmessages_client_proto_msgTypes[316] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23404,7 +24105,7 @@ func (x *CMsgClientToGCGetDPCFavoritesResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCGetDPCFavoritesResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetDPCFavoritesResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{311} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{316} } func (x *CMsgClientToGCGetDPCFavoritesResponse) GetResult() CMsgClientToGCGetDPCFavoritesResponse_EResponse { @@ -23434,7 +24135,7 @@ type CMsgClientToGCSetDPCFavoriteState struct { func (x *CMsgClientToGCSetDPCFavoriteState) Reset() { *x = CMsgClientToGCSetDPCFavoriteState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[312] + mi := &file_dota_gcmessages_client_proto_msgTypes[317] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23447,7 +24148,7 @@ func (x *CMsgClientToGCSetDPCFavoriteState) String() string { func (*CMsgClientToGCSetDPCFavoriteState) ProtoMessage() {} func (x *CMsgClientToGCSetDPCFavoriteState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[312] + mi := &file_dota_gcmessages_client_proto_msgTypes[317] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23460,7 +24161,7 @@ func (x *CMsgClientToGCSetDPCFavoriteState) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCSetDPCFavoriteState.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetDPCFavoriteState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{312} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{317} } func (x *CMsgClientToGCSetDPCFavoriteState) GetFavoriteType() EDPCFavoriteType { @@ -23495,7 +24196,7 @@ type CMsgClientToGCSetDPCFavoriteStateResponse struct { func (x *CMsgClientToGCSetDPCFavoriteStateResponse) Reset() { *x = CMsgClientToGCSetDPCFavoriteStateResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[313] + mi := &file_dota_gcmessages_client_proto_msgTypes[318] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23508,7 +24209,7 @@ func (x *CMsgClientToGCSetDPCFavoriteStateResponse) String() string { func (*CMsgClientToGCSetDPCFavoriteStateResponse) ProtoMessage() {} func (x *CMsgClientToGCSetDPCFavoriteStateResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[313] + mi := &file_dota_gcmessages_client_proto_msgTypes[318] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23521,7 +24222,7 @@ func (x *CMsgClientToGCSetDPCFavoriteStateResponse) ProtoReflect() protoreflect. // Deprecated: Use CMsgClientToGCSetDPCFavoriteStateResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetDPCFavoriteStateResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{313} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{318} } func (x *CMsgClientToGCSetDPCFavoriteStateResponse) GetResult() CMsgClientToGCSetDPCFavoriteStateResponse_EResponse { @@ -23543,7 +24244,7 @@ type CMsgClientToGCSetEventActiveSeasonID struct { func (x *CMsgClientToGCSetEventActiveSeasonID) Reset() { *x = CMsgClientToGCSetEventActiveSeasonID{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[314] + mi := &file_dota_gcmessages_client_proto_msgTypes[319] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23556,7 +24257,7 @@ func (x *CMsgClientToGCSetEventActiveSeasonID) String() string { func (*CMsgClientToGCSetEventActiveSeasonID) ProtoMessage() {} func (x *CMsgClientToGCSetEventActiveSeasonID) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[314] + mi := &file_dota_gcmessages_client_proto_msgTypes[319] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23569,7 +24270,7 @@ func (x *CMsgClientToGCSetEventActiveSeasonID) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCSetEventActiveSeasonID.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetEventActiveSeasonID) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{314} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{319} } func (x *CMsgClientToGCSetEventActiveSeasonID) GetEventId() uint32 { @@ -23597,7 +24298,7 @@ type CMsgClientToGCSetEventActiveSeasonIDResponse struct { func (x *CMsgClientToGCSetEventActiveSeasonIDResponse) Reset() { *x = CMsgClientToGCSetEventActiveSeasonIDResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[315] + mi := &file_dota_gcmessages_client_proto_msgTypes[320] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23610,7 +24311,7 @@ func (x *CMsgClientToGCSetEventActiveSeasonIDResponse) String() string { func (*CMsgClientToGCSetEventActiveSeasonIDResponse) ProtoMessage() {} func (x *CMsgClientToGCSetEventActiveSeasonIDResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[315] + mi := &file_dota_gcmessages_client_proto_msgTypes[320] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23623,7 +24324,7 @@ func (x *CMsgClientToGCSetEventActiveSeasonIDResponse) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCSetEventActiveSeasonIDResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetEventActiveSeasonIDResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{315} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{320} } func (x *CMsgClientToGCSetEventActiveSeasonIDResponse) GetResult() CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse { @@ -23647,7 +24348,7 @@ type CMsgClientToGCPurchaseLabyrinthBlessings struct { func (x *CMsgClientToGCPurchaseLabyrinthBlessings) Reset() { *x = CMsgClientToGCPurchaseLabyrinthBlessings{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[316] + mi := &file_dota_gcmessages_client_proto_msgTypes[321] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23660,7 +24361,7 @@ func (x *CMsgClientToGCPurchaseLabyrinthBlessings) String() string { func (*CMsgClientToGCPurchaseLabyrinthBlessings) ProtoMessage() {} func (x *CMsgClientToGCPurchaseLabyrinthBlessings) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[316] + mi := &file_dota_gcmessages_client_proto_msgTypes[321] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23673,7 +24374,7 @@ func (x *CMsgClientToGCPurchaseLabyrinthBlessings) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCPurchaseLabyrinthBlessings.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPurchaseLabyrinthBlessings) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{316} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{321} } func (x *CMsgClientToGCPurchaseLabyrinthBlessings) GetEventId() EEvent { @@ -23715,7 +24416,7 @@ type CMsgClientToGCPurchaseLabyrinthBlessingsResponse struct { func (x *CMsgClientToGCPurchaseLabyrinthBlessingsResponse) Reset() { *x = CMsgClientToGCPurchaseLabyrinthBlessingsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[317] + mi := &file_dota_gcmessages_client_proto_msgTypes[322] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23728,7 +24429,7 @@ func (x *CMsgClientToGCPurchaseLabyrinthBlessingsResponse) String() string { func (*CMsgClientToGCPurchaseLabyrinthBlessingsResponse) ProtoMessage() {} func (x *CMsgClientToGCPurchaseLabyrinthBlessingsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[317] + mi := &file_dota_gcmessages_client_proto_msgTypes[322] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23741,7 +24442,7 @@ func (x *CMsgClientToGCPurchaseLabyrinthBlessingsResponse) ProtoReflect() protor // Deprecated: Use CMsgClientToGCPurchaseLabyrinthBlessingsResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPurchaseLabyrinthBlessingsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{317} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{322} } func (x *CMsgClientToGCPurchaseLabyrinthBlessingsResponse) GetResult() CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse { @@ -23762,7 +24463,7 @@ type CMsgClientToGCGetStickerbookRequest struct { func (x *CMsgClientToGCGetStickerbookRequest) Reset() { *x = CMsgClientToGCGetStickerbookRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[318] + mi := &file_dota_gcmessages_client_proto_msgTypes[323] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23775,7 +24476,7 @@ func (x *CMsgClientToGCGetStickerbookRequest) String() string { func (*CMsgClientToGCGetStickerbookRequest) ProtoMessage() {} func (x *CMsgClientToGCGetStickerbookRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[318] + mi := &file_dota_gcmessages_client_proto_msgTypes[323] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23788,7 +24489,7 @@ func (x *CMsgClientToGCGetStickerbookRequest) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCGetStickerbookRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetStickerbookRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{318} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{323} } func (x *CMsgClientToGCGetStickerbookRequest) GetAccountId() uint32 { @@ -23810,7 +24511,7 @@ type CMsgClientToGCGetStickerbookResponse struct { func (x *CMsgClientToGCGetStickerbookResponse) Reset() { *x = CMsgClientToGCGetStickerbookResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[319] + mi := &file_dota_gcmessages_client_proto_msgTypes[324] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23823,7 +24524,7 @@ func (x *CMsgClientToGCGetStickerbookResponse) String() string { func (*CMsgClientToGCGetStickerbookResponse) ProtoMessage() {} func (x *CMsgClientToGCGetStickerbookResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[319] + mi := &file_dota_gcmessages_client_proto_msgTypes[324] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23836,7 +24537,7 @@ func (x *CMsgClientToGCGetStickerbookResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCGetStickerbookResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetStickerbookResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{319} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{324} } func (x *CMsgClientToGCGetStickerbookResponse) GetResponse() CMsgClientToGCGetStickerbookResponse_EResponse { @@ -23866,7 +24567,7 @@ type CMsgClientToGCCreateStickerbookPageRequest struct { func (x *CMsgClientToGCCreateStickerbookPageRequest) Reset() { *x = CMsgClientToGCCreateStickerbookPageRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[320] + mi := &file_dota_gcmessages_client_proto_msgTypes[325] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23879,7 +24580,7 @@ func (x *CMsgClientToGCCreateStickerbookPageRequest) String() string { func (*CMsgClientToGCCreateStickerbookPageRequest) ProtoMessage() {} func (x *CMsgClientToGCCreateStickerbookPageRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[320] + mi := &file_dota_gcmessages_client_proto_msgTypes[325] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23892,7 +24593,7 @@ func (x *CMsgClientToGCCreateStickerbookPageRequest) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCCreateStickerbookPageRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateStickerbookPageRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{320} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{325} } func (x *CMsgClientToGCCreateStickerbookPageRequest) GetTeamId() uint32 { @@ -23928,7 +24629,7 @@ type CMsgClientToGCCreateStickerbookPageResponse struct { func (x *CMsgClientToGCCreateStickerbookPageResponse) Reset() { *x = CMsgClientToGCCreateStickerbookPageResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[321] + mi := &file_dota_gcmessages_client_proto_msgTypes[326] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23941,7 +24642,7 @@ func (x *CMsgClientToGCCreateStickerbookPageResponse) String() string { func (*CMsgClientToGCCreateStickerbookPageResponse) ProtoMessage() {} func (x *CMsgClientToGCCreateStickerbookPageResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[321] + mi := &file_dota_gcmessages_client_proto_msgTypes[326] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23954,7 +24655,7 @@ func (x *CMsgClientToGCCreateStickerbookPageResponse) ProtoReflect() protoreflec // Deprecated: Use CMsgClientToGCCreateStickerbookPageResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateStickerbookPageResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{321} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{326} } func (x *CMsgClientToGCCreateStickerbookPageResponse) GetResponse() CMsgClientToGCCreateStickerbookPageResponse_EResponse { @@ -23984,7 +24685,7 @@ type CMsgClientToGCDeleteStickerbookPageRequest struct { func (x *CMsgClientToGCDeleteStickerbookPageRequest) Reset() { *x = CMsgClientToGCDeleteStickerbookPageRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[322] + mi := &file_dota_gcmessages_client_proto_msgTypes[327] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -23997,7 +24698,7 @@ func (x *CMsgClientToGCDeleteStickerbookPageRequest) String() string { func (*CMsgClientToGCDeleteStickerbookPageRequest) ProtoMessage() {} func (x *CMsgClientToGCDeleteStickerbookPageRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[322] + mi := &file_dota_gcmessages_client_proto_msgTypes[327] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24010,7 +24711,7 @@ func (x *CMsgClientToGCDeleteStickerbookPageRequest) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCDeleteStickerbookPageRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCDeleteStickerbookPageRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{322} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{327} } func (x *CMsgClientToGCDeleteStickerbookPageRequest) GetPageNum() uint32 { @@ -24045,7 +24746,7 @@ type CMsgClientToGCDeleteStickerbookPageResponse struct { func (x *CMsgClientToGCDeleteStickerbookPageResponse) Reset() { *x = CMsgClientToGCDeleteStickerbookPageResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[323] + mi := &file_dota_gcmessages_client_proto_msgTypes[328] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24058,7 +24759,7 @@ func (x *CMsgClientToGCDeleteStickerbookPageResponse) String() string { func (*CMsgClientToGCDeleteStickerbookPageResponse) ProtoMessage() {} func (x *CMsgClientToGCDeleteStickerbookPageResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[323] + mi := &file_dota_gcmessages_client_proto_msgTypes[328] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24071,7 +24772,7 @@ func (x *CMsgClientToGCDeleteStickerbookPageResponse) ProtoReflect() protoreflec // Deprecated: Use CMsgClientToGCDeleteStickerbookPageResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCDeleteStickerbookPageResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{323} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{328} } func (x *CMsgClientToGCDeleteStickerbookPageResponse) GetResponse() CMsgClientToGCDeleteStickerbookPageResponse_EResponse { @@ -24092,7 +24793,7 @@ type CMsgClientToGCPlaceStickersRequest struct { func (x *CMsgClientToGCPlaceStickersRequest) Reset() { *x = CMsgClientToGCPlaceStickersRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[324] + mi := &file_dota_gcmessages_client_proto_msgTypes[329] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24105,7 +24806,7 @@ func (x *CMsgClientToGCPlaceStickersRequest) String() string { func (*CMsgClientToGCPlaceStickersRequest) ProtoMessage() {} func (x *CMsgClientToGCPlaceStickersRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[324] + mi := &file_dota_gcmessages_client_proto_msgTypes[329] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24118,7 +24819,7 @@ func (x *CMsgClientToGCPlaceStickersRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCPlaceStickersRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlaceStickersRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{324} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{329} } func (x *CMsgClientToGCPlaceStickersRequest) GetStickerItems() []*CMsgClientToGCPlaceStickersRequest_StickerItem { @@ -24139,7 +24840,7 @@ type CMsgClientToGCPlaceStickersResponse struct { func (x *CMsgClientToGCPlaceStickersResponse) Reset() { *x = CMsgClientToGCPlaceStickersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[325] + mi := &file_dota_gcmessages_client_proto_msgTypes[330] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24152,7 +24853,7 @@ func (x *CMsgClientToGCPlaceStickersResponse) String() string { func (*CMsgClientToGCPlaceStickersResponse) ProtoMessage() {} func (x *CMsgClientToGCPlaceStickersResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[325] + mi := &file_dota_gcmessages_client_proto_msgTypes[330] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24165,7 +24866,7 @@ func (x *CMsgClientToGCPlaceStickersResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCPlaceStickersResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlaceStickersResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{325} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{330} } func (x *CMsgClientToGCPlaceStickersResponse) GetResponse() CMsgClientToGCPlaceStickersResponse_EResponse { @@ -24186,7 +24887,7 @@ type CMsgClientToGCPlaceCollectionStickersRequest struct { func (x *CMsgClientToGCPlaceCollectionStickersRequest) Reset() { *x = CMsgClientToGCPlaceCollectionStickersRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[326] + mi := &file_dota_gcmessages_client_proto_msgTypes[331] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24199,7 +24900,7 @@ func (x *CMsgClientToGCPlaceCollectionStickersRequest) String() string { func (*CMsgClientToGCPlaceCollectionStickersRequest) ProtoMessage() {} func (x *CMsgClientToGCPlaceCollectionStickersRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[326] + mi := &file_dota_gcmessages_client_proto_msgTypes[331] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24212,7 +24913,7 @@ func (x *CMsgClientToGCPlaceCollectionStickersRequest) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCPlaceCollectionStickersRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlaceCollectionStickersRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{326} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{331} } func (x *CMsgClientToGCPlaceCollectionStickersRequest) GetSlots() []*CMsgClientToGCPlaceCollectionStickersRequest_Slot { @@ -24233,7 +24934,7 @@ type CMsgClientToGCPlaceCollectionStickersResponse struct { func (x *CMsgClientToGCPlaceCollectionStickersResponse) Reset() { *x = CMsgClientToGCPlaceCollectionStickersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[327] + mi := &file_dota_gcmessages_client_proto_msgTypes[332] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24246,7 +24947,7 @@ func (x *CMsgClientToGCPlaceCollectionStickersResponse) String() string { func (*CMsgClientToGCPlaceCollectionStickersResponse) ProtoMessage() {} func (x *CMsgClientToGCPlaceCollectionStickersResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[327] + mi := &file_dota_gcmessages_client_proto_msgTypes[332] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24259,7 +24960,7 @@ func (x *CMsgClientToGCPlaceCollectionStickersResponse) ProtoReflect() protorefl // Deprecated: Use CMsgClientToGCPlaceCollectionStickersResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlaceCollectionStickersResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{327} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{332} } func (x *CMsgClientToGCPlaceCollectionStickersResponse) GetResponse() CMsgClientToGCPlaceCollectionStickersResponse_EResponse { @@ -24280,7 +24981,7 @@ type CMsgClientToGCOrderStickerbookTeamPageRequest struct { func (x *CMsgClientToGCOrderStickerbookTeamPageRequest) Reset() { *x = CMsgClientToGCOrderStickerbookTeamPageRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[328] + mi := &file_dota_gcmessages_client_proto_msgTypes[333] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24293,7 +24994,7 @@ func (x *CMsgClientToGCOrderStickerbookTeamPageRequest) String() string { func (*CMsgClientToGCOrderStickerbookTeamPageRequest) ProtoMessage() {} func (x *CMsgClientToGCOrderStickerbookTeamPageRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[328] + mi := &file_dota_gcmessages_client_proto_msgTypes[333] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24306,7 +25007,7 @@ func (x *CMsgClientToGCOrderStickerbookTeamPageRequest) ProtoReflect() protorefl // Deprecated: Use CMsgClientToGCOrderStickerbookTeamPageRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCOrderStickerbookTeamPageRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{328} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{333} } func (x *CMsgClientToGCOrderStickerbookTeamPageRequest) GetPageOrderSequence() *CMsgStickerbookTeamPageOrderSequence { @@ -24327,7 +25028,7 @@ type CMsgClientToGCOrderStickerbookTeamPageResponse struct { func (x *CMsgClientToGCOrderStickerbookTeamPageResponse) Reset() { *x = CMsgClientToGCOrderStickerbookTeamPageResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[329] + mi := &file_dota_gcmessages_client_proto_msgTypes[334] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24340,7 +25041,7 @@ func (x *CMsgClientToGCOrderStickerbookTeamPageResponse) String() string { func (*CMsgClientToGCOrderStickerbookTeamPageResponse) ProtoMessage() {} func (x *CMsgClientToGCOrderStickerbookTeamPageResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[329] + mi := &file_dota_gcmessages_client_proto_msgTypes[334] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24353,7 +25054,7 @@ func (x *CMsgClientToGCOrderStickerbookTeamPageResponse) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCOrderStickerbookTeamPageResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCOrderStickerbookTeamPageResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{329} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{334} } func (x *CMsgClientToGCOrderStickerbookTeamPageResponse) GetResponse() CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse { @@ -24376,7 +25077,7 @@ type CMsgClientToGCSetHeroSticker struct { func (x *CMsgClientToGCSetHeroSticker) Reset() { *x = CMsgClientToGCSetHeroSticker{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[330] + mi := &file_dota_gcmessages_client_proto_msgTypes[335] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24389,7 +25090,7 @@ func (x *CMsgClientToGCSetHeroSticker) String() string { func (*CMsgClientToGCSetHeroSticker) ProtoMessage() {} func (x *CMsgClientToGCSetHeroSticker) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[330] + mi := &file_dota_gcmessages_client_proto_msgTypes[335] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24402,7 +25103,7 @@ func (x *CMsgClientToGCSetHeroSticker) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCSetHeroSticker.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetHeroSticker) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{330} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{335} } func (x *CMsgClientToGCSetHeroSticker) GetHeroId() uint32 { @@ -24437,7 +25138,7 @@ type CMsgClientToGCSetHeroStickerResponse struct { func (x *CMsgClientToGCSetHeroStickerResponse) Reset() { *x = CMsgClientToGCSetHeroStickerResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[331] + mi := &file_dota_gcmessages_client_proto_msgTypes[336] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24450,7 +25151,7 @@ func (x *CMsgClientToGCSetHeroStickerResponse) String() string { func (*CMsgClientToGCSetHeroStickerResponse) ProtoMessage() {} func (x *CMsgClientToGCSetHeroStickerResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[331] + mi := &file_dota_gcmessages_client_proto_msgTypes[336] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24463,7 +25164,7 @@ func (x *CMsgClientToGCSetHeroStickerResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgClientToGCSetHeroStickerResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetHeroStickerResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{331} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{336} } func (x *CMsgClientToGCSetHeroStickerResponse) GetResponse() CMsgClientToGCSetHeroStickerResponse_EResponse { @@ -24482,7 +25183,7 @@ type CMsgClientToGCGetHeroStickers struct { func (x *CMsgClientToGCGetHeroStickers) Reset() { *x = CMsgClientToGCGetHeroStickers{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[332] + mi := &file_dota_gcmessages_client_proto_msgTypes[337] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24495,7 +25196,7 @@ func (x *CMsgClientToGCGetHeroStickers) String() string { func (*CMsgClientToGCGetHeroStickers) ProtoMessage() {} func (x *CMsgClientToGCGetHeroStickers) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[332] + mi := &file_dota_gcmessages_client_proto_msgTypes[337] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24508,7 +25209,7 @@ func (x *CMsgClientToGCGetHeroStickers) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetHeroStickers.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetHeroStickers) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{332} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{337} } type CMsgClientToGCGetHeroStickersResponse struct { @@ -24523,7 +25224,7 @@ type CMsgClientToGCGetHeroStickersResponse struct { func (x *CMsgClientToGCGetHeroStickersResponse) Reset() { *x = CMsgClientToGCGetHeroStickersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[333] + mi := &file_dota_gcmessages_client_proto_msgTypes[338] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24536,7 +25237,7 @@ func (x *CMsgClientToGCGetHeroStickersResponse) String() string { func (*CMsgClientToGCGetHeroStickersResponse) ProtoMessage() {} func (x *CMsgClientToGCGetHeroStickersResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[333] + mi := &file_dota_gcmessages_client_proto_msgTypes[338] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24549,7 +25250,7 @@ func (x *CMsgClientToGCGetHeroStickersResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCGetHeroStickersResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetHeroStickersResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{333} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{338} } func (x *CMsgClientToGCGetHeroStickersResponse) GetResponse() CMsgClientToGCGetHeroStickersResponse_EResponse { @@ -24578,7 +25279,7 @@ type CMsgClientToGCSetFavoritePage struct { func (x *CMsgClientToGCSetFavoritePage) Reset() { *x = CMsgClientToGCSetFavoritePage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[334] + mi := &file_dota_gcmessages_client_proto_msgTypes[339] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24591,7 +25292,7 @@ func (x *CMsgClientToGCSetFavoritePage) String() string { func (*CMsgClientToGCSetFavoritePage) ProtoMessage() {} func (x *CMsgClientToGCSetFavoritePage) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[334] + mi := &file_dota_gcmessages_client_proto_msgTypes[339] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24604,7 +25305,7 @@ func (x *CMsgClientToGCSetFavoritePage) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCSetFavoritePage.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetFavoritePage) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{334} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{339} } func (x *CMsgClientToGCSetFavoritePage) GetPageNum() uint32 { @@ -24632,7 +25333,7 @@ type CMsgClientToGCSetFavoritePageResponse struct { func (x *CMsgClientToGCSetFavoritePageResponse) Reset() { *x = CMsgClientToGCSetFavoritePageResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[335] + mi := &file_dota_gcmessages_client_proto_msgTypes[340] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24645,7 +25346,7 @@ func (x *CMsgClientToGCSetFavoritePageResponse) String() string { func (*CMsgClientToGCSetFavoritePageResponse) ProtoMessage() {} func (x *CMsgClientToGCSetFavoritePageResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[335] + mi := &file_dota_gcmessages_client_proto_msgTypes[340] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24658,7 +25359,7 @@ func (x *CMsgClientToGCSetFavoritePageResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCSetFavoritePageResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetFavoritePageResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{335} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{340} } func (x *CMsgClientToGCSetFavoritePageResponse) GetResponse() CMsgClientToGCSetFavoritePageResponse_EResponse { @@ -24681,7 +25382,7 @@ type CMsgClientToGCClaimSwag struct { func (x *CMsgClientToGCClaimSwag) Reset() { *x = CMsgClientToGCClaimSwag{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[336] + mi := &file_dota_gcmessages_client_proto_msgTypes[341] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24694,7 +25395,7 @@ func (x *CMsgClientToGCClaimSwag) String() string { func (*CMsgClientToGCClaimSwag) ProtoMessage() {} func (x *CMsgClientToGCClaimSwag) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[336] + mi := &file_dota_gcmessages_client_proto_msgTypes[341] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24707,7 +25408,7 @@ func (x *CMsgClientToGCClaimSwag) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCClaimSwag.ProtoReflect.Descriptor instead. func (*CMsgClientToGCClaimSwag) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{336} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{341} } func (x *CMsgClientToGCClaimSwag) GetEventId() EEvent { @@ -24742,7 +25443,7 @@ type CMsgClientToGCClaimSwagResponse struct { func (x *CMsgClientToGCClaimSwagResponse) Reset() { *x = CMsgClientToGCClaimSwagResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[337] + mi := &file_dota_gcmessages_client_proto_msgTypes[342] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24755,7 +25456,7 @@ func (x *CMsgClientToGCClaimSwagResponse) String() string { func (*CMsgClientToGCClaimSwagResponse) ProtoMessage() {} func (x *CMsgClientToGCClaimSwagResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[337] + mi := &file_dota_gcmessages_client_proto_msgTypes[342] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24768,7 +25469,7 @@ func (x *CMsgClientToGCClaimSwagResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCClaimSwagResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCClaimSwagResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{337} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{342} } func (x *CMsgClientToGCClaimSwagResponse) GetResponse() CMsgClientToGCClaimSwagResponse_EResponse { @@ -24789,7 +25490,7 @@ type CMsgClientToGCCollectorsCacheAvailableDataRequest struct { func (x *CMsgClientToGCCollectorsCacheAvailableDataRequest) Reset() { *x = CMsgClientToGCCollectorsCacheAvailableDataRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[338] + mi := &file_dota_gcmessages_client_proto_msgTypes[343] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24802,7 +25503,7 @@ func (x *CMsgClientToGCCollectorsCacheAvailableDataRequest) String() string { func (*CMsgClientToGCCollectorsCacheAvailableDataRequest) ProtoMessage() {} func (x *CMsgClientToGCCollectorsCacheAvailableDataRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[338] + mi := &file_dota_gcmessages_client_proto_msgTypes[343] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24815,7 +25516,7 @@ func (x *CMsgClientToGCCollectorsCacheAvailableDataRequest) ProtoReflect() proto // Deprecated: Use CMsgClientToGCCollectorsCacheAvailableDataRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCollectorsCacheAvailableDataRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{338} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{343} } func (x *CMsgClientToGCCollectorsCacheAvailableDataRequest) GetContestId() uint32 { @@ -24836,7 +25537,7 @@ type CMsgGCToClientCollectorsCacheAvailableDataResponse struct { func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse) Reset() { *x = CMsgGCToClientCollectorsCacheAvailableDataResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[339] + mi := &file_dota_gcmessages_client_proto_msgTypes[344] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24849,7 +25550,7 @@ func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse) String() string { func (*CMsgGCToClientCollectorsCacheAvailableDataResponse) ProtoMessage() {} func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[339] + mi := &file_dota_gcmessages_client_proto_msgTypes[344] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24862,7 +25563,7 @@ func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse) ProtoReflect() prot // Deprecated: Use CMsgGCToClientCollectorsCacheAvailableDataResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCollectorsCacheAvailableDataResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{339} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{344} } func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse) GetVotes() []*CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote { @@ -24883,7 +25584,7 @@ type CMsgClientToGCUploadMatchClip struct { func (x *CMsgClientToGCUploadMatchClip) Reset() { *x = CMsgClientToGCUploadMatchClip{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[340] + mi := &file_dota_gcmessages_client_proto_msgTypes[345] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24896,7 +25597,7 @@ func (x *CMsgClientToGCUploadMatchClip) String() string { func (*CMsgClientToGCUploadMatchClip) ProtoMessage() {} func (x *CMsgClientToGCUploadMatchClip) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[340] + mi := &file_dota_gcmessages_client_proto_msgTypes[345] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24909,7 +25610,7 @@ func (x *CMsgClientToGCUploadMatchClip) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUploadMatchClip.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUploadMatchClip) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{340} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{345} } func (x *CMsgClientToGCUploadMatchClip) GetMatchClip() *CMatchClip { @@ -24930,7 +25631,7 @@ type CMsgGCToClientUploadMatchClipResponse struct { func (x *CMsgGCToClientUploadMatchClipResponse) Reset() { *x = CMsgGCToClientUploadMatchClipResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[341] + mi := &file_dota_gcmessages_client_proto_msgTypes[346] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24943,7 +25644,7 @@ func (x *CMsgGCToClientUploadMatchClipResponse) String() string { func (*CMsgGCToClientUploadMatchClipResponse) ProtoMessage() {} func (x *CMsgGCToClientUploadMatchClipResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[341] + mi := &file_dota_gcmessages_client_proto_msgTypes[346] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24956,7 +25657,7 @@ func (x *CMsgGCToClientUploadMatchClipResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCToClientUploadMatchClipResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientUploadMatchClipResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{341} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{346} } func (x *CMsgGCToClientUploadMatchClipResponse) GetResponse() CMsgGCToClientUploadMatchClipResponse_EResponse { @@ -24975,7 +25676,7 @@ type CMsgClientToGCMapStatsRequest struct { func (x *CMsgClientToGCMapStatsRequest) Reset() { *x = CMsgClientToGCMapStatsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[342] + mi := &file_dota_gcmessages_client_proto_msgTypes[347] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -24988,7 +25689,7 @@ func (x *CMsgClientToGCMapStatsRequest) String() string { func (*CMsgClientToGCMapStatsRequest) ProtoMessage() {} func (x *CMsgClientToGCMapStatsRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[342] + mi := &file_dota_gcmessages_client_proto_msgTypes[347] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25001,7 +25702,7 @@ func (x *CMsgClientToGCMapStatsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCMapStatsRequest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCMapStatsRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{342} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{347} } type CMsgGCToClientMapStatsResponse struct { @@ -25017,7 +25718,7 @@ type CMsgGCToClientMapStatsResponse struct { func (x *CMsgGCToClientMapStatsResponse) Reset() { *x = CMsgGCToClientMapStatsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[343] + mi := &file_dota_gcmessages_client_proto_msgTypes[348] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25030,7 +25731,7 @@ func (x *CMsgGCToClientMapStatsResponse) String() string { func (*CMsgGCToClientMapStatsResponse) ProtoMessage() {} func (x *CMsgGCToClientMapStatsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[343] + mi := &file_dota_gcmessages_client_proto_msgTypes[348] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25043,7 +25744,7 @@ func (x *CMsgGCToClientMapStatsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientMapStatsResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientMapStatsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{343} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{348} } func (x *CMsgGCToClientMapStatsResponse) GetResponse() CMsgGCToClientMapStatsResponse_EResponse { @@ -25067,6 +25768,792 @@ func (x *CMsgGCToClientMapStatsResponse) GetGlobalStats() *CMsgGlobalMapStats { return nil } +type CMsgRoadToTIAssignedQuest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + QuestId *uint32 `protobuf:"varint,1,opt,name=quest_id,json=questId" json:"quest_id,omitempty"` + Difficulty *uint32 `protobuf:"varint,2,opt,name=difficulty" json:"difficulty,omitempty"` + ProgressFlags *uint32 `protobuf:"varint,3,opt,name=progress_flags,json=progressFlags" json:"progress_flags,omitempty"` + HalfCreditFlags *uint32 `protobuf:"varint,4,opt,name=half_credit_flags,json=halfCreditFlags" json:"half_credit_flags,omitempty"` + Completed *bool `protobuf:"varint,5,opt,name=completed" json:"completed,omitempty"` +} + +func (x *CMsgRoadToTIAssignedQuest) Reset() { + *x = CMsgRoadToTIAssignedQuest{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[349] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgRoadToTIAssignedQuest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgRoadToTIAssignedQuest) ProtoMessage() {} + +func (x *CMsgRoadToTIAssignedQuest) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[349] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgRoadToTIAssignedQuest.ProtoReflect.Descriptor instead. +func (*CMsgRoadToTIAssignedQuest) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{349} +} + +func (x *CMsgRoadToTIAssignedQuest) GetQuestId() uint32 { + if x != nil && x.QuestId != nil { + return *x.QuestId + } + return 0 +} + +func (x *CMsgRoadToTIAssignedQuest) GetDifficulty() uint32 { + if x != nil && x.Difficulty != nil { + return *x.Difficulty + } + return 0 +} + +func (x *CMsgRoadToTIAssignedQuest) GetProgressFlags() uint32 { + if x != nil && x.ProgressFlags != nil { + return *x.ProgressFlags + } + return 0 +} + +func (x *CMsgRoadToTIAssignedQuest) GetHalfCreditFlags() uint32 { + if x != nil && x.HalfCreditFlags != nil { + return *x.HalfCreditFlags + } + return 0 +} + +func (x *CMsgRoadToTIAssignedQuest) GetCompleted() bool { + if x != nil && x.Completed != nil { + return *x.Completed + } + return false +} + +type CMsgRoadToTIUserData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Quests []*CMsgRoadToTIAssignedQuest `protobuf:"bytes,1,rep,name=quests" json:"quests,omitempty"` +} + +func (x *CMsgRoadToTIUserData) Reset() { + *x = CMsgRoadToTIUserData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[350] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgRoadToTIUserData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgRoadToTIUserData) ProtoMessage() {} + +func (x *CMsgRoadToTIUserData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[350] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgRoadToTIUserData.ProtoReflect.Descriptor instead. +func (*CMsgRoadToTIUserData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{350} +} + +func (x *CMsgRoadToTIUserData) GetQuests() []*CMsgRoadToTIAssignedQuest { + if x != nil { + return x.Quests + } + return nil +} + +type CMsgClientToGCRoadToTIGetQuests struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EventId *uint32 `protobuf:"varint,1,opt,name=event_id,json=eventId" json:"event_id,omitempty"` +} + +func (x *CMsgClientToGCRoadToTIGetQuests) Reset() { + *x = CMsgClientToGCRoadToTIGetQuests{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[351] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRoadToTIGetQuests) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRoadToTIGetQuests) ProtoMessage() {} + +func (x *CMsgClientToGCRoadToTIGetQuests) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[351] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRoadToTIGetQuests.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRoadToTIGetQuests) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{351} +} + +func (x *CMsgClientToGCRoadToTIGetQuests) GetEventId() uint32 { + if x != nil && x.EventId != nil { + return *x.EventId + } + return 0 +} + +type CMsgClientToGCRoadToTIGetQuestsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCRoadToTIGetQuestsResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCRoadToTIGetQuestsResponse_EResponse" json:"response,omitempty"` + QuestData *CMsgRoadToTIUserData `protobuf:"bytes,2,opt,name=quest_data,json=questData" json:"quest_data,omitempty"` +} + +func (x *CMsgClientToGCRoadToTIGetQuestsResponse) Reset() { + *x = CMsgClientToGCRoadToTIGetQuestsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[352] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRoadToTIGetQuestsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRoadToTIGetQuestsResponse) ProtoMessage() {} + +func (x *CMsgClientToGCRoadToTIGetQuestsResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[352] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRoadToTIGetQuestsResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRoadToTIGetQuestsResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{352} +} + +func (x *CMsgClientToGCRoadToTIGetQuestsResponse) GetResponse() CMsgClientToGCRoadToTIGetQuestsResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCRoadToTIGetQuestsResponse_k_eInternalError +} + +func (x *CMsgClientToGCRoadToTIGetQuestsResponse) GetQuestData() *CMsgRoadToTIUserData { + if x != nil { + return x.QuestData + } + return nil +} + +type CMsgClientToGCRoadToTIGetActiveQuest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EventId *uint32 `protobuf:"varint,1,opt,name=event_id,json=eventId" json:"event_id,omitempty"` +} + +func (x *CMsgClientToGCRoadToTIGetActiveQuest) Reset() { + *x = CMsgClientToGCRoadToTIGetActiveQuest{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[353] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRoadToTIGetActiveQuest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRoadToTIGetActiveQuest) ProtoMessage() {} + +func (x *CMsgClientToGCRoadToTIGetActiveQuest) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[353] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRoadToTIGetActiveQuest.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRoadToTIGetActiveQuest) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{353} +} + +func (x *CMsgClientToGCRoadToTIGetActiveQuest) GetEventId() uint32 { + if x != nil && x.EventId != nil { + return *x.EventId + } + return 0 +} + +type CMsgClientToGCRoadToTIGetActiveQuestResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse" json:"response,omitempty"` + QuestData *CMsgRoadToTIAssignedQuest `protobuf:"bytes,2,opt,name=quest_data,json=questData" json:"quest_data,omitempty"` +} + +func (x *CMsgClientToGCRoadToTIGetActiveQuestResponse) Reset() { + *x = CMsgClientToGCRoadToTIGetActiveQuestResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[354] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRoadToTIGetActiveQuestResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRoadToTIGetActiveQuestResponse) ProtoMessage() {} + +func (x *CMsgClientToGCRoadToTIGetActiveQuestResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[354] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRoadToTIGetActiveQuestResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRoadToTIGetActiveQuestResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{354} +} + +func (x *CMsgClientToGCRoadToTIGetActiveQuestResponse) GetResponse() CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCRoadToTIGetActiveQuestResponse_k_eInternalError +} + +func (x *CMsgClientToGCRoadToTIGetActiveQuestResponse) GetQuestData() *CMsgRoadToTIAssignedQuest { + if x != nil { + return x.QuestData + } + return nil +} + +type CMsgGCToClientRoadToTIQuestDataUpdated struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EventId *uint32 `protobuf:"varint,1,opt,name=event_id,json=eventId" json:"event_id,omitempty"` + QuestData *CMsgRoadToTIUserData `protobuf:"bytes,2,opt,name=quest_data,json=questData" json:"quest_data,omitempty"` +} + +func (x *CMsgGCToClientRoadToTIQuestDataUpdated) Reset() { + *x = CMsgGCToClientRoadToTIQuestDataUpdated{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[355] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgGCToClientRoadToTIQuestDataUpdated) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgGCToClientRoadToTIQuestDataUpdated) ProtoMessage() {} + +func (x *CMsgGCToClientRoadToTIQuestDataUpdated) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[355] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgGCToClientRoadToTIQuestDataUpdated.ProtoReflect.Descriptor instead. +func (*CMsgGCToClientRoadToTIQuestDataUpdated) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{355} +} + +func (x *CMsgGCToClientRoadToTIQuestDataUpdated) GetEventId() uint32 { + if x != nil && x.EventId != nil { + return *x.EventId + } + return 0 +} + +func (x *CMsgGCToClientRoadToTIQuestDataUpdated) GetQuestData() *CMsgRoadToTIUserData { + if x != nil { + return x.QuestData + } + return nil +} + +type CMsgClientToGCRoadToTIUseItem struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EventId *uint32 `protobuf:"varint,1,opt,name=event_id,json=eventId" json:"event_id,omitempty"` + ItemType *uint32 `protobuf:"varint,2,opt,name=item_type,json=itemType" json:"item_type,omitempty"` + HeroIndex *uint32 `protobuf:"varint,3,opt,name=hero_index,json=heroIndex" json:"hero_index,omitempty"` +} + +func (x *CMsgClientToGCRoadToTIUseItem) Reset() { + *x = CMsgClientToGCRoadToTIUseItem{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[356] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRoadToTIUseItem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRoadToTIUseItem) ProtoMessage() {} + +func (x *CMsgClientToGCRoadToTIUseItem) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[356] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRoadToTIUseItem.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRoadToTIUseItem) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{356} +} + +func (x *CMsgClientToGCRoadToTIUseItem) GetEventId() uint32 { + if x != nil && x.EventId != nil { + return *x.EventId + } + return 0 +} + +func (x *CMsgClientToGCRoadToTIUseItem) GetItemType() uint32 { + if x != nil && x.ItemType != nil { + return *x.ItemType + } + return 0 +} + +func (x *CMsgClientToGCRoadToTIUseItem) GetHeroIndex() uint32 { + if x != nil && x.HeroIndex != nil { + return *x.HeroIndex + } + return 0 +} + +type CMsgClientToGCRoadToTIUseItemResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCRoadToTIUseItemResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCRoadToTIUseItemResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCRoadToTIUseItemResponse) Reset() { + *x = CMsgClientToGCRoadToTIUseItemResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[357] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRoadToTIUseItemResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRoadToTIUseItemResponse) ProtoMessage() {} + +func (x *CMsgClientToGCRoadToTIUseItemResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[357] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRoadToTIUseItemResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRoadToTIUseItemResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{357} +} + +func (x *CMsgClientToGCRoadToTIUseItemResponse) GetResponse() CMsgClientToGCRoadToTIUseItemResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCRoadToTIUseItemResponse_k_eInternalError +} + +type CMsgClientToGCRoadToTIDevForceQuest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EventId *uint32 `protobuf:"varint,1,opt,name=event_id,json=eventId" json:"event_id,omitempty"` + ForceMatchType *bool `protobuf:"varint,2,opt,name=force_match_type,json=forceMatchType" json:"force_match_type,omitempty"` + ForceId *uint32 `protobuf:"varint,3,opt,name=force_id,json=forceId" json:"force_id,omitempty"` +} + +func (x *CMsgClientToGCRoadToTIDevForceQuest) Reset() { + *x = CMsgClientToGCRoadToTIDevForceQuest{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[358] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRoadToTIDevForceQuest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRoadToTIDevForceQuest) ProtoMessage() {} + +func (x *CMsgClientToGCRoadToTIDevForceQuest) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[358] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRoadToTIDevForceQuest.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRoadToTIDevForceQuest) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{358} +} + +func (x *CMsgClientToGCRoadToTIDevForceQuest) GetEventId() uint32 { + if x != nil && x.EventId != nil { + return *x.EventId + } + return 0 +} + +func (x *CMsgClientToGCRoadToTIDevForceQuest) GetForceMatchType() bool { + if x != nil && x.ForceMatchType != nil { + return *x.ForceMatchType + } + return false +} + +func (x *CMsgClientToGCRoadToTIDevForceQuest) GetForceId() uint32 { + if x != nil && x.ForceId != nil { + return *x.ForceId + } + return 0 +} + +type CMsgLobbyRoadToTIMatchQuestData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + QuestData *CMsgRoadToTIAssignedQuest `protobuf:"bytes,1,opt,name=quest_data,json=questData" json:"quest_data,omitempty"` + QuestPeriod *uint32 `protobuf:"varint,2,opt,name=quest_period,json=questPeriod" json:"quest_period,omitempty"` + QuestNumber *uint32 `protobuf:"varint,3,opt,name=quest_number,json=questNumber" json:"quest_number,omitempty"` +} + +func (x *CMsgLobbyRoadToTIMatchQuestData) Reset() { + *x = CMsgLobbyRoadToTIMatchQuestData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[359] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgLobbyRoadToTIMatchQuestData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgLobbyRoadToTIMatchQuestData) ProtoMessage() {} + +func (x *CMsgLobbyRoadToTIMatchQuestData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[359] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgLobbyRoadToTIMatchQuestData.ProtoReflect.Descriptor instead. +func (*CMsgLobbyRoadToTIMatchQuestData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{359} +} + +func (x *CMsgLobbyRoadToTIMatchQuestData) GetQuestData() *CMsgRoadToTIAssignedQuest { + if x != nil { + return x.QuestData + } + return nil +} + +func (x *CMsgLobbyRoadToTIMatchQuestData) GetQuestPeriod() uint32 { + if x != nil && x.QuestPeriod != nil { + return *x.QuestPeriod + } + return 0 +} + +func (x *CMsgLobbyRoadToTIMatchQuestData) GetQuestNumber() uint32 { + if x != nil && x.QuestNumber != nil { + return *x.QuestNumber + } + return 0 +} + +type CMsgClientToGCNewBloomGift struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Defindex *uint32 `protobuf:"varint,1,opt,name=defindex" json:"defindex,omitempty"` + LobbyId *uint64 `protobuf:"varint,2,opt,name=lobby_id,json=lobbyId" json:"lobby_id,omitempty"` + TargetAccountIds []uint32 `protobuf:"varint,3,rep,name=target_account_ids,json=targetAccountIds" json:"target_account_ids,omitempty"` +} + +func (x *CMsgClientToGCNewBloomGift) Reset() { + *x = CMsgClientToGCNewBloomGift{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[360] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCNewBloomGift) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCNewBloomGift) ProtoMessage() {} + +func (x *CMsgClientToGCNewBloomGift) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[360] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCNewBloomGift.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCNewBloomGift) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{360} +} + +func (x *CMsgClientToGCNewBloomGift) GetDefindex() uint32 { + if x != nil && x.Defindex != nil { + return *x.Defindex + } + return 0 +} + +func (x *CMsgClientToGCNewBloomGift) GetLobbyId() uint64 { + if x != nil && x.LobbyId != nil { + return *x.LobbyId + } + return 0 +} + +func (x *CMsgClientToGCNewBloomGift) GetTargetAccountIds() []uint32 { + if x != nil { + return x.TargetAccountIds + } + return nil +} + +type CMsgClientToGCNewBloomGiftResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Result *ENewBloomGiftingResponse `protobuf:"varint,1,opt,name=result,enum=dota.ENewBloomGiftingResponse" json:"result,omitempty"` + ReceivedAccountIds []uint32 `protobuf:"varint,2,rep,name=received_account_ids,json=receivedAccountIds" json:"received_account_ids,omitempty"` +} + +func (x *CMsgClientToGCNewBloomGiftResponse) Reset() { + *x = CMsgClientToGCNewBloomGiftResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[361] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCNewBloomGiftResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCNewBloomGiftResponse) ProtoMessage() {} + +func (x *CMsgClientToGCNewBloomGiftResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[361] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCNewBloomGiftResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCNewBloomGiftResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{361} +} + +func (x *CMsgClientToGCNewBloomGiftResponse) GetResult() ENewBloomGiftingResponse { + if x != nil && x.Result != nil { + return *x.Result + } + return ENewBloomGiftingResponse_kENewBloomGifting_Success +} + +func (x *CMsgClientToGCNewBloomGiftResponse) GetReceivedAccountIds() []uint32 { + if x != nil { + return x.ReceivedAccountIds + } + return nil +} + +type CMsgClientToGCSetBannedHeroes struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + BannedHeroIds []uint32 `protobuf:"varint,1,rep,name=banned_hero_ids,json=bannedHeroIds" json:"banned_hero_ids,omitempty"` +} + +func (x *CMsgClientToGCSetBannedHeroes) Reset() { + *x = CMsgClientToGCSetBannedHeroes{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[362] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCSetBannedHeroes) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCSetBannedHeroes) ProtoMessage() {} + +func (x *CMsgClientToGCSetBannedHeroes) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[362] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCSetBannedHeroes.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCSetBannedHeroes) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{362} +} + +func (x *CMsgClientToGCSetBannedHeroes) GetBannedHeroIds() []uint32 { + if x != nil { + return x.BannedHeroIds + } + return nil +} + type CMsgDOTARequestMatchesResponse_Series struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -25080,7 +26567,7 @@ type CMsgDOTARequestMatchesResponse_Series struct { func (x *CMsgDOTARequestMatchesResponse_Series) Reset() { *x = CMsgDOTARequestMatchesResponse_Series{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[344] + mi := &file_dota_gcmessages_client_proto_msgTypes[363] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25093,7 +26580,7 @@ func (x *CMsgDOTARequestMatchesResponse_Series) String() string { func (*CMsgDOTARequestMatchesResponse_Series) ProtoMessage() {} func (x *CMsgDOTARequestMatchesResponse_Series) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[344] + mi := &file_dota_gcmessages_client_proto_msgTypes[363] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25142,7 +26629,7 @@ type CMsgDOTAProfileTickets_LeaguePass struct { func (x *CMsgDOTAProfileTickets_LeaguePass) Reset() { *x = CMsgDOTAProfileTickets_LeaguePass{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[345] + mi := &file_dota_gcmessages_client_proto_msgTypes[364] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25155,7 +26642,7 @@ func (x *CMsgDOTAProfileTickets_LeaguePass) String() string { func (*CMsgDOTAProfileTickets_LeaguePass) ProtoMessage() {} func (x *CMsgDOTAProfileTickets_LeaguePass) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[345] + mi := &file_dota_gcmessages_client_proto_msgTypes[364] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25168,7 +26655,7 @@ func (x *CMsgDOTAProfileTickets_LeaguePass) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTAProfileTickets_LeaguePass.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileTickets_LeaguePass) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{17, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{19, 0} } func (x *CMsgDOTAProfileTickets_LeaguePass) GetLeagueId() uint32 { @@ -25197,7 +26684,7 @@ type CMsgDOTAWelcome_CExtraMsg struct { func (x *CMsgDOTAWelcome_CExtraMsg) Reset() { *x = CMsgDOTAWelcome_CExtraMsg{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[346] + mi := &file_dota_gcmessages_client_proto_msgTypes[365] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25210,7 +26697,7 @@ func (x *CMsgDOTAWelcome_CExtraMsg) String() string { func (*CMsgDOTAWelcome_CExtraMsg) ProtoMessage() {} func (x *CMsgDOTAWelcome_CExtraMsg) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[346] + mi := &file_dota_gcmessages_client_proto_msgTypes[365] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25223,7 +26710,7 @@ func (x *CMsgDOTAWelcome_CExtraMsg) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAWelcome_CExtraMsg.ProtoReflect.Descriptor instead. func (*CMsgDOTAWelcome_CExtraMsg) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{20, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{22, 0} } func (x *CMsgDOTAWelcome_CExtraMsg) GetId() uint32 { @@ -25252,7 +26739,7 @@ type CMsgDOTAMatchVotes_PlayerVote struct { func (x *CMsgDOTAMatchVotes_PlayerVote) Reset() { *x = CMsgDOTAMatchVotes_PlayerVote{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[347] + mi := &file_dota_gcmessages_client_proto_msgTypes[366] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25265,7 +26752,7 @@ func (x *CMsgDOTAMatchVotes_PlayerVote) String() string { func (*CMsgDOTAMatchVotes_PlayerVote) ProtoMessage() {} func (x *CMsgDOTAMatchVotes_PlayerVote) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[347] + mi := &file_dota_gcmessages_client_proto_msgTypes[366] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25278,7 +26765,7 @@ func (x *CMsgDOTAMatchVotes_PlayerVote) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatchVotes_PlayerVote.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatchVotes_PlayerVote) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{22, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{24, 0} } func (x *CMsgDOTAMatchVotes_PlayerVote) GetAccountId() uint32 { @@ -25332,7 +26819,7 @@ type CMsgGCGetHeroStandingsResponse_Hero struct { func (x *CMsgGCGetHeroStandingsResponse_Hero) Reset() { *x = CMsgGCGetHeroStandingsResponse_Hero{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[348] + mi := &file_dota_gcmessages_client_proto_msgTypes[367] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25345,7 +26832,7 @@ func (x *CMsgGCGetHeroStandingsResponse_Hero) String() string { func (*CMsgGCGetHeroStandingsResponse_Hero) ProtoMessage() {} func (x *CMsgGCGetHeroStandingsResponse_Hero) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[348] + mi := &file_dota_gcmessages_client_proto_msgTypes[367] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25358,7 +26845,7 @@ func (x *CMsgGCGetHeroStandingsResponse_Hero) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgGCGetHeroStandingsResponse_Hero.ProtoReflect.Descriptor instead. func (*CMsgGCGetHeroStandingsResponse_Hero) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{38, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{40, 0} } func (x *CMsgGCGetHeroStandingsResponse_Hero) GetHeroId() uint32 { @@ -25566,7 +27053,7 @@ type CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer struct { func (x *CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer) Reset() { *x = CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[349] + mi := &file_dota_gcmessages_client_proto_msgTypes[368] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25579,7 +27066,7 @@ func (x *CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer) String() string { func (*CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer) ProtoMessage() {} func (x *CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[349] + mi := &file_dota_gcmessages_client_proto_msgTypes[368] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25592,7 +27079,7 @@ func (x *CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer) ProtoReflect() pro // Deprecated: Use CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer.ProtoReflect.Descriptor instead. func (*CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{41, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{43, 0} } func (x *CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer) GetTime() uint32 { @@ -25649,7 +27136,7 @@ type CMsgGCGetHeroTimedStatsResponse_RankChunkedStats struct { func (x *CMsgGCGetHeroTimedStatsResponse_RankChunkedStats) Reset() { *x = CMsgGCGetHeroTimedStatsResponse_RankChunkedStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[350] + mi := &file_dota_gcmessages_client_proto_msgTypes[369] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25662,7 +27149,7 @@ func (x *CMsgGCGetHeroTimedStatsResponse_RankChunkedStats) String() string { func (*CMsgGCGetHeroTimedStatsResponse_RankChunkedStats) ProtoMessage() {} func (x *CMsgGCGetHeroTimedStatsResponse_RankChunkedStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[350] + mi := &file_dota_gcmessages_client_proto_msgTypes[369] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25675,7 +27162,7 @@ func (x *CMsgGCGetHeroTimedStatsResponse_RankChunkedStats) ProtoReflect() protor // Deprecated: Use CMsgGCGetHeroTimedStatsResponse_RankChunkedStats.ProtoReflect.Descriptor instead. func (*CMsgGCGetHeroTimedStatsResponse_RankChunkedStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{41, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{43, 1} } func (x *CMsgGCGetHeroTimedStatsResponse_RankChunkedStats) GetRankChunk() uint32 { @@ -25704,7 +27191,7 @@ type CMsgDOTAClaimEventActionData_GrantItemGiftData struct { func (x *CMsgDOTAClaimEventActionData_GrantItemGiftData) Reset() { *x = CMsgDOTAClaimEventActionData_GrantItemGiftData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[351] + mi := &file_dota_gcmessages_client_proto_msgTypes[370] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25717,7 +27204,7 @@ func (x *CMsgDOTAClaimEventActionData_GrantItemGiftData) String() string { func (*CMsgDOTAClaimEventActionData_GrantItemGiftData) ProtoMessage() {} func (x *CMsgDOTAClaimEventActionData_GrantItemGiftData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[351] + mi := &file_dota_gcmessages_client_proto_msgTypes[370] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25730,7 +27217,7 @@ func (x *CMsgDOTAClaimEventActionData_GrantItemGiftData) ProtoReflect() protoref // Deprecated: Use CMsgDOTAClaimEventActionData_GrantItemGiftData.ProtoReflect.Descriptor instead. func (*CMsgDOTAClaimEventActionData_GrantItemGiftData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{52, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{54, 0} } func (x *CMsgDOTAClaimEventActionData_GrantItemGiftData) GetGiveToAccountId() uint32 { @@ -25759,7 +27246,7 @@ type CMsgDOTAClaimEventActionResponse_MysteryItemRewardData struct { func (x *CMsgDOTAClaimEventActionResponse_MysteryItemRewardData) Reset() { *x = CMsgDOTAClaimEventActionResponse_MysteryItemRewardData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[352] + mi := &file_dota_gcmessages_client_proto_msgTypes[371] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25772,7 +27259,7 @@ func (x *CMsgDOTAClaimEventActionResponse_MysteryItemRewardData) String() string func (*CMsgDOTAClaimEventActionResponse_MysteryItemRewardData) ProtoMessage() {} func (x *CMsgDOTAClaimEventActionResponse_MysteryItemRewardData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[352] + mi := &file_dota_gcmessages_client_proto_msgTypes[371] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25785,7 +27272,7 @@ func (x *CMsgDOTAClaimEventActionResponse_MysteryItemRewardData) ProtoReflect() // Deprecated: Use CMsgDOTAClaimEventActionResponse_MysteryItemRewardData.ProtoReflect.Descriptor instead. func (*CMsgDOTAClaimEventActionResponse_MysteryItemRewardData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{54, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{56, 0} } func (x *CMsgDOTAClaimEventActionResponse_MysteryItemRewardData) GetItemDef() uint32 { @@ -25813,7 +27300,7 @@ type CMsgDOTAClaimEventActionResponse_LootListRewardData struct { func (x *CMsgDOTAClaimEventActionResponse_LootListRewardData) Reset() { *x = CMsgDOTAClaimEventActionResponse_LootListRewardData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[353] + mi := &file_dota_gcmessages_client_proto_msgTypes[372] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25826,7 +27313,7 @@ func (x *CMsgDOTAClaimEventActionResponse_LootListRewardData) String() string { func (*CMsgDOTAClaimEventActionResponse_LootListRewardData) ProtoMessage() {} func (x *CMsgDOTAClaimEventActionResponse_LootListRewardData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[353] + mi := &file_dota_gcmessages_client_proto_msgTypes[372] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25839,7 +27326,7 @@ func (x *CMsgDOTAClaimEventActionResponse_LootListRewardData) ProtoReflect() pro // Deprecated: Use CMsgDOTAClaimEventActionResponse_LootListRewardData.ProtoReflect.Descriptor instead. func (*CMsgDOTAClaimEventActionResponse_LootListRewardData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{54, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{56, 1} } func (x *CMsgDOTAClaimEventActionResponse_LootListRewardData) GetItemDef() []uint32 { @@ -25861,7 +27348,7 @@ type CMsgDOTAClaimEventActionResponse_ActionListRewardData struct { func (x *CMsgDOTAClaimEventActionResponse_ActionListRewardData) Reset() { *x = CMsgDOTAClaimEventActionResponse_ActionListRewardData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[354] + mi := &file_dota_gcmessages_client_proto_msgTypes[373] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25874,7 +27361,7 @@ func (x *CMsgDOTAClaimEventActionResponse_ActionListRewardData) String() string func (*CMsgDOTAClaimEventActionResponse_ActionListRewardData) ProtoMessage() {} func (x *CMsgDOTAClaimEventActionResponse_ActionListRewardData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[354] + mi := &file_dota_gcmessages_client_proto_msgTypes[373] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25887,7 +27374,7 @@ func (x *CMsgDOTAClaimEventActionResponse_ActionListRewardData) ProtoReflect() p // Deprecated: Use CMsgDOTAClaimEventActionResponse_ActionListRewardData.ProtoReflect.Descriptor instead. func (*CMsgDOTAClaimEventActionResponse_ActionListRewardData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{54, 2} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{56, 2} } func (x *CMsgDOTAClaimEventActionResponse_ActionListRewardData) GetActionId() uint32 { @@ -25918,7 +27405,7 @@ type CMsgDOTAClaimEventActionResponse_GrantedRewardData struct { func (x *CMsgDOTAClaimEventActionResponse_GrantedRewardData) Reset() { *x = CMsgDOTAClaimEventActionResponse_GrantedRewardData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[355] + mi := &file_dota_gcmessages_client_proto_msgTypes[374] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -25931,7 +27418,7 @@ func (x *CMsgDOTAClaimEventActionResponse_GrantedRewardData) String() string { func (*CMsgDOTAClaimEventActionResponse_GrantedRewardData) ProtoMessage() {} func (x *CMsgDOTAClaimEventActionResponse_GrantedRewardData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[355] + mi := &file_dota_gcmessages_client_proto_msgTypes[374] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25944,7 +27431,7 @@ func (x *CMsgDOTAClaimEventActionResponse_GrantedRewardData) ProtoReflect() prot // Deprecated: Use CMsgDOTAClaimEventActionResponse_GrantedRewardData.ProtoReflect.Descriptor instead. func (*CMsgDOTAClaimEventActionResponse_GrantedRewardData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{54, 3} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{56, 3} } func (x *CMsgDOTAClaimEventActionResponse_GrantedRewardData) GetGrantIndex() uint32 { @@ -25987,7 +27474,7 @@ type CMsgDOTAGetEventPointsResponse_Action struct { func (x *CMsgDOTAGetEventPointsResponse_Action) Reset() { *x = CMsgDOTAGetEventPointsResponse_Action{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[356] + mi := &file_dota_gcmessages_client_proto_msgTypes[375] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26000,7 +27487,7 @@ func (x *CMsgDOTAGetEventPointsResponse_Action) String() string { func (*CMsgDOTAGetEventPointsResponse_Action) ProtoMessage() {} func (x *CMsgDOTAGetEventPointsResponse_Action) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[356] + mi := &file_dota_gcmessages_client_proto_msgTypes[375] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26013,7 +27500,7 @@ func (x *CMsgDOTAGetEventPointsResponse_Action) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTAGetEventPointsResponse_Action.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetEventPointsResponse_Action) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{59, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{61, 0} } func (x *CMsgDOTAGetEventPointsResponse_Action) GetActionId() uint32 { @@ -26061,7 +27548,7 @@ type CMsgDOTAGetPlayerMatchHistoryResponse_Match struct { func (x *CMsgDOTAGetPlayerMatchHistoryResponse_Match) Reset() { *x = CMsgDOTAGetPlayerMatchHistoryResponse_Match{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[357] + mi := &file_dota_gcmessages_client_proto_msgTypes[376] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26074,7 +27561,7 @@ func (x *CMsgDOTAGetPlayerMatchHistoryResponse_Match) String() string { func (*CMsgDOTAGetPlayerMatchHistoryResponse_Match) ProtoMessage() {} func (x *CMsgDOTAGetPlayerMatchHistoryResponse_Match) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[357] + mi := &file_dota_gcmessages_client_proto_msgTypes[376] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26087,7 +27574,7 @@ func (x *CMsgDOTAGetPlayerMatchHistoryResponse_Match) ProtoReflect() protoreflec // Deprecated: Use CMsgDOTAGetPlayerMatchHistoryResponse_Match.ProtoReflect.Descriptor instead. func (*CMsgDOTAGetPlayerMatchHistoryResponse_Match) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{69, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{71, 0} } func (x *CMsgDOTAGetPlayerMatchHistoryResponse_Match) GetMatchId() uint64 { @@ -26250,7 +27737,7 @@ type CMsgClientToGCGetTrophyListResponse_Trophy struct { func (x *CMsgClientToGCGetTrophyListResponse_Trophy) Reset() { *x = CMsgClientToGCGetTrophyListResponse_Trophy{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[358] + mi := &file_dota_gcmessages_client_proto_msgTypes[377] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26263,7 +27750,7 @@ func (x *CMsgClientToGCGetTrophyListResponse_Trophy) String() string { func (*CMsgClientToGCGetTrophyListResponse_Trophy) ProtoMessage() {} func (x *CMsgClientToGCGetTrophyListResponse_Trophy) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[358] + mi := &file_dota_gcmessages_client_proto_msgTypes[377] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26276,7 +27763,7 @@ func (x *CMsgClientToGCGetTrophyListResponse_Trophy) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCGetTrophyListResponse_Trophy.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetTrophyListResponse_Trophy) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{86, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{88, 0} } func (x *CMsgClientToGCGetTrophyListResponse_Trophy) GetTrophyId() uint32 { @@ -26313,7 +27800,7 @@ type CMsgClientToGCSetProfileCardSlots_CardSlot struct { func (x *CMsgClientToGCSetProfileCardSlots_CardSlot) Reset() { *x = CMsgClientToGCSetProfileCardSlots_CardSlot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[359] + mi := &file_dota_gcmessages_client_proto_msgTypes[378] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26326,7 +27813,7 @@ func (x *CMsgClientToGCSetProfileCardSlots_CardSlot) String() string { func (*CMsgClientToGCSetProfileCardSlots_CardSlot) ProtoMessage() {} func (x *CMsgClientToGCSetProfileCardSlots_CardSlot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[359] + mi := &file_dota_gcmessages_client_proto_msgTypes[378] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26339,7 +27826,7 @@ func (x *CMsgClientToGCSetProfileCardSlots_CardSlot) ProtoReflect() protoreflect // Deprecated: Use CMsgClientToGCSetProfileCardSlots_CardSlot.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetProfileCardSlots_CardSlot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{92, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{94, 0} } func (x *CMsgClientToGCSetProfileCardSlots_CardSlot) GetSlotId() uint32 { @@ -26375,7 +27862,7 @@ type CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame struct { func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame) Reset() { *x = CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[360] + mi := &file_dota_gcmessages_client_proto_msgTypes[379] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26388,7 +27875,7 @@ func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame) String() str func (*CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame) ProtoMessage() {} func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[360] + mi := &file_dota_gcmessages_client_proto_msgTypes[379] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26401,7 +27888,7 @@ func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame) ProtoReflect // Deprecated: Use CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{99, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{101, 0} } func (x *CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame) GetCustomGameId() uint64 { @@ -26430,7 +27917,7 @@ type CMsgDOTAPartyRichPresence_Member struct { func (x *CMsgDOTAPartyRichPresence_Member) Reset() { *x = CMsgDOTAPartyRichPresence_Member{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[361] + mi := &file_dota_gcmessages_client_proto_msgTypes[380] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26443,7 +27930,7 @@ func (x *CMsgDOTAPartyRichPresence_Member) String() string { func (*CMsgDOTAPartyRichPresence_Member) ProtoMessage() {} func (x *CMsgDOTAPartyRichPresence_Member) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[361] + mi := &file_dota_gcmessages_client_proto_msgTypes[380] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26456,7 +27943,7 @@ func (x *CMsgDOTAPartyRichPresence_Member) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAPartyRichPresence_Member.ProtoReflect.Descriptor instead. func (*CMsgDOTAPartyRichPresence_Member) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{106, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{108, 0} } func (x *CMsgDOTAPartyRichPresence_Member) GetSteamId() uint64 { @@ -26490,7 +27977,7 @@ type CMsgDOTAPartyRichPresence_WeekendTourney struct { func (x *CMsgDOTAPartyRichPresence_WeekendTourney) Reset() { *x = CMsgDOTAPartyRichPresence_WeekendTourney{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[362] + mi := &file_dota_gcmessages_client_proto_msgTypes[381] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26503,7 +27990,7 @@ func (x *CMsgDOTAPartyRichPresence_WeekendTourney) String() string { func (*CMsgDOTAPartyRichPresence_WeekendTourney) ProtoMessage() {} func (x *CMsgDOTAPartyRichPresence_WeekendTourney) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[362] + mi := &file_dota_gcmessages_client_proto_msgTypes[381] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26516,7 +28003,7 @@ func (x *CMsgDOTAPartyRichPresence_WeekendTourney) ProtoReflect() protoreflect.M // Deprecated: Use CMsgDOTAPartyRichPresence_WeekendTourney.ProtoReflect.Descriptor instead. func (*CMsgDOTAPartyRichPresence_WeekendTourney) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{106, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{108, 1} } func (x *CMsgDOTAPartyRichPresence_WeekendTourney) GetDivision() uint32 { @@ -26584,7 +28071,7 @@ type CMsgClientToGCGetQuestProgressResponse_Challenge struct { func (x *CMsgClientToGCGetQuestProgressResponse_Challenge) Reset() { *x = CMsgClientToGCGetQuestProgressResponse_Challenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[363] + mi := &file_dota_gcmessages_client_proto_msgTypes[382] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26597,7 +28084,7 @@ func (x *CMsgClientToGCGetQuestProgressResponse_Challenge) String() string { func (*CMsgClientToGCGetQuestProgressResponse_Challenge) ProtoMessage() {} func (x *CMsgClientToGCGetQuestProgressResponse_Challenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[363] + mi := &file_dota_gcmessages_client_proto_msgTypes[382] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26610,7 +28097,7 @@ func (x *CMsgClientToGCGetQuestProgressResponse_Challenge) ProtoReflect() protor // Deprecated: Use CMsgClientToGCGetQuestProgressResponse_Challenge.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetQuestProgressResponse_Challenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{113, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{115, 0} } func (x *CMsgClientToGCGetQuestProgressResponse_Challenge) GetChallengeId() uint32 { @@ -26667,7 +28154,7 @@ type CMsgClientToGCGetQuestProgressResponse_Quest struct { func (x *CMsgClientToGCGetQuestProgressResponse_Quest) Reset() { *x = CMsgClientToGCGetQuestProgressResponse_Quest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[364] + mi := &file_dota_gcmessages_client_proto_msgTypes[383] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26680,7 +28167,7 @@ func (x *CMsgClientToGCGetQuestProgressResponse_Quest) String() string { func (*CMsgClientToGCGetQuestProgressResponse_Quest) ProtoMessage() {} func (x *CMsgClientToGCGetQuestProgressResponse_Quest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[364] + mi := &file_dota_gcmessages_client_proto_msgTypes[383] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26693,7 +28180,7 @@ func (x *CMsgClientToGCGetQuestProgressResponse_Quest) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCGetQuestProgressResponse_Quest.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetQuestProgressResponse_Quest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{113, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{115, 1} } func (x *CMsgClientToGCGetQuestProgressResponse_Quest) GetQuestId() uint32 { @@ -26723,7 +28210,7 @@ type CMsgEventGoals_EventGoal struct { func (x *CMsgEventGoals_EventGoal) Reset() { *x = CMsgEventGoals_EventGoal{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[365] + mi := &file_dota_gcmessages_client_proto_msgTypes[384] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26736,7 +28223,7 @@ func (x *CMsgEventGoals_EventGoal) String() string { func (*CMsgEventGoals_EventGoal) ProtoMessage() {} func (x *CMsgEventGoals_EventGoal) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[365] + mi := &file_dota_gcmessages_client_proto_msgTypes[384] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26749,7 +28236,7 @@ func (x *CMsgEventGoals_EventGoal) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgEventGoals_EventGoal.ProtoReflect.Descriptor instead. func (*CMsgEventGoals_EventGoal) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{124, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{126, 0} } func (x *CMsgEventGoals_EventGoal) GetEventId() EEvent { @@ -26787,7 +28274,7 @@ type CMsgPredictionRankings_PredictionLine struct { func (x *CMsgPredictionRankings_PredictionLine) Reset() { *x = CMsgPredictionRankings_PredictionLine{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[366] + mi := &file_dota_gcmessages_client_proto_msgTypes[385] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26800,7 +28287,7 @@ func (x *CMsgPredictionRankings_PredictionLine) String() string { func (*CMsgPredictionRankings_PredictionLine) ProtoMessage() {} func (x *CMsgPredictionRankings_PredictionLine) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[366] + mi := &file_dota_gcmessages_client_proto_msgTypes[385] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26813,7 +28300,7 @@ func (x *CMsgPredictionRankings_PredictionLine) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgPredictionRankings_PredictionLine.ProtoReflect.Descriptor instead. func (*CMsgPredictionRankings_PredictionLine) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{126, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{128, 0} } func (x *CMsgPredictionRankings_PredictionLine) GetAnswerId() uint32 { @@ -26856,7 +28343,7 @@ type CMsgPredictionRankings_Prediction struct { func (x *CMsgPredictionRankings_Prediction) Reset() { *x = CMsgPredictionRankings_Prediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[367] + mi := &file_dota_gcmessages_client_proto_msgTypes[386] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26869,7 +28356,7 @@ func (x *CMsgPredictionRankings_Prediction) String() string { func (*CMsgPredictionRankings_Prediction) ProtoMessage() {} func (x *CMsgPredictionRankings_Prediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[367] + mi := &file_dota_gcmessages_client_proto_msgTypes[386] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26882,7 +28369,7 @@ func (x *CMsgPredictionRankings_Prediction) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgPredictionRankings_Prediction.ProtoReflect.Descriptor instead. func (*CMsgPredictionRankings_Prediction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{126, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{128, 1} } func (x *CMsgPredictionRankings_Prediction) GetSelectionId() uint32 { @@ -26911,7 +28398,7 @@ type CMsgPredictionResults_ResultBreakdown struct { func (x *CMsgPredictionResults_ResultBreakdown) Reset() { *x = CMsgPredictionResults_ResultBreakdown{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[368] + mi := &file_dota_gcmessages_client_proto_msgTypes[387] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26924,7 +28411,7 @@ func (x *CMsgPredictionResults_ResultBreakdown) String() string { func (*CMsgPredictionResults_ResultBreakdown) ProtoMessage() {} func (x *CMsgPredictionResults_ResultBreakdown) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[368] + mi := &file_dota_gcmessages_client_proto_msgTypes[387] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26937,7 +28424,7 @@ func (x *CMsgPredictionResults_ResultBreakdown) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgPredictionResults_ResultBreakdown.ProtoReflect.Descriptor instead. func (*CMsgPredictionResults_ResultBreakdown) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{127, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{129, 0} } func (x *CMsgPredictionResults_ResultBreakdown) GetAnswerSelection() uint32 { @@ -26966,7 +28453,7 @@ type CMsgPredictionResults_Result struct { func (x *CMsgPredictionResults_Result) Reset() { *x = CMsgPredictionResults_Result{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[369] + mi := &file_dota_gcmessages_client_proto_msgTypes[388] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -26979,7 +28466,7 @@ func (x *CMsgPredictionResults_Result) String() string { func (*CMsgPredictionResults_Result) ProtoMessage() {} func (x *CMsgPredictionResults_Result) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[369] + mi := &file_dota_gcmessages_client_proto_msgTypes[388] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26992,7 +28479,7 @@ func (x *CMsgPredictionResults_Result) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPredictionResults_Result.ProtoReflect.Descriptor instead. func (*CMsgPredictionResults_Result) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{127, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{129, 1} } func (x *CMsgPredictionResults_Result) GetSelectionId() uint32 { @@ -27025,7 +28512,7 @@ type CMsgClientToGCTeammateStatsResponse_TeammateStat struct { func (x *CMsgClientToGCTeammateStatsResponse_TeammateStat) Reset() { *x = CMsgClientToGCTeammateStatsResponse_TeammateStat{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[370] + mi := &file_dota_gcmessages_client_proto_msgTypes[389] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27038,7 +28525,7 @@ func (x *CMsgClientToGCTeammateStatsResponse_TeammateStat) String() string { func (*CMsgClientToGCTeammateStatsResponse_TeammateStat) ProtoMessage() {} func (x *CMsgClientToGCTeammateStatsResponse_TeammateStat) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[370] + mi := &file_dota_gcmessages_client_proto_msgTypes[389] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27051,7 +28538,7 @@ func (x *CMsgClientToGCTeammateStatsResponse_TeammateStat) ProtoReflect() protor // Deprecated: Use CMsgClientToGCTeammateStatsResponse_TeammateStat.ProtoReflect.Descriptor instead. func (*CMsgClientToGCTeammateStatsResponse_TeammateStat) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{135, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{137, 0} } func (x *CMsgClientToGCTeammateStatsResponse_TeammateStat) GetAccountId() uint32 { @@ -27110,7 +28597,7 @@ type CMsgClientToGCRequestEventPointLogResponseV2_LogEntry struct { func (x *CMsgClientToGCRequestEventPointLogResponseV2_LogEntry) Reset() { *x = CMsgClientToGCRequestEventPointLogResponseV2_LogEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[371] + mi := &file_dota_gcmessages_client_proto_msgTypes[390] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27123,7 +28610,7 @@ func (x *CMsgClientToGCRequestEventPointLogResponseV2_LogEntry) String() string func (*CMsgClientToGCRequestEventPointLogResponseV2_LogEntry) ProtoMessage() {} func (x *CMsgClientToGCRequestEventPointLogResponseV2_LogEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[371] + mi := &file_dota_gcmessages_client_proto_msgTypes[390] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27136,7 +28623,7 @@ func (x *CMsgClientToGCRequestEventPointLogResponseV2_LogEntry) ProtoReflect() p // Deprecated: Use CMsgClientToGCRequestEventPointLogResponseV2_LogEntry.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestEventPointLogResponseV2_LogEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{141, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{143, 0} } func (x *CMsgClientToGCRequestEventPointLogResponseV2_LogEntry) GetTimestamp() uint32 { @@ -27184,7 +28671,7 @@ type CMsgGCToClientQuestProgressUpdated_Challenge struct { func (x *CMsgGCToClientQuestProgressUpdated_Challenge) Reset() { *x = CMsgGCToClientQuestProgressUpdated_Challenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[372] + mi := &file_dota_gcmessages_client_proto_msgTypes[391] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27197,7 +28684,7 @@ func (x *CMsgGCToClientQuestProgressUpdated_Challenge) String() string { func (*CMsgGCToClientQuestProgressUpdated_Challenge) ProtoMessage() {} func (x *CMsgGCToClientQuestProgressUpdated_Challenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[372] + mi := &file_dota_gcmessages_client_proto_msgTypes[391] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27210,7 +28697,7 @@ func (x *CMsgGCToClientQuestProgressUpdated_Challenge) ProtoReflect() protorefle // Deprecated: Use CMsgGCToClientQuestProgressUpdated_Challenge.ProtoReflect.Descriptor instead. func (*CMsgGCToClientQuestProgressUpdated_Challenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{145, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{147, 0} } func (x *CMsgGCToClientQuestProgressUpdated_Challenge) GetChallengeId() uint32 { @@ -27274,7 +28761,7 @@ type CMsgClientToGCSelectCompendiumInGamePrediction_Prediction struct { func (x *CMsgClientToGCSelectCompendiumInGamePrediction_Prediction) Reset() { *x = CMsgClientToGCSelectCompendiumInGamePrediction_Prediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[373] + mi := &file_dota_gcmessages_client_proto_msgTypes[392] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27287,7 +28774,7 @@ func (x *CMsgClientToGCSelectCompendiumInGamePrediction_Prediction) String() str func (*CMsgClientToGCSelectCompendiumInGamePrediction_Prediction) ProtoMessage() {} func (x *CMsgClientToGCSelectCompendiumInGamePrediction_Prediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[373] + mi := &file_dota_gcmessages_client_proto_msgTypes[392] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27300,7 +28787,7 @@ func (x *CMsgClientToGCSelectCompendiumInGamePrediction_Prediction) ProtoReflect // Deprecated: Use CMsgClientToGCSelectCompendiumInGamePrediction_Prediction.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSelectCompendiumInGamePrediction_Prediction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{148, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{150, 0} } func (x *CMsgClientToGCSelectCompendiumInGamePrediction_Prediction) GetPredictionId() uint32 { @@ -27332,7 +28819,7 @@ type CMsgGCToClientBattlePassRollup_International2016_Questlines struct { func (x *CMsgGCToClientBattlePassRollup_International2016_Questlines) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016_Questlines{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[374] + mi := &file_dota_gcmessages_client_proto_msgTypes[393] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27345,7 +28832,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Questlines) String() s func (*CMsgGCToClientBattlePassRollup_International2016_Questlines) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016_Questlines) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[374] + mi := &file_dota_gcmessages_client_proto_msgTypes[393] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27358,7 +28845,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Questlines) ProtoRefle // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016_Questlines.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016_Questlines) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 0} } func (x *CMsgGCToClientBattlePassRollup_International2016_Questlines) GetName() string { @@ -27411,7 +28898,7 @@ type CMsgGCToClientBattlePassRollup_International2016_Wagering struct { func (x *CMsgGCToClientBattlePassRollup_International2016_Wagering) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016_Wagering{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[375] + mi := &file_dota_gcmessages_client_proto_msgTypes[394] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27424,7 +28911,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Wagering) String() str func (*CMsgGCToClientBattlePassRollup_International2016_Wagering) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016_Wagering) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[375] + mi := &file_dota_gcmessages_client_proto_msgTypes[394] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27437,7 +28924,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Wagering) ProtoReflect // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016_Wagering.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016_Wagering) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 1} } func (x *CMsgGCToClientBattlePassRollup_International2016_Wagering) GetTotalWagered() uint32 { @@ -27488,7 +28975,7 @@ type CMsgGCToClientBattlePassRollup_International2016_Achievements struct { func (x *CMsgGCToClientBattlePassRollup_International2016_Achievements) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016_Achievements{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[376] + mi := &file_dota_gcmessages_client_proto_msgTypes[395] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27501,7 +28988,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Achievements) String() func (*CMsgGCToClientBattlePassRollup_International2016_Achievements) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016_Achievements) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[376] + mi := &file_dota_gcmessages_client_proto_msgTypes[395] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27514,7 +29001,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Achievements) ProtoRef // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016_Achievements.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016_Achievements) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158, 2} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 2} } func (x *CMsgGCToClientBattlePassRollup_International2016_Achievements) GetCompleted() uint32 { @@ -27550,7 +29037,7 @@ type CMsgGCToClientBattlePassRollup_International2016_BattleCup struct { func (x *CMsgGCToClientBattlePassRollup_International2016_BattleCup) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016_BattleCup{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[377] + mi := &file_dota_gcmessages_client_proto_msgTypes[396] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27563,7 +29050,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_BattleCup) String() st func (*CMsgGCToClientBattlePassRollup_International2016_BattleCup) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016_BattleCup) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[377] + mi := &file_dota_gcmessages_client_proto_msgTypes[396] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27576,7 +29063,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_BattleCup) ProtoReflec // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016_BattleCup.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016_BattleCup) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158, 3} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 3} } func (x *CMsgGCToClientBattlePassRollup_International2016_BattleCup) GetWins() uint32 { @@ -27606,7 +29093,7 @@ type CMsgGCToClientBattlePassRollup_International2016_Predictions struct { func (x *CMsgGCToClientBattlePassRollup_International2016_Predictions) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016_Predictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[378] + mi := &file_dota_gcmessages_client_proto_msgTypes[397] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27619,7 +29106,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Predictions) String() func (*CMsgGCToClientBattlePassRollup_International2016_Predictions) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016_Predictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[378] + mi := &file_dota_gcmessages_client_proto_msgTypes[397] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27632,7 +29119,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Predictions) ProtoRefl // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016_Predictions.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016_Predictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158, 4} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 4} } func (x *CMsgGCToClientBattlePassRollup_International2016_Predictions) GetCorrect() uint32 { @@ -27668,7 +29155,7 @@ type CMsgGCToClientBattlePassRollup_International2016_Bracket struct { func (x *CMsgGCToClientBattlePassRollup_International2016_Bracket) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016_Bracket{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[379] + mi := &file_dota_gcmessages_client_proto_msgTypes[398] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27681,7 +29168,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Bracket) String() stri func (*CMsgGCToClientBattlePassRollup_International2016_Bracket) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016_Bracket) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[379] + mi := &file_dota_gcmessages_client_proto_msgTypes[398] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27694,7 +29181,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_Bracket) ProtoReflect( // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016_Bracket.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016_Bracket) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158, 5} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 5} } func (x *CMsgGCToClientBattlePassRollup_International2016_Bracket) GetCorrect() uint32 { @@ -27723,7 +29210,7 @@ type CMsgGCToClientBattlePassRollup_International2016_PlayerCard struct { func (x *CMsgGCToClientBattlePassRollup_International2016_PlayerCard) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016_PlayerCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[380] + mi := &file_dota_gcmessages_client_proto_msgTypes[399] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27736,7 +29223,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_PlayerCard) String() s func (*CMsgGCToClientBattlePassRollup_International2016_PlayerCard) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016_PlayerCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[380] + mi := &file_dota_gcmessages_client_proto_msgTypes[399] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27749,7 +29236,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_PlayerCard) ProtoRefle // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016_PlayerCard.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016_PlayerCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158, 6} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 6} } func (x *CMsgGCToClientBattlePassRollup_International2016_PlayerCard) GetAccountId() uint32 { @@ -27778,7 +29265,7 @@ type CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge struct { func (x *CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge) Reset() { *x = CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[381] + mi := &file_dota_gcmessages_client_proto_msgTypes[400] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27791,7 +29278,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge) Stri func (*CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[381] + mi := &file_dota_gcmessages_client_proto_msgTypes[400] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27804,7 +29291,7 @@ func (x *CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge) Prot // Deprecated: Use CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{158, 7} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 7} } func (x *CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge) GetTotalScore() float32 { @@ -27836,7 +29323,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016_Questlines struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016_Questlines) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016_Questlines{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[382] + mi := &file_dota_gcmessages_client_proto_msgTypes[401] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27849,7 +29336,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Questlines) String() string { func (*CMsgGCToClientBattlePassRollup_Fall2016_Questlines) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016_Questlines) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[382] + mi := &file_dota_gcmessages_client_proto_msgTypes[401] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27862,7 +29349,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Questlines) ProtoReflect() prot // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016_Questlines.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016_Questlines) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 0} } func (x *CMsgGCToClientBattlePassRollup_Fall2016_Questlines) GetName() string { @@ -27915,7 +29402,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016_Wagering struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016_Wagering) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016_Wagering{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[383] + mi := &file_dota_gcmessages_client_proto_msgTypes[402] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -27928,7 +29415,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Wagering) String() string { func (*CMsgGCToClientBattlePassRollup_Fall2016_Wagering) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016_Wagering) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[383] + mi := &file_dota_gcmessages_client_proto_msgTypes[402] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27941,7 +29428,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Wagering) ProtoReflect() protor // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016_Wagering.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016_Wagering) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 1} } func (x *CMsgGCToClientBattlePassRollup_Fall2016_Wagering) GetTotalWagered() uint32 { @@ -27992,7 +29479,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016_Achievements struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016_Achievements) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016_Achievements{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[384] + mi := &file_dota_gcmessages_client_proto_msgTypes[403] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28005,7 +29492,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Achievements) String() string { func (*CMsgGCToClientBattlePassRollup_Fall2016_Achievements) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016_Achievements) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[384] + mi := &file_dota_gcmessages_client_proto_msgTypes[403] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28018,7 +29505,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Achievements) ProtoReflect() pr // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016_Achievements.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016_Achievements) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 2} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 2} } func (x *CMsgGCToClientBattlePassRollup_Fall2016_Achievements) GetCompleted() uint32 { @@ -28054,7 +29541,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016_BattleCup struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016_BattleCup) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016_BattleCup{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[385] + mi := &file_dota_gcmessages_client_proto_msgTypes[404] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28067,7 +29554,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_BattleCup) String() string { func (*CMsgGCToClientBattlePassRollup_Fall2016_BattleCup) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016_BattleCup) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[385] + mi := &file_dota_gcmessages_client_proto_msgTypes[404] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28080,7 +29567,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_BattleCup) ProtoReflect() proto // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016_BattleCup.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016_BattleCup) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 3} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 3} } func (x *CMsgGCToClientBattlePassRollup_Fall2016_BattleCup) GetWins() uint32 { @@ -28110,7 +29597,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016_Predictions struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016_Predictions) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016_Predictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[386] + mi := &file_dota_gcmessages_client_proto_msgTypes[405] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28123,7 +29610,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Predictions) String() string { func (*CMsgGCToClientBattlePassRollup_Fall2016_Predictions) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016_Predictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[386] + mi := &file_dota_gcmessages_client_proto_msgTypes[405] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28136,7 +29623,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Predictions) ProtoReflect() pro // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016_Predictions.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016_Predictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 4} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 4} } func (x *CMsgGCToClientBattlePassRollup_Fall2016_Predictions) GetCorrect() uint32 { @@ -28172,7 +29659,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016_Bracket struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016_Bracket) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016_Bracket{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[387] + mi := &file_dota_gcmessages_client_proto_msgTypes[406] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28185,7 +29672,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Bracket) String() string { func (*CMsgGCToClientBattlePassRollup_Fall2016_Bracket) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016_Bracket) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[387] + mi := &file_dota_gcmessages_client_proto_msgTypes[406] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28198,7 +29685,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_Bracket) ProtoReflect() protore // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016_Bracket.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016_Bracket) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 5} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 5} } func (x *CMsgGCToClientBattlePassRollup_Fall2016_Bracket) GetCorrect() uint32 { @@ -28227,7 +29714,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[388] + mi := &file_dota_gcmessages_client_proto_msgTypes[407] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28240,7 +29727,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard) String() string { func (*CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[388] + mi := &file_dota_gcmessages_client_proto_msgTypes[407] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28253,7 +29740,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard) ProtoReflect() prot // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 6} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 6} } func (x *CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard) GetAccountId() uint32 { @@ -28282,7 +29769,7 @@ type CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge struct { func (x *CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge) Reset() { *x = CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[389] + mi := &file_dota_gcmessages_client_proto_msgTypes[408] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28295,7 +29782,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge) String() stri func (*CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[389] + mi := &file_dota_gcmessages_client_proto_msgTypes[408] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28308,7 +29795,7 @@ func (x *CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge) ProtoReflect( // Deprecated: Use CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{159, 7} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 7} } func (x *CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge) GetTotalScore() float32 { @@ -28340,7 +29827,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017_Questlines struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017_Questlines) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017_Questlines{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[390] + mi := &file_dota_gcmessages_client_proto_msgTypes[409] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28353,7 +29840,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Questlines) String() string { func (*CMsgGCToClientBattlePassRollup_Winter2017_Questlines) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017_Questlines) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[390] + mi := &file_dota_gcmessages_client_proto_msgTypes[409] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28366,7 +29853,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Questlines) ProtoReflect() pr // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017_Questlines.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017_Questlines) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 0} } func (x *CMsgGCToClientBattlePassRollup_Winter2017_Questlines) GetName() string { @@ -28419,7 +29906,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017_Wagering struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017_Wagering) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017_Wagering{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[391] + mi := &file_dota_gcmessages_client_proto_msgTypes[410] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28432,7 +29919,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Wagering) String() string { func (*CMsgGCToClientBattlePassRollup_Winter2017_Wagering) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017_Wagering) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[391] + mi := &file_dota_gcmessages_client_proto_msgTypes[410] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28445,7 +29932,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Wagering) ProtoReflect() prot // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017_Wagering.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017_Wagering) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 1} } func (x *CMsgGCToClientBattlePassRollup_Winter2017_Wagering) GetTotalWagered() uint32 { @@ -28496,7 +29983,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017_Achievements struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017_Achievements) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017_Achievements{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[392] + mi := &file_dota_gcmessages_client_proto_msgTypes[411] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28509,7 +29996,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Achievements) String() string func (*CMsgGCToClientBattlePassRollup_Winter2017_Achievements) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017_Achievements) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[392] + mi := &file_dota_gcmessages_client_proto_msgTypes[411] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28522,7 +30009,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Achievements) ProtoReflect() // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017_Achievements.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017_Achievements) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 2} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 2} } func (x *CMsgGCToClientBattlePassRollup_Winter2017_Achievements) GetCompleted() uint32 { @@ -28558,7 +30045,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017_BattleCup struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017_BattleCup) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017_BattleCup{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[393] + mi := &file_dota_gcmessages_client_proto_msgTypes[412] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28571,7 +30058,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_BattleCup) String() string { func (*CMsgGCToClientBattlePassRollup_Winter2017_BattleCup) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017_BattleCup) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[393] + mi := &file_dota_gcmessages_client_proto_msgTypes[412] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28584,7 +30071,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_BattleCup) ProtoReflect() pro // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017_BattleCup.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017_BattleCup) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 3} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 3} } func (x *CMsgGCToClientBattlePassRollup_Winter2017_BattleCup) GetWins() uint32 { @@ -28614,7 +30101,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017_Predictions struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017_Predictions) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017_Predictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[394] + mi := &file_dota_gcmessages_client_proto_msgTypes[413] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28627,7 +30114,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Predictions) String() string func (*CMsgGCToClientBattlePassRollup_Winter2017_Predictions) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017_Predictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[394] + mi := &file_dota_gcmessages_client_proto_msgTypes[413] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28640,7 +30127,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Predictions) ProtoReflect() p // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017_Predictions.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017_Predictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 4} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 4} } func (x *CMsgGCToClientBattlePassRollup_Winter2017_Predictions) GetCorrect() uint32 { @@ -28676,7 +30163,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017_Bracket struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017_Bracket) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017_Bracket{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[395] + mi := &file_dota_gcmessages_client_proto_msgTypes[414] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28689,7 +30176,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Bracket) String() string { func (*CMsgGCToClientBattlePassRollup_Winter2017_Bracket) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017_Bracket) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[395] + mi := &file_dota_gcmessages_client_proto_msgTypes[414] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28702,7 +30189,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_Bracket) ProtoReflect() proto // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017_Bracket.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017_Bracket) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 5} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 5} } func (x *CMsgGCToClientBattlePassRollup_Winter2017_Bracket) GetCorrect() uint32 { @@ -28731,7 +30218,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[396] + mi := &file_dota_gcmessages_client_proto_msgTypes[415] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28744,7 +30231,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard) String() string { func (*CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[396] + mi := &file_dota_gcmessages_client_proto_msgTypes[415] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28757,7 +30244,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard) ProtoReflect() pr // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 6} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 6} } func (x *CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard) GetAccountId() uint32 { @@ -28786,7 +30273,7 @@ type CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge struct { func (x *CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge) Reset() { *x = CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[397] + mi := &file_dota_gcmessages_client_proto_msgTypes[416] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28799,7 +30286,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge) String() st func (*CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[397] + mi := &file_dota_gcmessages_client_proto_msgTypes[416] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28812,7 +30299,7 @@ func (x *CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge) ProtoReflec // Deprecated: Use CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{160, 7} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 7} } func (x *CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge) GetTotalScore() float32 { @@ -28844,7 +30331,7 @@ type CMsgGCToClientBattlePassRollup_TI7_Questlines struct { func (x *CMsgGCToClientBattlePassRollup_TI7_Questlines) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7_Questlines{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[398] + mi := &file_dota_gcmessages_client_proto_msgTypes[417] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28857,7 +30344,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Questlines) String() string { func (*CMsgGCToClientBattlePassRollup_TI7_Questlines) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7_Questlines) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[398] + mi := &file_dota_gcmessages_client_proto_msgTypes[417] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28870,7 +30357,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Questlines) ProtoReflect() protorefl // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7_Questlines.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7_Questlines) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163, 0} } func (x *CMsgGCToClientBattlePassRollup_TI7_Questlines) GetName() string { @@ -28923,7 +30410,7 @@ type CMsgGCToClientBattlePassRollup_TI7_Wagering struct { func (x *CMsgGCToClientBattlePassRollup_TI7_Wagering) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7_Wagering{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[399] + mi := &file_dota_gcmessages_client_proto_msgTypes[418] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -28936,7 +30423,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Wagering) String() string { func (*CMsgGCToClientBattlePassRollup_TI7_Wagering) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7_Wagering) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[399] + mi := &file_dota_gcmessages_client_proto_msgTypes[418] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28949,7 +30436,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Wagering) ProtoReflect() protoreflec // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7_Wagering.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7_Wagering) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163, 1} } func (x *CMsgGCToClientBattlePassRollup_TI7_Wagering) GetTotalWagered() uint32 { @@ -29000,7 +30487,7 @@ type CMsgGCToClientBattlePassRollup_TI7_Achievements struct { func (x *CMsgGCToClientBattlePassRollup_TI7_Achievements) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7_Achievements{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[400] + mi := &file_dota_gcmessages_client_proto_msgTypes[419] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29013,7 +30500,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Achievements) String() string { func (*CMsgGCToClientBattlePassRollup_TI7_Achievements) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7_Achievements) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[400] + mi := &file_dota_gcmessages_client_proto_msgTypes[419] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29026,7 +30513,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Achievements) ProtoReflect() protore // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7_Achievements.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7_Achievements) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 2} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163, 2} } func (x *CMsgGCToClientBattlePassRollup_TI7_Achievements) GetCompleted() uint32 { @@ -29062,7 +30549,7 @@ type CMsgGCToClientBattlePassRollup_TI7_BattleCup struct { func (x *CMsgGCToClientBattlePassRollup_TI7_BattleCup) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7_BattleCup{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[401] + mi := &file_dota_gcmessages_client_proto_msgTypes[420] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29075,7 +30562,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_BattleCup) String() string { func (*CMsgGCToClientBattlePassRollup_TI7_BattleCup) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7_BattleCup) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[401] + mi := &file_dota_gcmessages_client_proto_msgTypes[420] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29088,7 +30575,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_BattleCup) ProtoReflect() protorefle // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7_BattleCup.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7_BattleCup) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 3} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163, 3} } func (x *CMsgGCToClientBattlePassRollup_TI7_BattleCup) GetWins() uint32 { @@ -29118,7 +30605,7 @@ type CMsgGCToClientBattlePassRollup_TI7_Predictions struct { func (x *CMsgGCToClientBattlePassRollup_TI7_Predictions) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7_Predictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[402] + mi := &file_dota_gcmessages_client_proto_msgTypes[421] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29131,7 +30618,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Predictions) String() string { func (*CMsgGCToClientBattlePassRollup_TI7_Predictions) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7_Predictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[402] + mi := &file_dota_gcmessages_client_proto_msgTypes[421] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29144,7 +30631,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Predictions) ProtoReflect() protoref // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7_Predictions.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7_Predictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 4} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163, 4} } func (x *CMsgGCToClientBattlePassRollup_TI7_Predictions) GetCorrect() uint32 { @@ -29180,7 +30667,7 @@ type CMsgGCToClientBattlePassRollup_TI7_Bracket struct { func (x *CMsgGCToClientBattlePassRollup_TI7_Bracket) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7_Bracket{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[403] + mi := &file_dota_gcmessages_client_proto_msgTypes[422] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29193,7 +30680,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Bracket) String() string { func (*CMsgGCToClientBattlePassRollup_TI7_Bracket) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7_Bracket) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[403] + mi := &file_dota_gcmessages_client_proto_msgTypes[422] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29206,7 +30693,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_Bracket) ProtoReflect() protoreflect // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7_Bracket.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7_Bracket) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 5} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163, 5} } func (x *CMsgGCToClientBattlePassRollup_TI7_Bracket) GetCorrect() uint32 { @@ -29235,7 +30722,7 @@ type CMsgGCToClientBattlePassRollup_TI7_PlayerCard struct { func (x *CMsgGCToClientBattlePassRollup_TI7_PlayerCard) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7_PlayerCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[404] + mi := &file_dota_gcmessages_client_proto_msgTypes[423] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29248,7 +30735,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_PlayerCard) String() string { func (*CMsgGCToClientBattlePassRollup_TI7_PlayerCard) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7_PlayerCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[404] + mi := &file_dota_gcmessages_client_proto_msgTypes[423] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29261,7 +30748,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_PlayerCard) ProtoReflect() protorefl // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7_PlayerCard.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7_PlayerCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 6} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163, 6} } func (x *CMsgGCToClientBattlePassRollup_TI7_PlayerCard) GetAccountId() uint32 { @@ -29290,7 +30777,7 @@ type CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge struct { func (x *CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge) Reset() { *x = CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[405] + mi := &file_dota_gcmessages_client_proto_msgTypes[424] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29303,7 +30790,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge) String() string { func (*CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[405] + mi := &file_dota_gcmessages_client_proto_msgTypes[424] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29316,7 +30803,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge) ProtoReflect() pro // Deprecated: Use CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{161, 7} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{163, 7} } func (x *CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge) GetTotalScore() float32 { @@ -29347,7 +30834,7 @@ type CMsgGCToClientBattlePassRollup_TI8_CavernCrawl struct { func (x *CMsgGCToClientBattlePassRollup_TI8_CavernCrawl) Reset() { *x = CMsgGCToClientBattlePassRollup_TI8_CavernCrawl{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[406] + mi := &file_dota_gcmessages_client_proto_msgTypes[425] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29360,7 +30847,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_CavernCrawl) String() string { func (*CMsgGCToClientBattlePassRollup_TI8_CavernCrawl) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI8_CavernCrawl) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[406] + mi := &file_dota_gcmessages_client_proto_msgTypes[425] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29373,7 +30860,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_CavernCrawl) ProtoReflect() protoref // Deprecated: Use CMsgGCToClientBattlePassRollup_TI8_CavernCrawl.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI8_CavernCrawl) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164, 0} } func (x *CMsgGCToClientBattlePassRollup_TI8_CavernCrawl) GetRoomsCleared() uint32 { @@ -29419,7 +30906,7 @@ type CMsgGCToClientBattlePassRollup_TI8_Wagering struct { func (x *CMsgGCToClientBattlePassRollup_TI8_Wagering) Reset() { *x = CMsgGCToClientBattlePassRollup_TI8_Wagering{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[407] + mi := &file_dota_gcmessages_client_proto_msgTypes[426] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29432,7 +30919,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_Wagering) String() string { func (*CMsgGCToClientBattlePassRollup_TI8_Wagering) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI8_Wagering) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[407] + mi := &file_dota_gcmessages_client_proto_msgTypes[426] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29445,7 +30932,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_Wagering) ProtoReflect() protoreflec // Deprecated: Use CMsgGCToClientBattlePassRollup_TI8_Wagering.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI8_Wagering) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164, 1} } func (x *CMsgGCToClientBattlePassRollup_TI8_Wagering) GetTotalWagered() uint32 { @@ -29496,7 +30983,7 @@ type CMsgGCToClientBattlePassRollup_TI8_Achievements struct { func (x *CMsgGCToClientBattlePassRollup_TI8_Achievements) Reset() { *x = CMsgGCToClientBattlePassRollup_TI8_Achievements{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[408] + mi := &file_dota_gcmessages_client_proto_msgTypes[427] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29509,7 +30996,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_Achievements) String() string { func (*CMsgGCToClientBattlePassRollup_TI8_Achievements) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI8_Achievements) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[408] + mi := &file_dota_gcmessages_client_proto_msgTypes[427] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29522,7 +31009,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_Achievements) ProtoReflect() protore // Deprecated: Use CMsgGCToClientBattlePassRollup_TI8_Achievements.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI8_Achievements) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 2} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164, 2} } func (x *CMsgGCToClientBattlePassRollup_TI8_Achievements) GetCompleted() uint32 { @@ -29559,7 +31046,7 @@ type CMsgGCToClientBattlePassRollup_TI8_Predictions struct { func (x *CMsgGCToClientBattlePassRollup_TI8_Predictions) Reset() { *x = CMsgGCToClientBattlePassRollup_TI8_Predictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[409] + mi := &file_dota_gcmessages_client_proto_msgTypes[428] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29572,7 +31059,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_Predictions) String() string { func (*CMsgGCToClientBattlePassRollup_TI8_Predictions) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI8_Predictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[409] + mi := &file_dota_gcmessages_client_proto_msgTypes[428] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29585,7 +31072,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_Predictions) ProtoReflect() protoref // Deprecated: Use CMsgGCToClientBattlePassRollup_TI8_Predictions.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI8_Predictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 3} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164, 3} } func (x *CMsgGCToClientBattlePassRollup_TI8_Predictions) GetCorrect() uint32 { @@ -29621,7 +31108,7 @@ type CMsgGCToClientBattlePassRollup_TI8_Bracket struct { func (x *CMsgGCToClientBattlePassRollup_TI8_Bracket) Reset() { *x = CMsgGCToClientBattlePassRollup_TI8_Bracket{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[410] + mi := &file_dota_gcmessages_client_proto_msgTypes[429] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29634,7 +31121,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_Bracket) String() string { func (*CMsgGCToClientBattlePassRollup_TI8_Bracket) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI8_Bracket) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[410] + mi := &file_dota_gcmessages_client_proto_msgTypes[429] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29647,7 +31134,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_Bracket) ProtoReflect() protoreflect // Deprecated: Use CMsgGCToClientBattlePassRollup_TI8_Bracket.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI8_Bracket) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 4} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164, 4} } func (x *CMsgGCToClientBattlePassRollup_TI8_Bracket) GetCorrect() uint32 { @@ -29676,7 +31163,7 @@ type CMsgGCToClientBattlePassRollup_TI8_PlayerCard struct { func (x *CMsgGCToClientBattlePassRollup_TI8_PlayerCard) Reset() { *x = CMsgGCToClientBattlePassRollup_TI8_PlayerCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[411] + mi := &file_dota_gcmessages_client_proto_msgTypes[430] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29689,7 +31176,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_PlayerCard) String() string { func (*CMsgGCToClientBattlePassRollup_TI8_PlayerCard) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI8_PlayerCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[411] + mi := &file_dota_gcmessages_client_proto_msgTypes[430] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29702,7 +31189,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_PlayerCard) ProtoReflect() protorefl // Deprecated: Use CMsgGCToClientBattlePassRollup_TI8_PlayerCard.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI8_PlayerCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 5} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164, 5} } func (x *CMsgGCToClientBattlePassRollup_TI8_PlayerCard) GetAccountId() uint32 { @@ -29731,7 +31218,7 @@ type CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge struct { func (x *CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge) Reset() { *x = CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[412] + mi := &file_dota_gcmessages_client_proto_msgTypes[431] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29744,7 +31231,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge) String() string { func (*CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[412] + mi := &file_dota_gcmessages_client_proto_msgTypes[431] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29757,7 +31244,7 @@ func (x *CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge) ProtoReflect() pro // Deprecated: Use CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{162, 6} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{164, 6} } func (x *CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge) GetTotalScore() float32 { @@ -29786,7 +31273,7 @@ type CMsgGCToClientBattlePassRollupListResponse_EventInfo struct { func (x *CMsgGCToClientBattlePassRollupListResponse_EventInfo) Reset() { *x = CMsgGCToClientBattlePassRollupListResponse_EventInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[413] + mi := &file_dota_gcmessages_client_proto_msgTypes[432] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29799,7 +31286,7 @@ func (x *CMsgGCToClientBattlePassRollupListResponse_EventInfo) String() string { func (*CMsgGCToClientBattlePassRollupListResponse_EventInfo) ProtoMessage() {} func (x *CMsgGCToClientBattlePassRollupListResponse_EventInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[413] + mi := &file_dota_gcmessages_client_proto_msgTypes[432] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29812,7 +31299,7 @@ func (x *CMsgGCToClientBattlePassRollupListResponse_EventInfo) ProtoReflect() pr // Deprecated: Use CMsgGCToClientBattlePassRollupListResponse_EventInfo.ProtoReflect.Descriptor instead. func (*CMsgGCToClientBattlePassRollupListResponse_EventInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{168, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{170, 0} } func (x *CMsgGCToClientBattlePassRollupListResponse_EventInfo) GetEventId() uint32 { @@ -29843,7 +31330,7 @@ type CMsgDOTAClientToGCQuickStatsResponse_SimpleStats struct { func (x *CMsgDOTAClientToGCQuickStatsResponse_SimpleStats) Reset() { *x = CMsgDOTAClientToGCQuickStatsResponse_SimpleStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[414] + mi := &file_dota_gcmessages_client_proto_msgTypes[433] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29856,7 +31343,7 @@ func (x *CMsgDOTAClientToGCQuickStatsResponse_SimpleStats) String() string { func (*CMsgDOTAClientToGCQuickStatsResponse_SimpleStats) ProtoMessage() {} func (x *CMsgDOTAClientToGCQuickStatsResponse_SimpleStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[414] + mi := &file_dota_gcmessages_client_proto_msgTypes[433] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29869,7 +31356,7 @@ func (x *CMsgDOTAClientToGCQuickStatsResponse_SimpleStats) ProtoReflect() protor // Deprecated: Use CMsgDOTAClientToGCQuickStatsResponse_SimpleStats.ProtoReflect.Descriptor instead. func (*CMsgDOTAClientToGCQuickStatsResponse_SimpleStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{186, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{188, 0} } func (x *CMsgDOTAClientToGCQuickStatsResponse_SimpleStats) GetWinPercent() float32 { @@ -29915,7 +31402,7 @@ type CMsgProfileResponse_FeaturedHero struct { func (x *CMsgProfileResponse_FeaturedHero) Reset() { *x = CMsgProfileResponse_FeaturedHero{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[415] + mi := &file_dota_gcmessages_client_proto_msgTypes[434] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -29928,7 +31415,7 @@ func (x *CMsgProfileResponse_FeaturedHero) String() string { func (*CMsgProfileResponse_FeaturedHero) ProtoMessage() {} func (x *CMsgProfileResponse_FeaturedHero) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[415] + mi := &file_dota_gcmessages_client_proto_msgTypes[434] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29941,7 +31428,7 @@ func (x *CMsgProfileResponse_FeaturedHero) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgProfileResponse_FeaturedHero.ProtoReflect.Descriptor instead. func (*CMsgProfileResponse_FeaturedHero) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{202, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{204, 0} } func (x *CMsgProfileResponse_FeaturedHero) GetHeroId() uint32 { @@ -29994,7 +31481,7 @@ type CMsgProfileResponse_MatchInfo struct { func (x *CMsgProfileResponse_MatchInfo) Reset() { *x = CMsgProfileResponse_MatchInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[416] + mi := &file_dota_gcmessages_client_proto_msgTypes[435] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30007,7 +31494,7 @@ func (x *CMsgProfileResponse_MatchInfo) String() string { func (*CMsgProfileResponse_MatchInfo) ProtoMessage() {} func (x *CMsgProfileResponse_MatchInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[416] + mi := &file_dota_gcmessages_client_proto_msgTypes[435] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30020,7 +31507,7 @@ func (x *CMsgProfileResponse_MatchInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgProfileResponse_MatchInfo.ProtoReflect.Descriptor instead. func (*CMsgProfileResponse_MatchInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{202, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{204, 1} } func (x *CMsgProfileResponse_MatchInfo) GetMatchId() uint64 { @@ -30072,7 +31559,7 @@ type CMsgHeroGlobalDataResponse_GraphData struct { func (x *CMsgHeroGlobalDataResponse_GraphData) Reset() { *x = CMsgHeroGlobalDataResponse_GraphData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[417] + mi := &file_dota_gcmessages_client_proto_msgTypes[436] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30085,7 +31572,7 @@ func (x *CMsgHeroGlobalDataResponse_GraphData) String() string { func (*CMsgHeroGlobalDataResponse_GraphData) ProtoMessage() {} func (x *CMsgHeroGlobalDataResponse_GraphData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[417] + mi := &file_dota_gcmessages_client_proto_msgTypes[436] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30098,7 +31585,7 @@ func (x *CMsgHeroGlobalDataResponse_GraphData) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgHeroGlobalDataResponse_GraphData.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataResponse_GraphData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{208, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{210, 0} } func (x *CMsgHeroGlobalDataResponse_GraphData) GetDay() uint32 { @@ -30143,7 +31630,7 @@ type CMsgHeroGlobalDataResponse_WeekData struct { func (x *CMsgHeroGlobalDataResponse_WeekData) Reset() { *x = CMsgHeroGlobalDataResponse_WeekData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[418] + mi := &file_dota_gcmessages_client_proto_msgTypes[437] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30156,7 +31643,7 @@ func (x *CMsgHeroGlobalDataResponse_WeekData) String() string { func (*CMsgHeroGlobalDataResponse_WeekData) ProtoMessage() {} func (x *CMsgHeroGlobalDataResponse_WeekData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[418] + mi := &file_dota_gcmessages_client_proto_msgTypes[437] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30169,7 +31656,7 @@ func (x *CMsgHeroGlobalDataResponse_WeekData) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgHeroGlobalDataResponse_WeekData.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataResponse_WeekData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{208, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{210, 1} } func (x *CMsgHeroGlobalDataResponse_WeekData) GetWeek() uint32 { @@ -30215,7 +31702,7 @@ type CMsgHeroGlobalDataResponse_HeroDataPerRankChunk struct { func (x *CMsgHeroGlobalDataResponse_HeroDataPerRankChunk) Reset() { *x = CMsgHeroGlobalDataResponse_HeroDataPerRankChunk{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[419] + mi := &file_dota_gcmessages_client_proto_msgTypes[438] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30228,7 +31715,7 @@ func (x *CMsgHeroGlobalDataResponse_HeroDataPerRankChunk) String() string { func (*CMsgHeroGlobalDataResponse_HeroDataPerRankChunk) ProtoMessage() {} func (x *CMsgHeroGlobalDataResponse_HeroDataPerRankChunk) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[419] + mi := &file_dota_gcmessages_client_proto_msgTypes[438] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30241,7 +31728,7 @@ func (x *CMsgHeroGlobalDataResponse_HeroDataPerRankChunk) ProtoReflect() protore // Deprecated: Use CMsgHeroGlobalDataResponse_HeroDataPerRankChunk.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataResponse_HeroDataPerRankChunk) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{208, 2} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{210, 2} } func (x *CMsgHeroGlobalDataResponse_HeroDataPerRankChunk) GetRankChunk() uint32 { @@ -30294,7 +31781,7 @@ type CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData struct { func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData) Reset() { *x = CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[420] + mi := &file_dota_gcmessages_client_proto_msgTypes[439] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30307,7 +31794,7 @@ func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData) String() string { func (*CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData) ProtoMessage() {} func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[420] + mi := &file_dota_gcmessages_client_proto_msgTypes[439] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30320,7 +31807,7 @@ func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData) ProtoReflect() proto // Deprecated: Use CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{210, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{212, 0} } func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData) GetHeroId() uint32 { @@ -30370,7 +31857,7 @@ type CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData struct { func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData) Reset() { *x = CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[421] + mi := &file_dota_gcmessages_client_proto_msgTypes[440] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30383,7 +31870,7 @@ func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData) String() strin func (*CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData) ProtoMessage() {} func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[421] + mi := &file_dota_gcmessages_client_proto_msgTypes[440] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30396,7 +31883,7 @@ func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData) ProtoReflect() // Deprecated: Use CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData.ProtoReflect.Descriptor instead. func (*CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{210, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{212, 1} } func (x *CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData) GetRank() uint32 { @@ -30426,7 +31913,7 @@ type CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo struct { func (x *CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo) Reset() { *x = CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[422] + mi := &file_dota_gcmessages_client_proto_msgTypes[441] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30439,7 +31926,7 @@ func (x *CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo) String() s func (*CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo) ProtoMessage() {} func (x *CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[422] + mi := &file_dota_gcmessages_client_proto_msgTypes[441] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30452,7 +31939,7 @@ func (x *CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo) ProtoRefle // Deprecated: Use CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{214, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{216, 0} } func (x *CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo) GetPathIdCompleted() uint32 { @@ -30488,7 +31975,7 @@ type CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge struct { func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge) Reset() { *x = CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[423] + mi := &file_dota_gcmessages_client_proto_msgTypes[442] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30501,7 +31988,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge) Stri func (*CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[423] + mi := &file_dota_gcmessages_client_proto_msgTypes[442] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30514,7 +32001,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge) Prot // Deprecated: Use CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{223, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225, 0} } func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge) GetPathId_1() uint32 { @@ -30543,7 +32030,7 @@ type CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem struct { func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem) Reset() { *x = CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[424] + mi := &file_dota_gcmessages_client_proto_msgTypes[443] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30556,7 +32043,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem) String( func (*CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[424] + mi := &file_dota_gcmessages_client_proto_msgTypes[443] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30569,7 +32056,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem) ProtoRe // Deprecated: Use CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{223, 1} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225, 1} } func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem) GetItemType() uint32 { @@ -30598,7 +32085,7 @@ type CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap struct { func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap) Reset() { *x = CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[425] + mi := &file_dota_gcmessages_client_proto_msgTypes[444] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30611,7 +32098,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap) String() func (*CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[425] + mi := &file_dota_gcmessages_client_proto_msgTypes[444] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30624,7 +32111,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap) ProtoRefl // Deprecated: Use CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{223, 2} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225, 2} } func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap) GetMapRoomId() uint32 { @@ -30667,7 +32154,7 @@ type CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant struct { func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant) Reset() { *x = CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[426] + mi := &file_dota_gcmessages_client_proto_msgTypes[445] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30680,7 +32167,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant) String() s func (*CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[426] + mi := &file_dota_gcmessages_client_proto_msgTypes[445] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30693,7 +32180,7 @@ func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant) ProtoRefle // Deprecated: Use CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{223, 3} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225, 3} } func (x *CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant) GetMapVariant() uint32 { @@ -30820,7 +32307,7 @@ type CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant struct { func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant) Reset() { *x = CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[427] + mi := &file_dota_gcmessages_client_proto_msgTypes[446] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30833,7 +32320,7 @@ func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant) String func (*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant) ProtoMessage() {} func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[427] + mi := &file_dota_gcmessages_client_proto_msgTypes[446] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30846,7 +32333,7 @@ func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant) ProtoR // Deprecated: Use CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{225, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{227, 0} } func (x *CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant) GetMapVariant() uint32 { @@ -30876,7 +32363,7 @@ type CMsgDOTAMutationList_Mutation struct { func (x *CMsgDOTAMutationList_Mutation) Reset() { *x = CMsgDOTAMutationList_Mutation{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[428] + mi := &file_dota_gcmessages_client_proto_msgTypes[447] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30889,7 +32376,7 @@ func (x *CMsgDOTAMutationList_Mutation) String() string { func (*CMsgDOTAMutationList_Mutation) ProtoMessage() {} func (x *CMsgDOTAMutationList_Mutation) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[428] + mi := &file_dota_gcmessages_client_proto_msgTypes[447] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30902,7 +32389,7 @@ func (x *CMsgDOTAMutationList_Mutation) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMutationList_Mutation.ProtoReflect.Descriptor instead. func (*CMsgDOTAMutationList_Mutation) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{226, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{228, 0} } func (x *CMsgDOTAMutationList_Mutation) GetId() uint32 { @@ -30938,7 +32425,7 @@ type CMsgEventTipsSummaryResponse_Tipper struct { func (x *CMsgEventTipsSummaryResponse_Tipper) Reset() { *x = CMsgEventTipsSummaryResponse_Tipper{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[429] + mi := &file_dota_gcmessages_client_proto_msgTypes[448] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -30951,7 +32438,7 @@ func (x *CMsgEventTipsSummaryResponse_Tipper) String() string { func (*CMsgEventTipsSummaryResponse_Tipper) ProtoMessage() {} func (x *CMsgEventTipsSummaryResponse_Tipper) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[429] + mi := &file_dota_gcmessages_client_proto_msgTypes[448] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30964,7 +32451,7 @@ func (x *CMsgEventTipsSummaryResponse_Tipper) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgEventTipsSummaryResponse_Tipper.ProtoReflect.Descriptor instead. func (*CMsgEventTipsSummaryResponse_Tipper) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{228, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{230, 0} } func (x *CMsgEventTipsSummaryResponse_Tipper) GetTipperAccountId() uint32 { @@ -31002,7 +32489,7 @@ type CMsgSocialFeedResponse_FeedEvent struct { func (x *CMsgSocialFeedResponse_FeedEvent) Reset() { *x = CMsgSocialFeedResponse_FeedEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[430] + mi := &file_dota_gcmessages_client_proto_msgTypes[449] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31015,7 +32502,7 @@ func (x *CMsgSocialFeedResponse_FeedEvent) String() string { func (*CMsgSocialFeedResponse_FeedEvent) ProtoMessage() {} func (x *CMsgSocialFeedResponse_FeedEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[430] + mi := &file_dota_gcmessages_client_proto_msgTypes[449] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31028,7 +32515,7 @@ func (x *CMsgSocialFeedResponse_FeedEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSocialFeedResponse_FeedEvent.ProtoReflect.Descriptor instead. func (*CMsgSocialFeedResponse_FeedEvent) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{230, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{232, 0} } func (x *CMsgSocialFeedResponse_FeedEvent) GetFeedEventId() uint64 { @@ -31121,7 +32608,7 @@ type CMsgSocialFeedCommentsResponse_FeedComment struct { func (x *CMsgSocialFeedCommentsResponse_FeedComment) Reset() { *x = CMsgSocialFeedCommentsResponse_FeedComment{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[431] + mi := &file_dota_gcmessages_client_proto_msgTypes[450] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31134,7 +32621,7 @@ func (x *CMsgSocialFeedCommentsResponse_FeedComment) String() string { func (*CMsgSocialFeedCommentsResponse_FeedComment) ProtoMessage() {} func (x *CMsgSocialFeedCommentsResponse_FeedComment) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[431] + mi := &file_dota_gcmessages_client_proto_msgTypes[450] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31147,7 +32634,7 @@ func (x *CMsgSocialFeedCommentsResponse_FeedComment) ProtoReflect() protoreflect // Deprecated: Use CMsgSocialFeedCommentsResponse_FeedComment.ProtoReflect.Descriptor instead. func (*CMsgSocialFeedCommentsResponse_FeedComment) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{232, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{234, 0} } func (x *CMsgSocialFeedCommentsResponse_FeedComment) GetCommenterAccountId() uint32 { @@ -31183,7 +32670,7 @@ type CMsgClientToGCRequestContestVotesResponse_ItemVote struct { func (x *CMsgClientToGCRequestContestVotesResponse_ItemVote) Reset() { *x = CMsgClientToGCRequestContestVotesResponse_ItemVote{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[432] + mi := &file_dota_gcmessages_client_proto_msgTypes[451] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31196,7 +32683,7 @@ func (x *CMsgClientToGCRequestContestVotesResponse_ItemVote) String() string { func (*CMsgClientToGCRequestContestVotesResponse_ItemVote) ProtoMessage() {} func (x *CMsgClientToGCRequestContestVotesResponse_ItemVote) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[432] + mi := &file_dota_gcmessages_client_proto_msgTypes[451] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31209,7 +32696,7 @@ func (x *CMsgClientToGCRequestContestVotesResponse_ItemVote) ProtoReflect() prot // Deprecated: Use CMsgClientToGCRequestContestVotesResponse_ItemVote.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRequestContestVotesResponse_ItemVote) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{236, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{238, 0} } func (x *CMsgClientToGCRequestContestVotesResponse_ItemVote) GetContestItemId() uint64 { @@ -31240,7 +32727,7 @@ type CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry struct { func (x *CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry) Reset() { *x = CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[433] + mi := &file_dota_gcmessages_client_proto_msgTypes[452] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31253,7 +32740,7 @@ func (x *CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry) String() string func (*CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry) ProtoMessage() {} func (x *CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[433] + mi := &file_dota_gcmessages_client_proto_msgTypes[452] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31266,7 +32753,7 @@ func (x *CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry) ProtoReflect() p // Deprecated: Use CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry.ProtoReflect.Descriptor instead. func (*CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{250, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{252, 0} } func (x *CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry) GetAccountId() uint32 { @@ -31309,7 +32796,7 @@ type CMsgGCToClientVerifyFavoritePlayersResponse_Result struct { func (x *CMsgGCToClientVerifyFavoritePlayersResponse_Result) Reset() { *x = CMsgGCToClientVerifyFavoritePlayersResponse_Result{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[434] + mi := &file_dota_gcmessages_client_proto_msgTypes[453] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31322,7 +32809,7 @@ func (x *CMsgGCToClientVerifyFavoritePlayersResponse_Result) String() string { func (*CMsgGCToClientVerifyFavoritePlayersResponse_Result) ProtoMessage() {} func (x *CMsgGCToClientVerifyFavoritePlayersResponse_Result) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[434] + mi := &file_dota_gcmessages_client_proto_msgTypes[453] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31335,7 +32822,7 @@ func (x *CMsgGCToClientVerifyFavoritePlayersResponse_Result) ProtoReflect() prot // Deprecated: Use CMsgGCToClientVerifyFavoritePlayersResponse_Result.ProtoReflect.Descriptor instead. func (*CMsgGCToClientVerifyFavoritePlayersResponse_Result) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{271, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{273, 0} } func (x *CMsgGCToClientVerifyFavoritePlayersResponse_Result) GetPlayer() *CMsgPartySearchPlayer { @@ -31352,6 +32839,77 @@ func (x *CMsgGCToClientVerifyFavoritePlayersResponse_Result) GetIsFavorite() boo return false } +type CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MatchId *uint64 `protobuf:"varint,1,opt,name=match_id,json=matchId" json:"match_id,omitempty"` + HeroId *uint32 `protobuf:"varint,2,opt,name=hero_id,json=heroId" json:"hero_id,omitempty"` + ReportReason *uint32 `protobuf:"varint,3,opt,name=report_reason,json=reportReason" json:"report_reason,omitempty"` + Timestamp *uint32 `protobuf:"varint,4,opt,name=timestamp" json:"timestamp,omitempty"` +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) Reset() { + *x = CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_proto_msgTypes[454] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) ProtoMessage() {} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_proto_msgTypes[454] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{298, 0} +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) GetMatchId() uint64 { + if x != nil && x.MatchId != nil { + return *x.MatchId + } + return 0 +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) GetHeroId() uint32 { + if x != nil && x.HeroId != nil { + return *x.HeroId + } + return 0 +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) GetReportReason() uint32 { + if x != nil && x.ReportReason != nil { + return *x.ReportReason + } + return 0 +} + +func (x *CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate) GetTimestamp() uint32 { + if x != nil && x.Timestamp != nil { + return *x.Timestamp + } + return 0 +} + type CMsgClientToGCGetOWMatchDetailsResponse_Marker struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -31364,7 +32922,7 @@ type CMsgClientToGCGetOWMatchDetailsResponse_Marker struct { func (x *CMsgClientToGCGetOWMatchDetailsResponse_Marker) Reset() { *x = CMsgClientToGCGetOWMatchDetailsResponse_Marker{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[435] + mi := &file_dota_gcmessages_client_proto_msgTypes[455] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31377,7 +32935,7 @@ func (x *CMsgClientToGCGetOWMatchDetailsResponse_Marker) String() string { func (*CMsgClientToGCGetOWMatchDetailsResponse_Marker) ProtoMessage() {} func (x *CMsgClientToGCGetOWMatchDetailsResponse_Marker) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[435] + mi := &file_dota_gcmessages_client_proto_msgTypes[455] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31390,7 +32948,7 @@ func (x *CMsgClientToGCGetOWMatchDetailsResponse_Marker) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCGetOWMatchDetailsResponse_Marker.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetOWMatchDetailsResponse_Marker) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{299, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{304, 0} } func (x *CMsgClientToGCGetOWMatchDetailsResponse_Marker) GetStartGameTimeS() uint32 { @@ -31419,7 +32977,7 @@ type CMsgClientToGCGetDPCFavoritesResponse_Favorite struct { func (x *CMsgClientToGCGetDPCFavoritesResponse_Favorite) Reset() { *x = CMsgClientToGCGetDPCFavoritesResponse_Favorite{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[436] + mi := &file_dota_gcmessages_client_proto_msgTypes[456] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31432,7 +32990,7 @@ func (x *CMsgClientToGCGetDPCFavoritesResponse_Favorite) String() string { func (*CMsgClientToGCGetDPCFavoritesResponse_Favorite) ProtoMessage() {} func (x *CMsgClientToGCGetDPCFavoritesResponse_Favorite) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[436] + mi := &file_dota_gcmessages_client_proto_msgTypes[456] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31445,7 +33003,7 @@ func (x *CMsgClientToGCGetDPCFavoritesResponse_Favorite) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCGetDPCFavoritesResponse_Favorite.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetDPCFavoritesResponse_Favorite) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{311, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{316, 0} } func (x *CMsgClientToGCGetDPCFavoritesResponse_Favorite) GetFavoriteType() EDPCFavoriteType { @@ -31474,7 +33032,7 @@ type CMsgClientToGCPlaceStickersRequest_StickerItem struct { func (x *CMsgClientToGCPlaceStickersRequest_StickerItem) Reset() { *x = CMsgClientToGCPlaceStickersRequest_StickerItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[437] + mi := &file_dota_gcmessages_client_proto_msgTypes[457] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31487,7 +33045,7 @@ func (x *CMsgClientToGCPlaceStickersRequest_StickerItem) String() string { func (*CMsgClientToGCPlaceStickersRequest_StickerItem) ProtoMessage() {} func (x *CMsgClientToGCPlaceStickersRequest_StickerItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[437] + mi := &file_dota_gcmessages_client_proto_msgTypes[457] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31500,7 +33058,7 @@ func (x *CMsgClientToGCPlaceStickersRequest_StickerItem) ProtoReflect() protoref // Deprecated: Use CMsgClientToGCPlaceStickersRequest_StickerItem.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlaceStickersRequest_StickerItem) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{324, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{329, 0} } func (x *CMsgClientToGCPlaceStickersRequest_StickerItem) GetPageNum() uint32 { @@ -31532,7 +33090,7 @@ type CMsgClientToGCPlaceCollectionStickersRequest_Slot struct { func (x *CMsgClientToGCPlaceCollectionStickersRequest_Slot) Reset() { *x = CMsgClientToGCPlaceCollectionStickersRequest_Slot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[438] + mi := &file_dota_gcmessages_client_proto_msgTypes[458] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31545,7 +33103,7 @@ func (x *CMsgClientToGCPlaceCollectionStickersRequest_Slot) String() string { func (*CMsgClientToGCPlaceCollectionStickersRequest_Slot) ProtoMessage() {} func (x *CMsgClientToGCPlaceCollectionStickersRequest_Slot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[438] + mi := &file_dota_gcmessages_client_proto_msgTypes[458] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31558,7 +33116,7 @@ func (x *CMsgClientToGCPlaceCollectionStickersRequest_Slot) ProtoReflect() proto // Deprecated: Use CMsgClientToGCPlaceCollectionStickersRequest_Slot.ProtoReflect.Descriptor instead. func (*CMsgClientToGCPlaceCollectionStickersRequest_Slot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{326, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{331, 0} } func (x *CMsgClientToGCPlaceCollectionStickersRequest_Slot) GetPageNum() uint32 { @@ -31608,7 +33166,7 @@ type CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote struct { func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote) Reset() { *x = CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_proto_msgTypes[439] + mi := &file_dota_gcmessages_client_proto_msgTypes[459] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -31621,7 +33179,7 @@ func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote) String() strin func (*CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote) ProtoMessage() {} func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_proto_msgTypes[439] + mi := &file_dota_gcmessages_client_proto_msgTypes[459] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31634,7 +33192,7 @@ func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote) ProtoReflect() // Deprecated: Use CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{339, 0} + return file_dota_gcmessages_client_proto_rawDescGZIP(), []int{344, 0} } func (x *CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote) GetItemDef() uint32 { @@ -31707,7 +33265,7 @@ var file_dota_gcmessages_client_proto_rawDesc = []byte{ 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, - 0x54, 0x79, 0x70, 0x65, 0x22, 0xb0, 0x10, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x54, 0x79, 0x70, 0x65, 0x22, 0xc8, 0x10, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x12, 0x2b, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x2e, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x49, 0x44, 0x52, @@ -31727,7 +33285,7 @@ var file_dota_gcmessages_client_proto_rawDesc = []byte{ 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x65, - 0x62, 0x75, 0x67, 0x54, 0x65, 0x78, 0x74, 0x22, 0xed, 0x0d, 0x0a, 0x07, 0x50, 0x6f, 0x70, 0x75, + 0x62, 0x75, 0x67, 0x54, 0x65, 0x78, 0x74, 0x22, 0x85, 0x0e, 0x0a, 0x07, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x49, 0x44, 0x12, 0x11, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, 0x00, 0x12, 0x15, 0x0a, @@ -31838,2540 +33396,2597 @@ var file_dota_gcmessages_client_proto_rawDesc = []byte{ 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4d, 0x55, 0x43, 0x48, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x4d, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x46, 0x45, 0x57, 0x5f, - 0x47, 0x41, 0x4d, 0x45, 0x53, 0x10, 0x4e, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9c, 0x03, 0x0a, 0x20, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, - 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x43, 0x0a, 0x1e, 0x6e, 0x75, 0x6d, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, - 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x6e, 0x75, 0x6d, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, - 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x43, 0x0a, 0x1e, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x65, 0x67, 0x61, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x6d, - 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x6e, 0x75, - 0x6d, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, - 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x3b, 0x0a, 0x1a, 0x6e, 0x75, 0x6d, - 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x6e, - 0x75, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x3b, 0x0a, 0x1a, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x65, - 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x6e, 0x75, 0x6d, 0x4e, - 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x54, 0x6f, - 0x74, 0x61, 0x6c, 0x12, 0x3d, 0x0a, 0x1b, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x73, - 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, - 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x6d, - 0x6d, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, - 0x6e, 0x67, 0x12, 0x35, 0x0a, 0x17, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x5f, - 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x73, 0x52, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0xa0, 0x01, 0x0a, 0x1a, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, - 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xb4, 0x04, 0x0a, - 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6c, 0x61, - 0x67, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x62, 0x75, 0x67, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x51, 0x0a, 0x0b, 0x65, 0x6e, 0x75, 0x6d, 0x5f, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0a, - 0x65, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xc6, 0x02, 0x0a, 0x07, 0x45, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, - 0x6b, 0x5f, 0x65, 0x44, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x4d, 0x69, 0x78, 0x65, 0x64, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0x03, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4c, 0x61, 0x74, 0x65, 0x10, 0x04, 0x12, 0x1b, 0x0a, - 0x17, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x72, 0x65, 0x67, 0x61, - 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, - 0x65, 0x48, 0x61, 0x73, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x74, 0x65, 0x64, 0x10, 0x06, 0x12, - 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x07, 0x12, - 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x10, - 0x08, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x52, - 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x09, 0x12, 0x18, 0x0a, - 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x0a, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x49, 0x6e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x52, 0x65, 0x6d, 0x61, 0x69, - 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x10, 0x0c, 0x12, 0x14, 0x0a, - 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x10, 0x0d, 0x22, 0x86, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x76, 0x6f, 0x69, - 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, - 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x22, 0x93, 0x01, 0x0a, - 0x28, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x76, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x23, 0x0a, - 0x0d, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x62, 0x75, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x22, 0x48, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, - 0x62, 0x6d, 0x69, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, + 0x47, 0x41, 0x4d, 0x45, 0x53, 0x10, 0x4e, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, + 0x53, 0x43, 0x4f, 0x52, 0x45, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x57, 0x10, 0x4f, 0x22, + 0x21, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x22, 0x9c, 0x03, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x1e, 0x6e, 0x75, 0x6d, 0x5f, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, + 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x1b, 0x6e, 0x75, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x43, 0x0a, 0x1e, + 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x6e, 0x75, 0x6d, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, + 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, + 0x67, 0x12, 0x3b, 0x0a, 0x1a, 0x6e, 0x75, 0x6d, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x6e, 0x75, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x3b, + 0x0a, 0x1a, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x72, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x17, 0x6e, 0x75, 0x6d, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x3d, 0x0a, 0x1b, 0x6e, + 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, + 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x18, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x35, 0x0a, 0x17, 0x6e, 0x75, + 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, + 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6e, 0x75, 0x6d, + 0x43, 0x6f, 0x6d, 0x6d, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x54, 0x6f, 0x74, 0x61, + 0x6c, 0x22, 0xa0, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xb4, 0x04, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, + 0x62, 0x75, 0x67, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x64, 0x65, 0x62, 0x75, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, + 0x51, 0x0a, 0x0b, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0a, 0x65, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x22, 0xc6, 0x02, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x44, 0x75, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, + 0x6b, 0x5f, 0x65, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6c, + 0x61, 0x67, 0x73, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4c, + 0x61, 0x74, 0x65, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x50, 0x72, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x48, 0x61, 0x73, 0x6e, 0x74, 0x43, 0x68, + 0x61, 0x74, 0x74, 0x65, 0x64, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x49, 0x6e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4f, 0x77, + 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x10, 0x08, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, + 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x10, 0x09, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x0a, 0x12, + 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x6f, 0x61, + 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, + 0x65, 0x4e, 0x6f, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x73, 0x10, 0x0c, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x0d, 0x22, 0x86, 0x01, 0x0a, 0x20, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x41, 0x76, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x6a, 0x0a, 0x22, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, + 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, + 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x4e, 0x6f, 0x74, 0x65, 0x22, 0x93, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x76, 0x6f, + 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, + 0x62, 0x75, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xec, 0x01, 0x0a, 0x1c, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x56, 0x32, 0x12, 0x2a, 0x0a, 0x11, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, + 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x73, 0x6c, + 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x65, 0x62, 0x75, 0x67, 0x53, + 0x6c, 0x6f, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, 0x64, 0x65, 0x62, + 0x75, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, 0xda, 0x04, 0x0a, 0x24, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x56, 0x32, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x5a, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, 0x41, 0x77, 0x61, 0x72, - 0x64, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x24, - 0x0a, 0x0e, 0x6d, 0x76, 0x70, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x76, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x22, 0x54, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x4b, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, - 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x2e, 0x0a, 0x0a, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x22, 0x36, 0x0a, 0x19, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, + 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x62, 0x75, + 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x53, 0x0a, 0x0b, 0x65, 0x6e, 0x75, 0x6d, + 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, + 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, 0x32, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x52, 0x0a, 0x65, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xe6, 0x02, + 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, + 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, + 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x44, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x4d, 0x69, + 0x78, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0x03, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4c, 0x61, 0x74, 0x65, 0x10, 0x04, + 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x72, + 0x65, 0x67, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x05, 0x12, 0x13, 0x0a, + 0x0f, 0x6b, 0x5f, 0x65, 0x48, 0x61, 0x73, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x74, 0x65, 0x64, + 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, + 0x69, 0x70, 0x10, 0x08, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x09, + 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, + 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x0a, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x52, 0x65, + 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x10, 0x0c, + 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x10, 0x0d, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x65, 0x43, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x10, 0x0e, 0x22, 0x48, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, + 0x56, 0x6f, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x22, 0x6a, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, + 0x69, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x5a, 0x0a, 0x17, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, + 0x41, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x49, 0x64, 0x22, 0x88, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x29, 0x0a, 0x05, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x05, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x12, 0x27, 0x0a, 0x04, 0x76, 0x6f, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x04, 0x76, 0x6f, 0x74, 0x65, 0x22, 0xe3, 0x01, - 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x4c, 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x65, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x63, - 0x6b, 0x65, 0x74, 0x73, 0x2e, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, - 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x61, 0x73, 0x73, 0x65, 0x73, 0x1a, 0x44, 0x0a, - 0x0a, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x61, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x64, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, - 0x44, 0x65, 0x66, 0x22, 0x40, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, - 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x76, 0x70, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x76, 0x70, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x54, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x4b, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x2e, + 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x22, 0x36, + 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, 0x88, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x29, 0x0a, + 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x27, 0x0a, 0x04, 0x76, 0x6f, 0x74, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, + 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x04, 0x76, 0x6f, 0x74, + 0x65, 0x22, 0xe3, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x4c, 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x70, 0x61, + 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2e, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, + 0x61, 0x73, 0x73, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x61, 0x73, 0x73, 0x65, + 0x73, 0x1a, 0x44, 0x0a, 0x0a, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x61, 0x73, 0x73, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x22, 0x40, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x63, 0x0a, 0x20, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, + 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x3f, 0x0a, + 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x22, 0xd9, + 0x08, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x57, 0x65, 0x6c, 0x63, 0x6f, + 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x74, 0x6f, + 0x72, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x61, 0x73, 0x68, 0x12, 0x38, 0x0a, 0x17, 0x74, 0x69, + 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, + 0x69, 0x76, 0x65, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x74, 0x69, 0x6d, + 0x65, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, + 0x76, 0x65, 0x6c, 0x79, 0x12, 0x40, 0x0a, 0x1d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x33, 0x72, + 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x68, 0x69, + 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x61, 0x6c, 0x6c, + 0x6f, 0x77, 0x33, 0x72, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x69, + 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, + 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, + 0x6e, 0x63, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, + 0x6e, 0x63, 0x79, 0x12, 0x3f, 0x0a, 0x1c, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x72, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6f, 0x72, 0x69, + 0x67, 0x69, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x73, 0x68, 0x6f, 0x75, 0x6c, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x72, + 0x69, 0x67, 0x69, 0x6e, 0x12, 0x35, 0x0a, 0x17, 0x67, 0x63, 0x5f, 0x73, 0x6f, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x67, 0x63, 0x53, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x46, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x1d, 0x69, + 0x73, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x5f, + 0x74, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x18, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x19, 0x69, 0x73, 0x50, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x57, 0x6f, 0x72, + 0x6c, 0x64, 0x54, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x46, 0x0a, + 0x0e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, + 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x2e, 0x43, 0x45, 0x78, + 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x52, 0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, + 0x5f, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x1b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x52, 0x65, + 0x63, 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x0c, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0b, + 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x17, 0x61, + 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, 0x64, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x1b, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, + 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, + 0x76, 0x69, 0x74, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x69, + 0x74, 0x65, 0x73, 0x52, 0x18, 0x70, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x2d, 0x0a, + 0x12, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, 0x6d, 0x61, 0x69, + 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x1a, + 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x65, + 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x17, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, + 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x46, 0x0a, 0x14, 0x65, 0x78, 0x74, + 0x72, 0x61, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x73, 0x18, 0x22, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x12, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x52, 0x0a, 0x18, 0x43, 0x53, + 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x61, 0x6d, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x61, 0x76, + 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x63, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, - 0x63, 0x68, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x07, 0x69, 0x6e, 0x76, - 0x69, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x22, 0xd9, 0x08, 0x0a, 0x0f, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x26, - 0x0a, 0x0f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x68, 0x61, 0x73, - 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x49, 0x74, - 0x65, 0x6d, 0x48, 0x61, 0x73, 0x68, 0x12, 0x38, 0x0a, 0x17, 0x74, 0x69, 0x6d, 0x65, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x64, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x6c, - 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x74, 0x69, 0x6d, 0x65, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x64, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, - 0x12, 0x40, 0x0a, 0x1d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x33, 0x72, 0x64, 0x5f, 0x70, 0x61, - 0x72, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, - 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x33, 0x72, - 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x61, 0x73, - 0x74, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, - 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, - 0x3f, 0x0a, 0x1c, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, - 0x12, 0x35, 0x0a, 0x17, 0x67, 0x63, 0x5f, 0x73, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x66, - 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x16, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x14, 0x67, 0x63, 0x53, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x46, 0x69, 0x6c, 0x65, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x1d, 0x69, 0x73, 0x5f, 0x70, 0x65, - 0x72, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x5f, 0x74, 0x65, 0x73, 0x74, - 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, - 0x69, 0x73, 0x50, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x54, 0x65, - 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x46, 0x0a, 0x0e, 0x65, 0x78, 0x74, - 0x72, 0x61, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, - 0x73, 0x67, 0x52, 0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x63, - 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, - 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, - 0x41, 0x0a, 0x1d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x77, - 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x1b, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x73, 0x65, 0x61, 0x72, - 0x63, 0x68, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, - 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x52, - 0x18, 0x70, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x6d, - 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x20, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x50, 0x6c, 0x61, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x64, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, - 0x61, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, - 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x46, 0x0a, 0x14, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x22, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, - 0x61, 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x12, 0x65, 0x78, 0x74, 0x72, 0x61, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x1a, 0x37, 0x0a, - 0x09, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x52, 0x0a, 0x18, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, - 0x41, 0x47, 0x61, 0x6d, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, - 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xab, 0x01, 0x0a, 0x12, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, - 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x05, - 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x56, 0x6f, 0x74, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, - 0x52, 0x05, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x1a, 0x3f, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x56, 0x6f, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f, 0x74, 0x65, 0x22, 0x9c, 0x02, 0x0a, 0x1d, 0x43, 0x4d, 0x73, - 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x12, 0x44, 0x0a, 0x1f, 0x61, 0x75, 0x74, 0x6f, 0x5f, - 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x69, - 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, - 0x52, 0x1b, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x51, 0x0a, - 0x26, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, - 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x21, 0x61, - 0x75, 0x74, 0x6f, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x50, - 0x69, 0x6e, 0x67, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x12, 0x35, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xf4, 0x01, 0x0a, 0x20, 0x43, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xab, + 0x01, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x56, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, + 0x12, 0x39, 0x0a, 0x05, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x56, 0x6f, 0x74, 0x65, 0x52, 0x05, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x1a, 0x3f, 0x0a, 0x0a, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x6f, 0x74, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f, 0x74, 0x65, 0x22, 0x9c, 0x02, 0x0a, + 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, + 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x73, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x12, 0x44, 0x0a, 0x1f, 0x61, + 0x75, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x11, 0x52, 0x1b, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, + 0x79, 0x12, 0x51, 0x0a, 0x26, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, + 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x6e, + 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x11, 0x52, 0x21, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x12, 0x35, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, - 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x2f, 0x0a, 0x13, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x57, 0x0a, 0x29, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, 0x62, 0x79, 0x5f, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x32, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x24, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x42, 0x79, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x32, 0x12, 0x46, 0x0a, 0x0c, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x73, 0x22, 0x5e, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x12, 0x3c, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, - 0x73, 0x22, 0x62, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3c, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, + 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xf4, + 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x12, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x57, 0x0a, 0x29, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x73, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, + 0x5f, 0x62, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x32, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x24, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x53, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x42, + 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x32, 0x12, 0x46, 0x0a, + 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x08, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0x5e, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, + 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3c, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, - 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x61, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x53, 0x65, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, - 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x1d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, - 0x33, 0x72, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x61, - 0x6c, 0x6c, 0x6f, 0x77, 0x33, 0x72, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x41, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x62, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3c, 0x0a, 0x05, 0x73, + 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, + 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x61, 0x0a, 0x1d, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x72, 0x79, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x1d, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x5f, 0x33, 0x72, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x19, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x33, 0x72, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x41, 0x0a, 0x25, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, + 0x65, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4e, 0x6f, 0x74, 0x69, 0x66, + 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, + 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x66, 0x6c, 0x61, + 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x44, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, + 0x61, 0x63, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x22, 0x3d, 0x0a, 0x21, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x65, 0x0a, 0x20, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, - 0x1c, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x23, 0x0a, - 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, - 0x67, 0x73, 0x22, 0x44, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, - 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, 0x12, - 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x22, 0x3d, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, - 0x69, 0x76, 0x61, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x4f, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x55, - 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x74, 0x65, 0x6d, - 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, - 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x74, 0x65, - 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x73, 0x0a, 0x1b, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x57, 0x61, 0x74, 0x63, 0x68, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, - 0x65, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x57, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x09, 0x77, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x22, 0x1f, - 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x6a, - 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, - 0x18, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, - 0x53, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x22, 0xee, 0x07, 0x0a, 0x1e, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x09, - 0x73, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x09, 0x73, 0x74, 0x61, 0x6e, - 0x64, 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x82, 0x07, 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x17, - 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, - 0x6f, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x6f, 0x73, - 0x73, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x77, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, - 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, - 0x61, 0x6b, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x77, 0x69, 0x6e, 0x5f, 0x73, - 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x65, 0x73, - 0x74, 0x57, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x76, - 0x67, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x61, - 0x76, 0x67, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x67, 0x5f, 0x64, - 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x61, 0x76, 0x67, - 0x44, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x61, 0x73, - 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x61, 0x76, 0x67, - 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x76, 0x67, 0x5f, 0x67, - 0x70, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x61, 0x76, 0x67, 0x47, 0x70, 0x6d, - 0x12, 0x17, 0x0a, 0x07, 0x61, 0x76, 0x67, 0x5f, 0x78, 0x70, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x06, 0x61, 0x76, 0x67, 0x58, 0x70, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x65, 0x73, - 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62, - 0x65, 0x73, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, - 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x62, 0x65, 0x73, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x62, - 0x65, 0x73, 0x74, 0x5f, 0x67, 0x70, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, - 0x65, 0x73, 0x74, 0x47, 0x70, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x78, - 0x70, 0x6d, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x65, 0x73, 0x74, 0x58, 0x70, - 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, - 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, - 0x6e, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x77, 0x69, 0x6e, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, - 0x5f, 0x61, 0x6c, 0x6c, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x69, 0x6e, - 0x73, 0x57, 0x69, 0x74, 0x68, 0x41, 0x6c, 0x6c, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6c, 0x6f, 0x73, - 0x73, 0x65, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x61, 0x6c, 0x6c, 0x79, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x41, - 0x6c, 0x6c, 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x77, 0x69, 0x6e, 0x73, 0x5f, 0x61, 0x67, 0x61, 0x69, - 0x6e, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x10, 0x77, 0x69, 0x6e, 0x73, 0x41, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, 0x45, 0x6e, 0x65, 0x6d, - 0x79, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x5f, 0x61, 0x67, 0x61, 0x69, - 0x6e, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x12, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x41, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, 0x45, 0x6e, - 0x65, 0x6d, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x5f, - 0x70, 0x65, 0x61, 0x6b, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x65, 0x74, 0x77, - 0x6f, 0x72, 0x74, 0x68, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, - 0x68, 0x69, 0x74, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x64, - 0x65, 0x6e, 0x79, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x64, 0x65, 0x6e, 0x79, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x6f, 0x6e, - 0x67, 0x65, 0x73, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x18, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x47, 0x61, 0x6d, - 0x65, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, - 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x61, - 0x6c, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x76, 0x67, 0x5f, - 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, - 0x61, 0x76, 0x67, 0x4c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x76, 0x67, 0x5f, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x09, 0x61, 0x76, 0x67, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x22, 0xa7, 0x03, 0x0a, 0x1d, 0x43, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, - 0x53, 0x74, 0x61, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x6b, 0x69, 0x6c, - 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, - 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x61, 0x73, 0x73, - 0x69, 0x73, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, - 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, - 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, - 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, - 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, - 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x53, 0x70, - 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, - 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, - 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x72, 0x64, - 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, - 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x64, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, - 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x74, 0x72, 0x69, - 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, - 0x61, 0x67, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, - 0x61, 0x67, 0x65, 0x73, 0x22, 0xac, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x53, 0x74, - 0x64, 0x44, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, - 0x69, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, - 0x73, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, - 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x64, - 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, - 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, - 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, - 0x6b, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, - 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x72, 0x64, 0x73, - 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x77, - 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x64, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x70, - 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, - 0x67, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, - 0x67, 0x65, 0x73, 0x22, 0xd4, 0x05, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, + 0x28, 0x0d, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x4f, 0x0a, 0x15, 0x43, + 0x4d, 0x73, 0x67, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x22, 0x1f, 0x0a, 0x1d, + 0x43, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x73, 0x0a, + 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x57, 0x61, 0x74, 0x63, 0x68, 0x44, 0x6f, 0x77, 0x6e, + 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x19, 0x0a, 0x08, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x77, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x57, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, + 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x77, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, + 0x70, 0x65, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x73, 0x52, 0x65, 0x6a, 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x73, 0x22, 0x18, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x22, 0xee, 0x07, + 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, + 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x47, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x09, + 0x73, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x82, 0x07, 0x0a, 0x04, 0x48, 0x65, + 0x72, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x77, + 0x69, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x77, 0x69, 0x6e, 0x5f, 0x73, + 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x69, 0x6e, + 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x77, + 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x62, 0x65, 0x73, 0x74, 0x57, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x1b, + 0x0a, 0x09, 0x61, 0x76, 0x67, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x08, 0x61, 0x76, 0x67, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, + 0x76, 0x67, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x09, 0x61, 0x76, 0x67, 0x44, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, + 0x67, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x0a, 0x61, 0x76, 0x67, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x61, + 0x76, 0x67, 0x5f, 0x67, 0x70, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x61, 0x76, + 0x67, 0x47, 0x70, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x76, 0x67, 0x5f, 0x78, 0x70, 0x6d, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x61, 0x76, 0x67, 0x58, 0x70, 0x6d, 0x12, 0x1d, 0x0a, + 0x0a, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x62, 0x65, 0x73, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x62, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x65, 0x73, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x67, 0x70, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x62, 0x65, 0x73, 0x74, 0x47, 0x70, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x65, + 0x73, 0x74, 0x5f, 0x78, 0x70, 0x6d, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x65, + 0x73, 0x74, 0x58, 0x70, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x77, 0x69, 0x6e, 0x73, 0x5f, + 0x77, 0x69, 0x74, 0x68, 0x5f, 0x61, 0x6c, 0x6c, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x77, 0x69, 0x6e, 0x73, 0x57, 0x69, 0x74, 0x68, 0x41, 0x6c, 0x6c, 0x79, 0x12, 0x28, 0x0a, + 0x10, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x61, 0x6c, 0x6c, + 0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x57, + 0x69, 0x74, 0x68, 0x41, 0x6c, 0x6c, 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x77, 0x69, 0x6e, 0x73, 0x5f, + 0x61, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x77, 0x69, 0x6e, 0x73, 0x41, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, + 0x45, 0x6e, 0x65, 0x6d, 0x79, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x5f, + 0x61, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x18, 0x13, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x41, 0x67, 0x61, 0x69, 0x6e, + 0x73, 0x74, 0x45, 0x6e, 0x65, 0x6d, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x74, 0x68, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x21, 0x0a, 0x0c, + 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x15, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x50, 0x65, 0x61, 0x6b, 0x12, + 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x6e, 0x79, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x16, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x6e, 0x79, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, + 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x17, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x2a, 0x0a, + 0x11, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x65, + 0x61, 0x6b, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x73, + 0x74, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x61, + 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x21, 0x0a, 0x0c, + 0x61, 0x76, 0x67, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x18, 0x1a, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0b, 0x61, 0x76, 0x67, 0x4c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x67, 0x5f, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x1b, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x09, 0x61, 0x76, 0x67, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x22, 0xa7, + 0x03, 0x0a, 0x1d, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, + 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, + 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6e, 0x65, 0x74, + 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, + 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, + 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, + 0x69, 0x74, 0x65, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, + 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, + 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, + 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x07, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, + 0x70, 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x0b, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, + 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, + 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x22, 0xac, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, + 0x61, 0x74, 0x53, 0x74, 0x64, 0x44, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, + 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, + 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, + 0x6f, 0x72, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, + 0x6f, 0x72, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, + 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x69, + 0x74, 0x65, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, + 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, + 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x63, + 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x77, + 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x07, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, + 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, + 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, + 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x72, + 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x22, 0xd4, 0x05, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x12, 0x64, 0x0a, 0x12, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, 0x75, + 0x6e, 0x6b, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x12, 0x64, 0x0a, 0x12, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x65, 0x64, - 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, - 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x65, 0x64, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x52, 0x10, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x65, - 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, 0xa1, 0x03, 0x0a, 0x13, 0x54, 0x69, 0x6d, 0x65, 0x64, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x12, - 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, - 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x75, 0x6e, + 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x10, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, + 0x75, 0x6e, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, 0xa1, 0x03, 0x0a, 0x13, 0x54, + 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, + 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, + 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x73, 0x52, 0x08, + 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x48, 0x0a, 0x0d, 0x77, 0x69, 0x6e, 0x6e, + 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x41, 0x76, 0x65, 0x72, + 0x61, 0x67, 0x65, 0x73, 0x52, 0x0c, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x12, 0x46, 0x0a, 0x0c, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, + 0x64, 0x53, 0x74, 0x61, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x73, 0x52, 0x0b, 0x6c, + 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x51, 0x0a, 0x0f, 0x77, 0x69, + 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x64, 0x64, 0x65, 0x76, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, + 0x53, 0x74, 0x64, 0x44, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x77, + 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x64, 0x64, 0x65, 0x76, 0x73, 0x12, 0x4f, 0x0a, + 0x0e, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x64, 0x64, 0x65, 0x76, 0x73, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, - 0x61, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x73, 0x52, 0x08, 0x61, 0x6c, 0x6c, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x12, 0x48, 0x0a, 0x0d, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x5f, - 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, - 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x73, - 0x52, 0x0c, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x46, - 0x0a, 0x0c, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, - 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x73, 0x52, 0x0b, 0x6c, 0x6f, 0x73, 0x69, 0x6e, - 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x51, 0x0a, 0x0f, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, - 0x67, 0x5f, 0x73, 0x74, 0x64, 0x64, 0x65, 0x76, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x53, 0x74, 0x64, 0x44, - 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x77, 0x69, 0x6e, 0x6e, 0x69, - 0x6e, 0x67, 0x53, 0x74, 0x64, 0x64, 0x65, 0x76, 0x73, 0x12, 0x4f, 0x0a, 0x0e, 0x6c, 0x6f, 0x73, - 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x64, 0x64, 0x65, 0x76, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x53, 0x74, - 0x64, 0x44, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0d, 0x6c, 0x6f, 0x73, - 0x69, 0x6e, 0x67, 0x53, 0x74, 0x64, 0x64, 0x65, 0x76, 0x73, 0x1a, 0x8d, 0x01, 0x0a, 0x10, 0x52, - 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, - 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x12, 0x5a, - 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x64, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x0a, - 0x74, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x25, 0x0a, 0x23, 0x43, 0x4d, + 0x61, 0x74, 0x53, 0x74, 0x64, 0x44, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x0d, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x64, 0x64, 0x65, 0x76, 0x73, 0x1a, 0x8d, + 0x01, 0x0a, 0x10, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x65, 0x64, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, 0x75, 0x6e, + 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x75, + 0x6e, 0x6b, 0x12, 0x5a, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x69, 0x6d, 0x65, + 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x54, + 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x65, 0x72, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x25, + 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, + 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4e, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, + 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x6d, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, + 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, + 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x59, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, + 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, + 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x79, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, + 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, + 0x66, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, + 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, + 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x5d, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, - 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x22, 0x4e, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, - 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x22, 0x6d, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, - 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0c, 0x72, 0x65, 0x73, - 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, - 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x22, 0x59, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, - 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, - 0x65, 0x66, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x79, 0x0a, 0x26, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, - 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, - 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, - 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x5d, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, - 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, - 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, - 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x65, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, - 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, - 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, - 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x22, 0x64, 0x0a, 0x1c, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x54, 0x75, - 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x7a, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x23, 0x0a, - 0x0d, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x4f, 0x6e, - 0x6c, 0x79, 0x22, 0x14, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x6c, 0x69, 0x70, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x22, 0xb0, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x72, - 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, - 0x43, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, - 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, - 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0xea, 0x01, 0x0a, 0x1c, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x65, 0x0a, 0x14, - 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x67, 0x69, 0x66, 0x74, 0x5f, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x65, 0x0a, 0x2a, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x6c, + 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, + 0x22, 0x64, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x7a, 0x65, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6e, + 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, + 0x6e, 0x67, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x14, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x6c, + 0x69, 0x70, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x22, 0xb0, 0x01, 0x0a, + 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, + 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, + 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, + 0xea, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x65, 0x0a, 0x14, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x67, + 0x69, 0x66, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, + 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, + 0x74, 0x61, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x69, 0x66, 0x74, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x11, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x47, + 0x69, 0x66, 0x74, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x63, 0x0a, 0x11, 0x47, 0x72, 0x61, 0x6e, 0x74, + 0x49, 0x74, 0x65, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x12, + 0x67, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x69, 0x76, 0x65, 0x54, 0x6f, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x69, 0x66, + 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x67, 0x69, 0x66, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xa6, 0x01, 0x0a, + 0x18, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x36, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x88, 0x07, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x47, - 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x11, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x44, - 0x61, 0x74, 0x61, 0x1a, 0x63, 0x0a, 0x11, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, - 0x47, 0x69, 0x66, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x12, 0x67, 0x69, 0x76, 0x65, - 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x69, 0x76, 0x65, 0x54, 0x6f, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x69, 0x66, 0x74, 0x5f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x67, 0x69, 0x66, - 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xa6, 0x01, 0x0a, 0x18, 0x43, 0x4d, 0x73, + 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x5f, 0x0a, 0x0e, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, + 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0d, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x1a, 0x57, 0x0a, 0x15, 0x4d, 0x79, 0x73, 0x74, 0x65, 0x72, + 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x1a, + 0x2f, 0x0a, 0x12, 0x4c, 0x6f, 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, + 0x66, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, + 0x1a, 0x61, 0x0a, 0x14, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, + 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x10, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, + 0x61, 0x74, 0x61, 0x1a, 0x99, 0x01, 0x0a, 0x11, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x52, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x72, 0x61, + 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x67, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x72, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, + 0x0a, 0x0b, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x22, + 0xae, 0x02, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, + 0x0a, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x01, 0x12, 0x12, 0x0a, + 0x0e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x10, + 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x72, + 0x72, 0x6f, 0x72, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x49, 0x6e, 0x73, 0x75, 0x66, 0x66, 0x69, + 0x63, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x05, 0x12, 0x14, 0x0a, + 0x10, 0x49, 0x6e, 0x73, 0x75, 0x66, 0x66, 0x69, 0x63, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x10, 0x06, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x43, 0x6c, + 0x61, 0x69, 0x6d, 0x65, 0x64, 0x10, 0x07, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x44, 0x4f, 0x4c, 0x6f, + 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x53, + 0x44, 0x4f, 0x4c, 0x6f, 0x61, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x10, 0x09, 0x12, + 0x11, 0x0a, 0x0d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x64, + 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x0b, 0x12, + 0x1c, 0x0a, 0x18, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x50, 0x6c, 0x75, 0x73, 0x53, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0c, 0x12, 0x0f, 0x0a, + 0x0b, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x0d, 0x12, 0x10, + 0x0a, 0x0c, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x10, 0x0e, + 0x22, 0x96, 0x01, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x19, 0x0a, 0x08, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x80, 0x01, 0x0a, 0x2f, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, + 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, + 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x36, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x22, 0x88, 0x07, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x12, 0x5f, 0x0a, 0x0e, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, - 0x61, 0x74, 0x61, 0x52, 0x0d, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x73, 0x1a, 0x57, 0x0a, 0x15, 0x4d, 0x79, 0x73, 0x74, 0x65, 0x72, 0x79, 0x49, 0x74, 0x65, - 0x6d, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, - 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, - 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, - 0x74, 0x65, 0x6d, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x1a, 0x2f, 0x0a, 0x12, 0x4c, - 0x6f, 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x1a, 0x61, 0x0a, 0x14, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x72, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x10, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x1a, - 0x99, 0x01, 0x0a, 0x11, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x72, 0x61, 0x6e, - 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x63, 0x6f, - 0x72, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x0a, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x61, 0x74, 0x61, 0x22, 0xae, 0x02, 0x0a, 0x0a, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x6e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x10, 0x02, 0x12, 0x11, 0x0a, - 0x0d, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x03, - 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, - 0x04, 0x12, 0x16, 0x0a, 0x12, 0x49, 0x6e, 0x73, 0x75, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, - 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x6e, 0x73, - 0x75, 0x66, 0x66, 0x69, 0x63, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x10, 0x06, 0x12, - 0x12, 0x0a, 0x0e, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, - 0x64, 0x10, 0x07, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x44, 0x4f, 0x4c, 0x6f, 0x63, 0x6b, 0x46, 0x61, - 0x69, 0x6c, 0x75, 0x72, 0x65, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x44, 0x4f, 0x4c, 0x6f, - 0x61, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x10, 0x09, 0x12, 0x11, 0x0a, 0x0d, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x10, 0x0a, 0x12, 0x0b, - 0x0a, 0x07, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x0b, 0x12, 0x1c, 0x0a, 0x18, 0x52, - 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0c, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x6e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x0d, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x73, - 0x79, 0x6e, 0x63, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x10, 0x0e, 0x22, 0x96, 0x01, 0x0a, - 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0d, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x9a, 0x01, 0x0a, + 0x30, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, - 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x80, 0x01, 0x0a, 0x2f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, - 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x9a, 0x01, 0x0a, 0x30, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, 0x67, - 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, - 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, - 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x4d, 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, - 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x52, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xfb, 0x03, 0x0a, 0x1e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x30, 0x0a, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, - 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x5f, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x72, - 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x58, 0x0a, 0x11, 0x63, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, - 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, - 0x10, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x69, - 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, - 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x1a, 0x4e, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, - 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x8c, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x8f, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, - 0x0a, 0x15, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, - 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, - 0x61, 0x78, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x14, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x64, 0x22, 0xdb, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x55, 0x0a, 0x15, - 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x13, - 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x4b, 0x65, 0x79, 0x12, 0x61, 0x0a, 0x17, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, - 0x15, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x80, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, - 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x22, 0x3f, 0x0a, 0x23, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x5b, 0x0a, 0x16, 0x43, 0x4d, + 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x4d, 0x0a, 0x0e, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x52, 0x0a, 0x16, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xfb, 0x03, + 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x65, + 0x6d, 0x69, 0x75, 0x6d, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x6d, + 0x69, 0x75, 0x6d, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, + 0x58, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, + 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x12, 0x21, + 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x65, 0x61, 0x73, + 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x1a, 0x4e, 0x0a, 0x06, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x8c, 0x01, 0x0a, 0x1b, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x8f, 0x01, 0x0a, 0x23, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x13, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x65, 0x64, 0x22, 0xdb, 0x01, 0x0a, + 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, + 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x12, 0x55, 0x0a, 0x15, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, + 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x52, 0x13, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x61, 0x0a, 0x17, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x52, 0x15, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x80, 0x01, 0x0a, 0x1b, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, + 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x22, 0x3f, 0x0a, + 0x23, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, + 0x69, 0x75, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x5b, + 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, + 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x12, 0x41, 0x0a, 0x0a, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, + 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x5a, 0x0a, 0x1d, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x22, 0xba, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x45, 0x0a, + 0x0f, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x41, 0x0a, 0x0a, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, - 0x75, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x5a, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x69, 0x64, 0x22, 0xba, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, + 0x44, 0x61, 0x74, 0x61, 0x22, 0xea, 0x02, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x45, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, - 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, 0x74, 0x61, - 0x22, 0xea, 0x02, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x29, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, 0x74, 0x5f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x41, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, - 0x64, 0x12, 0x38, 0x0a, 0x18, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x16, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x72, 0x61, 0x63, - 0x74, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x69, - 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, - 0x6d, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x6e, 0x63, 0x6c, 0x75, - 0x64, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2e, 0x0a, - 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, - 0x61, 0x6d, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, - 0x75, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xc5, 0x06, - 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x07, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x49, 0x64, 0x1a, 0xaf, 0x05, 0x0a, 0x05, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x19, 0x0a, - 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x06, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, - 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, - 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x6b, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, - 0x75, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, - 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, - 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, - 0x6c, 0x6f, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, - 0x6f, 0x6c, 0x6f, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x62, 0x61, 0x6e, 0x64, - 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x62, 0x61, 0x6e, 0x64, 0x6f, - 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, - 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, - 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x50, - 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x72, 0x61, 0x6e, 0x6b, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, - 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, - 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, - 0x79, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x72, - 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x72, - 0x6e, 0x65, 0x79, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x75, 0x72, - 0x6e, 0x65, 0x79, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x54, 0x69, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x74, - 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, - 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x44, 0x69, - 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, - 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x10, - 0x75, 0x67, 0x63, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x69, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, - 0x18, 0x15, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x75, 0x67, 0x63, 0x54, 0x65, 0x61, 0x6d, 0x55, - 0x69, 0x4c, 0x6f, 0x67, 0x6f, 0x22, 0x1c, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, - 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x22, 0xf9, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, - 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x4e, 0x6f, 0x74, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, - 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x41, 0x12, 0x1f, 0x0a, 0x0b, 0x72, - 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x12, 0x1f, 0x0a, 0x0b, - 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x43, 0x12, 0x18, 0x0a, - 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x72, 0x65, 0x61, - 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x22, - 0xd9, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x0a, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x45, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x4c, - 0x0a, 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, + 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x41, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, + 0x12, 0x2b, 0x0a, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, + 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x18, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, + 0x5f, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, + 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, + 0x30, 0x0a, 0x14, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, + 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, + 0x73, 0x22, 0xc5, 0x06, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x07, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x1a, 0xaf, 0x05, 0x0a, 0x05, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x6e, + 0x6b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, + 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x52, 0x61, 0x6e, 0x6b, 0x12, + 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, + 0x0a, 0x09, 0x73, 0x6f, 0x6c, 0x6f, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x08, 0x73, 0x6f, 0x6c, 0x6f, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x61, + 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x62, + 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, + 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x65, 0x61, 0x73, + 0x6f, 0x6e, 0x61, 0x6c, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x75, 0x72, + 0x6e, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, + 0x75, 0x72, 0x6e, 0x65, 0x79, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, + 0x65, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x54, 0x69, 0x65, 0x72, 0x12, + 0x29, 0x0a, 0x10, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x64, 0x69, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x6f, 0x75, 0x72, 0x6e, + 0x65, 0x79, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x27, 0x0a, 0x10, 0x75, 0x67, 0x63, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x69, 0x5f, + 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x15, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x75, 0x67, 0x63, 0x54, + 0x65, 0x61, 0x6d, 0x55, 0x69, 0x4c, 0x6f, 0x67, 0x6f, 0x22, 0x1c, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x5f, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x6e, - 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x2d, 0x0a, 0x07, - 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, - 0x53, 0x53, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x01, 0x22, 0x56, 0x0a, 0x1b, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x06, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x06, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x22, 0x24, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x52, 0x65, - 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa5, 0x01, 0x0a, 0x16, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x75, - 0x62, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, - 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x17, - 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6f, - 0x72, 0x22, 0xca, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x62, 0x0a, 0x07, 0x45, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, - 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, - 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x52, 0x52, - 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x02, - 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x45, - 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x4f, 0x46, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x03, 0x22, 0x69, - 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, - 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x53, 0x44, 0x4f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x75, 0x6e, - 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, - 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x73, 0x22, 0x23, 0x0a, 0x21, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6d, 0x6f, 0x74, 0x69, - 0x63, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x66, - 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x48, 0x0a, 0x0f, - 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x41, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x53, 0x44, 0x4f, 0x52, 0x0e, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, - 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x5c, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x72, 0x6f, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, - 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x42, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, - 0x6f, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, - 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, - 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x22, 0x41, 0x0a, 0x20, 0x43, 0x4d, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xf9, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, + 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1f, + 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x41, 0x12, + 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, + 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, + 0x43, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, + 0x6e, 0x72, 0x65, 0x61, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x72, + 0x65, 0x61, 0x64, 0x22, 0xd9, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, + 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x12, 0x3f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, + 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x12, 0x4c, 0x0a, 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x22, 0x2d, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, + 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x01, 0x22, + 0x56, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, + 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, + 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, + 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x24, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, + 0x72, 0x6b, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa5, 0x01, + 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, + 0x66, 0x6f, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, + 0x21, 0x0a, 0x0c, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x52, 0x6f, + 0x6c, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x22, 0xca, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, + 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x62, + 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, + 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, + 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x01, 0x12, 0x15, 0x0a, + 0x11, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, + 0x45, 0x44, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, + 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x4f, 0x46, 0x5f, 0x54, 0x45, 0x41, 0x4d, + 0x10, 0x03, 0x22, 0x69, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x45, 0x6d, + 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x53, 0x44, 0x4f, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2d, + 0x0a, 0x12, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x6f, 0x74, 0x69, + 0x63, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x75, 0x6e, 0x6c, 0x6f, + 0x63, 0x6b, 0x65, 0x64, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x73, 0x22, 0x23, 0x0a, + 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, + 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x22, 0x66, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x48, 0x0a, 0x0f, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, + 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x53, 0x44, 0x4f, 0x52, 0x0e, 0x65, 0x6d, 0x6f, 0x74, + 0x69, 0x63, 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x5c, 0x0a, 0x20, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x75, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x72, 0x6f, 0x70, 0x12, 0x19, + 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, + 0x48, 0x65, 0x72, 0x6f, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x42, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, - 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xc0, 0x06, 0x0a, - 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x22, 0x41, 0x0a, + 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x63, 0x75, 0x72, 0x72, - 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x63, 0x75, 0x72, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, - 0x70, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x61, 0x70, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x67, - 0x61, 0x6d, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x75, 0x72, 0x72, - 0x48, 0x65, 0x72, 0x6f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x63, 0x75, 0x72, - 0x72, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x75, 0x72, 0x72, 0x4c, 0x61, - 0x70, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0e, - 0x63, 0x75, 0x72, 0x72, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x4c, 0x61, 0x70, 0x47, 0x61, 0x6d, - 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x67, - 0x61, 0x6d, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, - 0x4c, 0x61, 0x70, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x65, 0x73, 0x74, - 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x62, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x14, - 0x6c, 0x61, 0x70, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, - 0x65, 0x74, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x70, 0x48, - 0x65, 0x72, 0x6f, 0x65, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x30, - 0x0a, 0x14, 0x6c, 0x61, 0x70, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x6d, - 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, - 0x70, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x48, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x72, 0x65, 0x76, 0x48, 0x65, - 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, - 0x72, 0x65, 0x76, 0x48, 0x65, 0x72, 0x6f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, - 0x70, 0x72, 0x65, 0x76, 0x5f, 0x61, 0x76, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x76, 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, - 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x5f, 0x61, 0x76, 0x67, 0x5f, 0x74, - 0x72, 0x69, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, - 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x65, 0x78, 0x74, - 0x5f, 0x61, 0x76, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2b, - 0x0a, 0x12, 0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x61, 0x76, 0x67, 0x5f, 0x74, - 0x72, 0x69, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x66, 0x75, 0x6c, 0x6c, - 0x4c, 0x61, 0x70, 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x12, 0x63, - 0x75, 0x72, 0x72, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x61, 0x76, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x65, - 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x4c, 0x61, 0x70, - 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, - 0x3c, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xe0, 0x01, - 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x69, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, - 0x69, 0x65, 0x73, 0x1a, 0x6b, 0x0a, 0x06, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x12, 0x1b, 0x0a, - 0x09, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, - 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, - 0x22, 0xaa, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x41, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x49, 0x64, 0x12, 0x21, 0x0a, - 0x0c, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x12, 0x28, 0x0a, 0x10, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x6f, 0x6c, 0x64, 0x5f, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x72, 0x6f, 0x70, - 0x68, 0x79, 0x4f, 0x6c, 0x64, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61, - 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x22, 0x49, 0x0a, - 0x19, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, - 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x72, 0x61, - 0x6e, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, - 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x22, 0xa3, 0x02, 0x0a, 0x1a, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, - 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x31, 0x12, 0x1d, 0x0a, 0x0a, 0x72, - 0x61, 0x6e, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x32, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, - 0x6e, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x33, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x72, 0x61, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x33, 0x22, 0x43, 0x0a, 0x0b, 0x45, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x53, 0x75, - 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x6b, 0x5f, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x49, 0x6e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x10, 0x02, 0x22, 0x87, - 0x01, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x72, - 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x09, 0x72, 0x61, 0x6e, - 0x6b, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, - 0x72, 0x61, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x3d, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xe8, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x46, 0x0a, - 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, - 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x05, - 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x1a, 0x7b, 0x0a, 0x08, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, - 0x74, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x09, 0x73, 0x6c, - 0x6f, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, - 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x73, 0x6c, 0x6f, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x73, 0x6c, 0x6f, 0x74, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x22, 0x23, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, - 0x72, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xc5, 0x02, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, - 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x71, - 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x63, - 0x79, 0x63, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x65, 0x61, 0x72, 0x61, 0x62, 0x6c, 0x65, - 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x65, 0x61, 0x72, 0x61, 0x62, 0x6c, - 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x18, 0x08, - 0x20, 0x03, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, - 0x72, 0x65, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x72, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x72, - 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, - 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0e, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x72, 0x6f, 0x70, 0x22, - 0x52, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, - 0x6d, 0x49, 0x64, 0x22, 0x41, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xe1, 0x06, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x22, 0xc0, 0x06, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, + 0x63, 0x75, 0x72, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x25, + 0x0a, 0x0e, 0x6c, 0x61, 0x70, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x61, 0x70, 0x73, 0x43, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x5f, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x63, 0x75, 0x72, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x31, 0x0a, + 0x15, 0x63, 0x75, 0x72, 0x72, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x75, + 0x72, 0x72, 0x4c, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, + 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x67, 0x61, 0x6d, + 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x4c, 0x61, + 0x70, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x6c, + 0x61, 0x70, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x62, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x70, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0d, + 0x62, 0x65, 0x73, 0x74, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x70, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x5f, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x6c, 0x61, 0x70, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x70, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, + 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x12, 0x6c, 0x61, 0x70, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, + 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, + 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x72, + 0x65, 0x76, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x72, 0x65, 0x76, + 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x48, 0x65, 0x72, 0x6f, 0x47, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x61, 0x76, 0x67, 0x5f, 0x74, 0x72, 0x69, + 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x76, 0x41, 0x76, + 0x67, 0x54, 0x72, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x5f, 0x61, + 0x76, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, + 0x63, 0x75, 0x72, 0x72, 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, + 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x76, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x12, 0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x61, + 0x76, 0x67, 0x5f, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, + 0x66, 0x75, 0x6c, 0x6c, 0x4c, 0x61, 0x70, 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x2b, 0x0a, 0x12, 0x63, 0x75, 0x72, 0x72, 0x5f, 0x6c, 0x61, 0x70, 0x5f, 0x61, 0x76, 0x67, 0x5f, + 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x75, 0x72, + 0x72, 0x4c, 0x61, 0x70, 0x41, 0x76, 0x67, 0x54, 0x72, 0x69, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x13, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x22, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, + 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x48, 0x65, 0x72, + 0x6f, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4c, 0x69, + 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x22, 0xe0, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x74, 0x72, 0x6f, + 0x70, 0x68, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x52, 0x08, 0x74, + 0x72, 0x6f, 0x70, 0x68, 0x69, 0x65, 0x73, 0x1a, 0x6b, 0x0a, 0x06, 0x54, 0x72, 0x6f, 0x70, 0x68, + 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x49, 0x64, 0x12, 0x21, + 0x0a, 0x0c, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x22, 0xaa, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x41, 0x77, 0x61, + 0x72, 0x64, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x49, + 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x6f, + 0x6c, 0x64, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, + 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4f, 0x6c, 0x64, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x22, 0x49, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, + 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x0f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x22, 0xa3, 0x02, 0x0a, + 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, + 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x31, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x31, 0x12, + 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x32, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x32, 0x12, 0x1d, + 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x33, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x33, 0x22, 0x43, 0x0a, + 0x0b, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, + 0x6b, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, + 0x08, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x6b, + 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, + 0x10, 0x02, 0x22, 0x87, 0x01, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, + 0x2c, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, + 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x3d, 0x0a, 0x1c, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x02, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1f, - 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x67, 0x70, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x07, 0x6d, 0x65, 0x61, 0x6e, 0x47, 0x70, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x65, - 0x61, 0x6e, 0x5f, 0x78, 0x70, 0x70, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6d, - 0x65, 0x61, 0x6e, 0x58, 0x70, 0x70, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x61, 0x6e, 0x5f, - 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, - 0x6d, 0x65, 0x61, 0x6e, 0x4c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, - 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, - 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, - 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, - 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, - 0x6c, 0x6f, 0x6f, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x66, - 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x67, 0x69, 0x76, 0x65, 0x6e, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, - 0x6f, 0x64, 0x47, 0x69, 0x76, 0x65, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x72, 0x69, - 0x65, 0x72, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0e, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, - 0x12, 0x29, 0x0a, 0x10, 0x61, 0x65, 0x67, 0x69, 0x73, 0x65, 0x73, 0x5f, 0x73, 0x6e, 0x61, 0x74, - 0x63, 0x68, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x61, 0x65, 0x67, 0x69, - 0x73, 0x65, 0x73, 0x53, 0x6e, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, - 0x68, 0x65, 0x65, 0x73, 0x65, 0x73, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x6e, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x65, 0x65, 0x73, 0x65, 0x73, 0x45, 0x61, 0x74, 0x65, 0x6e, - 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, - 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, - 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x67, 0x68, 0x74, - 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x66, 0x69, - 0x67, 0x68, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x61, 0x72, 0x6d, - 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x61, - 0x72, 0x6d, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x70, 0x70, 0x6f, - 0x72, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, - 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x70, 0x75, 0x73, 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x09, 0x70, 0x75, 0x73, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, - 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x61, 0x6e, - 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x0c, 0x6d, 0x65, 0x61, 0x6e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x1f, 0x0a, - 0x0b, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x15, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x0a, 0x6d, 0x65, 0x61, 0x6e, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1d, - 0x0a, 0x0a, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x73, 0x18, 0x16, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x09, 0x6d, 0x65, 0x61, 0x6e, 0x48, 0x65, 0x61, 0x6c, 0x73, 0x12, 0x2b, 0x0a, - 0x11, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, - 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x22, 0x2f, 0x0a, 0x2d, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xfb, 0x01, 0x0a, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x55, 0x0a, - 0x05, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xe8, 0x01, 0x0a, 0x21, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, + 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, + 0x73, 0x12, 0x46, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, + 0x6f, 0x74, 0x52, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x1a, 0x7b, 0x0a, 0x08, 0x43, 0x61, 0x72, + 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x37, + 0x0a, 0x09, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x73, + 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6c, 0x6f, 0x74, 0x5f, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x73, 0x6c, 0x6f, + 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x23, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xc5, 0x02, 0x0a, 0x1e, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x12, 0x24, + 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x23, 0x0a, + 0x0d, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x65, 0x61, 0x72, + 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x65, 0x61, + 0x72, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, + 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x72, 0x5f, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x72, 0x65, 0x66, 0x6f, + 0x72, 0x67, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x6f, + 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0e, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x44, + 0x72, 0x6f, 0x70, 0x22, 0x52, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x69, 0x6e, + 0x67, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x41, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xe1, 0x06, 0x0a, 0x21, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x21, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x67, 0x70, 0x6d, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x6d, 0x65, 0x61, 0x6e, 0x47, 0x70, 0x6d, 0x12, 0x1b, + 0x0a, 0x09, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x78, 0x70, 0x70, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x08, 0x6d, 0x65, 0x61, 0x6e, 0x58, 0x70, 0x70, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x6d, + 0x65, 0x61, 0x6e, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x65, 0x61, 0x6e, 0x4c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, + 0x2e, 0x0a, 0x13, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x63, + 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x69, + 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x12, + 0x2a, 0x0a, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x67, + 0x69, 0x76, 0x65, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x69, 0x72, 0x73, + 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x47, 0x69, 0x76, 0x65, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x63, + 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x73, 0x4b, 0x69, + 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x65, 0x67, 0x69, 0x73, 0x65, 0x73, 0x5f, + 0x73, 0x6e, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, + 0x61, 0x65, 0x67, 0x69, 0x73, 0x65, 0x73, 0x53, 0x6e, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, + 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x65, 0x73, 0x65, 0x73, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x6e, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x65, 0x65, 0x73, 0x65, 0x73, 0x45, + 0x61, 0x74, 0x65, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, 0x5f, 0x73, + 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x72, + 0x65, 0x65, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x66, + 0x69, 0x67, 0x68, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x0a, 0x66, 0x69, 0x67, 0x68, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x09, 0x66, 0x61, 0x72, 0x6d, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x12, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x70, 0x75, 0x73, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, + 0x2b, 0x0a, 0x11, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x76, 0x65, 0x72, 0x73, + 0x61, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, + 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x65, 0x61, 0x6e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, + 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x6d, 0x65, 0x61, 0x6e, 0x44, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x61, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x73, + 0x18, 0x16, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6d, 0x65, 0x61, 0x6e, 0x48, 0x65, 0x61, 0x6c, + 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x73, 0x5f, 0x70, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x61, + 0x70, 0x69, 0x65, 0x72, 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x22, 0x2f, + 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, + 0xfb, 0x01, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x67, - 0x61, 0x6d, 0x65, 0x73, 0x1a, 0x53, 0x0a, 0x0a, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0x61, 0x0a, 0x2a, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x47, 0x0a, 0x2b, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, - 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, - 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x22, 0x47, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, - 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x54, 0x0a, 0x2c, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, - 0x64, 0x22, 0x76, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xeb, 0x05, 0x0a, 0x19, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, - 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x79, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x79, - 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6f, 0x70, 0x65, - 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x10, 0x75, 0x67, - 0x63, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x69, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x75, 0x67, 0x63, 0x54, 0x65, 0x61, 0x6d, 0x55, 0x69, 0x4c, - 0x6f, 0x67, 0x6f, 0x12, 0x40, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, - 0x73, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x57, 0x0a, 0x0f, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, - 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, - 0x72, 0x74, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x2e, - 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x0e, - 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x1a, 0x39, - 0x0a, 0x06, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x05, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x1a, 0x8b, 0x02, 0x0a, 0x0e, 0x57, 0x65, - 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, - 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6b, 0x69, 0x6c, - 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, - 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, - 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, - 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x65, - 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x53, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x12, 0x3c, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, - 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, - 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x22, 0xe5, 0x02, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, - 0x73, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, + 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x55, 0x0a, 0x05, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, + 0x65, 0x52, 0x05, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x1a, 0x53, 0x0a, 0x0a, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0x61, 0x0a, + 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x22, 0x47, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x2a, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x27, 0x0a, + 0x0f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x47, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, + 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, + 0x54, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, + 0x61, 0x6d, 0x65, 0x49, 0x64, 0x22, 0x76, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xeb, 0x05, + 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, + 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, + 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x70, + 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x2e, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, + 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, 0x6f, 0x77, + 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, + 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, + 0x0a, 0x10, 0x75, 0x67, 0x63, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x69, 0x5f, 0x6c, 0x6f, + 0x67, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x75, 0x67, 0x63, 0x54, 0x65, 0x61, + 0x6d, 0x55, 0x69, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x40, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x69, 0x63, + 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x57, 0x0a, 0x0f, 0x77, 0x65, 0x65, + 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, + 0x6e, 0x63, 0x65, 0x2e, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, + 0x65, 0x79, 0x52, 0x0e, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, + 0x65, 0x79, 0x1a, 0x39, 0x0a, 0x06, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x61, 0x63, 0x68, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x1a, 0x8b, 0x02, + 0x0a, 0x0e, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, + 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, + 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x14, 0x0a, + 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x72, 0x6f, + 0x75, 0x6e, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x73, 0x74, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x12, 0x3c, 0x0a, 0x05, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, + 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x22, 0xe5, 0x02, 0x0a, 0x19, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x69, 0x63, + 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x52, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x30, 0x0a, 0x09, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, + 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, + 0x79, 0x70, 0x65, 0x22, 0xb3, 0x01, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x61, + 0x64, 0x69, 0x6e, 0x67, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, + 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, + 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x6d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x6f, + 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xf4, 0x01, 0x0a, 0x27, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4c, 0x6f, + 0x61, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, - 0x12, 0x39, 0x0a, 0x0b, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, - 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, - 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x30, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, - 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x52, - 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x10, - 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, - 0xb3, 0x01, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, - 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, - 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xf4, 0x01, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, - 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x44, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, - 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x58, 0x0a, 0x1e, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x70, - 0x70, 0x6c, 0x79, 0x47, 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x1a, - 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x31, 0x12, 0x1a, 0x0a, 0x09, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x69, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x32, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x32, 0x36, 0x34, 0x55, 0x6e, 0x73, 0x75, - 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x22, 0x3d, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x49, 0x64, 0x73, 0x22, 0xeb, 0x03, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x4a, 0x0a, 0x06, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, - 0x06, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0xca, 0x01, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, - 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, - 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x72, - 0x61, 0x6e, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x61, 0x6e, 0x6b, 0x1a, 0x8d, 0x01, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, - 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x69, 0x0a, 0x14, 0x63, 0x6f, 0x6d, - 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x12, 0x29, 0x0a, 0x10, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x6f, 0x61, 0x64, + 0x69, 0x6e, 0x67, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, + 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x6f, 0x6e, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x22, 0x58, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, + 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x5f, 0x31, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x31, 0x12, 0x1a, + 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x32, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x32, 0x36, 0x34, + 0x55, 0x6e, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x22, 0x3d, 0x0a, 0x1e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, + 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x73, 0x22, 0xeb, 0x03, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, - 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x73, 0x22, 0x39, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x65, - 0x64, 0x4f, 0x75, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, - 0x34, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x17, 0x0a, 0x07, - 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, - 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0x79, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, - 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, - 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, - 0x6f, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x53, 0x44, 0x4f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, - 0x22, 0x23, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, - 0x6e, 0x64, 0x75, 0x63, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x95, 0x06, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x63, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x17, - 0x0a, 0x07, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, - 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x69, 0x6e, 0x5f, - 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x65, 0x73, 0x49, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x23, 0x0a, - 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x43, 0x6c, 0x65, - 0x61, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x72, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x12, 0x2b, 0x0a, - 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x61, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, - 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, - 0x73, 0x41, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x73, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, 0x61, 0x74, - 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x61, 0x77, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, - 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, - 0x61, 0x77, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, - 0x33, 0x0a, 0x16, 0x6f, 0x6c, 0x64, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x13, 0x6f, 0x6c, 0x64, 0x52, 0x61, 0x77, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x72, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6d, - 0x6d, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, - 0x6d, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x59, - 0x0a, 0x0f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6e, - 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x72, 0x64, 0x2e, 0x45, 0x42, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0e, 0x62, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x52, 0x0a, 0x0f, 0x45, 0x42, 0x65, - 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x13, 0x0a, 0x0f, - 0x6b, 0x5f, 0x65, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x47, 0x6f, 0x6f, 0x64, 0x10, - 0x00, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, - 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, - 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x42, 0x61, 0x64, 0x10, 0x02, 0x22, 0x3a, 0x0a, - 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, - 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, - 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xe7, 0x04, 0x0a, 0x1e, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x67, 0x65, - 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, - 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x6d, 0x61, - 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, - 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x57, 0x6f, 0x6e, 0x12, - 0x30, 0x0a, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, - 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, - 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x5f, 0x74, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, 0x69, 0x70, 0x70, 0x65, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x52, 0x61, 0x74, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x61, - 0x6d, 0x65, 0x73, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x57, 0x61, 0x67, - 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x5f, 0x6d, 0x61, - 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x4d, 0x61, - 0x78, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x73, - 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x13, 0x72, 0x61, 0x6e, 0x6b, 0x57, 0x61, 0x67, 0x65, 0x72, 0x73, 0x52, 0x65, 0x6d, 0x61, - 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x77, 0x61, - 0x67, 0x65, 0x72, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x72, 0x61, 0x6e, 0x6b, 0x57, 0x61, 0x67, 0x65, 0x72, 0x73, 0x4d, 0x61, 0x78, 0x12, 0x3e, 0x0a, - 0x1b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x19, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x32, 0x0a, - 0x15, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x4d, 0x61, - 0x78, 0x12, 0x2d, 0x0a, 0x12, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x5f, 0x72, 0x65, - 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x62, - 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x78, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, - 0x4d, 0x61, 0x78, 0x22, 0x84, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x49, 0x0a, 0x0d, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x66, 0x6f, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x67, 0x65, - 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0c, 0x77, 0x61, - 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x98, 0x01, 0x0a, 0x1f, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x72, 0x63, - 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x19, - 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x5a, 0x0a, 0x0c, 0x61, 0x72, 0x63, - 0x61, 0x6e, 0x61, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, + 0x4a, 0x0a, 0x06, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x51, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x06, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0xca, 0x01, 0x0a, 0x09, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, + 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x12, + 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x1a, 0x8d, 0x01, 0x0a, 0x05, 0x51, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x69, 0x0a, + 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x22, 0x39, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, + 0x69, 0x67, 0x6e, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, + 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0x79, 0x0a, 0x21, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, + 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x44, 0x4f, 0x48, 0x65, 0x72, 0x6f, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x07, 0x72, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x73, 0x22, 0x23, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x63, 0x61, + 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x95, 0x06, 0x0a, 0x1a, 0x43, 0x4d, + 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x72, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, + 0x5f, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x49, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x63, 0x6c, 0x65, + 0x61, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x61, 0x62, 0x61, + 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x65, 0x73, 0x41, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x64, 0x12, 0x23, + 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x73, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x61, 0x77, 0x5f, 0x62, 0x65, 0x68, + 0x61, 0x76, 0x69, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x72, 0x61, 0x77, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x12, 0x33, 0x0a, 0x16, 0x6f, 0x6c, 0x64, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x62, + 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6f, 0x6c, 0x64, 0x52, 0x61, 0x77, 0x42, 0x65, 0x68, 0x61, 0x76, + 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, + 0x73, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x23, 0x0a, + 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x14, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x65, 0x73, 0x12, 0x59, 0x0a, 0x0f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x5f, 0x72, + 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x64, 0x75, 0x63, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x72, 0x64, 0x2e, 0x45, 0x42, + 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0e, 0x62, + 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x22, 0x52, 0x0a, + 0x0f, 0x45, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, + 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x47, + 0x6f, 0x6f, 0x64, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x42, 0x65, 0x68, 0x61, + 0x76, 0x69, 0x6f, 0x72, 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12, 0x12, 0x0a, + 0x0e, 0x6b, 0x5f, 0x65, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x42, 0x61, 0x64, 0x10, + 0x02, 0x22, 0x3a, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xe7, 0x04, + 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, + 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x69, 0x6e, 0x73, + 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x57, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x57, 0x61, + 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x74, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, + 0x69, 0x70, 0x70, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x47, 0x61, 0x6d, 0x65, + 0x73, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x69, 0x6e, + 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x69, + 0x6e, 0x73, 0x4d, 0x61, 0x78, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x77, 0x61, + 0x67, 0x65, 0x72, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x72, 0x61, 0x6e, 0x6b, 0x57, 0x61, 0x67, 0x65, 0x72, 0x73, + 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x61, 0x6e, + 0x6b, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x6e, 0x6b, 0x57, 0x61, 0x67, 0x65, 0x72, 0x73, 0x4d, 0x61, + 0x78, 0x12, 0x3e, 0x0a, 0x1b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, + 0x67, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x13, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x73, 0x4d, 0x61, 0x78, 0x12, 0x2d, 0x0a, 0x12, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, + 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x11, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, + 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, + 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, + 0x74, 0x69, 0x65, 0x73, 0x4d, 0x61, 0x78, 0x22, 0x84, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, + 0x6e, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x0d, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, + 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x0c, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x98, + 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x5a, 0x0a, + 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, + 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0b, 0x61, 0x72, + 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x22, 0x48, 0x0a, 0x1b, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x12, 0x29, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x73, 0x22, 0xb6, 0x01, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x67, 0x6f, 0x61, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, + 0x73, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x0a, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x1a, 0x63, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x47, 0x6f, 0x61, 0x6c, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, + 0x07, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x67, 0x6f, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3a, 0x0a, 0x1b, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x22, 0x82, 0x03, 0x0a, 0x16, 0x43, 0x4d, 0x73, + 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x69, + 0x6e, 0x67, 0x73, 0x12, 0x49, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, + 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x92, + 0x01, 0x0a, 0x0e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x6e, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x1f, 0x0a, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x6f, + 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x1a, 0x87, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x56, 0x0a, 0x10, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x50, 0x72, + 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x0f, 0x70, 0x72, + 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x22, 0xbc, 0x02, + 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x3c, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x73, 0x1a, 0x5f, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42, + 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x6e, 0x73, 0x77, + 0x65, 0x72, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, + 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x83, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x56, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x62, + 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x0f, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x22, 0x3f, 0x0a, 0x22, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x61, + 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x4d, + 0x56, 0x50, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, 0x44, 0x0a, + 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, + 0x61, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, + 0x4d, 0x56, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x22, 0x54, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x12, + 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x3a, 0x0a, 0x20, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, + 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x39, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, + 0x22, 0x3e, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x22, 0x24, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x91, 0x03, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x5d, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, + 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, + 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, + 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, 0xf0, 0x01, 0x0a, 0x0c, 0x54, 0x65, 0x61, 0x6d, + 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x12, 0x0a, + 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, + 0x73, 0x12, 0x3b, 0x0a, 0x1a, 0x6d, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, + 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x6d, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, + 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x38, + 0x0a, 0x19, 0x6d, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x15, 0x6d, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, + 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x70, + 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x57, 0x0a, 0x1b, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, + 0x46, 0x6f, 0x72, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x12, 0x38, 0x0a, 0x07, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x65, 0x73, 0x22, 0xbf, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x63, + 0x61, 0x6e, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x4e, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, + 0x0d, 0x0a, 0x09, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x00, 0x12, 0x20, + 0x0a, 0x1c, 0x56, 0x4f, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x4e, 0x41, + 0x42, 0x4c, 0x45, 0x44, 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x52, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x01, + 0x12, 0x13, 0x0a, 0x0f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c, + 0x55, 0x52, 0x45, 0x10, 0x02, 0x22, 0x2b, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x72, + 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, + 0x6e, 0x67, 0x22, 0xf6, 0x01, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0b, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, - 0x56, 0x6f, 0x74, 0x65, 0x73, 0x22, 0x48, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, - 0x6f, 0x61, 0x6c, 0x73, 0x12, 0x29, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, - 0xb6, 0x01, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, - 0x6c, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x6f, 0x61, 0x6c, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x2e, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, - 0x61, 0x6c, 0x73, 0x1a, 0x63, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, - 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x67, 0x6f, 0x61, - 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x67, 0x6f, 0x61, 0x6c, - 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3a, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x49, 0x64, 0x22, 0x82, 0x03, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x73, 0x12, - 0x49, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, - 0x67, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x92, 0x01, 0x0a, 0x0e, 0x50, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x1b, 0x0a, - 0x09, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x6e, - 0x73, 0x77, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, - 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x21, 0x0a, 0x0c, - 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, - 0x87, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, - 0x0a, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x12, 0x56, 0x0a, 0x10, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x22, 0xbc, 0x02, 0x0a, 0x15, 0x43, 0x4d, - 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x73, 0x12, 0x3c, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x73, 0x1a, 0x5f, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42, 0x72, 0x65, 0x61, 0x6b, - 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x73, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x21, 0x0a, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x1a, 0x83, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, - 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x12, 0x56, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x6b, - 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42, 0x72, - 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42, - 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x22, 0x3f, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x61, 0x73, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, 0x44, 0x0a, 0x2a, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x61, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0x54, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x12, 0x19, 0x0a, 0x08, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x3a, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x4d, 0x56, - 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x22, 0x39, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, - 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x24, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x56, - 0x50, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x24, 0x0a, 0x22, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x65, - 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x22, 0x91, 0x03, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x12, 0x5d, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, - 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x1a, 0xf0, 0x01, 0x0a, 0x0c, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x05, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x3b, 0x0a, - 0x1a, 0x6d, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x17, 0x6d, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x38, 0x0a, 0x19, 0x6d, 0x6f, - 0x73, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x6d, - 0x6f, 0x73, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, - 0x6e, 0x63, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x57, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x41, - 0x72, 0x63, 0x61, 0x6e, 0x61, 0x12, 0x38, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, - 0xbf, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, - 0x65, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x22, 0x4e, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0d, 0x0a, 0x09, 0x53, - 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x56, 0x4f, - 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, - 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x52, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, - 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, - 0x02, 0x22, 0x2b, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, - 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0xf6, - 0x01, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, - 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x27, 0x0a, 0x0f, - 0x76, 0x6f, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, - 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x5f, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x6f, 0x74, 0x65, - 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x5f, 0x0a, 0x1c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, - 0x73, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x5f, 0x76, 0x6f, 0x74, - 0x65, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, - 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x19, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x65, 0x73, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x56, - 0x6f, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x22, 0x41, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x56, 0x32, 0x12, - 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xdd, 0x02, 0x0a, 0x2c, 0x43, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x27, 0x0a, 0x0f, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x76, 0x6f, 0x74, 0x65, 0x73, + 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x74, + 0x65, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x76, 0x6f, 0x74, 0x65, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x5f, 0x0a, 0x1c, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, + 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x72, 0x63, 0x61, + 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x73, + 0x52, 0x19, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, + 0x73, 0x6c, 0x79, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x22, 0x41, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x6f, - 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x5c, 0x0a, 0x0b, - 0x6c, 0x6f, 0x67, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x56, 0x32, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, - 0x6c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x1a, 0x8d, 0x01, 0x0a, 0x08, 0x4c, - 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, - 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x75, 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x70, 0x0a, 0x1d, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x75, - 0x73, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, - 0x63, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x72, - 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0x84, 0x01, 0x0a, - 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6c, 0x61, 0x72, 0x6b, 0x47, 0x61, 0x6d, 0x65, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x63, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x6c, 0x6f, 0x74, 0x43, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x12, - 0x12, 0x0a, 0x04, 0x77, 0x65, 0x65, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, - 0x65, 0x65, 0x6b, 0x22, 0x68, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6c, 0x61, 0x72, - 0x6b, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x77, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x57, - 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x75, 0x72, 0x61, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x75, 0x72, 0x61, 0x57, 0x6f, 0x6e, 0x22, 0x99, 0x03, - 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, - 0x65, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x1a, 0xf0, 0x01, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x5f, - 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, - 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, - 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x61, - 0x6e, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, - 0x61, 0x6e, 0x6b, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, - 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x22, 0x58, 0x0a, 0x12, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x12, - 0x1f, 0x0a, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x64, - 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x66, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x44, 0x65, 0x66, 0x22, 0x94, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x48, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x67, 0x56, 0x32, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xdd, + 0x02, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, 0x32, 0x12, + 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x5c, 0x0a, 0x0b, 0x6c, 0x6f, 0x67, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, 0x32, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x0a, 0x6c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x1a, 0x8d, + 0x01, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x64, + 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x70, + 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x12, + 0x28, 0x0a, 0x10, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0d, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x22, 0x84, 0x01, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6c, 0x61, 0x72, 0x6b, 0x47, + 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x63, 0x68, 0x6f, 0x73, 0x65, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x6c, 0x6f, 0x74, 0x43, 0x68, 0x6f, + 0x73, 0x65, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x65, 0x65, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x04, 0x77, 0x65, 0x65, 0x6b, 0x22, 0x68, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x53, 0x6c, 0x61, 0x72, 0x6b, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x57, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x75, 0x72, 0x61, 0x5f, 0x77, + 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x75, 0x72, 0x61, 0x57, 0x6f, + 0x6e, 0x22, 0x99, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x49, 0x64, 0x12, 0x65, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, + 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x43, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x1a, 0xf0, 0x01, 0x0a, 0x09, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x74, + 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x17, + 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x22, 0x58, 0x0a, + 0x12, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, + 0x74, 0x65, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x63, 0x79, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, + 0x5f, 0x64, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x44, 0x65, 0x66, 0x22, 0x94, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, - 0x64, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x0a, 0x0b, - 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, - 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, - 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x22, 0xa9, 0x02, 0x0a, 0x2e, 0x43, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, 0x74, + 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x2c, 0x0a, 0x0b, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, + 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, + 0x12, 0x0c, 0x0a, 0x08, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x22, 0xa9, + 0x02, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, + 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x61, 0x0a, 0x0b, + 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, + 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, + 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x1a, 0x5c, 0x0a, 0x0a, + 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, + 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x29, 0x0a, 0x10, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xee, 0x01, 0x0a, 0x36, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, - 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, - 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x61, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, + 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, + 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x22, 0x56, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, + 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x49, + 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x01, 0x12, 0x1a, + 0x0a, 0x16, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x5f, 0x41, 0x52, + 0x45, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x54, + 0x48, 0x45, 0x52, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0xd2, 0x01, 0x0a, 0x20, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x70, + 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, + 0x12, 0x36, 0x0a, 0x18, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, + 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x14, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, + 0x63, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, + 0x64, 0x12, 0x30, 0x0a, 0x14, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x12, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x4c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, + 0x22, 0xf1, 0x02, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x4f, 0x70, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, + 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, - 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, - 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x1a, 0x5c, 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x70, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xee, 0x01, 0x0a, 0x36, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, - 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x5c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, - 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0x56, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, - 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x4e, 0x56, 0x41, 0x4c, - 0x49, 0x44, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, - 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x5f, 0x41, 0x52, 0x45, 0x5f, 0x43, 0x4c, - 0x4f, 0x53, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x5f, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0xd2, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x70, 0x65, 0x6e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x36, 0x0a, 0x18, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, - 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x49, 0x74, - 0x65, 0x6d, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x30, 0x0a, - 0x14, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x64, 0x65, 0x70, - 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, - 0x2b, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, 0x65, - 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x22, 0xf1, 0x02, 0x0a, - 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, - 0x70, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, - 0x70, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, + 0x6f, 0x47, 0x43, 0x4f, 0x70, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, + 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2f, 0x0a, 0x14, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0xc4, 0x01, + 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, + 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, + 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x5f, 0x46, 0x49, 0x4e, + 0x44, 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, + 0x50, 0x41, 0x43, 0x4b, 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, + 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x43, 0x52, 0x45, 0x41, + 0x54, 0x45, 0x10, 0x05, 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, + 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x44, 0x5f, 0x41, 0x54, + 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, + 0x49, 0x44, 0x10, 0x07, 0x22, 0x6d, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x04, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, + 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x22, 0xe2, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x4c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1f, 0x0a, + 0x0b, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x75, 0x73, 0x74, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xc7, + 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, + 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, + 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x5f, 0x46, 0x49, + 0x4e, 0x44, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x10, 0x03, + 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x4e, + 0x4f, 0x54, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x10, 0x04, + 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, + 0x5f, 0x44, 0x55, 0x53, 0x54, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, + 0x45, 0x10, 0x05, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x41, 0x52, + 0x44, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x06, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x53, 0x5f, 0x53, 0x50, 0x45, + 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x07, 0x22, 0x8d, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x12, + 0x29, 0x0a, 0x11, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x63, 0x61, 0x72, 0x64, + 0x44, 0x75, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, + 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x72, 0x65, + 0x6d, 0x69, 0x75, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x22, 0xb8, 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2f, 0x0a, 0x14, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, - 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0xc4, 0x01, 0x0a, 0x06, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, - 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, - 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, - 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x5f, 0x46, 0x49, 0x4e, 0x44, 0x5f, 0x50, 0x41, - 0x43, 0x4b, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x54, - 0x45, 0x4d, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x50, 0x41, 0x43, 0x4b, - 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, - 0x45, 0x44, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x05, - 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, - 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x44, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, - 0x55, 0x54, 0x45, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x44, 0x10, 0x07, - 0x22, 0x6d, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x61, 0x72, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, - 0x72, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x04, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, - 0x6d, 0x49, 0x64, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, - 0xe2, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, - 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x75, 0x73, - 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x64, 0x75, 0x73, 0x74, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xc7, 0x01, 0x0a, 0x06, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, - 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, - 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x5f, 0x46, 0x49, 0x4e, 0x44, 0x5f, 0x50, - 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x50, - 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x44, 0x55, 0x53, - 0x54, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x05, 0x12, - 0x15, 0x0a, 0x11, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x4c, 0x4f, - 0x43, 0x4b, 0x45, 0x44, 0x10, 0x06, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x4e, 0x4f, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x53, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, - 0x45, 0x44, 0x10, 0x07, 0x22, 0x8d, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x29, 0x0a, 0x11, 0x63, - 0x61, 0x72, 0x64, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x63, 0x61, 0x72, 0x64, 0x44, 0x75, 0x73, 0x74, - 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x5f, 0x70, 0x61, 0x63, - 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, - 0x50, 0x61, 0x63, 0x6b, 0x22, 0xb8, 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, + 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, + 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, + 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, + 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x55, 0x53, 0x54, 0x10, + 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, + 0x4e, 0x4f, 0x54, 0x5f, 0x44, 0x55, 0x53, 0x54, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x04, 0x12, + 0x21, 0x0a, 0x1d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, + 0x43, 0x41, 0x52, 0x44, 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, + 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x43, + 0x41, 0x52, 0x44, 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, + 0x45, 0x10, 0x07, 0x22, 0xaa, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x29, + 0x0a, 0x11, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x63, 0x61, 0x72, 0x64, 0x44, + 0x75, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x5f, + 0x70, 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x6d, + 0x69, 0x75, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, + 0x22, 0xc0, 0x02, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x02, - 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, - 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x55, 0x53, 0x54, 0x10, 0x03, 0x12, 0x1c, 0x0a, - 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, - 0x44, 0x55, 0x53, 0x54, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x43, 0x41, 0x52, 0x44, - 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x05, 0x12, 0x16, - 0x0a, 0x12, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, - 0x50, 0x41, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x07, 0x22, - 0xaa, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x29, 0x0a, 0x11, 0x63, 0x61, - 0x72, 0x64, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x63, 0x61, 0x72, 0x64, 0x44, 0x75, 0x73, 0x74, 0x49, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x5f, 0x70, 0x61, 0x63, 0x6b, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, - 0x61, 0x63, 0x6b, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0xc0, 0x02, 0x0a, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x53, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x02, - 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, - 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x55, 0x53, 0x54, 0x10, 0x03, 0x12, 0x1c, 0x0a, - 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, - 0x44, 0x55, 0x53, 0x54, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x43, 0x41, 0x52, 0x44, - 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x05, 0x12, 0x16, - 0x0a, 0x12, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, - 0x50, 0x41, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x07, 0x22, - 0x84, 0x0d, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, - 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, - 0x32, 0x30, 0x31, 0x36, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, - 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x12, 0x61, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x51, 0x75, 0x65, - 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x12, 0x5b, 0x0a, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x57, 0x61, - 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, - 0x12, 0x67, 0x0a, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x41, - 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x61, 0x63, 0x68, - 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x5f, 0x0a, 0x0a, 0x62, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, - 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x52, - 0x09, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x64, 0x0a, 0x0b, 0x70, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x42, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, - 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x58, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, - 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, - 0x74, 0x52, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x64, 0x0a, 0x0c, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, + 0x65, 0x61, 0x6d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, + 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, + 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, + 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x55, 0x53, 0x54, 0x10, + 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, + 0x4e, 0x4f, 0x54, 0x5f, 0x44, 0x55, 0x53, 0x54, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x04, 0x12, + 0x21, 0x0a, 0x1d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, + 0x43, 0x41, 0x52, 0x44, 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, + 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x43, + 0x41, 0x52, 0x44, 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, + 0x45, 0x10, 0x07, 0x22, 0x84, 0x0d, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x61, 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, - 0x12, 0x74, 0x0a, 0x11, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, - 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, - 0x30, 0x31, 0x36, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x1a, 0x88, 0x01, 0x0a, 0x0a, 0x51, 0x75, 0x65, 0x73, 0x74, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x6e, 0x65, - 0x73, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x6e, 0x65, 0x73, - 0x74, 0x61, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x1a, 0xaf, 0x01, 0x0a, 0x08, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, - 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x61, 0x67, 0x65, - 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x6f, 0x6e, - 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x6f, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x6f, - 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x52, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, - 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, - 0x69, 0x70, 0x73, 0x1a, 0x5a, 0x0a, 0x0c, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, - 0x35, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, - 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, - 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x55, 0x0a, 0x0b, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x3b, 0x0a, - 0x07, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, - 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, - 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x45, 0x0a, 0x0a, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, - 0x79, 0x1a, 0x53, 0x0a, 0x10, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, - 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, - 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0xb3, 0x0c, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, - 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, - 0x31, 0x36, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, - 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x58, - 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, - 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, - 0x36, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x0a, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x08, 0x77, 0x61, 0x67, 0x65, - 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, - 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, - 0x6e, 0x67, 0x52, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x5e, 0x0a, 0x0c, - 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, - 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, - 0x36, 0x2e, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, - 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x56, 0x0a, 0x0a, - 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, - 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x52, 0x09, 0x62, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x43, 0x75, 0x70, 0x12, 0x5b, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x12, 0x61, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, + 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x0a, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x5b, 0x0a, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, + 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, - 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x4f, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, - 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, - 0x36, 0x2e, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, - 0x65, 0x74, 0x12, 0x5b, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, - 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, - 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, - 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, - 0x6b, 0x0a, 0x11, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, + 0x36, 0x2e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x77, 0x61, 0x67, 0x65, + 0x72, 0x69, 0x6e, 0x67, 0x12, 0x67, 0x0a, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, - 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, - 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, 0x66, 0x61, 0x6e, 0x74, - 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x1a, 0x88, 0x01, 0x0a, - 0x0a, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x6f, - 0x73, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x77, 0x6f, 0x73, - 0x74, 0x61, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, - 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x1a, 0xaf, 0x01, 0x0a, 0x08, 0x57, 0x61, 0x67, 0x65, - 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x61, - 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, - 0x61, 0x6c, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, - 0x61, 0x6c, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x57, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, - 0x65, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, - 0x72, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, - 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x1a, 0x5a, 0x0a, 0x0c, 0x41, 0x63, 0x68, - 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, - 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, - 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, - 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x35, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, - 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x55, 0x0a, 0x0b, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, - 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, + 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, + 0x31, 0x36, 0x2e, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, + 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x5f, 0x0a, + 0x0a, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, + 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x43, 0x75, 0x70, 0x52, 0x09, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x64, + 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, + 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x50, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x58, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x42, 0x72, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x64, + 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x61, 0x72, 0x64, 0x73, 0x12, 0x74, 0x0a, 0x11, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, + 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, + 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x1a, 0x88, 0x01, 0x0a, 0x0a, 0x51, + 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, + 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, + 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x1a, 0xaf, 0x01, 0x0a, 0x08, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, + 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x61, 0x67, 0x65, + 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x57, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, + 0x77, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, + 0x67, 0x65, 0x57, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x1a, 0x5a, 0x0a, 0x0c, 0x41, 0x63, 0x68, 0x69, 0x65, + 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x1a, 0x3b, 0x0a, 0x07, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x18, - 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, - 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, - 0x1a, 0x45, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, - 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x53, 0x0a, 0x10, 0x46, 0x61, 0x6e, 0x74, 0x61, - 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0xc5, 0x0c, 0x0a, - 0x29, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, - 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, - 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x5a, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, - 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, - 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x51, 0x75, 0x65, 0x73, - 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, - 0x65, 0x73, 0x12, 0x54, 0x0a, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, - 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x08, - 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x60, 0x0a, 0x0c, 0x61, 0x63, 0x68, 0x69, - 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, - 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, - 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x61, 0x63, - 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x58, 0x0a, 0x0a, 0x62, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, + 0x6e, 0x74, 0x73, 0x1a, 0x35, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, + 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x77, 0x69, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x55, 0x0a, 0x0b, 0x50, 0x72, + 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, + 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, + 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x1a, 0x3b, 0x0a, 0x07, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, + 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x45, + 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, + 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x53, 0x0a, 0x10, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, + 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, + 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, + 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0xb3, 0x0c, 0x0a, 0x27, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, + 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, + 0x65, 0x6c, 0x12, 0x58, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, + 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x08, + 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, - 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x52, 0x09, 0x62, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x43, 0x75, 0x70, 0x12, 0x5d, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, - 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x12, 0x51, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x07, + 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x57, 0x61, + 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, + 0x12, 0x5e, 0x0a, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, + 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x52, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x12, 0x56, 0x0a, 0x0a, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, - 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x62, - 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5d, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, + 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, + 0x30, 0x31, 0x36, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x52, 0x09, 0x62, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x5b, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, + 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x50, 0x72, 0x65, + 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4f, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, + 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x62, + 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5b, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, - 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x6d, 0x0a, 0x11, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, - 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, - 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, - 0x37, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x52, 0x10, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x1a, 0x88, 0x01, 0x0a, 0x0a, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, - 0x6e, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, - 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, - 0x72, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, - 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, - 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x1a, - 0xaf, 0x01, 0x0a, 0x08, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, - 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x6f, 0x6e, 0x12, 0x1f, - 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x6e, 0x12, - 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, - 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x70, 0x73, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x70, - 0x73, 0x1a, 0x5a, 0x0a, 0x0c, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x35, 0x0a, - 0x09, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, - 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x14, - 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x55, 0x0a, 0x0b, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, - 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x3b, 0x0a, 0x07, 0x42, - 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, - 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x45, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, - 0x53, 0x0a, 0x10, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, - 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, - 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, - 0x74, 0x69, 0x6c, 0x65, 0x22, 0x86, 0x0c, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, - 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x12, 0x2a, 0x0a, 0x11, 0x62, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, - 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x53, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, - 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, - 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x4d, 0x0a, 0x08, - 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, + 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, + 0x72, 0x64, 0x73, 0x12, 0x6b, 0x0a, 0x11, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x63, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, - 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, - 0x67, 0x52, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x59, 0x0a, 0x0c, 0x61, - 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, - 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x41, 0x63, 0x68, 0x69, - 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x51, 0x0a, 0x0a, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x5f, 0x63, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, - 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x52, 0x09, - 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x56, 0x0a, 0x0b, 0x70, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, - 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x4a, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, - 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x42, 0x72, 0x61, - 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x56, 0x0a, - 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, - 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x66, 0x0a, 0x11, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, - 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, - 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, - 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, 0x66, 0x61, 0x6e, - 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x1a, 0x88, 0x01, - 0x0a, 0x0a, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, - 0x6f, 0x73, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x77, 0x6f, - 0x73, 0x74, 0x61, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, - 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, - 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x1a, 0xaf, 0x01, 0x0a, 0x08, 0x57, 0x61, 0x67, - 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, - 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, - 0x67, 0x65, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, - 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x1a, 0x5a, 0x0a, 0x0c, 0x41, 0x63, - 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, - 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x35, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x43, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x55, 0x0a, - 0x0b, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, - 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x3b, 0x0a, 0x07, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, + 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x2e, 0x46, 0x61, + 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, + 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x1a, 0x88, 0x01, 0x0a, 0x0a, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x18, 0x0a, + 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, + 0x73, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, + 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x1a, 0xaf, 0x01, 0x0a, 0x08, + 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, + 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, + 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x1a, 0x5a, 0x0a, + 0x0c, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, + 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x35, 0x0a, 0x09, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x1a, 0x55, 0x0a, 0x0b, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x1a, 0x45, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x53, 0x0a, 0x10, 0x46, 0x61, 0x6e, 0x74, - 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0xad, 0x0b, - 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, - 0x5f, 0x54, 0x49, 0x38, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, - 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x12, 0x57, 0x0a, 0x0c, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x72, 0x61, 0x77, 0x6c, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, - 0x2e, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x52, 0x0b, 0x63, 0x61, - 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x12, 0x4d, 0x0a, 0x08, 0x77, 0x61, 0x67, - 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, - 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x08, - 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x59, 0x0a, 0x0c, 0x61, 0x63, 0x68, 0x69, - 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, + 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, + 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x3b, 0x0a, 0x07, 0x42, 0x72, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x45, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, + 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x53, 0x0a, 0x10, 0x46, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, + 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, + 0x22, 0xc5, 0x0c, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, + 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x12, 0x2a, + 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x5a, 0x0a, 0x0a, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, - 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x12, 0x56, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, + 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x54, 0x0a, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, + 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, - 0x49, 0x38, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, - 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x07, 0x62, - 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, - 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, - 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x56, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, - 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, - 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, - 0x66, 0x0a, 0x11, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, - 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x1a, 0xb5, 0x01, 0x0a, 0x0b, 0x43, 0x61, 0x76, 0x65, - 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x6f, 0x6f, 0x6d, 0x73, - 0x5f, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x72, 0x6f, 0x6f, 0x6d, 0x73, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, - 0x63, 0x61, 0x72, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x63, 0x61, 0x72, 0x72, 0x79, 0x43, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, - 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x75, - 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x1a, - 0xaf, 0x01, 0x0a, 0x08, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, - 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x6f, 0x6e, 0x12, 0x1f, - 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x6e, 0x12, - 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, - 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x70, 0x73, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x70, - 0x73, 0x1a, 0x5a, 0x0a, 0x0c, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x55, 0x0a, - 0x0b, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, - 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x3b, 0x0a, 0x07, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x1a, 0x45, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x53, 0x0a, 0x10, 0x46, 0x61, 0x6e, 0x74, - 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0x50, 0x0a, - 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, - 0x54, 0x49, 0x39, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, 0x61, - 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, - 0x51, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, - 0x70, 0x5f, 0x54, 0x49, 0x31, 0x30, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, - 0x65, 0x6c, 0x22, 0x61, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, - 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xce, 0x04, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, + 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, + 0x6e, 0x67, 0x52, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x60, 0x0a, 0x0c, + 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, - 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x53, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x36, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, - 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x52, 0x08, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x54, 0x69, 0x36, 0x12, 0x54, 0x0a, 0x0e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x66, - 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, + 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, + 0x30, 0x31, 0x37, 0x2e, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x52, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x58, + 0x0a, 0x0a, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, + 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, + 0x30, 0x31, 0x37, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x52, 0x09, 0x62, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x5d, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, - 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x52, 0x0d, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x12, 0x5a, 0x0a, 0x10, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x77, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x50, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x51, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, + 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, + 0x74, 0x52, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5d, 0x0a, 0x0c, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, + 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, + 0x37, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x6d, 0x0a, 0x11, 0x66, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x32, 0x30, 0x31, 0x37, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x1a, 0x88, 0x01, 0x0a, 0x0a, 0x51, 0x75, 0x65, + 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, + 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x6e, + 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x12, + 0x1c, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x14, 0x0a, + 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x1a, 0xaf, 0x01, 0x0a, 0x08, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, + 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x61, + 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, + 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, + 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x6f, + 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, + 0x57, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, + 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, + 0x74, 0x69, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x54, 0x69, 0x70, 0x73, 0x1a, 0x5a, 0x0a, 0x0c, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x1a, 0x35, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x12, + 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, + 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x55, 0x0a, 0x0b, 0x50, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, + 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, + 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, + 0x3b, 0x0a, 0x07, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, + 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, + 0x72, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x45, 0x0a, 0x0a, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, + 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, + 0x69, 0x74, 0x79, 0x1a, 0x53, 0x0a, 0x10, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, + 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x65, + 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0x86, 0x0c, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x57, 0x69, 0x6e, 0x74, - 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x52, 0x0f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x57, 0x69, 0x6e, - 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x12, 0x45, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x74, 0x69, 0x37, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, + 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x12, + 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x53, 0x0a, 0x0a, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, + 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, + 0x69, 0x6e, 0x65, 0x73, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x12, 0x4d, 0x0a, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, + 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x57, 0x61, 0x67, + 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, + 0x59, 0x0a, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, + 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x61, 0x63, + 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x51, 0x0a, 0x0a, 0x62, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, + 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, + 0x75, 0x70, 0x52, 0x09, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x56, 0x0a, + 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, + 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x50, 0x72, 0x65, + 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, + 0x2e, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, + 0x74, 0x12, 0x56, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, + 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, + 0x37, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x66, 0x0a, 0x11, 0x66, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x2e, 0x46, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, + 0x10, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x1a, 0x88, 0x01, 0x0a, 0x0a, 0x51, 0x75, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x18, + 0x0a, 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x74, 0x77, 0x6f, 0x73, 0x74, 0x61, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, + 0x65, 0x73, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x68, 0x72, + 0x65, 0x65, 0x73, 0x74, 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x1a, 0xaf, 0x01, 0x0a, + 0x08, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, + 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, + 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x73, 0x1a, 0x5a, + 0x0a, 0x0c, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x35, 0x0a, 0x09, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, + 0x65, 0x1a, 0x55, 0x0a, 0x0b, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x3b, 0x0a, 0x07, 0x42, 0x72, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x45, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x53, 0x0a, 0x10, + 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, + 0x65, 0x22, 0xad, 0x0b, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, + 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x12, 0x57, 0x0a, 0x0c, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, + 0x72, 0x61, 0x77, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, - 0x5f, 0x54, 0x49, 0x37, 0x52, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x37, 0x12, 0x45, - 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x38, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, - 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x52, 0x08, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x54, 0x69, 0x38, 0x12, 0x45, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, - 0x69, 0x39, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, - 0x49, 0x39, 0x52, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x39, 0x12, 0x48, 0x0a, 0x0a, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x31, 0x30, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, - 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x31, 0x30, 0x52, 0x09, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x54, 0x69, 0x31, 0x30, 0x22, 0x4a, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, + 0x52, 0x0b, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x12, 0x4d, 0x0a, + 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, + 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, + 0x6e, 0x67, 0x52, 0x08, 0x77, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x59, 0x0a, 0x0c, + 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, - 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x41, 0x63, 0x68, + 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x61, 0x63, 0x68, 0x69, 0x65, + 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x56, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, + 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x4a, 0x0a, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, + 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x42, 0x72, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x52, 0x07, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x56, 0x0a, 0x0c, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, + 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, + 0x72, 0x64, 0x73, 0x12, 0x66, 0x0a, 0x11, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x63, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, + 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, 0x66, 0x61, 0x6e, 0x74, 0x61, + 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x1a, 0xb5, 0x01, 0x0a, 0x0b, + 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x72, + 0x6f, 0x6f, 0x6d, 0x73, 0x5f, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x6f, 0x6f, 0x6d, 0x73, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x65, 0x64, + 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x61, 0x72, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x63, 0x61, 0x72, 0x72, 0x79, + 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x10, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x64, 0x1a, 0xaf, 0x01, 0x0a, 0x08, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, + 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, 0x61, + 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x77, + 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x57, + 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x6f, + 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, + 0x57, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, + 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, + 0x74, 0x69, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x54, 0x69, 0x70, 0x73, 0x1a, 0x5a, 0x0a, 0x0c, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x1a, 0x55, 0x0a, 0x0b, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x3b, 0x0a, 0x07, 0x42, 0x72, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x45, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x64, 0x22, 0xc5, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x53, 0x0a, 0x10, + 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, + 0x65, 0x22, 0x50, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, + 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x39, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x22, 0x51, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, - 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x59, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x31, 0x30, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, + 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x61, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, + 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xce, 0x04, 0x0a, 0x26, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, + 0x36, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x52, + 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x36, 0x12, 0x54, 0x0a, 0x0e, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, + 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, + 0x52, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x46, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x31, 0x36, 0x12, + 0x5a, 0x0a, 0x10, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x77, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, + 0x30, 0x31, 0x37, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, + 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x52, 0x0f, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x57, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x32, 0x30, 0x31, 0x37, 0x12, 0x45, 0x0a, 0x09, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x37, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, + 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x37, 0x52, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, + 0x69, 0x37, 0x12, 0x45, 0x0a, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x38, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x3c, 0x0a, 0x09, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x45, 0x0a, 0x28, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x66, 0x65, 0x72, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x4d, 0x52, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x70, 0x61, 0x72, - 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x50, 0x61, 0x72, 0x74, - 0x79, 0x22, 0x45, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x61, 0x6c, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x36, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, - 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x22, 0x43, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, 0x12, 0x25, - 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x74, - 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, - 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, - 0x72, 0x22, 0x4d, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, - 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x07, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, - 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x22, 0x83, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, - 0x76, 0x69, 0x61, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x12, 0x3a, 0x0a, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x69, 0x76, 0x69, 0x61, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x72, 0x69, 0x76, 0x69, 0x61, 0x45, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x68, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, - 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, - 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, - 0x22, 0x63, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, - 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, - 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, - 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x1c, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x22, 0x78, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x69, - 0x76, 0x69, 0x61, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x74, 0x72, 0x69, 0x76, 0x69, 0x61, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x22, 0x0a, - 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, - 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x22, 0xfa, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x6e, - 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, + 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x38, 0x52, + 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x38, 0x12, 0x45, 0x0a, 0x09, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x39, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, + 0x75, 0x70, 0x5f, 0x54, 0x49, 0x39, 0x52, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x39, + 0x12, 0x48, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x31, 0x30, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x54, 0x49, 0x31, 0x30, 0x52, + 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x31, 0x30, 0x22, 0x4a, 0x0a, 0x29, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xc5, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, + 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x1a, 0x3c, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, + 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x45, + 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, + 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, + 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, + 0x50, 0x61, 0x72, 0x74, 0x79, 0x22, 0x45, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x36, 0x0a, 0x1c, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, + 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x22, 0x43, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, + 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x22, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, + 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x4d, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x22, 0x83, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x51, 0x75, + 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3a, 0x0a, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, + 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x69, 0x76, 0x69, 0x61, 0x5f, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x72, 0x69, + 0x76, 0x69, 0x61, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x68, 0x0a, 0x22, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x69, 0x76, + 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, + 0x12, 0x1f, 0x0a, 0x0b, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x22, 0x63, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, + 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, + 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x1c, 0x0a, 0x1a, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x78, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x4f, 0x54, 0x41, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x53, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, + 0x0e, 0x74, 0x72, 0x69, 0x76, 0x69, 0x61, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x72, 0x69, 0x76, 0x69, 0x61, 0x45, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x10, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x22, 0x22, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x6e, 0x63, + 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xfa, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x6e, 0x63, 0x68, 0x6f, + 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x22, 0x8c, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, + 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x45, + 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x01, 0x12, 0x18, + 0x0a, 0x14, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x53, 0x54, 0x45, 0x41, 0x4d, + 0x5f, 0x50, 0x48, 0x4f, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x49, 0x4e, 0x5f, 0x55, 0x53, 0x45, + 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x4f, 0x4c, + 0x44, 0x4f, 0x57, 0x4e, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x04, 0x12, 0x13, 0x0a, + 0x0f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x47, 0x41, 0x43, 0x5f, 0x49, 0x53, 0x53, 0x55, 0x45, + 0x10, 0x05, 0x22, 0x24, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6e, + 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x99, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0x8c, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, - 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x52, 0x52, 0x4f, 0x52, - 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x52, - 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x50, 0x48, 0x4f, - 0x4e, 0x45, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x41, 0x4c, - 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x49, 0x4e, 0x5f, 0x55, 0x53, 0x45, 0x10, 0x03, 0x12, 0x19, - 0x0a, 0x15, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x4f, 0x4c, 0x44, 0x4f, 0x57, 0x4e, - 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x52, 0x52, - 0x4f, 0x52, 0x5f, 0x47, 0x41, 0x43, 0x5f, 0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x05, 0x22, 0x24, - 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6e, 0x61, 0x6e, 0x63, 0x68, - 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x22, 0x99, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6e, 0x61, 0x6e, - 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x28, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x11, 0x0a, - 0x0d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x01, - 0x22, 0x92, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, - 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0xa0, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x12, 0x48, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x28, 0x0a, 0x06, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, + 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x10, 0x01, 0x22, 0xbe, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x4e, 0x6f, + 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x48, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xa0, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, @@ -35724,812 +37339,994 @@ var file_dota_gcmessages_client_proto_rawDesc = []byte{ 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, - 0x69, 0x72, 0x65, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x22, 0x1e, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, - 0x62, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x22, 0x80, 0x02, 0x0a, 0x24, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x61, 0x6c, - 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x4c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, - 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0x89, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, - 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, - 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, - 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, - 0x79, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, - 0x6f, 0x74, 0x54, 0x6f, 0x53, 0x6f, 0x6f, 0x6e, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, - 0x65, 0x4e, 0x6f, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x06, 0x22, 0x9a, 0x01, 0x0a, 0x25, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, - 0x49, 0x74, 0x65, 0x6d, 0x41, 0x77, 0x61, 0x72, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x11, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, - 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x69, - 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xa4, 0x06, 0x0a, 0x27, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, - 0x74, 0x4f, 0x57, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x4f, 0x57, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, - 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x63, 0x72, - 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x0d, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x76, 0x65, - 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x61, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x53, 0x61, 0x6c, 0x74, - 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x4e, - 0x0a, 0x07, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, - 0x61, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x12, 0x41, - 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4f, 0x76, - 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, - 0x73, 0x6f, 0x6e, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, - 0x74, 0x69, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, - 0x54, 0x69, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x1a, 0x5a, 0x0a, 0x06, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, - 0x12, 0x29, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x12, 0x25, 0x0a, 0x0f, 0x65, - 0x6e, 0x64, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x53, 0x22, 0x7e, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, - 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, - 0x75, 0x73, 0x79, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, - 0x65, 0x4e, 0x6f, 0x43, 0x61, 0x73, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, - 0x10, 0x05, 0x22, 0x9a, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x57, 0x43, 0x6f, 0x6e, - 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x4b, 0x0a, 0x13, 0x63, 0x68, 0x65, 0x61, 0x74, 0x69, 0x6e, - 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, - 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, - 0x63, 0x68, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x13, 0x67, 0x72, 0x69, 0x65, 0x66, 0x69, 0x6e, 0x67, 0x5f, 0x63, - 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, - 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x67, 0x72, 0x69, - 0x65, 0x66, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0xe1, 0x02, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x57, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x57, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, + 0x69, 0x72, 0x65, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x22, 0x26, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, + 0x22, 0xd2, 0x04, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x5d, 0x0a, 0x0b, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x65, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x5b, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x21, 0x0a, + 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x12, 0x2d, 0x0a, 0x13, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x6f, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, + 0x75, 0x6d, 0x4e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x1a, + 0x87, 0x01, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x17, 0x0a, + 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x89, 0x01, 0x0a, 0x09, 0x45, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x03, 0x12, 0x13, 0x0a, + 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, + 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x54, 0x6f, 0x53, 0x6f, + 0x6f, 0x6e, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x10, 0x06, 0x22, 0x47, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, + 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x73, 0x22, 0x1e, + 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x22, 0x80, + 0x02, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, + 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x89, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, + 0x4e, 0x6f, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x10, 0x04, 0x12, 0x10, + 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x54, 0x6f, 0x53, 0x6f, 0x6f, 0x6e, 0x10, 0x05, + 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x10, + 0x06, 0x22, 0x9a, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6f, + 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x77, 0x61, 0x72, 0x64, 0x4e, + 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, + 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, + 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x21, + 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x4f, 0x57, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x22, 0xa4, 0x06, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x76, 0x65, - 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x22, 0xb2, - 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, - 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x74, 0x74, 0x65, 0x64, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x49, 0x6e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x44, 0x10, 0x05, 0x12, - 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x6f, 0x6e, - 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, - 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, - 0x74, 0x10, 0x07, 0x22, 0x22, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x55, 0x52, 0x4c, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x48, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, - 0x41, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, - 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, - 0x6c, 0x22, 0x27, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x41, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x57, 0x0a, 0x26, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, - 0x61, 0x53, 0x53, 0x41, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x11, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x65, 0x64, 0x22, 0x48, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x61, - 0x73, 0x65, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x07, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x84, 0x01, - 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x57, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x4f, 0x76, 0x65, - 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, - 0x74, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, - 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x12, 0x25, + 0x0a, 0x0e, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, + 0x25, 0x0a, 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x61, 0x6c, + 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, + 0x63, 0x68, 0x53, 0x61, 0x6c, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x53, 0x6c, 0x6f, 0x74, 0x22, 0x83, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x70, 0x57, 0x61, 0x74, 0x63, 0x68, + 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x4e, 0x0a, 0x07, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x18, + 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x61, 0x72, + 0x6b, 0x65, 0x72, 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, + 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x69, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, + 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, + 0x67, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x1a, 0x5a, 0x0a, 0x06, + 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x53, 0x12, 0x25, 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x5f, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x64, 0x47, + 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x22, 0x7e, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x6b, + 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x10, 0x04, + 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x43, 0x61, 0x73, 0x65, 0x41, 0x76, 0x61, + 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x05, 0x22, 0x9a, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x4f, 0x57, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, + 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, + 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, + 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, + 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, + 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x4b, 0x0a, 0x13, 0x63, + 0x68, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x63, 0x68, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f, + 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x13, 0x67, 0x72, 0x69, 0x65, + 0x66, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4f, 0x76, + 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x12, 0x67, 0x72, 0x69, 0x65, 0x66, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe1, 0x02, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x57, + 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x50, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x57, + 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, + 0x68, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, + 0x61, 0x79, 0x49, 0x64, 0x22, 0xb2, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, + 0x6f, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x10, 0x04, 0x12, 0x16, 0x0a, + 0x12, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x61, + 0x79, 0x49, 0x44, 0x10, 0x05, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x06, 0x12, + 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x10, 0x07, 0x22, 0x22, 0x0a, 0x20, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, + 0x53, 0x53, 0x41, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x48, 0x0a, + 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, + 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, + 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x67, 0x72, 0x65, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x22, 0x27, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, + 0x41, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x22, 0x57, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, + 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x67, + 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x22, 0x48, 0x0a, 0x25, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x77, + 0x61, 0x74, 0x63, 0x68, 0x43, 0x61, 0x73, 0x65, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, + 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x22, 0x84, 0x01, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x61, 0x72, 0x74, 0x57, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x22, 0x54, 0x0a, 0x22, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x76, 0x65, 0x72, - 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x65, - 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, - 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, - 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, - 0x73, 0x22, 0xaf, 0x03, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, - 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x22, 0x83, 0x01, 0x0a, 0x23, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, + 0x70, 0x57, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, + 0x63, 0x68, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x11, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, + 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, + 0x22, 0x54, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, + 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, + 0x74, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x70, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, + 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x22, 0xaf, 0x03, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, + 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, + 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x52, 0x0a, 0x09, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, + 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x52, 0x09, 0x66, 0x61, 0x76, 0x6f, 0x72, + 0x69, 0x74, 0x65, 0x73, 0x1a, 0x68, 0x0a, 0x08, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, + 0x12, 0x3b, 0x0a, 0x0d, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, + 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x0c, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, + 0x0b, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x49, 0x64, 0x22, 0x79, + 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, + 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, + 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, + 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x05, 0x22, 0x9b, 0x01, 0x0a, 0x21, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, + 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, + 0x3b, 0x0a, 0x0d, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, + 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, + 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, + 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0xde, 0x02, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, 0x50, 0x43, + 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, 0x50, + 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xdd, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, + 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x4f, + 0x75, 0x74, 0x4f, 0x66, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x6b, + 0x5f, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x17, + 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x46, 0x61, 0x76, 0x6f, + 0x72, 0x69, 0x74, 0x65, 0x64, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x41, 0x6c, + 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, 0x6e, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x64, + 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x06, 0x12, 0x19, 0x0a, + 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, + 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x08, 0x22, 0x6b, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, + 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x9c, 0x02, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, + 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x95, 0x01, 0x0a, + 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, + 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, + 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, + 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, + 0x65, 0x64, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, + 0x75, 0x74, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4e, 0x6f, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x10, 0x06, 0x22, 0xaf, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4c, + 0x61, 0x62, 0x79, 0x72, 0x69, 0x6e, 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, + 0x73, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, + 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, + 0x52, 0x0b, 0x62, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, + 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x64, 0x65, + 0x62, 0x75, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x72, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 0x65, 0x62, 0x75, 0x67, + 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x22, 0x8d, 0x02, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, + 0x65, 0x4c, 0x61, 0x62, 0x79, 0x72, 0x69, 0x6e, 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x52, 0x0a, 0x09, 0x66, 0x61, - 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x46, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x52, 0x09, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x1a, 0x68, - 0x0a, 0x08, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x0d, 0x66, 0x61, - 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, - 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x66, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x61, - 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x49, 0x64, 0x22, 0x79, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, - 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, - 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, - 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0x05, 0x22, 0x9b, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, - 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x0d, 0x66, 0x61, 0x76, - 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, - 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, - 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, - 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x61, 0x76, - 0x6f, 0x72, 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x22, 0xde, 0x02, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, - 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x51, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x22, 0xdd, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x76, - 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x63, 0x6b, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x41, - 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x64, 0x10, - 0x04, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, - 0x6e, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x64, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, - 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, - 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x10, 0x08, 0x22, 0x6b, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x22, - 0x9c, 0x02, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x54, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x95, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, - 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, - 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, - 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x6b, - 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x10, 0x04, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x05, 0x12, 0x1e, - 0x0a, 0x1a, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x4e, 0x6f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x06, 0x22, 0xaf, - 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4c, 0x61, 0x62, 0x79, 0x72, 0x69, 0x6e, - 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, - 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x62, 0x6c, 0x65, 0x73, - 0x73, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x12, 0x21, 0x0a, - 0x0c, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 0x65, 0x62, 0x75, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x22, 0x8d, 0x02, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4c, 0x61, 0x62, 0x79, 0x72, - 0x69, 0x6e, 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, - 0x61, 0x73, 0x65, 0x4c, 0x61, 0x62, 0x79, 0x72, 0x69, 0x6e, 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, - 0x73, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0x7f, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x53, 0x75, 0x63, 0x68, 0x42, - 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, - 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x10, - 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x61, 0x74, 0x68, 0x10, 0x04, - 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x05, - 0x22, 0x44, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x97, 0x02, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x50, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x37, 0x0a, 0x0b, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x0b, 0x73, - 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x22, 0x64, 0x0a, 0x09, 0x45, 0x52, + 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x7f, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x4e, + 0x6f, 0x53, 0x75, 0x63, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, + 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x53, + 0x68, 0x61, 0x72, 0x64, 0x73, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, + 0x50, 0x61, 0x74, 0x68, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x6f, 0x75, 0x74, 0x10, 0x05, 0x22, 0x44, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x97, 0x02, 0x0a, + 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0b, 0x73, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, + 0x6f, 0x6f, 0x6b, 0x52, 0x0b, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, + 0x22, 0x64, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, + 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, + 0x6f, 0x77, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, + 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x22, 0xa7, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x27, + 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x45, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, + 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x8f, 0x02, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, + 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x57, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, + 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x67, + 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x66, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x11, 0x0a, - 0x0d, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x10, 0x03, - 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, - 0x22, 0xa7, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x37, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x69, - 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x8f, 0x02, 0x0a, 0x2b, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x08, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, - 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x13, 0x0a, + 0x0f, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4d, 0x61, 0x6e, 0x79, 0x50, 0x61, 0x67, 0x65, 0x73, + 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, + 0x10, 0x04, 0x22, 0x8d, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x23, 0x0a, 0x0d, + 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x78, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x4d, + 0x61, 0x78, 0x22, 0xa4, 0x02, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x57, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9b, 0x01, 0x0a, 0x09, + 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, + 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, + 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, + 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x69, + 0x63, 0x6b, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, + 0x4d, 0x61, 0x78, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, 0x10, 0x06, 0x22, 0xe1, 0x01, 0x0a, 0x22, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, + 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x59, 0x0a, 0x0d, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x74, 0x65, 0x6d, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, + 0x63, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x2e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0c, 0x73, + 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0x60, 0x0a, 0x0b, 0x53, + 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, + 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x36, 0x0a, 0x07, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x69, + 0x63, 0x6b, 0x65, 0x72, 0x52, 0x07, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x22, 0xb9, 0x02, + 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x50, 0x6c, 0x61, 0x63, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, + 0x63, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc0, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, + 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x44, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x50, + 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x4d, 0x69, 0x73, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x10, + 0x07, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4d, 0x61, 0x6e, 0x79, 0x53, + 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x10, 0x08, 0x22, 0x9d, 0x02, 0x0a, 0x2c, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, + 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x05, 0x73, 0x6c, + 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, + 0x6c, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, + 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x6c, + 0x6f, 0x74, 0x52, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x1a, 0x9d, 0x01, 0x0a, 0x04, 0x53, 0x6c, + 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x12, 0x0a, + 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x6c, 0x6f, + 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6e, 0x65, 0x77, 0x49, 0x74, 0x65, 0x6d, 0x49, + 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x6f, 0x6c, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, + 0x66, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x6c, 0x64, 0x49, + 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x6c, 0x64, 0x5f, + 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6f, + 0x6c, 0x64, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x22, 0xfa, 0x02, 0x0a, 0x2d, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, + 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x08, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xed, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, + 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x44, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x50, + 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x4d, 0x69, 0x73, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x10, + 0x07, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x4f, 0x6c, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x4d, + 0x69, 0x73, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x10, 0x09, 0x12, 0x17, 0x0a, + 0x13, 0x6b, 0x5f, 0x65, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x4d, 0x69, 0x73, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x10, 0x0a, 0x22, 0x8b, 0x01, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, + 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x13, 0x70, 0x61, 0x67, 0x65, + 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, + 0x50, 0x61, 0x67, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x52, 0x11, 0x70, 0x61, 0x67, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x22, 0x88, 0x02, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x69, 0x63, + 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, + 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, + 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x7a, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, + 0x4d, 0x61, 0x6e, 0x79, 0x50, 0x61, 0x67, 0x65, 0x73, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, 0x10, 0x05, 0x22, + 0x77, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x12, + 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6e, + 0x65, 0x77, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x6f, 0x6c, 0x64, 0x5f, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6f, + 0x6c, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x8c, 0x02, 0x0a, 0x24, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x50, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, + 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x22, 0x66, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x6e, 0x73, 0x65, 0x22, 0x91, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x54, 0x6f, - 0x6f, 0x4d, 0x61, 0x6e, 0x79, 0x50, 0x61, 0x67, 0x65, 0x73, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x22, 0x8d, 0x01, 0x0a, - 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, - 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, - 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, - 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, - 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x73, - 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x4d, 0x61, 0x78, 0x22, 0xa4, 0x02, 0x0a, - 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, - 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9b, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, - 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, - 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, - 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x4d, 0x61, 0x78, 0x10, 0x05, 0x12, - 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x67, - 0x65, 0x10, 0x06, 0x22, 0xe1, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, - 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x59, 0x0a, 0x0d, 0x73, 0x74, - 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0c, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x49, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0x60, 0x0a, 0x0b, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x49, 0x74, 0x65, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, - 0x36, 0x0a, 0x07, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x52, 0x07, - 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x22, 0xb9, 0x02, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x53, - 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x4f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xc0, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, - 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, - 0x75, 0x74, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, - 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x44, - 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x05, 0x12, 0x12, - 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, - 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x50, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x4d, 0x69, 0x73, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x6b, - 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4d, 0x61, 0x6e, 0x79, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x73, 0x10, 0x08, 0x22, 0x9d, 0x02, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x05, 0x73, 0x6c, - 0x6f, 0x74, 0x73, 0x1a, 0x9d, 0x01, 0x0a, 0x04, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, - 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x6e, - 0x65, 0x77, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x09, 0x6e, 0x65, 0x77, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x6f, - 0x6c, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x6c, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, - 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x6c, 0x64, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, - 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6f, 0x6c, 0x64, 0x51, 0x75, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x22, 0xfa, 0x02, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, - 0x63, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xed, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, - 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, - 0x75, 0x74, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, - 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x44, - 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x05, 0x12, 0x12, - 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, - 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x50, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x4d, 0x69, 0x73, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x6b, + 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x4d, 0x69, + 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x4f, 0x6c, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x4d, 0x69, 0x73, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x10, 0x09, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x53, 0x6c, - 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x4d, 0x69, 0x73, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x0a, - 0x22, 0x8b, 0x01, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, - 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x13, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, - 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x11, 0x70, 0x61, 0x67, - 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x88, - 0x02, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, - 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x5a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, - 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7a, 0x0a, - 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, - 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, - 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, - 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, - 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4d, 0x61, 0x6e, 0x79, 0x50, 0x61, - 0x67, 0x65, 0x73, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, - 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, 0x10, 0x05, 0x22, 0x77, 0x0a, 0x1c, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x48, 0x65, - 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6e, 0x65, 0x77, 0x49, 0x74, 0x65, 0x6d, - 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x6f, 0x6c, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x49, 0x74, 0x65, 0x6d, - 0x49, 0x64, 0x22, 0x8c, 0x02, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x08, 0x72, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x91, 0x01, - 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, - 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, - 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, - 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, - 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, - 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, - 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x4f, 0x6c, 0x64, 0x49, - 0x74, 0x65, 0x6d, 0x4d, 0x69, 0x73, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x05, 0x12, 0x12, 0x0a, - 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x10, - 0x06, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x73, 0x22, 0x8d, 0x02, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, - 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x3e, 0x0a, 0x0e, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, - 0x52, 0x0d, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x22, - 0x51, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, - 0x10, 0x04, 0x22, 0x50, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, - 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x14, - 0x0a, 0x05, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x63, - 0x6c, 0x65, 0x61, 0x72, 0x22, 0xe1, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, - 0x74, 0x65, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, + 0x68, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x48, 0x65, 0x72, 0x6f, 0x10, 0x06, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, + 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x22, 0x8d, 0x02, 0x0a, 0x25, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, + 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x0e, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, + 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, + 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x52, 0x0d, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, + 0x65, 0x72, 0x6f, 0x65, 0x73, 0x22, 0x51, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x22, 0x50, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, + 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x67, + 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x67, + 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x05, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x22, 0xe1, 0x01, 0x0a, 0x25, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, + 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, + 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x65, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, 0x10, 0x05, 0x22, 0x73, + 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x53, 0x77, 0x61, 0x67, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x22, 0xc5, 0x02, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x53, 0x77, 0x61, 0x67, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, + 0x6c, 0x61, 0x69, 0x6d, 0x53, 0x77, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd4, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, + 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x10, 0x05, 0x12, + 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x06, + 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x55, 0x73, + 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x10, 0x08, 0x12, + 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x0a, 0x22, 0x52, 0x0a, 0x31, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x76, 0x61, 0x69, + 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, + 0xb8, 0x02, 0x0a, 0x32, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x05, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, + 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x56, 0x6f, 0x74, 0x65, 0x52, 0x05, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x1a, 0xac, 0x01, 0x0a, 0x04, + 0x56, 0x6f, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, + 0x64, 0x0a, 0x09, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x56, 0x6f, 0x74, + 0x65, 0x2e, 0x45, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x76, 0x6f, 0x74, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x23, 0x0a, 0x09, 0x45, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x6b, 0x5f, 0x65, 0x55, 0x70, 0x10, 0x00, 0x12, 0x0b, 0x0a, + 0x07, 0x6b, 0x5f, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x10, 0x01, 0x22, 0x50, 0x0a, 0x1d, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x6c, 0x6f, + 0x61, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x12, 0x2f, 0x0a, 0x0a, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6c, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, + 0x70, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x22, 0xcd, 0x01, 0x0a, + 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, + 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, + 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x51, 0x0a, 0x09, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x22, 0x1f, 0x0a, 0x1d, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, + 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9f, 0x02, + 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x4a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0e, + 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x52, 0x0d, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, + 0x3b, 0x0a, 0x0c, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, + 0x0b, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x31, 0x0a, 0x09, + 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, + 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x22, + 0xc7, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, + 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x51, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, + 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, + 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, + 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, + 0x2a, 0x0a, 0x11, 0x68, 0x61, 0x6c, 0x66, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x66, + 0x6c, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x68, 0x61, 0x6c, 0x66, + 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x4f, 0x0a, 0x14, 0x43, 0x4d, 0x73, + 0x67, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x37, 0x0a, 0x06, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x6f, 0x61, + 0x64, 0x54, 0x6f, 0x54, 0x49, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x51, 0x75, 0x65, + 0x73, 0x74, 0x52, 0x06, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x3c, 0x0a, 0x1f, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, + 0x54, 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x19, 0x0a, + 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xaf, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, + 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, + 0x54, 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, + 0x49, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x44, 0x61, 0x74, 0x61, 0x22, 0x74, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, + 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x44, 0x10, 0x05, 0x22, 0x41, 0x0a, 0x24, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, + 0x54, 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x51, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xcc, 0x02, + 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, + 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x47, 0x65, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, + 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x09, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x81, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, + 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, + 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x44, 0x10, 0x06, 0x22, 0x7e, 0x0a, 0x26, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x6f, + 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x51, 0x75, 0x65, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x76, 0x0a, 0x1d, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, + 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x19, 0x0a, + 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x22, 0x81, 0x02, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x55, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, - 0x65, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x55, 0x73, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x65, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, - 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, - 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, - 0x73, 0x79, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x50, 0x61, 0x67, 0x65, 0x10, 0x05, 0x22, 0x73, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x53, - 0x77, 0x61, 0x67, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xc5, 0x02, - 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x53, 0x77, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x4b, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x53, 0x77, - 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd4, - 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, - 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, - 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, - 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, - 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0x07, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x45, - 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x10, 0x08, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, - 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x09, 0x12, 0x15, - 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x10, 0x0a, 0x22, 0x52, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, - 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0xb8, 0x02, 0x0a, 0x32, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, - 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x53, 0x0a, 0x05, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, - 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x05, - 0x76, 0x6f, 0x74, 0x65, 0x73, 0x1a, 0xac, 0x01, 0x0a, 0x04, 0x56, 0x6f, 0x74, 0x65, 0x12, 0x19, - 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x64, 0x0a, 0x09, 0x76, 0x6f, 0x74, - 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, - 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x56, 0x6f, 0x74, 0x65, 0x2e, 0x45, 0x56, 0x6f, 0x74, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x76, 0x6f, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, - 0x23, 0x0a, 0x09, 0x45, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, - 0x6b, 0x5f, 0x65, 0x55, 0x70, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x6b, 0x5f, 0x65, 0x44, 0x6f, - 0x77, 0x6e, 0x10, 0x01, 0x22, 0x50, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x43, 0x6c, 0x69, 0x70, 0x12, 0x2f, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, - 0x6c, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x52, 0x09, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x22, 0xcd, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x51, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x51, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, - 0x42, 0x75, 0x73, 0x79, 0x10, 0x04, 0x22, 0x1f, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9f, 0x02, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x08, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, - 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x73, - 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x67, 0x6c, 0x6f, - 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0b, 0x67, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x31, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, - 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x2a, 0xd8, 0x01, 0x0a, 0x21, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x65, 0x73, 0x5f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, - 0x29, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x41, 0x6e, 0x79, 0x10, 0x00, 0x12, 0x2c, 0x0a, 0x28, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x65, 0x73, 0x5f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x5f, - 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x65, 0x73, 0x5f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x48, 0x69, - 0x67, 0x68, 0x10, 0x02, 0x12, 0x2e, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x53, - 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x56, 0x65, 0x72, 0x79, 0x48, 0x69, - 0x67, 0x68, 0x10, 0x03, 0x2a, 0x56, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x57, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, - 0x59, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, - 0x48, 0x49, 0x47, 0x48, 0x4c, 0x49, 0x47, 0x48, 0x54, 0x53, 0x10, 0x01, 0x2a, 0xd1, 0x01, 0x0a, - 0x1c, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, - 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, - 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, - 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x45, - 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x45, 0x78, - 0x69, 0x73, 0x74, 0x73, 0x10, 0x02, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x49, 0x74, 0x65, - 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x64, 0x10, 0x03, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, + 0x65, 0x22, 0x84, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, + 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x42, 0x61, 0x64, 0x49, + 0x6e, 0x70, 0x75, 0x74, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x49, + 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x6f, 0x75, 0x74, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x49, 0x44, 0x10, 0x06, 0x22, 0x85, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, + 0x6f, 0x54, 0x49, 0x44, 0x65, 0x76, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x66, + 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x49, 0x64, + 0x22, 0xa7, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x6f, + 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x51, 0x75, 0x65, 0x73, 0x74, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x3e, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x41, 0x73, 0x73, 0x69, + 0x67, 0x6e, 0x65, 0x64, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x81, 0x01, 0x0a, 0x1a, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4e, 0x65, 0x77, + 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, + 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0x8e, + 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4e, 0x65, + 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x30, 0x0a, + 0x14, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x12, 0x72, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, + 0x47, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, + 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x61, 0x6e, 0x6e, 0x65, + 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x2a, 0xd8, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x65, 0x73, 0x5f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x29, + 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x5f, 0x41, 0x6e, 0x79, 0x10, 0x00, 0x12, 0x2c, 0x0a, 0x28, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x65, 0x73, 0x5f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x4e, + 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x5f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x48, 0x69, 0x67, + 0x68, 0x10, 0x02, 0x12, 0x2e, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x53, 0x6b, + 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x56, 0x65, 0x72, 0x79, 0x48, 0x69, 0x67, + 0x68, 0x10, 0x03, 0x2a, 0x56, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x57, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, + 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x48, + 0x49, 0x47, 0x48, 0x4c, 0x49, 0x47, 0x48, 0x54, 0x53, 0x10, 0x01, 0x2a, 0xd1, 0x01, 0x0a, 0x1c, + 0x45, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x21, + 0x6b, 0x5f, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4f, + 0x4b, 0x10, 0x01, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x10, 0x04, - 0x2a, 0xe8, 0x01, 0x0a, 0x20, 0x45, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, - 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x57, 0x65, 0x65, 0x6b, - 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, - 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, - 0x10, 0x00, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, - 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, - 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x01, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x57, 0x65, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x45, 0x78, 0x69, + 0x73, 0x74, 0x73, 0x10, 0x02, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x49, 0x74, 0x65, 0x6d, + 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, + 0x10, 0x03, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, + 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x10, 0x04, 0x2a, + 0xe8, 0x01, 0x0a, 0x20, 0x45, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, + 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x57, 0x65, 0x65, 0x6b, 0x65, + 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, + 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, + 0x00, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, + 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x10, 0x01, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x57, 0x65, 0x65, + 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, 0x50, + 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x57, 0x6f, 0x6e, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x02, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, 0x68, - 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x57, 0x6f, - 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x02, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x57, - 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x69, 0x63, - 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x45, - 0x6c, 0x69, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x10, 0x03, 0x2a, 0xa7, 0x02, 0x0a, 0x17, - 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x44, 0x4f, - 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x2d, - 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, - 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x01, 0x12, 0x2b, 0x0a, - 0x27, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, + 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x45, 0x6c, + 0x69, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x10, 0x03, 0x2a, 0xa7, 0x02, 0x0a, 0x17, 0x45, + 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x2d, 0x0a, + 0x29, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x10, 0x02, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, - 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, - 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x03, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x44, - 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x41, 0x6e, 0x73, - 0x77, 0x65, 0x72, 0x65, 0x64, 0x10, 0x04, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x44, 0x4f, + 0x69, 0x64, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, + 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, + 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x10, 0x02, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, + 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x4c, + 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x03, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x10, 0x05, 0x2a, 0x8e, 0x03, 0x0a, 0x18, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, - 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x41, 0x6e, 0x73, 0x77, + 0x65, 0x72, 0x65, 0x64, 0x10, 0x04, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x10, 0x05, 0x2a, 0x8e, 0x03, 0x0a, 0x18, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, + 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, + 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, + 0x53, 0x65, 0x6e, 0x64, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x10, 0x02, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, - 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, - 0x6f, 0x53, 0x65, 0x6e, 0x64, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x50, 0x75, - 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x02, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x50, 0x75, + 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, + 0x65, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x10, 0x04, 0x12, 0x2b, 0x0a, + 0x27, 0x6b, 0x5f, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, + 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x10, 0x05, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, + 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, + 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x10, 0x06, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x12, 0x31, 0x0a, 0x2d, 0x6b, - 0x5f, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, - 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, - 0x73, 0x65, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x10, 0x04, 0x12, 0x2b, - 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, - 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x10, 0x05, 0x12, 0x2b, 0x0a, 0x27, 0x6b, - 0x5f, 0x45, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, - 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, - 0x79, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x10, 0x06, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x50, - 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x61, - 0x72, 0x69, 0x74, 0x79, 0x10, 0x07, 0x2a, 0xb8, 0x02, 0x0a, 0x16, 0x45, 0x44, 0x65, 0x76, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x44, 0x65, - 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x10, 0x01, - 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x71, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x75, - 0x72, 0x65, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x61, 0x72, + 0x69, 0x74, 0x79, 0x10, 0x07, 0x2a, 0xb8, 0x02, 0x0a, 0x16, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x5f, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, + 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x5f, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x10, 0x01, 0x12, + 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4c, 0x6f, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, - 0x72, 0x65, 0x10, 0x05, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x5f, 0x53, 0x44, 0x4f, 0x4c, 0x6f, 0x61, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x10, - 0x06, 0x2a, 0xdd, 0x05, 0x0a, 0x1a, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x71, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, + 0x65, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4c, 0x6f, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, + 0x65, 0x10, 0x05, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x44, 0x65, 0x76, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, + 0x53, 0x44, 0x4f, 0x4c, 0x6f, 0x61, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x10, 0x06, + 0x2a, 0xdd, 0x05, 0x0a, 0x1a, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, + 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x10, 0x01, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, + 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x4f, 0x43, 0x61, + 0x63, 0x68, 0x65, 0x10, 0x02, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x49, 0x6e, 0x49, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x03, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x69, 0x6d, 0x65, 0x6f, - 0x75, 0x74, 0x10, 0x01, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, - 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x4f, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x10, 0x02, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, - 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x49, 0x6e, - 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x03, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x10, 0x04, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x10, 0x04, 0x12, 0x2d, 0x0a, 0x29, - 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x05, 0x12, 0x2d, 0x0a, 0x29, 0x6b, - 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x10, 0x06, 0x12, 0x36, 0x0a, 0x32, 0x6b, 0x5f, + 0x6c, 0x69, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x05, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x10, 0x07, 0x12, 0x36, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, - 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0x08, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, - 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x09, 0x12, - 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, - 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x10, 0x0a, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, - 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x10, 0x0b, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x53, - 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x10, 0x0c, 0x12, 0x32, 0x0a, - 0x2e, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, - 0x0d, 0x2a, 0x82, 0x02, 0x0a, 0x13, 0x45, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, - 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, - 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, - 0x0d, 0x0a, 0x09, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x47, 0x6f, 0x6c, 0x64, 0x10, 0x02, 0x12, 0x12, - 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x6c, 0x6f, 0x74, - 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x42, 0x65, 0x6e, 0x63, 0x68, - 0x53, 0x70, 0x61, 0x63, 0x65, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, - 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x10, 0x06, 0x12, - 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x48, 0x61, 0x73, 0x42, - 0x69, 0x67, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, - 0x65, 0x4e, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, - 0x09, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, - 0x0a, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, - 0x42, 0x61, 0x63, 0x6b, 0x10, 0x0b, 0x2a, 0xc1, 0x02, 0x0a, 0x1c, 0x45, 0x44, 0x4f, 0x54, 0x41, - 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x44, 0x4f, - 0x54, 0x41, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, - 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x10, 0x00, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, - 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x49, 0x44, 0x10, 0x01, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x10, 0x06, 0x12, 0x36, 0x0a, 0x32, 0x6b, 0x5f, 0x45, + 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, + 0x07, 0x12, 0x36, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0x08, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, + 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x09, 0x12, 0x35, + 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x10, 0x0a, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x10, 0x0b, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x53, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x10, 0x0c, 0x12, 0x32, 0x0a, 0x2e, + 0x6b, 0x5f, 0x45, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x0d, + 0x2a, 0x82, 0x02, 0x0a, 0x13, 0x45, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0d, + 0x0a, 0x09, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x47, 0x6f, 0x6c, 0x64, 0x10, 0x02, 0x12, 0x12, 0x0a, + 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x10, + 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x42, 0x65, 0x6e, 0x63, 0x68, 0x53, + 0x70, 0x61, 0x63, 0x65, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x54, + 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x10, 0x06, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x48, 0x61, 0x73, 0x42, 0x69, + 0x67, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, + 0x4e, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x09, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x0a, + 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x42, + 0x61, 0x63, 0x6b, 0x10, 0x0b, 0x2a, 0xc1, 0x02, 0x0a, 0x1c, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, + 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, - 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x65, 0x64, 0x10, 0x02, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, - 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, - 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x12, 0x31, 0x0a, 0x2d, - 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, - 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, - 0x72, 0x69, 0x76, 0x69, 0x61, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x04, 0x12, - 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, - 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x47, 0x43, 0x44, 0x6f, 0x77, 0x6e, 0x10, 0x05, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, - 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, - 0x61, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x10, 0x00, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, 0x61, + 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x49, 0x44, 0x10, 0x01, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, + 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x41, + 0x6e, 0x73, 0x77, 0x65, 0x72, 0x65, 0x64, 0x10, 0x02, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, + 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, + 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x12, 0x31, 0x0a, 0x2d, 0x6b, + 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, + 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x54, 0x72, + 0x69, 0x76, 0x69, 0x61, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x04, 0x12, 0x29, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, + 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x5f, 0x47, 0x43, 0x44, 0x6f, 0x77, 0x6e, 0x10, 0x05, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, + 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -36544,8 +38341,8 @@ func file_dota_gcmessages_client_proto_rawDescGZIP() []byte { return file_dota_gcmessages_client_proto_rawDescData } -var file_dota_gcmessages_client_proto_enumTypes = make([]protoimpl.EnumInfo, 76) -var file_dota_gcmessages_client_proto_msgTypes = make([]protoimpl.MessageInfo, 440) +var file_dota_gcmessages_client_proto_enumTypes = make([]protoimpl.EnumInfo, 81) +var file_dota_gcmessages_client_proto_msgTypes = make([]protoimpl.MessageInfo, 460) var file_dota_gcmessages_client_proto_goTypes = []interface{}{ (CMsgDOTARequestMatches_SkillLevel)(0), // 0: dota.CMsgDOTARequestMatches_SkillLevel (DOTA_WatchReplayType)(0), // 1: dota.DOTA_WatchReplayType @@ -36559,833 +38356,871 @@ var file_dota_gcmessages_client_proto_goTypes = []interface{}{ (EDOTADraftTriviaAnswerResult)(0), // 9: dota.EDOTADraftTriviaAnswerResult (CMsgDOTAPopup_PopupID)(0), // 10: dota.CMsgDOTAPopup.PopupID (CMsgDOTASubmitPlayerReportResponse_EResult)(0), // 11: dota.CMsgDOTASubmitPlayerReportResponse.EResult - (CMsgDOTAClaimEventActionResponse_ResultCode)(0), // 12: dota.CMsgDOTAClaimEventActionResponse.ResultCode - (CMsgGCNotificationsUpdate_EResult)(0), // 13: dota.CMsgGCNotificationsUpdate.EResult - (CMsgGCPlayerInfoSubmitResponse_EResult)(0), // 14: dota.CMsgGCPlayerInfoSubmitResponse.EResult - (CMsgGCToClientRankResponse_EResultCode)(0), // 15: dota.CMsgGCToClientRankResponse.EResultCode - (CMsgPlayerConductScorecard_EBehaviorRating)(0), // 16: dota.CMsgPlayerConductScorecard.EBehaviorRating - (CMsgClientToGCVoteForArcanaResponse_Result)(0), // 17: dota.CMsgClientToGCVoteForArcanaResponse.Result - (CMsgDOTARedeemItemResponse_EResultCode)(0), // 18: dota.CMsgDOTARedeemItemResponse.EResultCode - (CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult)(0), // 19: dota.CMsgClientToGCSelectCompendiumInGamePredictionResponse.EResult - (CMsgClientToGCOpenPlayerCardPackResponse_Result)(0), // 20: dota.CMsgClientToGCOpenPlayerCardPackResponse.Result - (CMsgClientToGCRecyclePlayerCardResponse_Result)(0), // 21: dota.CMsgClientToGCRecyclePlayerCardResponse.Result - (CMsgClientToGCCreatePlayerCardPackResponse_Result)(0), // 22: dota.CMsgClientToGCCreatePlayerCardPackResponse.Result - (CMsgClientToGCCreateTeamPlayerCardPackResponse_Result)(0), // 23: dota.CMsgClientToGCCreateTeamPlayerCardPackResponse.Result - (CMsgDOTAAnchorPhoneNumberResponse_Result)(0), // 24: dota.CMsgDOTAAnchorPhoneNumberResponse.Result - (CMsgDOTAUnanchorPhoneNumberResponse_Result)(0), // 25: dota.CMsgDOTAUnanchorPhoneNumberResponse.Result - (CMsgDOTASelectionPriorityChoiceResponse_Result)(0), // 26: dota.CMsgDOTASelectionPriorityChoiceResponse.Result - (CMsgDOTAGameAutographRewardResponse_Result)(0), // 27: dota.CMsgDOTAGameAutographRewardResponse.Result - (CMsgDOTADestroyLobbyResponse_Result)(0), // 28: dota.CMsgDOTADestroyLobbyResponse.Result - (CMsgPurchaseItemWithEventPointsResponse_Result)(0), // 29: dota.CMsgPurchaseItemWithEventPointsResponse.Result - (CMsgProfileResponse_EResponse)(0), // 30: dota.CMsgProfileResponse.EResponse - (CMsgProfileUpdateResponse_Result)(0), // 31: dota.CMsgProfileUpdateResponse.Result - (CMsgActivatePlusFreeTrialResponse_Result)(0), // 32: dota.CMsgActivatePlusFreeTrialResponse.Result - (CMsgClientToGCCavernCrawlClaimRoomResponse_Result)(0), // 33: dota.CMsgClientToGCCavernCrawlClaimRoomResponse.Result - (CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result)(0), // 34: dota.CMsgClientToGCCavernCrawlUseItemOnRoomResponse.Result - (CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result)(0), // 35: dota.CMsgClientToGCCavernCrawlUseItemOnPathResponse.Result - (CMsgClientToGCCavernCrawlRequestMapStateResponse_Result)(0), // 36: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.Result - (CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result)(0), // 37: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.Result - (CMsgSocialFeedResponse_Result)(0), // 38: dota.CMsgSocialFeedResponse.Result - (CMsgSocialFeedCommentsResponse_Result)(0), // 39: dota.CMsgSocialFeedCommentsResponse.Result - (CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result)(0), // 40: dota.CMsgClientToGCPlayerCardSpecificPurchaseResponse.Result - (CMsgClientToGCRequestContestVotesResponse_EResponse)(0), // 41: dota.CMsgClientToGCRequestContestVotesResponse.EResponse - (CMsgGCToClientRecordContestVoteResponse_EResult)(0), // 42: dota.CMsgGCToClientRecordContestVoteResponse.EResult - (CMsgGCToClientGetFilteredPlayersResponse_Result)(0), // 43: dota.CMsgGCToClientGetFilteredPlayersResponse.Result - (CMsgGCToClientRemoveFilteredPlayerResponse_Result)(0), // 44: dota.CMsgGCToClientRemoveFilteredPlayerResponse.Result - (CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result)(0), // 45: dota.CMsgGCToClientPurchaseFilteredPlayerSlotResponse.Result - (CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result)(0), // 46: dota.CMsgGCToClientUpdateFilteredPlayerNoteResponse.Result - (CMsgClientToGCUpdatePartyBeacon_Action)(0), // 47: dota.CMsgClientToGCUpdatePartyBeacon.Action - (CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse)(0), // 48: dota.CMsgGCToClientRequestActiveBeaconPartiesResponse.EResponse - (CMsgGCToClientJoinPartyFromBeaconResponse_EResponse)(0), // 49: dota.CMsgGCToClientJoinPartyFromBeaconResponse.EResponse - (CMsgClientToGCManageFavorites_Action)(0), // 50: dota.CMsgClientToGCManageFavorites.Action - (CMsgGCToClientManageFavoritesResponse_EResponse)(0), // 51: dota.CMsgGCToClientManageFavoritesResponse.EResponse - (CMsgGCToClientGetFavoritePlayersResponse_EResponse)(0), // 52: dota.CMsgGCToClientGetFavoritePlayersResponse.EResponse - (CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse)(0), // 53: dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.EResponse - (CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse)(0), // 54: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.EResponse - (CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse)(0), // 55: dota.CMsgClientToGCSubmitPlayerMatchSurveyResponse.EResponse - (CMsgClientToGCRecalibrateMMRResponse_EResponse)(0), // 56: dota.CMsgClientToGCRecalibrateMMRResponse.EResponse - (CMsgClientToGCGetOWMatchDetailsResponse_EResponse)(0), // 57: dota.CMsgClientToGCGetOWMatchDetailsResponse.EResponse - (CMsgClientToGCSubmitOWConvictionResponse_EResponse)(0), // 58: dota.CMsgClientToGCSubmitOWConvictionResponse.EResponse - (CMsgClientToGCGetDPCFavoritesResponse_EResponse)(0), // 59: dota.CMsgClientToGCGetDPCFavoritesResponse.EResponse - (CMsgClientToGCSetDPCFavoriteStateResponse_EResponse)(0), // 60: dota.CMsgClientToGCSetDPCFavoriteStateResponse.EResponse - (CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse)(0), // 61: dota.CMsgClientToGCSetEventActiveSeasonIDResponse.EResponse - (CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse)(0), // 62: dota.CMsgClientToGCPurchaseLabyrinthBlessingsResponse.EResponse - (CMsgClientToGCGetStickerbookResponse_EResponse)(0), // 63: dota.CMsgClientToGCGetStickerbookResponse.EResponse - (CMsgClientToGCCreateStickerbookPageResponse_EResponse)(0), // 64: dota.CMsgClientToGCCreateStickerbookPageResponse.EResponse - (CMsgClientToGCDeleteStickerbookPageResponse_EResponse)(0), // 65: dota.CMsgClientToGCDeleteStickerbookPageResponse.EResponse - (CMsgClientToGCPlaceStickersResponse_EResponse)(0), // 66: dota.CMsgClientToGCPlaceStickersResponse.EResponse - (CMsgClientToGCPlaceCollectionStickersResponse_EResponse)(0), // 67: dota.CMsgClientToGCPlaceCollectionStickersResponse.EResponse - (CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse)(0), // 68: dota.CMsgClientToGCOrderStickerbookTeamPageResponse.EResponse - (CMsgClientToGCSetHeroStickerResponse_EResponse)(0), // 69: dota.CMsgClientToGCSetHeroStickerResponse.EResponse - (CMsgClientToGCGetHeroStickersResponse_EResponse)(0), // 70: dota.CMsgClientToGCGetHeroStickersResponse.EResponse - (CMsgClientToGCSetFavoritePageResponse_EResponse)(0), // 71: dota.CMsgClientToGCSetFavoritePageResponse.EResponse - (CMsgClientToGCClaimSwagResponse_EResponse)(0), // 72: dota.CMsgClientToGCClaimSwagResponse.EResponse - (CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType)(0), // 73: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote.EVoteType - (CMsgGCToClientUploadMatchClipResponse_EResponse)(0), // 74: dota.CMsgGCToClientUploadMatchClipResponse.EResponse - (CMsgGCToClientMapStatsResponse_EResponse)(0), // 75: dota.CMsgGCToClientMapStatsResponse.EResponse - (*CMsgClientSuspended)(nil), // 76: dota.CMsgClientSuspended - (*CMsgBalancedShuffleLobby)(nil), // 77: dota.CMsgBalancedShuffleLobby - (*CMsgInitialQuestionnaireResponse)(nil), // 78: dota.CMsgInitialQuestionnaireResponse - (*CMsgDOTARequestMatchesResponse)(nil), // 79: dota.CMsgDOTARequestMatchesResponse - (*CMsgDOTAPopup)(nil), // 80: dota.CMsgDOTAPopup - (*CMsgDOTAReportsRemainingRequest)(nil), // 81: dota.CMsgDOTAReportsRemainingRequest - (*CMsgDOTAReportsRemainingResponse)(nil), // 82: dota.CMsgDOTAReportsRemainingResponse - (*CMsgDOTASubmitPlayerReport)(nil), // 83: dota.CMsgDOTASubmitPlayerReport - (*CMsgDOTASubmitPlayerReportResponse)(nil), // 84: dota.CMsgDOTASubmitPlayerReportResponse - (*CMsgDOTASubmitPlayerAvoidRequest)(nil), // 85: dota.CMsgDOTASubmitPlayerAvoidRequest - (*CMsgDOTASubmitPlayerAvoidRequestResponse)(nil), // 86: dota.CMsgDOTASubmitPlayerAvoidRequestResponse - (*CMsgDOTASubmitLobbyMVPVote)(nil), // 87: dota.CMsgDOTASubmitLobbyMVPVote - (*CMsgDOTASubmitLobbyMVPVoteResponse)(nil), // 88: dota.CMsgDOTASubmitLobbyMVPVoteResponse - (*CMsgDOTALobbyMVPAwarded)(nil), // 89: dota.CMsgDOTALobbyMVPAwarded - (*CMsgDOTAKickedFromMatchmakingQueue)(nil), // 90: dota.CMsgDOTAKickedFromMatchmakingQueue - (*CMsgGCMatchDetailsRequest)(nil), // 91: dota.CMsgGCMatchDetailsRequest - (*CMsgGCMatchDetailsResponse)(nil), // 92: dota.CMsgGCMatchDetailsResponse - (*CMsgDOTAProfileTickets)(nil), // 93: dota.CMsgDOTAProfileTickets - (*CMsgClientToGCGetProfileTickets)(nil), // 94: dota.CMsgClientToGCGetProfileTickets - (*CMsgGCToClientPartySearchInvites)(nil), // 95: dota.CMsgGCToClientPartySearchInvites - (*CMsgDOTAWelcome)(nil), // 96: dota.CMsgDOTAWelcome - (*CSODOTAGameHeroFavorites)(nil), // 97: dota.CSODOTAGameHeroFavorites - (*CMsgDOTAMatchVotes)(nil), // 98: dota.CMsgDOTAMatchVotes - (*CMsgMatchmakingMatchGroupInfo)(nil), // 99: dota.CMsgMatchmakingMatchGroupInfo - (*CMsgDOTAMatchmakingStatsRequest)(nil), // 100: dota.CMsgDOTAMatchmakingStatsRequest - (*CMsgDOTAMatchmakingStatsResponse)(nil), // 101: dota.CMsgDOTAMatchmakingStatsResponse - (*CMsgDOTAUpdateMatchmakingStats)(nil), // 102: dota.CMsgDOTAUpdateMatchmakingStats - (*CMsgDOTAUpdateMatchManagementStats)(nil), // 103: dota.CMsgDOTAUpdateMatchManagementStats - (*CMsgDOTASetMatchHistoryAccess)(nil), // 104: dota.CMsgDOTASetMatchHistoryAccess - (*CMsgDOTASetMatchHistoryAccessResponse)(nil), // 105: dota.CMsgDOTASetMatchHistoryAccessResponse - (*CMsgDOTANotifyAccountFlagsChange)(nil), // 106: dota.CMsgDOTANotifyAccountFlagsChange - (*CMsgDOTASetProfilePrivacy)(nil), // 107: dota.CMsgDOTASetProfilePrivacy - (*CMsgDOTASetProfilePrivacyResponse)(nil), // 108: dota.CMsgDOTASetProfilePrivacyResponse - (*CMsgUpgradeLeagueItem)(nil), // 109: dota.CMsgUpgradeLeagueItem - (*CMsgUpgradeLeagueItemResponse)(nil), // 110: dota.CMsgUpgradeLeagueItemResponse - (*CMsgGCWatchDownloadedReplay)(nil), // 111: dota.CMsgGCWatchDownloadedReplay - (*CMsgClientsRejoinChatChannels)(nil), // 112: dota.CMsgClientsRejoinChatChannels - (*CMsgGCGetHeroStandings)(nil), // 113: dota.CMsgGCGetHeroStandings - (*CMsgGCGetHeroStandingsResponse)(nil), // 114: dota.CMsgGCGetHeroStandingsResponse - (*CMatchPlayerTimedStatAverages)(nil), // 115: dota.CMatchPlayerTimedStatAverages - (*CMatchPlayerTimedStatStdDeviations)(nil), // 116: dota.CMatchPlayerTimedStatStdDeviations - (*CMsgGCGetHeroTimedStatsResponse)(nil), // 117: dota.CMsgGCGetHeroTimedStatsResponse - (*CMsgGCItemEditorReservationsRequest)(nil), // 118: dota.CMsgGCItemEditorReservationsRequest - (*CMsgGCItemEditorReservation)(nil), // 119: dota.CMsgGCItemEditorReservation - (*CMsgGCItemEditorReservationsResponse)(nil), // 120: dota.CMsgGCItemEditorReservationsResponse - (*CMsgGCItemEditorReserveItemDef)(nil), // 121: dota.CMsgGCItemEditorReserveItemDef - (*CMsgGCItemEditorReserveItemDefResponse)(nil), // 122: dota.CMsgGCItemEditorReserveItemDefResponse - (*CMsgGCItemEditorReleaseReservation)(nil), // 123: dota.CMsgGCItemEditorReleaseReservation - (*CMsgGCItemEditorReleaseReservationResponse)(nil), // 124: dota.CMsgGCItemEditorReleaseReservationResponse - (*CMsgDOTARewardTutorialPrizes)(nil), // 125: dota.CMsgDOTARewardTutorialPrizes - (*CMsgFlipLobbyTeams)(nil), // 126: dota.CMsgFlipLobbyTeams - (*CMsgGCLobbyUpdateBroadcastChannelInfo)(nil), // 127: dota.CMsgGCLobbyUpdateBroadcastChannelInfo - (*CMsgDOTAClaimEventActionData)(nil), // 128: dota.CMsgDOTAClaimEventActionData - (*CMsgDOTAClaimEventAction)(nil), // 129: dota.CMsgDOTAClaimEventAction - (*CMsgDOTAClaimEventActionResponse)(nil), // 130: dota.CMsgDOTAClaimEventActionResponse - (*CMsgClientToGCClaimEventActionUsingItem)(nil), // 131: dota.CMsgClientToGCClaimEventActionUsingItem - (*CMsgClientToGCClaimEventActionUsingItemResponse)(nil), // 132: dota.CMsgClientToGCClaimEventActionUsingItemResponse - (*CMsgGCToClientClaimEventActionUsingItemCompleted)(nil), // 133: dota.CMsgGCToClientClaimEventActionUsingItemCompleted - (*CMsgDOTAGetEventPoints)(nil), // 134: dota.CMsgDOTAGetEventPoints - (*CMsgDOTAGetEventPointsResponse)(nil), // 135: dota.CMsgDOTAGetEventPointsResponse - (*CMsgDOTAGetPeriodicResource)(nil), // 136: dota.CMsgDOTAGetPeriodicResource - (*CMsgDOTAGetPeriodicResourceResponse)(nil), // 137: dota.CMsgDOTAGetPeriodicResourceResponse - (*CMsgDOTAPeriodicResourceUpdated)(nil), // 138: dota.CMsgDOTAPeriodicResourceUpdated - (*CMsgDOTACompendiumSelection)(nil), // 139: dota.CMsgDOTACompendiumSelection - (*CMsgDOTACompendiumSelectionResponse)(nil), // 140: dota.CMsgDOTACompendiumSelectionResponse - (*CMsgDOTACompendiumData)(nil), // 141: dota.CMsgDOTACompendiumData - (*CMsgDOTACompendiumDataRequest)(nil), // 142: dota.CMsgDOTACompendiumDataRequest - (*CMsgDOTACompendiumDataResponse)(nil), // 143: dota.CMsgDOTACompendiumDataResponse - (*CMsgDOTAGetPlayerMatchHistory)(nil), // 144: dota.CMsgDOTAGetPlayerMatchHistory - (*CMsgDOTAGetPlayerMatchHistoryResponse)(nil), // 145: dota.CMsgDOTAGetPlayerMatchHistoryResponse - (*CMsgGCNotificationsRequest)(nil), // 146: dota.CMsgGCNotificationsRequest - (*CMsgGCNotifications_Notification)(nil), // 147: dota.CMsgGCNotifications_Notification - (*CMsgGCNotificationsUpdate)(nil), // 148: dota.CMsgGCNotificationsUpdate - (*CMsgGCNotificationsResponse)(nil), // 149: dota.CMsgGCNotificationsResponse - (*CMsgGCNotificationsMarkReadRequest)(nil), // 150: dota.CMsgGCNotificationsMarkReadRequest - (*CMsgGCPlayerInfoSubmit)(nil), // 151: dota.CMsgGCPlayerInfoSubmit - (*CMsgGCPlayerInfoSubmitResponse)(nil), // 152: dota.CMsgGCPlayerInfoSubmitResponse - (*CMsgDOTAEmoticonAccessSDO)(nil), // 153: dota.CMsgDOTAEmoticonAccessSDO - (*CMsgClientToGCEmoticonDataRequest)(nil), // 154: dota.CMsgClientToGCEmoticonDataRequest - (*CMsgGCToClientEmoticonData)(nil), // 155: dota.CMsgGCToClientEmoticonData - (*CMsgGCToClientTournamentItemDrop)(nil), // 156: dota.CMsgGCToClientTournamentItemDrop - (*CMsgClientToGCGetAllHeroOrder)(nil), // 157: dota.CMsgClientToGCGetAllHeroOrder - (*CMsgClientToGCGetAllHeroOrderResponse)(nil), // 158: dota.CMsgClientToGCGetAllHeroOrderResponse - (*CMsgClientToGCGetAllHeroProgress)(nil), // 159: dota.CMsgClientToGCGetAllHeroProgress - (*CMsgClientToGCGetAllHeroProgressResponse)(nil), // 160: dota.CMsgClientToGCGetAllHeroProgressResponse - (*CMsgClientToGCGetTrophyList)(nil), // 161: dota.CMsgClientToGCGetTrophyList - (*CMsgClientToGCGetTrophyListResponse)(nil), // 162: dota.CMsgClientToGCGetTrophyListResponse - (*CMsgGCToClientTrophyAwarded)(nil), // 163: dota.CMsgGCToClientTrophyAwarded - (*CMsgClientToGCRankRequest)(nil), // 164: dota.CMsgClientToGCRankRequest - (*CMsgGCToClientRankResponse)(nil), // 165: dota.CMsgGCToClientRankResponse - (*CMsgGCToClientRankUpdate)(nil), // 166: dota.CMsgGCToClientRankUpdate - (*CMsgClientToGCGetProfileCard)(nil), // 167: dota.CMsgClientToGCGetProfileCard - (*CMsgClientToGCSetProfileCardSlots)(nil), // 168: dota.CMsgClientToGCSetProfileCardSlots - (*CMsgClientToGCGetProfileCardStats)(nil), // 169: dota.CMsgClientToGCGetProfileCardStats - (*CMsgClientToGCCreateHeroStatue)(nil), // 170: dota.CMsgClientToGCCreateHeroStatue - (*CMsgGCToClientHeroStatueCreateResult)(nil), // 171: dota.CMsgGCToClientHeroStatueCreateResult - (*CMsgClientToGCPlayerStatsRequest)(nil), // 172: dota.CMsgClientToGCPlayerStatsRequest - (*CMsgGCToClientPlayerStatsResponse)(nil), // 173: dota.CMsgGCToClientPlayerStatsResponse - (*CMsgClientToGCCustomGamesFriendsPlayedRequest)(nil), // 174: dota.CMsgClientToGCCustomGamesFriendsPlayedRequest - (*CMsgGCToClientCustomGamesFriendsPlayedResponse)(nil), // 175: dota.CMsgGCToClientCustomGamesFriendsPlayedResponse - (*CMsgClientToGCSocialFeedPostCommentRequest)(nil), // 176: dota.CMsgClientToGCSocialFeedPostCommentRequest - (*CMsgGCToClientSocialFeedPostCommentResponse)(nil), // 177: dota.CMsgGCToClientSocialFeedPostCommentResponse - (*CMsgClientToGCSocialFeedPostMessageRequest)(nil), // 178: dota.CMsgClientToGCSocialFeedPostMessageRequest - (*CMsgGCToClientSocialFeedPostMessageResponse)(nil), // 179: dota.CMsgGCToClientSocialFeedPostMessageResponse - (*CMsgClientToGCFriendsPlayedCustomGameRequest)(nil), // 180: dota.CMsgClientToGCFriendsPlayedCustomGameRequest - (*CMsgGCToClientFriendsPlayedCustomGameResponse)(nil), // 181: dota.CMsgGCToClientFriendsPlayedCustomGameResponse - (*CMsgDOTAPartyRichPresence)(nil), // 182: dota.CMsgDOTAPartyRichPresence - (*CMsgDOTALobbyRichPresence)(nil), // 183: dota.CMsgDOTALobbyRichPresence - (*CMsgDOTACustomGameListenServerStartedLoading)(nil), // 184: dota.CMsgDOTACustomGameListenServerStartedLoading - (*CMsgDOTACustomGameClientFinishedLoading)(nil), // 185: dota.CMsgDOTACustomGameClientFinishedLoading - (*CMsgClientToGCApplyGemCombiner)(nil), // 186: dota.CMsgClientToGCApplyGemCombiner - (*CMsgClientToGCH264Unsupported)(nil), // 187: dota.CMsgClientToGCH264Unsupported - (*CMsgClientToGCGetQuestProgress)(nil), // 188: dota.CMsgClientToGCGetQuestProgress - (*CMsgClientToGCGetQuestProgressResponse)(nil), // 189: dota.CMsgClientToGCGetQuestProgressResponse - (*CMsgGCToClientMatchSignedOut)(nil), // 190: dota.CMsgGCToClientMatchSignedOut - (*CMsgGCGetHeroStatsHistory)(nil), // 191: dota.CMsgGCGetHeroStatsHistory - (*CMsgGCGetHeroStatsHistoryResponse)(nil), // 192: dota.CMsgGCGetHeroStatsHistoryResponse - (*CMsgPlayerConductScorecardRequest)(nil), // 193: dota.CMsgPlayerConductScorecardRequest - (*CMsgPlayerConductScorecard)(nil), // 194: dota.CMsgPlayerConductScorecard - (*CMsgClientToGCWageringRequest)(nil), // 195: dota.CMsgClientToGCWageringRequest - (*CMsgGCToClientWageringResponse)(nil), // 196: dota.CMsgGCToClientWageringResponse - (*CMsgGCToClientWageringUpdate)(nil), // 197: dota.CMsgGCToClientWageringUpdate - (*CMsgGCToClientArcanaVotesUpdate)(nil), // 198: dota.CMsgGCToClientArcanaVotesUpdate - (*CMsgClientToGCGetEventGoals)(nil), // 199: dota.CMsgClientToGCGetEventGoals - (*CMsgEventGoals)(nil), // 200: dota.CMsgEventGoals - (*CMsgGCToGCLeaguePredictions)(nil), // 201: dota.CMsgGCToGCLeaguePredictions - (*CMsgPredictionRankings)(nil), // 202: dota.CMsgPredictionRankings - (*CMsgPredictionResults)(nil), // 203: dota.CMsgPredictionResults - (*CMsgClientToGCHasPlayerVotedForMVP)(nil), // 204: dota.CMsgClientToGCHasPlayerVotedForMVP - (*CMsgClientToGCHasPlayerVotedForMVPResponse)(nil), // 205: dota.CMsgClientToGCHasPlayerVotedForMVPResponse - (*CMsgClientToGCVoteForMVP)(nil), // 206: dota.CMsgClientToGCVoteForMVP - (*CMsgClientToGCVoteForMVPResponse)(nil), // 207: dota.CMsgClientToGCVoteForMVPResponse - (*CMsgClientToGCMVPVoteTimeout)(nil), // 208: dota.CMsgClientToGCMVPVoteTimeout - (*CMsgClientToGCMVPVoteTimeoutResponse)(nil), // 209: dota.CMsgClientToGCMVPVoteTimeoutResponse - (*CMsgClientToGCTeammateStatsRequest)(nil), // 210: dota.CMsgClientToGCTeammateStatsRequest - (*CMsgClientToGCTeammateStatsResponse)(nil), // 211: dota.CMsgClientToGCTeammateStatsResponse - (*CMsgClientToGCVoteForArcana)(nil), // 212: dota.CMsgClientToGCVoteForArcana - (*CMsgClientToGCVoteForArcanaResponse)(nil), // 213: dota.CMsgClientToGCVoteForArcanaResponse - (*CMsgClientToGCRequestArcanaVotesRemaining)(nil), // 214: dota.CMsgClientToGCRequestArcanaVotesRemaining - (*CMsgClientToGCRequestArcanaVotesRemainingResponse)(nil), // 215: dota.CMsgClientToGCRequestArcanaVotesRemainingResponse - (*CMsgClientToGCRequestEventPointLogV2)(nil), // 216: dota.CMsgClientToGCRequestEventPointLogV2 - (*CMsgClientToGCRequestEventPointLogResponseV2)(nil), // 217: dota.CMsgClientToGCRequestEventPointLogResponseV2 - (*CMsgClientToGCPublishUserStat)(nil), // 218: dota.CMsgClientToGCPublishUserStat - (*CMsgClientToGCRequestSlarkGameResult)(nil), // 219: dota.CMsgClientToGCRequestSlarkGameResult - (*CMsgClientToGCRequestSlarkGameResultResponse)(nil), // 220: dota.CMsgClientToGCRequestSlarkGameResultResponse - (*CMsgGCToClientQuestProgressUpdated)(nil), // 221: dota.CMsgGCToClientQuestProgressUpdated - (*CMsgDOTARedeemItem)(nil), // 222: dota.CMsgDOTARedeemItem - (*CMsgDOTARedeemItemResponse)(nil), // 223: dota.CMsgDOTARedeemItemResponse - (*CMsgClientToGCSelectCompendiumInGamePrediction)(nil), // 224: dota.CMsgClientToGCSelectCompendiumInGamePrediction - (*CMsgClientToGCSelectCompendiumInGamePredictionResponse)(nil), // 225: dota.CMsgClientToGCSelectCompendiumInGamePredictionResponse - (*CMsgClientToGCOpenPlayerCardPack)(nil), // 226: dota.CMsgClientToGCOpenPlayerCardPack - (*CMsgClientToGCOpenPlayerCardPackResponse)(nil), // 227: dota.CMsgClientToGCOpenPlayerCardPackResponse - (*CMsgClientToGCRecyclePlayerCard)(nil), // 228: dota.CMsgClientToGCRecyclePlayerCard - (*CMsgClientToGCRecyclePlayerCardResponse)(nil), // 229: dota.CMsgClientToGCRecyclePlayerCardResponse - (*CMsgClientToGCCreatePlayerCardPack)(nil), // 230: dota.CMsgClientToGCCreatePlayerCardPack - (*CMsgClientToGCCreatePlayerCardPackResponse)(nil), // 231: dota.CMsgClientToGCCreatePlayerCardPackResponse - (*CMsgClientToGCCreateTeamPlayerCardPack)(nil), // 232: dota.CMsgClientToGCCreateTeamPlayerCardPack - (*CMsgClientToGCCreateTeamPlayerCardPackResponse)(nil), // 233: dota.CMsgClientToGCCreateTeamPlayerCardPackResponse - (*CMsgGCToClientBattlePassRollup_International2016)(nil), // 234: dota.CMsgGCToClientBattlePassRollup_International2016 - (*CMsgGCToClientBattlePassRollup_Fall2016)(nil), // 235: dota.CMsgGCToClientBattlePassRollup_Fall2016 - (*CMsgGCToClientBattlePassRollup_Winter2017)(nil), // 236: dota.CMsgGCToClientBattlePassRollup_Winter2017 - (*CMsgGCToClientBattlePassRollup_TI7)(nil), // 237: dota.CMsgGCToClientBattlePassRollup_TI7 - (*CMsgGCToClientBattlePassRollup_TI8)(nil), // 238: dota.CMsgGCToClientBattlePassRollup_TI8 - (*CMsgGCToClientBattlePassRollup_TI9)(nil), // 239: dota.CMsgGCToClientBattlePassRollup_TI9 - (*CMsgGCToClientBattlePassRollup_TI10)(nil), // 240: dota.CMsgGCToClientBattlePassRollup_TI10 - (*CMsgGCToClientBattlePassRollupRequest)(nil), // 241: dota.CMsgGCToClientBattlePassRollupRequest - (*CMsgGCToClientBattlePassRollupResponse)(nil), // 242: dota.CMsgGCToClientBattlePassRollupResponse - (*CMsgGCToClientBattlePassRollupListRequest)(nil), // 243: dota.CMsgGCToClientBattlePassRollupListRequest - (*CMsgGCToClientBattlePassRollupListResponse)(nil), // 244: dota.CMsgGCToClientBattlePassRollupListResponse - (*CMsgClientToGCTransferSeasonalMMRRequest)(nil), // 245: dota.CMsgClientToGCTransferSeasonalMMRRequest - (*CMsgClientToGCTransferSeasonalMMRResponse)(nil), // 246: dota.CMsgClientToGCTransferSeasonalMMRResponse - (*CMsgGCToClientPlaytestStatus)(nil), // 247: dota.CMsgGCToClientPlaytestStatus - (*CMsgClientToGCJoinPlaytest)(nil), // 248: dota.CMsgClientToGCJoinPlaytest - (*CMsgClientToGCJoinPlaytestResponse)(nil), // 249: dota.CMsgClientToGCJoinPlaytestResponse - (*CMsgDOTASetFavoriteTeam)(nil), // 250: dota.CMsgDOTASetFavoriteTeam - (*CMsgDOTATriviaCurrentQuestions)(nil), // 251: dota.CMsgDOTATriviaCurrentQuestions - (*CMsgDOTASubmitTriviaQuestionAnswer)(nil), // 252: dota.CMsgDOTASubmitTriviaQuestionAnswer - (*CMsgDOTASubmitTriviaQuestionAnswerResponse)(nil), // 253: dota.CMsgDOTASubmitTriviaQuestionAnswerResponse - (*CMsgDOTAStartTriviaSession)(nil), // 254: dota.CMsgDOTAStartTriviaSession - (*CMsgDOTAStartTriviaSessionResponse)(nil), // 255: dota.CMsgDOTAStartTriviaSessionResponse - (*CMsgDOTAAnchorPhoneNumberRequest)(nil), // 256: dota.CMsgDOTAAnchorPhoneNumberRequest - (*CMsgDOTAAnchorPhoneNumberResponse)(nil), // 257: dota.CMsgDOTAAnchorPhoneNumberResponse - (*CMsgDOTAUnanchorPhoneNumberRequest)(nil), // 258: dota.CMsgDOTAUnanchorPhoneNumberRequest - (*CMsgDOTAUnanchorPhoneNumberResponse)(nil), // 259: dota.CMsgDOTAUnanchorPhoneNumberResponse - (*CMsgGCToClientCommendNotification)(nil), // 260: dota.CMsgGCToClientCommendNotification - (*CMsgDOTAClientToGCQuickStatsRequest)(nil), // 261: dota.CMsgDOTAClientToGCQuickStatsRequest - (*CMsgDOTAClientToGCQuickStatsResponse)(nil), // 262: dota.CMsgDOTAClientToGCQuickStatsResponse - (*CMsgDOTASelectionPriorityChoiceRequest)(nil), // 263: dota.CMsgDOTASelectionPriorityChoiceRequest - (*CMsgDOTASelectionPriorityChoiceResponse)(nil), // 264: dota.CMsgDOTASelectionPriorityChoiceResponse - (*CMsgDOTAGameAutographReward)(nil), // 265: dota.CMsgDOTAGameAutographReward - (*CMsgDOTAGameAutographRewardResponse)(nil), // 266: dota.CMsgDOTAGameAutographRewardResponse - (*CMsgDOTADestroyLobbyRequest)(nil), // 267: dota.CMsgDOTADestroyLobbyRequest - (*CMsgDOTADestroyLobbyResponse)(nil), // 268: dota.CMsgDOTADestroyLobbyResponse - (*CMsgDOTAGetRecentPlayTimeFriendsRequest)(nil), // 269: dota.CMsgDOTAGetRecentPlayTimeFriendsRequest - (*CMsgDOTAGetRecentPlayTimeFriendsResponse)(nil), // 270: dota.CMsgDOTAGetRecentPlayTimeFriendsResponse - (*CMsgPurchaseItemWithEventPoints)(nil), // 271: dota.CMsgPurchaseItemWithEventPoints - (*CMsgPurchaseItemWithEventPointsResponse)(nil), // 272: dota.CMsgPurchaseItemWithEventPointsResponse - (*CMsgPurchaseHeroRandomRelic)(nil), // 273: dota.CMsgPurchaseHeroRandomRelic - (*CMsgPurchaseHeroRandomRelicResponse)(nil), // 274: dota.CMsgPurchaseHeroRandomRelicResponse - (*CMsgClientToGCRequestPlusWeeklyChallengeResult)(nil), // 275: dota.CMsgClientToGCRequestPlusWeeklyChallengeResult - (*CMsgClientToGCRequestPlusWeeklyChallengeResultResponse)(nil), // 276: dota.CMsgClientToGCRequestPlusWeeklyChallengeResultResponse - (*CMsgProfileRequest)(nil), // 277: dota.CMsgProfileRequest - (*CMsgProfileResponse)(nil), // 278: dota.CMsgProfileResponse - (*CMsgProfileUpdate)(nil), // 279: dota.CMsgProfileUpdate - (*CMsgProfileUpdateResponse)(nil), // 280: dota.CMsgProfileUpdateResponse - (*CMsgTalentWinRates)(nil), // 281: dota.CMsgTalentWinRates - (*CMsgGlobalHeroAverages)(nil), // 282: dota.CMsgGlobalHeroAverages - (*CMsgHeroGlobalDataRequest)(nil), // 283: dota.CMsgHeroGlobalDataRequest - (*CMsgHeroGlobalDataResponse)(nil), // 284: dota.CMsgHeroGlobalDataResponse - (*CMsgHeroGlobalDataAllHeroes)(nil), // 285: dota.CMsgHeroGlobalDataAllHeroes - (*CMsgHeroGlobalDataHeroesAlliesAndEnemies)(nil), // 286: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies - (*CMsgPrivateMetadataKeyRequest)(nil), // 287: dota.CMsgPrivateMetadataKeyRequest - (*CMsgPrivateMetadataKeyResponse)(nil), // 288: dota.CMsgPrivateMetadataKeyResponse - (*CMsgActivatePlusFreeTrialResponse)(nil), // 289: dota.CMsgActivatePlusFreeTrialResponse - (*CMsgGCToClientCavernCrawlMapPathCompleted)(nil), // 290: dota.CMsgGCToClientCavernCrawlMapPathCompleted - (*CMsgGCToClientCavernCrawlMapUpdated)(nil), // 291: dota.CMsgGCToClientCavernCrawlMapUpdated - (*CMsgClientToGCCavernCrawlClaimRoom)(nil), // 292: dota.CMsgClientToGCCavernCrawlClaimRoom - (*CMsgClientToGCCavernCrawlClaimRoomResponse)(nil), // 293: dota.CMsgClientToGCCavernCrawlClaimRoomResponse - (*CMsgClientToGCCavernCrawlUseItemOnRoom)(nil), // 294: dota.CMsgClientToGCCavernCrawlUseItemOnRoom - (*CMsgClientToGCCavernCrawlUseItemOnRoomResponse)(nil), // 295: dota.CMsgClientToGCCavernCrawlUseItemOnRoomResponse - (*CMsgClientToGCCavernCrawlUseItemOnPath)(nil), // 296: dota.CMsgClientToGCCavernCrawlUseItemOnPath - (*CMsgClientToGCCavernCrawlUseItemOnPathResponse)(nil), // 297: dota.CMsgClientToGCCavernCrawlUseItemOnPathResponse - (*CMsgClientToGCCavernCrawlRequestMapState)(nil), // 298: dota.CMsgClientToGCCavernCrawlRequestMapState - (*CMsgClientToGCCavernCrawlRequestMapStateResponse)(nil), // 299: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse - (*CMsgClientToGCCavernCrawlGetClaimedRoomCount)(nil), // 300: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCount - (*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse)(nil), // 301: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse - (*CMsgDOTAMutationList)(nil), // 302: dota.CMsgDOTAMutationList - (*CMsgEventTipsSummaryRequest)(nil), // 303: dota.CMsgEventTipsSummaryRequest - (*CMsgEventTipsSummaryResponse)(nil), // 304: dota.CMsgEventTipsSummaryResponse - (*CMsgSocialFeedRequest)(nil), // 305: dota.CMsgSocialFeedRequest - (*CMsgSocialFeedResponse)(nil), // 306: dota.CMsgSocialFeedResponse - (*CMsgSocialFeedCommentsRequest)(nil), // 307: dota.CMsgSocialFeedCommentsRequest - (*CMsgSocialFeedCommentsResponse)(nil), // 308: dota.CMsgSocialFeedCommentsResponse - (*CMsgClientToGCPlayerCardSpecificPurchaseRequest)(nil), // 309: dota.CMsgClientToGCPlayerCardSpecificPurchaseRequest - (*CMsgClientToGCPlayerCardSpecificPurchaseResponse)(nil), // 310: dota.CMsgClientToGCPlayerCardSpecificPurchaseResponse - (*CMsgClientToGCRequestContestVotes)(nil), // 311: dota.CMsgClientToGCRequestContestVotes - (*CMsgClientToGCRequestContestVotesResponse)(nil), // 312: dota.CMsgClientToGCRequestContestVotesResponse - (*CMsgClientToGCRecordContestVote)(nil), // 313: dota.CMsgClientToGCRecordContestVote - (*CMsgGCToClientRecordContestVoteResponse)(nil), // 314: dota.CMsgGCToClientRecordContestVoteResponse - (*CMsgDevGrantEventPoints)(nil), // 315: dota.CMsgDevGrantEventPoints - (*CMsgDevGrantEventPointsResponse)(nil), // 316: dota.CMsgDevGrantEventPointsResponse - (*CMsgDevGrantEventAction)(nil), // 317: dota.CMsgDevGrantEventAction - (*CMsgDevGrantEventActionResponse)(nil), // 318: dota.CMsgDevGrantEventActionResponse - (*CMsgDevDeleteEventActions)(nil), // 319: dota.CMsgDevDeleteEventActions - (*CMsgDevDeleteEventActionsResponse)(nil), // 320: dota.CMsgDevDeleteEventActionsResponse - (*CMsgDevResetEventState)(nil), // 321: dota.CMsgDevResetEventState - (*CMsgDevResetEventStateResponse)(nil), // 322: dota.CMsgDevResetEventStateResponse - (*CMsgConsumeEventSupportGrantItem)(nil), // 323: dota.CMsgConsumeEventSupportGrantItem - (*CMsgConsumeEventSupportGrantItemResponse)(nil), // 324: dota.CMsgConsumeEventSupportGrantItemResponse - (*CMsgClientToGCGetFilteredPlayers)(nil), // 325: dota.CMsgClientToGCGetFilteredPlayers - (*CMsgGCToClientGetFilteredPlayersResponse)(nil), // 326: dota.CMsgGCToClientGetFilteredPlayersResponse - (*CMsgClientToGCRemoveFilteredPlayer)(nil), // 327: dota.CMsgClientToGCRemoveFilteredPlayer - (*CMsgGCToClientRemoveFilteredPlayerResponse)(nil), // 328: dota.CMsgGCToClientRemoveFilteredPlayerResponse - (*CMsgClientToGCPurchaseFilteredPlayerSlot)(nil), // 329: dota.CMsgClientToGCPurchaseFilteredPlayerSlot - (*CMsgGCToClientPurchaseFilteredPlayerSlotResponse)(nil), // 330: dota.CMsgGCToClientPurchaseFilteredPlayerSlotResponse - (*CMsgClientToGCUpdateFilteredPlayerNote)(nil), // 331: dota.CMsgClientToGCUpdateFilteredPlayerNote - (*CMsgGCToClientUpdateFilteredPlayerNoteResponse)(nil), // 332: dota.CMsgGCToClientUpdateFilteredPlayerNoteResponse - (*CMsgPartySearchPlayer)(nil), // 333: dota.CMsgPartySearchPlayer - (*CMsgGCToClientPlayerBeaconState)(nil), // 334: dota.CMsgGCToClientPlayerBeaconState - (*CMsgGCToClientPartyBeaconUpdate)(nil), // 335: dota.CMsgGCToClientPartyBeaconUpdate - (*CMsgClientToGCUpdatePartyBeacon)(nil), // 336: dota.CMsgClientToGCUpdatePartyBeacon - (*CMsgClientToGCRequestActiveBeaconParties)(nil), // 337: dota.CMsgClientToGCRequestActiveBeaconParties - (*CMsgGCToClientRequestActiveBeaconPartiesResponse)(nil), // 338: dota.CMsgGCToClientRequestActiveBeaconPartiesResponse - (*CMsgClientToGCJoinPartyFromBeacon)(nil), // 339: dota.CMsgClientToGCJoinPartyFromBeacon - (*CMsgGCToClientJoinPartyFromBeaconResponse)(nil), // 340: dota.CMsgGCToClientJoinPartyFromBeaconResponse - (*CMsgClientToGCManageFavorites)(nil), // 341: dota.CMsgClientToGCManageFavorites - (*CMsgGCToClientManageFavoritesResponse)(nil), // 342: dota.CMsgGCToClientManageFavoritesResponse - (*CMsgClientToGCGetFavoritePlayers)(nil), // 343: dota.CMsgClientToGCGetFavoritePlayers - (*CMsgGCToClientGetFavoritePlayersResponse)(nil), // 344: dota.CMsgGCToClientGetFavoritePlayersResponse - (*CMsgGCToClientPartySearchInvite)(nil), // 345: dota.CMsgGCToClientPartySearchInvite - (*CMsgClientToGCVerifyFavoritePlayers)(nil), // 346: dota.CMsgClientToGCVerifyFavoritePlayers - (*CMsgGCToClientVerifyFavoritePlayersResponse)(nil), // 347: dota.CMsgGCToClientVerifyFavoritePlayersResponse - (*CMsgClientToGCRequestPlayerRecentAccomplishments)(nil), // 348: dota.CMsgClientToGCRequestPlayerRecentAccomplishments - (*CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse)(nil), // 349: dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse - (*CMsgClientToGCRequestPlayerHeroRecentAccomplishments)(nil), // 350: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishments - (*CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse)(nil), // 351: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse - (*CMsgClientToGCSubmitPlayerMatchSurvey)(nil), // 352: dota.CMsgClientToGCSubmitPlayerMatchSurvey - (*CMsgClientToGCSubmitPlayerMatchSurveyResponse)(nil), // 353: dota.CMsgClientToGCSubmitPlayerMatchSurveyResponse - (*CMsgGCToClientVACReminder)(nil), // 354: dota.CMsgGCToClientVACReminder - (*CMsgClientToGCUnderDraftRequest)(nil), // 355: dota.CMsgClientToGCUnderDraftRequest - (*CMsgClientToGCUnderDraftResponse)(nil), // 356: dota.CMsgClientToGCUnderDraftResponse - (*CMsgClientToGCUnderDraftReroll)(nil), // 357: dota.CMsgClientToGCUnderDraftReroll - (*CMsgClientToGCUnderDraftRerollResponse)(nil), // 358: dota.CMsgClientToGCUnderDraftRerollResponse - (*CMsgClientToGCUnderDraftBuy)(nil), // 359: dota.CMsgClientToGCUnderDraftBuy - (*CMsgGCToClientGuildUnderDraftGoldUpdated)(nil), // 360: dota.CMsgGCToClientGuildUnderDraftGoldUpdated - (*CMsgClientToGCUnderDraftBuyResponse)(nil), // 361: dota.CMsgClientToGCUnderDraftBuyResponse - (*CMsgClientToGCUnderDraftRollBackBench)(nil), // 362: dota.CMsgClientToGCUnderDraftRollBackBench - (*CMsgClientToGCUnderDraftRollBackBenchResponse)(nil), // 363: dota.CMsgClientToGCUnderDraftRollBackBenchResponse - (*CMsgClientToGCUnderDraftSell)(nil), // 364: dota.CMsgClientToGCUnderDraftSell - (*CMsgClientToGCUnderDraftSellResponse)(nil), // 365: dota.CMsgClientToGCUnderDraftSellResponse - (*CMsgClientToGCUnderDraftRedeemReward)(nil), // 366: dota.CMsgClientToGCUnderDraftRedeemReward - (*CMsgClientToGCUnderDraftRedeemRewardResponse)(nil), // 367: dota.CMsgClientToGCUnderDraftRedeemRewardResponse - (*CMsgClientToGCSubmitDraftTriviaMatchAnswer)(nil), // 368: dota.CMsgClientToGCSubmitDraftTriviaMatchAnswer - (*CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse)(nil), // 369: dota.CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse - (*CMsgDraftTriviaVoteCount)(nil), // 370: dota.CMsgDraftTriviaVoteCount - (*CMsgClientToGCRecalibrateMMR)(nil), // 371: dota.CMsgClientToGCRecalibrateMMR - (*CMsgClientToGCRecalibrateMMRResponse)(nil), // 372: dota.CMsgClientToGCRecalibrateMMRResponse - (*CMsgDOTAPostGameItemAwardNotification)(nil), // 373: dota.CMsgDOTAPostGameItemAwardNotification - (*CMsgClientToGCGetOWMatchDetails)(nil), // 374: dota.CMsgClientToGCGetOWMatchDetails - (*CMsgClientToGCGetOWMatchDetailsResponse)(nil), // 375: dota.CMsgClientToGCGetOWMatchDetailsResponse - (*CMsgClientToGCSubmitOWConviction)(nil), // 376: dota.CMsgClientToGCSubmitOWConviction - (*CMsgClientToGCSubmitOWConvictionResponse)(nil), // 377: dota.CMsgClientToGCSubmitOWConvictionResponse - (*CMsgClientToGCChinaSSAURLRequest)(nil), // 378: dota.CMsgClientToGCChinaSSAURLRequest - (*CMsgClientToGCChinaSSAURLResponse)(nil), // 379: dota.CMsgClientToGCChinaSSAURLResponse - (*CMsgClientToGCChinaSSAAcceptedRequest)(nil), // 380: dota.CMsgClientToGCChinaSSAAcceptedRequest - (*CMsgClientToGCChinaSSAAcceptedResponse)(nil), // 381: dota.CMsgClientToGCChinaSSAAcceptedResponse - (*CMsgGCToClientOverwatchCasesAvailable)(nil), // 382: dota.CMsgGCToClientOverwatchCasesAvailable - (*CMsgClientToGCStartWatchingOverwatch)(nil), // 383: dota.CMsgClientToGCStartWatchingOverwatch - (*CMsgClientToGCStopWatchingOverwatch)(nil), // 384: dota.CMsgClientToGCStopWatchingOverwatch - (*CMsgClientToGCOverwatchReplayError)(nil), // 385: dota.CMsgClientToGCOverwatchReplayError - (*CMsgClientToGCGetDPCFavorites)(nil), // 386: dota.CMsgClientToGCGetDPCFavorites - (*CMsgClientToGCGetDPCFavoritesResponse)(nil), // 387: dota.CMsgClientToGCGetDPCFavoritesResponse - (*CMsgClientToGCSetDPCFavoriteState)(nil), // 388: dota.CMsgClientToGCSetDPCFavoriteState - (*CMsgClientToGCSetDPCFavoriteStateResponse)(nil), // 389: dota.CMsgClientToGCSetDPCFavoriteStateResponse - (*CMsgClientToGCSetEventActiveSeasonID)(nil), // 390: dota.CMsgClientToGCSetEventActiveSeasonID - (*CMsgClientToGCSetEventActiveSeasonIDResponse)(nil), // 391: dota.CMsgClientToGCSetEventActiveSeasonIDResponse - (*CMsgClientToGCPurchaseLabyrinthBlessings)(nil), // 392: dota.CMsgClientToGCPurchaseLabyrinthBlessings - (*CMsgClientToGCPurchaseLabyrinthBlessingsResponse)(nil), // 393: dota.CMsgClientToGCPurchaseLabyrinthBlessingsResponse - (*CMsgClientToGCGetStickerbookRequest)(nil), // 394: dota.CMsgClientToGCGetStickerbookRequest - (*CMsgClientToGCGetStickerbookResponse)(nil), // 395: dota.CMsgClientToGCGetStickerbookResponse - (*CMsgClientToGCCreateStickerbookPageRequest)(nil), // 396: dota.CMsgClientToGCCreateStickerbookPageRequest - (*CMsgClientToGCCreateStickerbookPageResponse)(nil), // 397: dota.CMsgClientToGCCreateStickerbookPageResponse - (*CMsgClientToGCDeleteStickerbookPageRequest)(nil), // 398: dota.CMsgClientToGCDeleteStickerbookPageRequest - (*CMsgClientToGCDeleteStickerbookPageResponse)(nil), // 399: dota.CMsgClientToGCDeleteStickerbookPageResponse - (*CMsgClientToGCPlaceStickersRequest)(nil), // 400: dota.CMsgClientToGCPlaceStickersRequest - (*CMsgClientToGCPlaceStickersResponse)(nil), // 401: dota.CMsgClientToGCPlaceStickersResponse - (*CMsgClientToGCPlaceCollectionStickersRequest)(nil), // 402: dota.CMsgClientToGCPlaceCollectionStickersRequest - (*CMsgClientToGCPlaceCollectionStickersResponse)(nil), // 403: dota.CMsgClientToGCPlaceCollectionStickersResponse - (*CMsgClientToGCOrderStickerbookTeamPageRequest)(nil), // 404: dota.CMsgClientToGCOrderStickerbookTeamPageRequest - (*CMsgClientToGCOrderStickerbookTeamPageResponse)(nil), // 405: dota.CMsgClientToGCOrderStickerbookTeamPageResponse - (*CMsgClientToGCSetHeroSticker)(nil), // 406: dota.CMsgClientToGCSetHeroSticker - (*CMsgClientToGCSetHeroStickerResponse)(nil), // 407: dota.CMsgClientToGCSetHeroStickerResponse - (*CMsgClientToGCGetHeroStickers)(nil), // 408: dota.CMsgClientToGCGetHeroStickers - (*CMsgClientToGCGetHeroStickersResponse)(nil), // 409: dota.CMsgClientToGCGetHeroStickersResponse - (*CMsgClientToGCSetFavoritePage)(nil), // 410: dota.CMsgClientToGCSetFavoritePage - (*CMsgClientToGCSetFavoritePageResponse)(nil), // 411: dota.CMsgClientToGCSetFavoritePageResponse - (*CMsgClientToGCClaimSwag)(nil), // 412: dota.CMsgClientToGCClaimSwag - (*CMsgClientToGCClaimSwagResponse)(nil), // 413: dota.CMsgClientToGCClaimSwagResponse - (*CMsgClientToGCCollectorsCacheAvailableDataRequest)(nil), // 414: dota.CMsgClientToGCCollectorsCacheAvailableDataRequest - (*CMsgGCToClientCollectorsCacheAvailableDataResponse)(nil), // 415: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse - (*CMsgClientToGCUploadMatchClip)(nil), // 416: dota.CMsgClientToGCUploadMatchClip - (*CMsgGCToClientUploadMatchClipResponse)(nil), // 417: dota.CMsgGCToClientUploadMatchClipResponse - (*CMsgClientToGCMapStatsRequest)(nil), // 418: dota.CMsgClientToGCMapStatsRequest - (*CMsgGCToClientMapStatsResponse)(nil), // 419: dota.CMsgGCToClientMapStatsResponse - (*CMsgDOTARequestMatchesResponse_Series)(nil), // 420: dota.CMsgDOTARequestMatchesResponse.Series - (*CMsgDOTAProfileTickets_LeaguePass)(nil), // 421: dota.CMsgDOTAProfileTickets.LeaguePass - (*CMsgDOTAWelcome_CExtraMsg)(nil), // 422: dota.CMsgDOTAWelcome.CExtraMsg - (*CMsgDOTAMatchVotes_PlayerVote)(nil), // 423: dota.CMsgDOTAMatchVotes.PlayerVote - (*CMsgGCGetHeroStandingsResponse_Hero)(nil), // 424: dota.CMsgGCGetHeroStandingsResponse.Hero - (*CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer)(nil), // 425: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer - (*CMsgGCGetHeroTimedStatsResponse_RankChunkedStats)(nil), // 426: dota.CMsgGCGetHeroTimedStatsResponse.RankChunkedStats - (*CMsgDOTAClaimEventActionData_GrantItemGiftData)(nil), // 427: dota.CMsgDOTAClaimEventActionData.GrantItemGiftData - (*CMsgDOTAClaimEventActionResponse_MysteryItemRewardData)(nil), // 428: dota.CMsgDOTAClaimEventActionResponse.MysteryItemRewardData - (*CMsgDOTAClaimEventActionResponse_LootListRewardData)(nil), // 429: dota.CMsgDOTAClaimEventActionResponse.LootListRewardData - (*CMsgDOTAClaimEventActionResponse_ActionListRewardData)(nil), // 430: dota.CMsgDOTAClaimEventActionResponse.ActionListRewardData - (*CMsgDOTAClaimEventActionResponse_GrantedRewardData)(nil), // 431: dota.CMsgDOTAClaimEventActionResponse.GrantedRewardData - (*CMsgDOTAGetEventPointsResponse_Action)(nil), // 432: dota.CMsgDOTAGetEventPointsResponse.Action - (*CMsgDOTAGetPlayerMatchHistoryResponse_Match)(nil), // 433: dota.CMsgDOTAGetPlayerMatchHistoryResponse.Match - (*CMsgClientToGCGetTrophyListResponse_Trophy)(nil), // 434: dota.CMsgClientToGCGetTrophyListResponse.Trophy - (*CMsgClientToGCSetProfileCardSlots_CardSlot)(nil), // 435: dota.CMsgClientToGCSetProfileCardSlots.CardSlot - (*CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame)(nil), // 436: dota.CMsgGCToClientCustomGamesFriendsPlayedResponse.CustomGame - (*CMsgDOTAPartyRichPresence_Member)(nil), // 437: dota.CMsgDOTAPartyRichPresence.Member - (*CMsgDOTAPartyRichPresence_WeekendTourney)(nil), // 438: dota.CMsgDOTAPartyRichPresence.WeekendTourney - (*CMsgClientToGCGetQuestProgressResponse_Challenge)(nil), // 439: dota.CMsgClientToGCGetQuestProgressResponse.Challenge - (*CMsgClientToGCGetQuestProgressResponse_Quest)(nil), // 440: dota.CMsgClientToGCGetQuestProgressResponse.Quest - (*CMsgEventGoals_EventGoal)(nil), // 441: dota.CMsgEventGoals.EventGoal - (*CMsgPredictionRankings_PredictionLine)(nil), // 442: dota.CMsgPredictionRankings.PredictionLine - (*CMsgPredictionRankings_Prediction)(nil), // 443: dota.CMsgPredictionRankings.Prediction - (*CMsgPredictionResults_ResultBreakdown)(nil), // 444: dota.CMsgPredictionResults.ResultBreakdown - (*CMsgPredictionResults_Result)(nil), // 445: dota.CMsgPredictionResults.Result - (*CMsgClientToGCTeammateStatsResponse_TeammateStat)(nil), // 446: dota.CMsgClientToGCTeammateStatsResponse.TeammateStat - (*CMsgClientToGCRequestEventPointLogResponseV2_LogEntry)(nil), // 447: dota.CMsgClientToGCRequestEventPointLogResponseV2.LogEntry - (*CMsgGCToClientQuestProgressUpdated_Challenge)(nil), // 448: dota.CMsgGCToClientQuestProgressUpdated.Challenge - (*CMsgClientToGCSelectCompendiumInGamePrediction_Prediction)(nil), // 449: dota.CMsgClientToGCSelectCompendiumInGamePrediction.Prediction - (*CMsgGCToClientBattlePassRollup_International2016_Questlines)(nil), // 450: dota.CMsgGCToClientBattlePassRollup_International2016.Questlines - (*CMsgGCToClientBattlePassRollup_International2016_Wagering)(nil), // 451: dota.CMsgGCToClientBattlePassRollup_International2016.Wagering - (*CMsgGCToClientBattlePassRollup_International2016_Achievements)(nil), // 452: dota.CMsgGCToClientBattlePassRollup_International2016.Achievements - (*CMsgGCToClientBattlePassRollup_International2016_BattleCup)(nil), // 453: dota.CMsgGCToClientBattlePassRollup_International2016.BattleCup - (*CMsgGCToClientBattlePassRollup_International2016_Predictions)(nil), // 454: dota.CMsgGCToClientBattlePassRollup_International2016.Predictions - (*CMsgGCToClientBattlePassRollup_International2016_Bracket)(nil), // 455: dota.CMsgGCToClientBattlePassRollup_International2016.Bracket - (*CMsgGCToClientBattlePassRollup_International2016_PlayerCard)(nil), // 456: dota.CMsgGCToClientBattlePassRollup_International2016.PlayerCard - (*CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge)(nil), // 457: dota.CMsgGCToClientBattlePassRollup_International2016.FantasyChallenge - (*CMsgGCToClientBattlePassRollup_Fall2016_Questlines)(nil), // 458: dota.CMsgGCToClientBattlePassRollup_Fall2016.Questlines - (*CMsgGCToClientBattlePassRollup_Fall2016_Wagering)(nil), // 459: dota.CMsgGCToClientBattlePassRollup_Fall2016.Wagering - (*CMsgGCToClientBattlePassRollup_Fall2016_Achievements)(nil), // 460: dota.CMsgGCToClientBattlePassRollup_Fall2016.Achievements - (*CMsgGCToClientBattlePassRollup_Fall2016_BattleCup)(nil), // 461: dota.CMsgGCToClientBattlePassRollup_Fall2016.BattleCup - (*CMsgGCToClientBattlePassRollup_Fall2016_Predictions)(nil), // 462: dota.CMsgGCToClientBattlePassRollup_Fall2016.Predictions - (*CMsgGCToClientBattlePassRollup_Fall2016_Bracket)(nil), // 463: dota.CMsgGCToClientBattlePassRollup_Fall2016.Bracket - (*CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard)(nil), // 464: dota.CMsgGCToClientBattlePassRollup_Fall2016.PlayerCard - (*CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge)(nil), // 465: dota.CMsgGCToClientBattlePassRollup_Fall2016.FantasyChallenge - (*CMsgGCToClientBattlePassRollup_Winter2017_Questlines)(nil), // 466: dota.CMsgGCToClientBattlePassRollup_Winter2017.Questlines - (*CMsgGCToClientBattlePassRollup_Winter2017_Wagering)(nil), // 467: dota.CMsgGCToClientBattlePassRollup_Winter2017.Wagering - (*CMsgGCToClientBattlePassRollup_Winter2017_Achievements)(nil), // 468: dota.CMsgGCToClientBattlePassRollup_Winter2017.Achievements - (*CMsgGCToClientBattlePassRollup_Winter2017_BattleCup)(nil), // 469: dota.CMsgGCToClientBattlePassRollup_Winter2017.BattleCup - (*CMsgGCToClientBattlePassRollup_Winter2017_Predictions)(nil), // 470: dota.CMsgGCToClientBattlePassRollup_Winter2017.Predictions - (*CMsgGCToClientBattlePassRollup_Winter2017_Bracket)(nil), // 471: dota.CMsgGCToClientBattlePassRollup_Winter2017.Bracket - (*CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard)(nil), // 472: dota.CMsgGCToClientBattlePassRollup_Winter2017.PlayerCard - (*CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge)(nil), // 473: dota.CMsgGCToClientBattlePassRollup_Winter2017.FantasyChallenge - (*CMsgGCToClientBattlePassRollup_TI7_Questlines)(nil), // 474: dota.CMsgGCToClientBattlePassRollup_TI7.Questlines - (*CMsgGCToClientBattlePassRollup_TI7_Wagering)(nil), // 475: dota.CMsgGCToClientBattlePassRollup_TI7.Wagering - (*CMsgGCToClientBattlePassRollup_TI7_Achievements)(nil), // 476: dota.CMsgGCToClientBattlePassRollup_TI7.Achievements - (*CMsgGCToClientBattlePassRollup_TI7_BattleCup)(nil), // 477: dota.CMsgGCToClientBattlePassRollup_TI7.BattleCup - (*CMsgGCToClientBattlePassRollup_TI7_Predictions)(nil), // 478: dota.CMsgGCToClientBattlePassRollup_TI7.Predictions - (*CMsgGCToClientBattlePassRollup_TI7_Bracket)(nil), // 479: dota.CMsgGCToClientBattlePassRollup_TI7.Bracket - (*CMsgGCToClientBattlePassRollup_TI7_PlayerCard)(nil), // 480: dota.CMsgGCToClientBattlePassRollup_TI7.PlayerCard - (*CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge)(nil), // 481: dota.CMsgGCToClientBattlePassRollup_TI7.FantasyChallenge - (*CMsgGCToClientBattlePassRollup_TI8_CavernCrawl)(nil), // 482: dota.CMsgGCToClientBattlePassRollup_TI8.CavernCrawl - (*CMsgGCToClientBattlePassRollup_TI8_Wagering)(nil), // 483: dota.CMsgGCToClientBattlePassRollup_TI8.Wagering - (*CMsgGCToClientBattlePassRollup_TI8_Achievements)(nil), // 484: dota.CMsgGCToClientBattlePassRollup_TI8.Achievements - (*CMsgGCToClientBattlePassRollup_TI8_Predictions)(nil), // 485: dota.CMsgGCToClientBattlePassRollup_TI8.Predictions - (*CMsgGCToClientBattlePassRollup_TI8_Bracket)(nil), // 486: dota.CMsgGCToClientBattlePassRollup_TI8.Bracket - (*CMsgGCToClientBattlePassRollup_TI8_PlayerCard)(nil), // 487: dota.CMsgGCToClientBattlePassRollup_TI8.PlayerCard - (*CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge)(nil), // 488: dota.CMsgGCToClientBattlePassRollup_TI8.FantasyChallenge - (*CMsgGCToClientBattlePassRollupListResponse_EventInfo)(nil), // 489: dota.CMsgGCToClientBattlePassRollupListResponse.EventInfo - (*CMsgDOTAClientToGCQuickStatsResponse_SimpleStats)(nil), // 490: dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats - (*CMsgProfileResponse_FeaturedHero)(nil), // 491: dota.CMsgProfileResponse.FeaturedHero - (*CMsgProfileResponse_MatchInfo)(nil), // 492: dota.CMsgProfileResponse.MatchInfo - (*CMsgHeroGlobalDataResponse_GraphData)(nil), // 493: dota.CMsgHeroGlobalDataResponse.GraphData - (*CMsgHeroGlobalDataResponse_WeekData)(nil), // 494: dota.CMsgHeroGlobalDataResponse.WeekData - (*CMsgHeroGlobalDataResponse_HeroDataPerRankChunk)(nil), // 495: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk - (*CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData)(nil), // 496: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.HeroData - (*CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData)(nil), // 497: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.RankedHeroData - (*CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo)(nil), // 498: dota.CMsgGCToClientCavernCrawlMapPathCompleted.CompletedPathInfo - (*CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge)(nil), // 499: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.SwappedChallenge - (*CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem)(nil), // 500: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.InventoryItem - (*CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap)(nil), // 501: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.TreasureMap - (*CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant)(nil), // 502: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.MapVariant - (*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant)(nil), // 503: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.MapVariant - (*CMsgDOTAMutationList_Mutation)(nil), // 504: dota.CMsgDOTAMutationList.Mutation - (*CMsgEventTipsSummaryResponse_Tipper)(nil), // 505: dota.CMsgEventTipsSummaryResponse.Tipper - (*CMsgSocialFeedResponse_FeedEvent)(nil), // 506: dota.CMsgSocialFeedResponse.FeedEvent - (*CMsgSocialFeedCommentsResponse_FeedComment)(nil), // 507: dota.CMsgSocialFeedCommentsResponse.FeedComment - (*CMsgClientToGCRequestContestVotesResponse_ItemVote)(nil), // 508: dota.CMsgClientToGCRequestContestVotesResponse.ItemVote - (*CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry)(nil), // 509: dota.CMsgGCToClientGetFilteredPlayersResponse.CFilterEntry - (*CMsgGCToClientVerifyFavoritePlayersResponse_Result)(nil), // 510: dota.CMsgGCToClientVerifyFavoritePlayersResponse.Result - (*CMsgClientToGCGetOWMatchDetailsResponse_Marker)(nil), // 511: dota.CMsgClientToGCGetOWMatchDetailsResponse.Marker - (*CMsgClientToGCGetDPCFavoritesResponse_Favorite)(nil), // 512: dota.CMsgClientToGCGetDPCFavoritesResponse.Favorite - (*CMsgClientToGCPlaceStickersRequest_StickerItem)(nil), // 513: dota.CMsgClientToGCPlaceStickersRequest.StickerItem - (*CMsgClientToGCPlaceCollectionStickersRequest_Slot)(nil), // 514: dota.CMsgClientToGCPlaceCollectionStickersRequest.Slot - (*CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote)(nil), // 515: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote - (*CMsgDOTAMatch)(nil), // 516: dota.CMsgDOTAMatch - (MatchType)(0), // 517: dota.MatchType - (DOTAMatchVote)(0), // 518: dota.DOTAMatchVote - (EEvent)(0), // 519: dota.EEvent - (*CExtraMsgBlock)(nil), // 520: dota.CExtraMsgBlock - (EMatchGroupServerStatus)(0), // 521: dota.EMatchGroupServerStatus - (ERankType)(0), // 522: dota.ERankType - (CSODOTAParty_State)(0), // 523: dota.CSODOTAParty.State - (CSODOTALobby_State)(0), // 524: dota.CSODOTALobby.State - (DOTA_GameMode)(0), // 525: dota.DOTA_GameMode - (*CMsgDOTASDOHeroStatsHistory)(nil), // 526: dota.CMsgDOTASDOHeroStatsHistory - (*CMsgArcanaVoteMatchVotes)(nil), // 527: dota.CMsgArcanaVoteMatchVotes - (ELeagueRegion)(0), // 528: dota.ELeagueRegion - (*CMsgDOTATriviaQuestion)(nil), // 529: dota.CMsgDOTATriviaQuestion - (DOTASelectionPriorityChoice)(0), // 530: dota.DOTASelectionPriorityChoice - (EHeroRelicRarity)(0), // 531: dota.EHeroRelicRarity - (*CSOEconItem)(nil), // 532: dota.CSOEconItem - (*CMsgSuccessfulHero)(nil), // 533: dota.CMsgSuccessfulHero - (*CMsgRecentMatchInfo)(nil), // 534: dota.CMsgRecentMatchInfo - (*CMsgStickerbookPage)(nil), // 535: dota.CMsgStickerbookPage - (*CPartySearchClientParty)(nil), // 536: dota.CPartySearchClientParty - (*CMsgPlayerRecentAccomplishments)(nil), // 537: dota.CMsgPlayerRecentAccomplishments - (*CMsgPlayerHeroRecentAccomplishments)(nil), // 538: dota.CMsgPlayerHeroRecentAccomplishments - (*CMsgUnderDraftData)(nil), // 539: dota.CMsgUnderDraftData - (EOverwatchReportReason)(0), // 540: dota.EOverwatchReportReason - (EOverwatchConviction)(0), // 541: dota.EOverwatchConviction - (EDPCFavoriteType)(0), // 542: dota.EDPCFavoriteType - (*CMsgStickerbook)(nil), // 543: dota.CMsgStickerbook - (EStickerbookPageType)(0), // 544: dota.EStickerbookPageType - (*CMsgStickerbookTeamPageOrderSequence)(nil), // 545: dota.CMsgStickerbookTeamPageOrderSequence - (*CMsgStickerHeroes)(nil), // 546: dota.CMsgStickerHeroes - (*CMatchClip)(nil), // 547: dota.CMatchClip - (*CMsgMapStatsSnapshot)(nil), // 548: dota.CMsgMapStatsSnapshot - (*CMsgGlobalMapStats)(nil), // 549: dota.CMsgGlobalMapStats - (EProfileCardSlotType)(0), // 550: dota.EProfileCardSlotType - (*CMsgStickerbookSticker)(nil), // 551: dota.CMsgStickerbookSticker + (CMsgDOTASubmitPlayerReportResponseV2_EResult)(0), // 12: dota.CMsgDOTASubmitPlayerReportResponseV2.EResult + (CMsgDOTAClaimEventActionResponse_ResultCode)(0), // 13: dota.CMsgDOTAClaimEventActionResponse.ResultCode + (CMsgGCNotificationsUpdate_EResult)(0), // 14: dota.CMsgGCNotificationsUpdate.EResult + (CMsgGCPlayerInfoSubmitResponse_EResult)(0), // 15: dota.CMsgGCPlayerInfoSubmitResponse.EResult + (CMsgGCToClientRankResponse_EResultCode)(0), // 16: dota.CMsgGCToClientRankResponse.EResultCode + (CMsgPlayerConductScorecard_EBehaviorRating)(0), // 17: dota.CMsgPlayerConductScorecard.EBehaviorRating + (CMsgClientToGCVoteForArcanaResponse_Result)(0), // 18: dota.CMsgClientToGCVoteForArcanaResponse.Result + (CMsgDOTARedeemItemResponse_EResultCode)(0), // 19: dota.CMsgDOTARedeemItemResponse.EResultCode + (CMsgClientToGCSelectCompendiumInGamePredictionResponse_EResult)(0), // 20: dota.CMsgClientToGCSelectCompendiumInGamePredictionResponse.EResult + (CMsgClientToGCOpenPlayerCardPackResponse_Result)(0), // 21: dota.CMsgClientToGCOpenPlayerCardPackResponse.Result + (CMsgClientToGCRecyclePlayerCardResponse_Result)(0), // 22: dota.CMsgClientToGCRecyclePlayerCardResponse.Result + (CMsgClientToGCCreatePlayerCardPackResponse_Result)(0), // 23: dota.CMsgClientToGCCreatePlayerCardPackResponse.Result + (CMsgClientToGCCreateTeamPlayerCardPackResponse_Result)(0), // 24: dota.CMsgClientToGCCreateTeamPlayerCardPackResponse.Result + (CMsgDOTAAnchorPhoneNumberResponse_Result)(0), // 25: dota.CMsgDOTAAnchorPhoneNumberResponse.Result + (CMsgDOTAUnanchorPhoneNumberResponse_Result)(0), // 26: dota.CMsgDOTAUnanchorPhoneNumberResponse.Result + (CMsgDOTASelectionPriorityChoiceResponse_Result)(0), // 27: dota.CMsgDOTASelectionPriorityChoiceResponse.Result + (CMsgDOTAGameAutographRewardResponse_Result)(0), // 28: dota.CMsgDOTAGameAutographRewardResponse.Result + (CMsgDOTADestroyLobbyResponse_Result)(0), // 29: dota.CMsgDOTADestroyLobbyResponse.Result + (CMsgPurchaseItemWithEventPointsResponse_Result)(0), // 30: dota.CMsgPurchaseItemWithEventPointsResponse.Result + (CMsgProfileResponse_EResponse)(0), // 31: dota.CMsgProfileResponse.EResponse + (CMsgProfileUpdateResponse_Result)(0), // 32: dota.CMsgProfileUpdateResponse.Result + (CMsgActivatePlusFreeTrialResponse_Result)(0), // 33: dota.CMsgActivatePlusFreeTrialResponse.Result + (CMsgClientToGCCavernCrawlClaimRoomResponse_Result)(0), // 34: dota.CMsgClientToGCCavernCrawlClaimRoomResponse.Result + (CMsgClientToGCCavernCrawlUseItemOnRoomResponse_Result)(0), // 35: dota.CMsgClientToGCCavernCrawlUseItemOnRoomResponse.Result + (CMsgClientToGCCavernCrawlUseItemOnPathResponse_Result)(0), // 36: dota.CMsgClientToGCCavernCrawlUseItemOnPathResponse.Result + (CMsgClientToGCCavernCrawlRequestMapStateResponse_Result)(0), // 37: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.Result + (CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_Result)(0), // 38: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.Result + (CMsgSocialFeedResponse_Result)(0), // 39: dota.CMsgSocialFeedResponse.Result + (CMsgSocialFeedCommentsResponse_Result)(0), // 40: dota.CMsgSocialFeedCommentsResponse.Result + (CMsgClientToGCPlayerCardSpecificPurchaseResponse_Result)(0), // 41: dota.CMsgClientToGCPlayerCardSpecificPurchaseResponse.Result + (CMsgClientToGCRequestContestVotesResponse_EResponse)(0), // 42: dota.CMsgClientToGCRequestContestVotesResponse.EResponse + (CMsgGCToClientRecordContestVoteResponse_EResult)(0), // 43: dota.CMsgGCToClientRecordContestVoteResponse.EResult + (CMsgGCToClientGetFilteredPlayersResponse_Result)(0), // 44: dota.CMsgGCToClientGetFilteredPlayersResponse.Result + (CMsgGCToClientRemoveFilteredPlayerResponse_Result)(0), // 45: dota.CMsgGCToClientRemoveFilteredPlayerResponse.Result + (CMsgGCToClientPurchaseFilteredPlayerSlotResponse_Result)(0), // 46: dota.CMsgGCToClientPurchaseFilteredPlayerSlotResponse.Result + (CMsgGCToClientUpdateFilteredPlayerNoteResponse_Result)(0), // 47: dota.CMsgGCToClientUpdateFilteredPlayerNoteResponse.Result + (CMsgClientToGCUpdatePartyBeacon_Action)(0), // 48: dota.CMsgClientToGCUpdatePartyBeacon.Action + (CMsgGCToClientRequestActiveBeaconPartiesResponse_EResponse)(0), // 49: dota.CMsgGCToClientRequestActiveBeaconPartiesResponse.EResponse + (CMsgGCToClientJoinPartyFromBeaconResponse_EResponse)(0), // 50: dota.CMsgGCToClientJoinPartyFromBeaconResponse.EResponse + (CMsgClientToGCManageFavorites_Action)(0), // 51: dota.CMsgClientToGCManageFavorites.Action + (CMsgGCToClientManageFavoritesResponse_EResponse)(0), // 52: dota.CMsgGCToClientManageFavoritesResponse.EResponse + (CMsgGCToClientGetFavoritePlayersResponse_EResponse)(0), // 53: dota.CMsgGCToClientGetFavoritePlayersResponse.EResponse + (CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse_EResponse)(0), // 54: dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.EResponse + (CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse_EResponse)(0), // 55: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.EResponse + (CMsgClientToGCSubmitPlayerMatchSurveyResponse_EResponse)(0), // 56: dota.CMsgClientToGCSubmitPlayerMatchSurveyResponse.EResponse + (CMsgClientToGCRequestReporterUpdatesResponse_EResponse)(0), // 57: dota.CMsgClientToGCRequestReporterUpdatesResponse.EResponse + (CMsgClientToGCRecalibrateMMRResponse_EResponse)(0), // 58: dota.CMsgClientToGCRecalibrateMMRResponse.EResponse + (CMsgClientToGCGetOWMatchDetailsResponse_EResponse)(0), // 59: dota.CMsgClientToGCGetOWMatchDetailsResponse.EResponse + (CMsgClientToGCSubmitOWConvictionResponse_EResponse)(0), // 60: dota.CMsgClientToGCSubmitOWConvictionResponse.EResponse + (CMsgClientToGCGetDPCFavoritesResponse_EResponse)(0), // 61: dota.CMsgClientToGCGetDPCFavoritesResponse.EResponse + (CMsgClientToGCSetDPCFavoriteStateResponse_EResponse)(0), // 62: dota.CMsgClientToGCSetDPCFavoriteStateResponse.EResponse + (CMsgClientToGCSetEventActiveSeasonIDResponse_EResponse)(0), // 63: dota.CMsgClientToGCSetEventActiveSeasonIDResponse.EResponse + (CMsgClientToGCPurchaseLabyrinthBlessingsResponse_EResponse)(0), // 64: dota.CMsgClientToGCPurchaseLabyrinthBlessingsResponse.EResponse + (CMsgClientToGCGetStickerbookResponse_EResponse)(0), // 65: dota.CMsgClientToGCGetStickerbookResponse.EResponse + (CMsgClientToGCCreateStickerbookPageResponse_EResponse)(0), // 66: dota.CMsgClientToGCCreateStickerbookPageResponse.EResponse + (CMsgClientToGCDeleteStickerbookPageResponse_EResponse)(0), // 67: dota.CMsgClientToGCDeleteStickerbookPageResponse.EResponse + (CMsgClientToGCPlaceStickersResponse_EResponse)(0), // 68: dota.CMsgClientToGCPlaceStickersResponse.EResponse + (CMsgClientToGCPlaceCollectionStickersResponse_EResponse)(0), // 69: dota.CMsgClientToGCPlaceCollectionStickersResponse.EResponse + (CMsgClientToGCOrderStickerbookTeamPageResponse_EResponse)(0), // 70: dota.CMsgClientToGCOrderStickerbookTeamPageResponse.EResponse + (CMsgClientToGCSetHeroStickerResponse_EResponse)(0), // 71: dota.CMsgClientToGCSetHeroStickerResponse.EResponse + (CMsgClientToGCGetHeroStickersResponse_EResponse)(0), // 72: dota.CMsgClientToGCGetHeroStickersResponse.EResponse + (CMsgClientToGCSetFavoritePageResponse_EResponse)(0), // 73: dota.CMsgClientToGCSetFavoritePageResponse.EResponse + (CMsgClientToGCClaimSwagResponse_EResponse)(0), // 74: dota.CMsgClientToGCClaimSwagResponse.EResponse + (CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote_EVoteType)(0), // 75: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote.EVoteType + (CMsgGCToClientUploadMatchClipResponse_EResponse)(0), // 76: dota.CMsgGCToClientUploadMatchClipResponse.EResponse + (CMsgGCToClientMapStatsResponse_EResponse)(0), // 77: dota.CMsgGCToClientMapStatsResponse.EResponse + (CMsgClientToGCRoadToTIGetQuestsResponse_EResponse)(0), // 78: dota.CMsgClientToGCRoadToTIGetQuestsResponse.EResponse + (CMsgClientToGCRoadToTIGetActiveQuestResponse_EResponse)(0), // 79: dota.CMsgClientToGCRoadToTIGetActiveQuestResponse.EResponse + (CMsgClientToGCRoadToTIUseItemResponse_EResponse)(0), // 80: dota.CMsgClientToGCRoadToTIUseItemResponse.EResponse + (*CMsgClientSuspended)(nil), // 81: dota.CMsgClientSuspended + (*CMsgBalancedShuffleLobby)(nil), // 82: dota.CMsgBalancedShuffleLobby + (*CMsgInitialQuestionnaireResponse)(nil), // 83: dota.CMsgInitialQuestionnaireResponse + (*CMsgDOTARequestMatchesResponse)(nil), // 84: dota.CMsgDOTARequestMatchesResponse + (*CMsgDOTAPopup)(nil), // 85: dota.CMsgDOTAPopup + (*CMsgDOTAReportsRemainingRequest)(nil), // 86: dota.CMsgDOTAReportsRemainingRequest + (*CMsgDOTAReportsRemainingResponse)(nil), // 87: dota.CMsgDOTAReportsRemainingResponse + (*CMsgDOTASubmitPlayerReport)(nil), // 88: dota.CMsgDOTASubmitPlayerReport + (*CMsgDOTASubmitPlayerReportResponse)(nil), // 89: dota.CMsgDOTASubmitPlayerReportResponse + (*CMsgDOTASubmitPlayerAvoidRequest)(nil), // 90: dota.CMsgDOTASubmitPlayerAvoidRequest + (*CMsgDOTASubmitPlayerAvoidRequestResponse)(nil), // 91: dota.CMsgDOTASubmitPlayerAvoidRequestResponse + (*CMsgDOTASubmitPlayerReportV2)(nil), // 92: dota.CMsgDOTASubmitPlayerReportV2 + (*CMsgDOTASubmitPlayerReportResponseV2)(nil), // 93: dota.CMsgDOTASubmitPlayerReportResponseV2 + (*CMsgDOTASubmitLobbyMVPVote)(nil), // 94: dota.CMsgDOTASubmitLobbyMVPVote + (*CMsgDOTASubmitLobbyMVPVoteResponse)(nil), // 95: dota.CMsgDOTASubmitLobbyMVPVoteResponse + (*CMsgDOTALobbyMVPAwarded)(nil), // 96: dota.CMsgDOTALobbyMVPAwarded + (*CMsgDOTAKickedFromMatchmakingQueue)(nil), // 97: dota.CMsgDOTAKickedFromMatchmakingQueue + (*CMsgGCMatchDetailsRequest)(nil), // 98: dota.CMsgGCMatchDetailsRequest + (*CMsgGCMatchDetailsResponse)(nil), // 99: dota.CMsgGCMatchDetailsResponse + (*CMsgDOTAProfileTickets)(nil), // 100: dota.CMsgDOTAProfileTickets + (*CMsgClientToGCGetProfileTickets)(nil), // 101: dota.CMsgClientToGCGetProfileTickets + (*CMsgGCToClientPartySearchInvites)(nil), // 102: dota.CMsgGCToClientPartySearchInvites + (*CMsgDOTAWelcome)(nil), // 103: dota.CMsgDOTAWelcome + (*CSODOTAGameHeroFavorites)(nil), // 104: dota.CSODOTAGameHeroFavorites + (*CMsgDOTAMatchVotes)(nil), // 105: dota.CMsgDOTAMatchVotes + (*CMsgMatchmakingMatchGroupInfo)(nil), // 106: dota.CMsgMatchmakingMatchGroupInfo + (*CMsgDOTAMatchmakingStatsRequest)(nil), // 107: dota.CMsgDOTAMatchmakingStatsRequest + (*CMsgDOTAMatchmakingStatsResponse)(nil), // 108: dota.CMsgDOTAMatchmakingStatsResponse + (*CMsgDOTAUpdateMatchmakingStats)(nil), // 109: dota.CMsgDOTAUpdateMatchmakingStats + (*CMsgDOTAUpdateMatchManagementStats)(nil), // 110: dota.CMsgDOTAUpdateMatchManagementStats + (*CMsgDOTASetMatchHistoryAccess)(nil), // 111: dota.CMsgDOTASetMatchHistoryAccess + (*CMsgDOTASetMatchHistoryAccessResponse)(nil), // 112: dota.CMsgDOTASetMatchHistoryAccessResponse + (*CMsgDOTANotifyAccountFlagsChange)(nil), // 113: dota.CMsgDOTANotifyAccountFlagsChange + (*CMsgDOTASetProfilePrivacy)(nil), // 114: dota.CMsgDOTASetProfilePrivacy + (*CMsgDOTASetProfilePrivacyResponse)(nil), // 115: dota.CMsgDOTASetProfilePrivacyResponse + (*CMsgUpgradeLeagueItem)(nil), // 116: dota.CMsgUpgradeLeagueItem + (*CMsgUpgradeLeagueItemResponse)(nil), // 117: dota.CMsgUpgradeLeagueItemResponse + (*CMsgGCWatchDownloadedReplay)(nil), // 118: dota.CMsgGCWatchDownloadedReplay + (*CMsgClientsRejoinChatChannels)(nil), // 119: dota.CMsgClientsRejoinChatChannels + (*CMsgGCGetHeroStandings)(nil), // 120: dota.CMsgGCGetHeroStandings + (*CMsgGCGetHeroStandingsResponse)(nil), // 121: dota.CMsgGCGetHeroStandingsResponse + (*CMatchPlayerTimedStatAverages)(nil), // 122: dota.CMatchPlayerTimedStatAverages + (*CMatchPlayerTimedStatStdDeviations)(nil), // 123: dota.CMatchPlayerTimedStatStdDeviations + (*CMsgGCGetHeroTimedStatsResponse)(nil), // 124: dota.CMsgGCGetHeroTimedStatsResponse + (*CMsgGCItemEditorReservationsRequest)(nil), // 125: dota.CMsgGCItemEditorReservationsRequest + (*CMsgGCItemEditorReservation)(nil), // 126: dota.CMsgGCItemEditorReservation + (*CMsgGCItemEditorReservationsResponse)(nil), // 127: dota.CMsgGCItemEditorReservationsResponse + (*CMsgGCItemEditorReserveItemDef)(nil), // 128: dota.CMsgGCItemEditorReserveItemDef + (*CMsgGCItemEditorReserveItemDefResponse)(nil), // 129: dota.CMsgGCItemEditorReserveItemDefResponse + (*CMsgGCItemEditorReleaseReservation)(nil), // 130: dota.CMsgGCItemEditorReleaseReservation + (*CMsgGCItemEditorReleaseReservationResponse)(nil), // 131: dota.CMsgGCItemEditorReleaseReservationResponse + (*CMsgDOTARewardTutorialPrizes)(nil), // 132: dota.CMsgDOTARewardTutorialPrizes + (*CMsgFlipLobbyTeams)(nil), // 133: dota.CMsgFlipLobbyTeams + (*CMsgGCLobbyUpdateBroadcastChannelInfo)(nil), // 134: dota.CMsgGCLobbyUpdateBroadcastChannelInfo + (*CMsgDOTAClaimEventActionData)(nil), // 135: dota.CMsgDOTAClaimEventActionData + (*CMsgDOTAClaimEventAction)(nil), // 136: dota.CMsgDOTAClaimEventAction + (*CMsgDOTAClaimEventActionResponse)(nil), // 137: dota.CMsgDOTAClaimEventActionResponse + (*CMsgClientToGCClaimEventActionUsingItem)(nil), // 138: dota.CMsgClientToGCClaimEventActionUsingItem + (*CMsgClientToGCClaimEventActionUsingItemResponse)(nil), // 139: dota.CMsgClientToGCClaimEventActionUsingItemResponse + (*CMsgGCToClientClaimEventActionUsingItemCompleted)(nil), // 140: dota.CMsgGCToClientClaimEventActionUsingItemCompleted + (*CMsgDOTAGetEventPoints)(nil), // 141: dota.CMsgDOTAGetEventPoints + (*CMsgDOTAGetEventPointsResponse)(nil), // 142: dota.CMsgDOTAGetEventPointsResponse + (*CMsgDOTAGetPeriodicResource)(nil), // 143: dota.CMsgDOTAGetPeriodicResource + (*CMsgDOTAGetPeriodicResourceResponse)(nil), // 144: dota.CMsgDOTAGetPeriodicResourceResponse + (*CMsgDOTAPeriodicResourceUpdated)(nil), // 145: dota.CMsgDOTAPeriodicResourceUpdated + (*CMsgDOTACompendiumSelection)(nil), // 146: dota.CMsgDOTACompendiumSelection + (*CMsgDOTACompendiumSelectionResponse)(nil), // 147: dota.CMsgDOTACompendiumSelectionResponse + (*CMsgDOTACompendiumData)(nil), // 148: dota.CMsgDOTACompendiumData + (*CMsgDOTACompendiumDataRequest)(nil), // 149: dota.CMsgDOTACompendiumDataRequest + (*CMsgDOTACompendiumDataResponse)(nil), // 150: dota.CMsgDOTACompendiumDataResponse + (*CMsgDOTAGetPlayerMatchHistory)(nil), // 151: dota.CMsgDOTAGetPlayerMatchHistory + (*CMsgDOTAGetPlayerMatchHistoryResponse)(nil), // 152: dota.CMsgDOTAGetPlayerMatchHistoryResponse + (*CMsgGCNotificationsRequest)(nil), // 153: dota.CMsgGCNotificationsRequest + (*CMsgGCNotifications_Notification)(nil), // 154: dota.CMsgGCNotifications_Notification + (*CMsgGCNotificationsUpdate)(nil), // 155: dota.CMsgGCNotificationsUpdate + (*CMsgGCNotificationsResponse)(nil), // 156: dota.CMsgGCNotificationsResponse + (*CMsgGCNotificationsMarkReadRequest)(nil), // 157: dota.CMsgGCNotificationsMarkReadRequest + (*CMsgGCPlayerInfoSubmit)(nil), // 158: dota.CMsgGCPlayerInfoSubmit + (*CMsgGCPlayerInfoSubmitResponse)(nil), // 159: dota.CMsgGCPlayerInfoSubmitResponse + (*CMsgDOTAEmoticonAccessSDO)(nil), // 160: dota.CMsgDOTAEmoticonAccessSDO + (*CMsgClientToGCEmoticonDataRequest)(nil), // 161: dota.CMsgClientToGCEmoticonDataRequest + (*CMsgGCToClientEmoticonData)(nil), // 162: dota.CMsgGCToClientEmoticonData + (*CMsgGCToClientTournamentItemDrop)(nil), // 163: dota.CMsgGCToClientTournamentItemDrop + (*CMsgClientToGCGetAllHeroOrder)(nil), // 164: dota.CMsgClientToGCGetAllHeroOrder + (*CMsgClientToGCGetAllHeroOrderResponse)(nil), // 165: dota.CMsgClientToGCGetAllHeroOrderResponse + (*CMsgClientToGCGetAllHeroProgress)(nil), // 166: dota.CMsgClientToGCGetAllHeroProgress + (*CMsgClientToGCGetAllHeroProgressResponse)(nil), // 167: dota.CMsgClientToGCGetAllHeroProgressResponse + (*CMsgClientToGCGetTrophyList)(nil), // 168: dota.CMsgClientToGCGetTrophyList + (*CMsgClientToGCGetTrophyListResponse)(nil), // 169: dota.CMsgClientToGCGetTrophyListResponse + (*CMsgGCToClientTrophyAwarded)(nil), // 170: dota.CMsgGCToClientTrophyAwarded + (*CMsgClientToGCRankRequest)(nil), // 171: dota.CMsgClientToGCRankRequest + (*CMsgGCToClientRankResponse)(nil), // 172: dota.CMsgGCToClientRankResponse + (*CMsgGCToClientRankUpdate)(nil), // 173: dota.CMsgGCToClientRankUpdate + (*CMsgClientToGCGetProfileCard)(nil), // 174: dota.CMsgClientToGCGetProfileCard + (*CMsgClientToGCSetProfileCardSlots)(nil), // 175: dota.CMsgClientToGCSetProfileCardSlots + (*CMsgClientToGCGetProfileCardStats)(nil), // 176: dota.CMsgClientToGCGetProfileCardStats + (*CMsgClientToGCCreateHeroStatue)(nil), // 177: dota.CMsgClientToGCCreateHeroStatue + (*CMsgGCToClientHeroStatueCreateResult)(nil), // 178: dota.CMsgGCToClientHeroStatueCreateResult + (*CMsgClientToGCPlayerStatsRequest)(nil), // 179: dota.CMsgClientToGCPlayerStatsRequest + (*CMsgGCToClientPlayerStatsResponse)(nil), // 180: dota.CMsgGCToClientPlayerStatsResponse + (*CMsgClientToGCCustomGamesFriendsPlayedRequest)(nil), // 181: dota.CMsgClientToGCCustomGamesFriendsPlayedRequest + (*CMsgGCToClientCustomGamesFriendsPlayedResponse)(nil), // 182: dota.CMsgGCToClientCustomGamesFriendsPlayedResponse + (*CMsgClientToGCSocialFeedPostCommentRequest)(nil), // 183: dota.CMsgClientToGCSocialFeedPostCommentRequest + (*CMsgGCToClientSocialFeedPostCommentResponse)(nil), // 184: dota.CMsgGCToClientSocialFeedPostCommentResponse + (*CMsgClientToGCSocialFeedPostMessageRequest)(nil), // 185: dota.CMsgClientToGCSocialFeedPostMessageRequest + (*CMsgGCToClientSocialFeedPostMessageResponse)(nil), // 186: dota.CMsgGCToClientSocialFeedPostMessageResponse + (*CMsgClientToGCFriendsPlayedCustomGameRequest)(nil), // 187: dota.CMsgClientToGCFriendsPlayedCustomGameRequest + (*CMsgGCToClientFriendsPlayedCustomGameResponse)(nil), // 188: dota.CMsgGCToClientFriendsPlayedCustomGameResponse + (*CMsgDOTAPartyRichPresence)(nil), // 189: dota.CMsgDOTAPartyRichPresence + (*CMsgDOTALobbyRichPresence)(nil), // 190: dota.CMsgDOTALobbyRichPresence + (*CMsgDOTACustomGameListenServerStartedLoading)(nil), // 191: dota.CMsgDOTACustomGameListenServerStartedLoading + (*CMsgDOTACustomGameClientFinishedLoading)(nil), // 192: dota.CMsgDOTACustomGameClientFinishedLoading + (*CMsgClientToGCApplyGemCombiner)(nil), // 193: dota.CMsgClientToGCApplyGemCombiner + (*CMsgClientToGCH264Unsupported)(nil), // 194: dota.CMsgClientToGCH264Unsupported + (*CMsgClientToGCGetQuestProgress)(nil), // 195: dota.CMsgClientToGCGetQuestProgress + (*CMsgClientToGCGetQuestProgressResponse)(nil), // 196: dota.CMsgClientToGCGetQuestProgressResponse + (*CMsgGCToClientMatchSignedOut)(nil), // 197: dota.CMsgGCToClientMatchSignedOut + (*CMsgGCGetHeroStatsHistory)(nil), // 198: dota.CMsgGCGetHeroStatsHistory + (*CMsgGCGetHeroStatsHistoryResponse)(nil), // 199: dota.CMsgGCGetHeroStatsHistoryResponse + (*CMsgPlayerConductScorecardRequest)(nil), // 200: dota.CMsgPlayerConductScorecardRequest + (*CMsgPlayerConductScorecard)(nil), // 201: dota.CMsgPlayerConductScorecard + (*CMsgClientToGCWageringRequest)(nil), // 202: dota.CMsgClientToGCWageringRequest + (*CMsgGCToClientWageringResponse)(nil), // 203: dota.CMsgGCToClientWageringResponse + (*CMsgGCToClientWageringUpdate)(nil), // 204: dota.CMsgGCToClientWageringUpdate + (*CMsgGCToClientArcanaVotesUpdate)(nil), // 205: dota.CMsgGCToClientArcanaVotesUpdate + (*CMsgClientToGCGetEventGoals)(nil), // 206: dota.CMsgClientToGCGetEventGoals + (*CMsgEventGoals)(nil), // 207: dota.CMsgEventGoals + (*CMsgGCToGCLeaguePredictions)(nil), // 208: dota.CMsgGCToGCLeaguePredictions + (*CMsgPredictionRankings)(nil), // 209: dota.CMsgPredictionRankings + (*CMsgPredictionResults)(nil), // 210: dota.CMsgPredictionResults + (*CMsgClientToGCHasPlayerVotedForMVP)(nil), // 211: dota.CMsgClientToGCHasPlayerVotedForMVP + (*CMsgClientToGCHasPlayerVotedForMVPResponse)(nil), // 212: dota.CMsgClientToGCHasPlayerVotedForMVPResponse + (*CMsgClientToGCVoteForMVP)(nil), // 213: dota.CMsgClientToGCVoteForMVP + (*CMsgClientToGCVoteForMVPResponse)(nil), // 214: dota.CMsgClientToGCVoteForMVPResponse + (*CMsgClientToGCMVPVoteTimeout)(nil), // 215: dota.CMsgClientToGCMVPVoteTimeout + (*CMsgClientToGCMVPVoteTimeoutResponse)(nil), // 216: dota.CMsgClientToGCMVPVoteTimeoutResponse + (*CMsgClientToGCTeammateStatsRequest)(nil), // 217: dota.CMsgClientToGCTeammateStatsRequest + (*CMsgClientToGCTeammateStatsResponse)(nil), // 218: dota.CMsgClientToGCTeammateStatsResponse + (*CMsgClientToGCVoteForArcana)(nil), // 219: dota.CMsgClientToGCVoteForArcana + (*CMsgClientToGCVoteForArcanaResponse)(nil), // 220: dota.CMsgClientToGCVoteForArcanaResponse + (*CMsgClientToGCRequestArcanaVotesRemaining)(nil), // 221: dota.CMsgClientToGCRequestArcanaVotesRemaining + (*CMsgClientToGCRequestArcanaVotesRemainingResponse)(nil), // 222: dota.CMsgClientToGCRequestArcanaVotesRemainingResponse + (*CMsgClientToGCRequestEventPointLogV2)(nil), // 223: dota.CMsgClientToGCRequestEventPointLogV2 + (*CMsgClientToGCRequestEventPointLogResponseV2)(nil), // 224: dota.CMsgClientToGCRequestEventPointLogResponseV2 + (*CMsgClientToGCPublishUserStat)(nil), // 225: dota.CMsgClientToGCPublishUserStat + (*CMsgClientToGCRequestSlarkGameResult)(nil), // 226: dota.CMsgClientToGCRequestSlarkGameResult + (*CMsgClientToGCRequestSlarkGameResultResponse)(nil), // 227: dota.CMsgClientToGCRequestSlarkGameResultResponse + (*CMsgGCToClientQuestProgressUpdated)(nil), // 228: dota.CMsgGCToClientQuestProgressUpdated + (*CMsgDOTARedeemItem)(nil), // 229: dota.CMsgDOTARedeemItem + (*CMsgDOTARedeemItemResponse)(nil), // 230: dota.CMsgDOTARedeemItemResponse + (*CMsgClientToGCSelectCompendiumInGamePrediction)(nil), // 231: dota.CMsgClientToGCSelectCompendiumInGamePrediction + (*CMsgClientToGCSelectCompendiumInGamePredictionResponse)(nil), // 232: dota.CMsgClientToGCSelectCompendiumInGamePredictionResponse + (*CMsgClientToGCOpenPlayerCardPack)(nil), // 233: dota.CMsgClientToGCOpenPlayerCardPack + (*CMsgClientToGCOpenPlayerCardPackResponse)(nil), // 234: dota.CMsgClientToGCOpenPlayerCardPackResponse + (*CMsgClientToGCRecyclePlayerCard)(nil), // 235: dota.CMsgClientToGCRecyclePlayerCard + (*CMsgClientToGCRecyclePlayerCardResponse)(nil), // 236: dota.CMsgClientToGCRecyclePlayerCardResponse + (*CMsgClientToGCCreatePlayerCardPack)(nil), // 237: dota.CMsgClientToGCCreatePlayerCardPack + (*CMsgClientToGCCreatePlayerCardPackResponse)(nil), // 238: dota.CMsgClientToGCCreatePlayerCardPackResponse + (*CMsgClientToGCCreateTeamPlayerCardPack)(nil), // 239: dota.CMsgClientToGCCreateTeamPlayerCardPack + (*CMsgClientToGCCreateTeamPlayerCardPackResponse)(nil), // 240: dota.CMsgClientToGCCreateTeamPlayerCardPackResponse + (*CMsgGCToClientBattlePassRollup_International2016)(nil), // 241: dota.CMsgGCToClientBattlePassRollup_International2016 + (*CMsgGCToClientBattlePassRollup_Fall2016)(nil), // 242: dota.CMsgGCToClientBattlePassRollup_Fall2016 + (*CMsgGCToClientBattlePassRollup_Winter2017)(nil), // 243: dota.CMsgGCToClientBattlePassRollup_Winter2017 + (*CMsgGCToClientBattlePassRollup_TI7)(nil), // 244: dota.CMsgGCToClientBattlePassRollup_TI7 + (*CMsgGCToClientBattlePassRollup_TI8)(nil), // 245: dota.CMsgGCToClientBattlePassRollup_TI8 + (*CMsgGCToClientBattlePassRollup_TI9)(nil), // 246: dota.CMsgGCToClientBattlePassRollup_TI9 + (*CMsgGCToClientBattlePassRollup_TI10)(nil), // 247: dota.CMsgGCToClientBattlePassRollup_TI10 + (*CMsgGCToClientBattlePassRollupRequest)(nil), // 248: dota.CMsgGCToClientBattlePassRollupRequest + (*CMsgGCToClientBattlePassRollupResponse)(nil), // 249: dota.CMsgGCToClientBattlePassRollupResponse + (*CMsgGCToClientBattlePassRollupListRequest)(nil), // 250: dota.CMsgGCToClientBattlePassRollupListRequest + (*CMsgGCToClientBattlePassRollupListResponse)(nil), // 251: dota.CMsgGCToClientBattlePassRollupListResponse + (*CMsgClientToGCTransferSeasonalMMRRequest)(nil), // 252: dota.CMsgClientToGCTransferSeasonalMMRRequest + (*CMsgClientToGCTransferSeasonalMMRResponse)(nil), // 253: dota.CMsgClientToGCTransferSeasonalMMRResponse + (*CMsgGCToClientPlaytestStatus)(nil), // 254: dota.CMsgGCToClientPlaytestStatus + (*CMsgClientToGCJoinPlaytest)(nil), // 255: dota.CMsgClientToGCJoinPlaytest + (*CMsgClientToGCJoinPlaytestResponse)(nil), // 256: dota.CMsgClientToGCJoinPlaytestResponse + (*CMsgDOTASetFavoriteTeam)(nil), // 257: dota.CMsgDOTASetFavoriteTeam + (*CMsgDOTATriviaCurrentQuestions)(nil), // 258: dota.CMsgDOTATriviaCurrentQuestions + (*CMsgDOTASubmitTriviaQuestionAnswer)(nil), // 259: dota.CMsgDOTASubmitTriviaQuestionAnswer + (*CMsgDOTASubmitTriviaQuestionAnswerResponse)(nil), // 260: dota.CMsgDOTASubmitTriviaQuestionAnswerResponse + (*CMsgDOTAStartTriviaSession)(nil), // 261: dota.CMsgDOTAStartTriviaSession + (*CMsgDOTAStartTriviaSessionResponse)(nil), // 262: dota.CMsgDOTAStartTriviaSessionResponse + (*CMsgDOTAAnchorPhoneNumberRequest)(nil), // 263: dota.CMsgDOTAAnchorPhoneNumberRequest + (*CMsgDOTAAnchorPhoneNumberResponse)(nil), // 264: dota.CMsgDOTAAnchorPhoneNumberResponse + (*CMsgDOTAUnanchorPhoneNumberRequest)(nil), // 265: dota.CMsgDOTAUnanchorPhoneNumberRequest + (*CMsgDOTAUnanchorPhoneNumberResponse)(nil), // 266: dota.CMsgDOTAUnanchorPhoneNumberResponse + (*CMsgGCToClientCommendNotification)(nil), // 267: dota.CMsgGCToClientCommendNotification + (*CMsgDOTAClientToGCQuickStatsRequest)(nil), // 268: dota.CMsgDOTAClientToGCQuickStatsRequest + (*CMsgDOTAClientToGCQuickStatsResponse)(nil), // 269: dota.CMsgDOTAClientToGCQuickStatsResponse + (*CMsgDOTASelectionPriorityChoiceRequest)(nil), // 270: dota.CMsgDOTASelectionPriorityChoiceRequest + (*CMsgDOTASelectionPriorityChoiceResponse)(nil), // 271: dota.CMsgDOTASelectionPriorityChoiceResponse + (*CMsgDOTAGameAutographReward)(nil), // 272: dota.CMsgDOTAGameAutographReward + (*CMsgDOTAGameAutographRewardResponse)(nil), // 273: dota.CMsgDOTAGameAutographRewardResponse + (*CMsgDOTADestroyLobbyRequest)(nil), // 274: dota.CMsgDOTADestroyLobbyRequest + (*CMsgDOTADestroyLobbyResponse)(nil), // 275: dota.CMsgDOTADestroyLobbyResponse + (*CMsgDOTAGetRecentPlayTimeFriendsRequest)(nil), // 276: dota.CMsgDOTAGetRecentPlayTimeFriendsRequest + (*CMsgDOTAGetRecentPlayTimeFriendsResponse)(nil), // 277: dota.CMsgDOTAGetRecentPlayTimeFriendsResponse + (*CMsgPurchaseItemWithEventPoints)(nil), // 278: dota.CMsgPurchaseItemWithEventPoints + (*CMsgPurchaseItemWithEventPointsResponse)(nil), // 279: dota.CMsgPurchaseItemWithEventPointsResponse + (*CMsgPurchaseHeroRandomRelic)(nil), // 280: dota.CMsgPurchaseHeroRandomRelic + (*CMsgPurchaseHeroRandomRelicResponse)(nil), // 281: dota.CMsgPurchaseHeroRandomRelicResponse + (*CMsgClientToGCRequestPlusWeeklyChallengeResult)(nil), // 282: dota.CMsgClientToGCRequestPlusWeeklyChallengeResult + (*CMsgClientToGCRequestPlusWeeklyChallengeResultResponse)(nil), // 283: dota.CMsgClientToGCRequestPlusWeeklyChallengeResultResponse + (*CMsgProfileRequest)(nil), // 284: dota.CMsgProfileRequest + (*CMsgProfileResponse)(nil), // 285: dota.CMsgProfileResponse + (*CMsgProfileUpdate)(nil), // 286: dota.CMsgProfileUpdate + (*CMsgProfileUpdateResponse)(nil), // 287: dota.CMsgProfileUpdateResponse + (*CMsgTalentWinRates)(nil), // 288: dota.CMsgTalentWinRates + (*CMsgGlobalHeroAverages)(nil), // 289: dota.CMsgGlobalHeroAverages + (*CMsgHeroGlobalDataRequest)(nil), // 290: dota.CMsgHeroGlobalDataRequest + (*CMsgHeroGlobalDataResponse)(nil), // 291: dota.CMsgHeroGlobalDataResponse + (*CMsgHeroGlobalDataAllHeroes)(nil), // 292: dota.CMsgHeroGlobalDataAllHeroes + (*CMsgHeroGlobalDataHeroesAlliesAndEnemies)(nil), // 293: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies + (*CMsgPrivateMetadataKeyRequest)(nil), // 294: dota.CMsgPrivateMetadataKeyRequest + (*CMsgPrivateMetadataKeyResponse)(nil), // 295: dota.CMsgPrivateMetadataKeyResponse + (*CMsgActivatePlusFreeTrialResponse)(nil), // 296: dota.CMsgActivatePlusFreeTrialResponse + (*CMsgGCToClientCavernCrawlMapPathCompleted)(nil), // 297: dota.CMsgGCToClientCavernCrawlMapPathCompleted + (*CMsgGCToClientCavernCrawlMapUpdated)(nil), // 298: dota.CMsgGCToClientCavernCrawlMapUpdated + (*CMsgClientToGCCavernCrawlClaimRoom)(nil), // 299: dota.CMsgClientToGCCavernCrawlClaimRoom + (*CMsgClientToGCCavernCrawlClaimRoomResponse)(nil), // 300: dota.CMsgClientToGCCavernCrawlClaimRoomResponse + (*CMsgClientToGCCavernCrawlUseItemOnRoom)(nil), // 301: dota.CMsgClientToGCCavernCrawlUseItemOnRoom + (*CMsgClientToGCCavernCrawlUseItemOnRoomResponse)(nil), // 302: dota.CMsgClientToGCCavernCrawlUseItemOnRoomResponse + (*CMsgClientToGCCavernCrawlUseItemOnPath)(nil), // 303: dota.CMsgClientToGCCavernCrawlUseItemOnPath + (*CMsgClientToGCCavernCrawlUseItemOnPathResponse)(nil), // 304: dota.CMsgClientToGCCavernCrawlUseItemOnPathResponse + (*CMsgClientToGCCavernCrawlRequestMapState)(nil), // 305: dota.CMsgClientToGCCavernCrawlRequestMapState + (*CMsgClientToGCCavernCrawlRequestMapStateResponse)(nil), // 306: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse + (*CMsgClientToGCCavernCrawlGetClaimedRoomCount)(nil), // 307: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCount + (*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse)(nil), // 308: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse + (*CMsgDOTAMutationList)(nil), // 309: dota.CMsgDOTAMutationList + (*CMsgEventTipsSummaryRequest)(nil), // 310: dota.CMsgEventTipsSummaryRequest + (*CMsgEventTipsSummaryResponse)(nil), // 311: dota.CMsgEventTipsSummaryResponse + (*CMsgSocialFeedRequest)(nil), // 312: dota.CMsgSocialFeedRequest + (*CMsgSocialFeedResponse)(nil), // 313: dota.CMsgSocialFeedResponse + (*CMsgSocialFeedCommentsRequest)(nil), // 314: dota.CMsgSocialFeedCommentsRequest + (*CMsgSocialFeedCommentsResponse)(nil), // 315: dota.CMsgSocialFeedCommentsResponse + (*CMsgClientToGCPlayerCardSpecificPurchaseRequest)(nil), // 316: dota.CMsgClientToGCPlayerCardSpecificPurchaseRequest + (*CMsgClientToGCPlayerCardSpecificPurchaseResponse)(nil), // 317: dota.CMsgClientToGCPlayerCardSpecificPurchaseResponse + (*CMsgClientToGCRequestContestVotes)(nil), // 318: dota.CMsgClientToGCRequestContestVotes + (*CMsgClientToGCRequestContestVotesResponse)(nil), // 319: dota.CMsgClientToGCRequestContestVotesResponse + (*CMsgClientToGCRecordContestVote)(nil), // 320: dota.CMsgClientToGCRecordContestVote + (*CMsgGCToClientRecordContestVoteResponse)(nil), // 321: dota.CMsgGCToClientRecordContestVoteResponse + (*CMsgDevGrantEventPoints)(nil), // 322: dota.CMsgDevGrantEventPoints + (*CMsgDevGrantEventPointsResponse)(nil), // 323: dota.CMsgDevGrantEventPointsResponse + (*CMsgDevGrantEventAction)(nil), // 324: dota.CMsgDevGrantEventAction + (*CMsgDevGrantEventActionResponse)(nil), // 325: dota.CMsgDevGrantEventActionResponse + (*CMsgDevDeleteEventActions)(nil), // 326: dota.CMsgDevDeleteEventActions + (*CMsgDevDeleteEventActionsResponse)(nil), // 327: dota.CMsgDevDeleteEventActionsResponse + (*CMsgDevResetEventState)(nil), // 328: dota.CMsgDevResetEventState + (*CMsgDevResetEventStateResponse)(nil), // 329: dota.CMsgDevResetEventStateResponse + (*CMsgConsumeEventSupportGrantItem)(nil), // 330: dota.CMsgConsumeEventSupportGrantItem + (*CMsgConsumeEventSupportGrantItemResponse)(nil), // 331: dota.CMsgConsumeEventSupportGrantItemResponse + (*CMsgClientToGCGetFilteredPlayers)(nil), // 332: dota.CMsgClientToGCGetFilteredPlayers + (*CMsgGCToClientGetFilteredPlayersResponse)(nil), // 333: dota.CMsgGCToClientGetFilteredPlayersResponse + (*CMsgClientToGCRemoveFilteredPlayer)(nil), // 334: dota.CMsgClientToGCRemoveFilteredPlayer + (*CMsgGCToClientRemoveFilteredPlayerResponse)(nil), // 335: dota.CMsgGCToClientRemoveFilteredPlayerResponse + (*CMsgClientToGCPurchaseFilteredPlayerSlot)(nil), // 336: dota.CMsgClientToGCPurchaseFilteredPlayerSlot + (*CMsgGCToClientPurchaseFilteredPlayerSlotResponse)(nil), // 337: dota.CMsgGCToClientPurchaseFilteredPlayerSlotResponse + (*CMsgClientToGCUpdateFilteredPlayerNote)(nil), // 338: dota.CMsgClientToGCUpdateFilteredPlayerNote + (*CMsgGCToClientUpdateFilteredPlayerNoteResponse)(nil), // 339: dota.CMsgGCToClientUpdateFilteredPlayerNoteResponse + (*CMsgPartySearchPlayer)(nil), // 340: dota.CMsgPartySearchPlayer + (*CMsgGCToClientPlayerBeaconState)(nil), // 341: dota.CMsgGCToClientPlayerBeaconState + (*CMsgGCToClientPartyBeaconUpdate)(nil), // 342: dota.CMsgGCToClientPartyBeaconUpdate + (*CMsgClientToGCUpdatePartyBeacon)(nil), // 343: dota.CMsgClientToGCUpdatePartyBeacon + (*CMsgClientToGCRequestActiveBeaconParties)(nil), // 344: dota.CMsgClientToGCRequestActiveBeaconParties + (*CMsgGCToClientRequestActiveBeaconPartiesResponse)(nil), // 345: dota.CMsgGCToClientRequestActiveBeaconPartiesResponse + (*CMsgClientToGCJoinPartyFromBeacon)(nil), // 346: dota.CMsgClientToGCJoinPartyFromBeacon + (*CMsgGCToClientJoinPartyFromBeaconResponse)(nil), // 347: dota.CMsgGCToClientJoinPartyFromBeaconResponse + (*CMsgClientToGCManageFavorites)(nil), // 348: dota.CMsgClientToGCManageFavorites + (*CMsgGCToClientManageFavoritesResponse)(nil), // 349: dota.CMsgGCToClientManageFavoritesResponse + (*CMsgClientToGCGetFavoritePlayers)(nil), // 350: dota.CMsgClientToGCGetFavoritePlayers + (*CMsgGCToClientGetFavoritePlayersResponse)(nil), // 351: dota.CMsgGCToClientGetFavoritePlayersResponse + (*CMsgGCToClientPartySearchInvite)(nil), // 352: dota.CMsgGCToClientPartySearchInvite + (*CMsgClientToGCVerifyFavoritePlayers)(nil), // 353: dota.CMsgClientToGCVerifyFavoritePlayers + (*CMsgGCToClientVerifyFavoritePlayersResponse)(nil), // 354: dota.CMsgGCToClientVerifyFavoritePlayersResponse + (*CMsgClientToGCRequestPlayerRecentAccomplishments)(nil), // 355: dota.CMsgClientToGCRequestPlayerRecentAccomplishments + (*CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse)(nil), // 356: dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse + (*CMsgClientToGCRequestPlayerHeroRecentAccomplishments)(nil), // 357: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishments + (*CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse)(nil), // 358: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse + (*CMsgClientToGCSubmitPlayerMatchSurvey)(nil), // 359: dota.CMsgClientToGCSubmitPlayerMatchSurvey + (*CMsgClientToGCSubmitPlayerMatchSurveyResponse)(nil), // 360: dota.CMsgClientToGCSubmitPlayerMatchSurveyResponse + (*CMsgGCToClientVACReminder)(nil), // 361: dota.CMsgGCToClientVACReminder + (*CMsgClientToGCUnderDraftRequest)(nil), // 362: dota.CMsgClientToGCUnderDraftRequest + (*CMsgClientToGCUnderDraftResponse)(nil), // 363: dota.CMsgClientToGCUnderDraftResponse + (*CMsgClientToGCUnderDraftReroll)(nil), // 364: dota.CMsgClientToGCUnderDraftReroll + (*CMsgClientToGCUnderDraftRerollResponse)(nil), // 365: dota.CMsgClientToGCUnderDraftRerollResponse + (*CMsgClientToGCUnderDraftBuy)(nil), // 366: dota.CMsgClientToGCUnderDraftBuy + (*CMsgGCToClientGuildUnderDraftGoldUpdated)(nil), // 367: dota.CMsgGCToClientGuildUnderDraftGoldUpdated + (*CMsgClientToGCUnderDraftBuyResponse)(nil), // 368: dota.CMsgClientToGCUnderDraftBuyResponse + (*CMsgClientToGCUnderDraftRollBackBench)(nil), // 369: dota.CMsgClientToGCUnderDraftRollBackBench + (*CMsgClientToGCUnderDraftRollBackBenchResponse)(nil), // 370: dota.CMsgClientToGCUnderDraftRollBackBenchResponse + (*CMsgClientToGCUnderDraftSell)(nil), // 371: dota.CMsgClientToGCUnderDraftSell + (*CMsgClientToGCUnderDraftSellResponse)(nil), // 372: dota.CMsgClientToGCUnderDraftSellResponse + (*CMsgClientToGCUnderDraftRedeemReward)(nil), // 373: dota.CMsgClientToGCUnderDraftRedeemReward + (*CMsgClientToGCUnderDraftRedeemRewardResponse)(nil), // 374: dota.CMsgClientToGCUnderDraftRedeemRewardResponse + (*CMsgClientToGCSubmitDraftTriviaMatchAnswer)(nil), // 375: dota.CMsgClientToGCSubmitDraftTriviaMatchAnswer + (*CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse)(nil), // 376: dota.CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse + (*CMsgDraftTriviaVoteCount)(nil), // 377: dota.CMsgDraftTriviaVoteCount + (*CMsgClientToGCRequestReporterUpdates)(nil), // 378: dota.CMsgClientToGCRequestReporterUpdates + (*CMsgClientToGCRequestReporterUpdatesResponse)(nil), // 379: dota.CMsgClientToGCRequestReporterUpdatesResponse + (*CMsgClientToGCAcknowledgeReporterUpdates)(nil), // 380: dota.CMsgClientToGCAcknowledgeReporterUpdates + (*CMsgClientToGCRecalibrateMMR)(nil), // 381: dota.CMsgClientToGCRecalibrateMMR + (*CMsgClientToGCRecalibrateMMRResponse)(nil), // 382: dota.CMsgClientToGCRecalibrateMMRResponse + (*CMsgDOTAPostGameItemAwardNotification)(nil), // 383: dota.CMsgDOTAPostGameItemAwardNotification + (*CMsgClientToGCGetOWMatchDetails)(nil), // 384: dota.CMsgClientToGCGetOWMatchDetails + (*CMsgClientToGCGetOWMatchDetailsResponse)(nil), // 385: dota.CMsgClientToGCGetOWMatchDetailsResponse + (*CMsgClientToGCSubmitOWConviction)(nil), // 386: dota.CMsgClientToGCSubmitOWConviction + (*CMsgClientToGCSubmitOWConvictionResponse)(nil), // 387: dota.CMsgClientToGCSubmitOWConvictionResponse + (*CMsgClientToGCChinaSSAURLRequest)(nil), // 388: dota.CMsgClientToGCChinaSSAURLRequest + (*CMsgClientToGCChinaSSAURLResponse)(nil), // 389: dota.CMsgClientToGCChinaSSAURLResponse + (*CMsgClientToGCChinaSSAAcceptedRequest)(nil), // 390: dota.CMsgClientToGCChinaSSAAcceptedRequest + (*CMsgClientToGCChinaSSAAcceptedResponse)(nil), // 391: dota.CMsgClientToGCChinaSSAAcceptedResponse + (*CMsgGCToClientOverwatchCasesAvailable)(nil), // 392: dota.CMsgGCToClientOverwatchCasesAvailable + (*CMsgClientToGCStartWatchingOverwatch)(nil), // 393: dota.CMsgClientToGCStartWatchingOverwatch + (*CMsgClientToGCStopWatchingOverwatch)(nil), // 394: dota.CMsgClientToGCStopWatchingOverwatch + (*CMsgClientToGCOverwatchReplayError)(nil), // 395: dota.CMsgClientToGCOverwatchReplayError + (*CMsgClientToGCGetDPCFavorites)(nil), // 396: dota.CMsgClientToGCGetDPCFavorites + (*CMsgClientToGCGetDPCFavoritesResponse)(nil), // 397: dota.CMsgClientToGCGetDPCFavoritesResponse + (*CMsgClientToGCSetDPCFavoriteState)(nil), // 398: dota.CMsgClientToGCSetDPCFavoriteState + (*CMsgClientToGCSetDPCFavoriteStateResponse)(nil), // 399: dota.CMsgClientToGCSetDPCFavoriteStateResponse + (*CMsgClientToGCSetEventActiveSeasonID)(nil), // 400: dota.CMsgClientToGCSetEventActiveSeasonID + (*CMsgClientToGCSetEventActiveSeasonIDResponse)(nil), // 401: dota.CMsgClientToGCSetEventActiveSeasonIDResponse + (*CMsgClientToGCPurchaseLabyrinthBlessings)(nil), // 402: dota.CMsgClientToGCPurchaseLabyrinthBlessings + (*CMsgClientToGCPurchaseLabyrinthBlessingsResponse)(nil), // 403: dota.CMsgClientToGCPurchaseLabyrinthBlessingsResponse + (*CMsgClientToGCGetStickerbookRequest)(nil), // 404: dota.CMsgClientToGCGetStickerbookRequest + (*CMsgClientToGCGetStickerbookResponse)(nil), // 405: dota.CMsgClientToGCGetStickerbookResponse + (*CMsgClientToGCCreateStickerbookPageRequest)(nil), // 406: dota.CMsgClientToGCCreateStickerbookPageRequest + (*CMsgClientToGCCreateStickerbookPageResponse)(nil), // 407: dota.CMsgClientToGCCreateStickerbookPageResponse + (*CMsgClientToGCDeleteStickerbookPageRequest)(nil), // 408: dota.CMsgClientToGCDeleteStickerbookPageRequest + (*CMsgClientToGCDeleteStickerbookPageResponse)(nil), // 409: dota.CMsgClientToGCDeleteStickerbookPageResponse + (*CMsgClientToGCPlaceStickersRequest)(nil), // 410: dota.CMsgClientToGCPlaceStickersRequest + (*CMsgClientToGCPlaceStickersResponse)(nil), // 411: dota.CMsgClientToGCPlaceStickersResponse + (*CMsgClientToGCPlaceCollectionStickersRequest)(nil), // 412: dota.CMsgClientToGCPlaceCollectionStickersRequest + (*CMsgClientToGCPlaceCollectionStickersResponse)(nil), // 413: dota.CMsgClientToGCPlaceCollectionStickersResponse + (*CMsgClientToGCOrderStickerbookTeamPageRequest)(nil), // 414: dota.CMsgClientToGCOrderStickerbookTeamPageRequest + (*CMsgClientToGCOrderStickerbookTeamPageResponse)(nil), // 415: dota.CMsgClientToGCOrderStickerbookTeamPageResponse + (*CMsgClientToGCSetHeroSticker)(nil), // 416: dota.CMsgClientToGCSetHeroSticker + (*CMsgClientToGCSetHeroStickerResponse)(nil), // 417: dota.CMsgClientToGCSetHeroStickerResponse + (*CMsgClientToGCGetHeroStickers)(nil), // 418: dota.CMsgClientToGCGetHeroStickers + (*CMsgClientToGCGetHeroStickersResponse)(nil), // 419: dota.CMsgClientToGCGetHeroStickersResponse + (*CMsgClientToGCSetFavoritePage)(nil), // 420: dota.CMsgClientToGCSetFavoritePage + (*CMsgClientToGCSetFavoritePageResponse)(nil), // 421: dota.CMsgClientToGCSetFavoritePageResponse + (*CMsgClientToGCClaimSwag)(nil), // 422: dota.CMsgClientToGCClaimSwag + (*CMsgClientToGCClaimSwagResponse)(nil), // 423: dota.CMsgClientToGCClaimSwagResponse + (*CMsgClientToGCCollectorsCacheAvailableDataRequest)(nil), // 424: dota.CMsgClientToGCCollectorsCacheAvailableDataRequest + (*CMsgGCToClientCollectorsCacheAvailableDataResponse)(nil), // 425: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse + (*CMsgClientToGCUploadMatchClip)(nil), // 426: dota.CMsgClientToGCUploadMatchClip + (*CMsgGCToClientUploadMatchClipResponse)(nil), // 427: dota.CMsgGCToClientUploadMatchClipResponse + (*CMsgClientToGCMapStatsRequest)(nil), // 428: dota.CMsgClientToGCMapStatsRequest + (*CMsgGCToClientMapStatsResponse)(nil), // 429: dota.CMsgGCToClientMapStatsResponse + (*CMsgRoadToTIAssignedQuest)(nil), // 430: dota.CMsgRoadToTIAssignedQuest + (*CMsgRoadToTIUserData)(nil), // 431: dota.CMsgRoadToTIUserData + (*CMsgClientToGCRoadToTIGetQuests)(nil), // 432: dota.CMsgClientToGCRoadToTIGetQuests + (*CMsgClientToGCRoadToTIGetQuestsResponse)(nil), // 433: dota.CMsgClientToGCRoadToTIGetQuestsResponse + (*CMsgClientToGCRoadToTIGetActiveQuest)(nil), // 434: dota.CMsgClientToGCRoadToTIGetActiveQuest + (*CMsgClientToGCRoadToTIGetActiveQuestResponse)(nil), // 435: dota.CMsgClientToGCRoadToTIGetActiveQuestResponse + (*CMsgGCToClientRoadToTIQuestDataUpdated)(nil), // 436: dota.CMsgGCToClientRoadToTIQuestDataUpdated + (*CMsgClientToGCRoadToTIUseItem)(nil), // 437: dota.CMsgClientToGCRoadToTIUseItem + (*CMsgClientToGCRoadToTIUseItemResponse)(nil), // 438: dota.CMsgClientToGCRoadToTIUseItemResponse + (*CMsgClientToGCRoadToTIDevForceQuest)(nil), // 439: dota.CMsgClientToGCRoadToTIDevForceQuest + (*CMsgLobbyRoadToTIMatchQuestData)(nil), // 440: dota.CMsgLobbyRoadToTIMatchQuestData + (*CMsgClientToGCNewBloomGift)(nil), // 441: dota.CMsgClientToGCNewBloomGift + (*CMsgClientToGCNewBloomGiftResponse)(nil), // 442: dota.CMsgClientToGCNewBloomGiftResponse + (*CMsgClientToGCSetBannedHeroes)(nil), // 443: dota.CMsgClientToGCSetBannedHeroes + (*CMsgDOTARequestMatchesResponse_Series)(nil), // 444: dota.CMsgDOTARequestMatchesResponse.Series + (*CMsgDOTAProfileTickets_LeaguePass)(nil), // 445: dota.CMsgDOTAProfileTickets.LeaguePass + (*CMsgDOTAWelcome_CExtraMsg)(nil), // 446: dota.CMsgDOTAWelcome.CExtraMsg + (*CMsgDOTAMatchVotes_PlayerVote)(nil), // 447: dota.CMsgDOTAMatchVotes.PlayerVote + (*CMsgGCGetHeroStandingsResponse_Hero)(nil), // 448: dota.CMsgGCGetHeroStandingsResponse.Hero + (*CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer)(nil), // 449: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer + (*CMsgGCGetHeroTimedStatsResponse_RankChunkedStats)(nil), // 450: dota.CMsgGCGetHeroTimedStatsResponse.RankChunkedStats + (*CMsgDOTAClaimEventActionData_GrantItemGiftData)(nil), // 451: dota.CMsgDOTAClaimEventActionData.GrantItemGiftData + (*CMsgDOTAClaimEventActionResponse_MysteryItemRewardData)(nil), // 452: dota.CMsgDOTAClaimEventActionResponse.MysteryItemRewardData + (*CMsgDOTAClaimEventActionResponse_LootListRewardData)(nil), // 453: dota.CMsgDOTAClaimEventActionResponse.LootListRewardData + (*CMsgDOTAClaimEventActionResponse_ActionListRewardData)(nil), // 454: dota.CMsgDOTAClaimEventActionResponse.ActionListRewardData + (*CMsgDOTAClaimEventActionResponse_GrantedRewardData)(nil), // 455: dota.CMsgDOTAClaimEventActionResponse.GrantedRewardData + (*CMsgDOTAGetEventPointsResponse_Action)(nil), // 456: dota.CMsgDOTAGetEventPointsResponse.Action + (*CMsgDOTAGetPlayerMatchHistoryResponse_Match)(nil), // 457: dota.CMsgDOTAGetPlayerMatchHistoryResponse.Match + (*CMsgClientToGCGetTrophyListResponse_Trophy)(nil), // 458: dota.CMsgClientToGCGetTrophyListResponse.Trophy + (*CMsgClientToGCSetProfileCardSlots_CardSlot)(nil), // 459: dota.CMsgClientToGCSetProfileCardSlots.CardSlot + (*CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame)(nil), // 460: dota.CMsgGCToClientCustomGamesFriendsPlayedResponse.CustomGame + (*CMsgDOTAPartyRichPresence_Member)(nil), // 461: dota.CMsgDOTAPartyRichPresence.Member + (*CMsgDOTAPartyRichPresence_WeekendTourney)(nil), // 462: dota.CMsgDOTAPartyRichPresence.WeekendTourney + (*CMsgClientToGCGetQuestProgressResponse_Challenge)(nil), // 463: dota.CMsgClientToGCGetQuestProgressResponse.Challenge + (*CMsgClientToGCGetQuestProgressResponse_Quest)(nil), // 464: dota.CMsgClientToGCGetQuestProgressResponse.Quest + (*CMsgEventGoals_EventGoal)(nil), // 465: dota.CMsgEventGoals.EventGoal + (*CMsgPredictionRankings_PredictionLine)(nil), // 466: dota.CMsgPredictionRankings.PredictionLine + (*CMsgPredictionRankings_Prediction)(nil), // 467: dota.CMsgPredictionRankings.Prediction + (*CMsgPredictionResults_ResultBreakdown)(nil), // 468: dota.CMsgPredictionResults.ResultBreakdown + (*CMsgPredictionResults_Result)(nil), // 469: dota.CMsgPredictionResults.Result + (*CMsgClientToGCTeammateStatsResponse_TeammateStat)(nil), // 470: dota.CMsgClientToGCTeammateStatsResponse.TeammateStat + (*CMsgClientToGCRequestEventPointLogResponseV2_LogEntry)(nil), // 471: dota.CMsgClientToGCRequestEventPointLogResponseV2.LogEntry + (*CMsgGCToClientQuestProgressUpdated_Challenge)(nil), // 472: dota.CMsgGCToClientQuestProgressUpdated.Challenge + (*CMsgClientToGCSelectCompendiumInGamePrediction_Prediction)(nil), // 473: dota.CMsgClientToGCSelectCompendiumInGamePrediction.Prediction + (*CMsgGCToClientBattlePassRollup_International2016_Questlines)(nil), // 474: dota.CMsgGCToClientBattlePassRollup_International2016.Questlines + (*CMsgGCToClientBattlePassRollup_International2016_Wagering)(nil), // 475: dota.CMsgGCToClientBattlePassRollup_International2016.Wagering + (*CMsgGCToClientBattlePassRollup_International2016_Achievements)(nil), // 476: dota.CMsgGCToClientBattlePassRollup_International2016.Achievements + (*CMsgGCToClientBattlePassRollup_International2016_BattleCup)(nil), // 477: dota.CMsgGCToClientBattlePassRollup_International2016.BattleCup + (*CMsgGCToClientBattlePassRollup_International2016_Predictions)(nil), // 478: dota.CMsgGCToClientBattlePassRollup_International2016.Predictions + (*CMsgGCToClientBattlePassRollup_International2016_Bracket)(nil), // 479: dota.CMsgGCToClientBattlePassRollup_International2016.Bracket + (*CMsgGCToClientBattlePassRollup_International2016_PlayerCard)(nil), // 480: dota.CMsgGCToClientBattlePassRollup_International2016.PlayerCard + (*CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge)(nil), // 481: dota.CMsgGCToClientBattlePassRollup_International2016.FantasyChallenge + (*CMsgGCToClientBattlePassRollup_Fall2016_Questlines)(nil), // 482: dota.CMsgGCToClientBattlePassRollup_Fall2016.Questlines + (*CMsgGCToClientBattlePassRollup_Fall2016_Wagering)(nil), // 483: dota.CMsgGCToClientBattlePassRollup_Fall2016.Wagering + (*CMsgGCToClientBattlePassRollup_Fall2016_Achievements)(nil), // 484: dota.CMsgGCToClientBattlePassRollup_Fall2016.Achievements + (*CMsgGCToClientBattlePassRollup_Fall2016_BattleCup)(nil), // 485: dota.CMsgGCToClientBattlePassRollup_Fall2016.BattleCup + (*CMsgGCToClientBattlePassRollup_Fall2016_Predictions)(nil), // 486: dota.CMsgGCToClientBattlePassRollup_Fall2016.Predictions + (*CMsgGCToClientBattlePassRollup_Fall2016_Bracket)(nil), // 487: dota.CMsgGCToClientBattlePassRollup_Fall2016.Bracket + (*CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard)(nil), // 488: dota.CMsgGCToClientBattlePassRollup_Fall2016.PlayerCard + (*CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge)(nil), // 489: dota.CMsgGCToClientBattlePassRollup_Fall2016.FantasyChallenge + (*CMsgGCToClientBattlePassRollup_Winter2017_Questlines)(nil), // 490: dota.CMsgGCToClientBattlePassRollup_Winter2017.Questlines + (*CMsgGCToClientBattlePassRollup_Winter2017_Wagering)(nil), // 491: dota.CMsgGCToClientBattlePassRollup_Winter2017.Wagering + (*CMsgGCToClientBattlePassRollup_Winter2017_Achievements)(nil), // 492: dota.CMsgGCToClientBattlePassRollup_Winter2017.Achievements + (*CMsgGCToClientBattlePassRollup_Winter2017_BattleCup)(nil), // 493: dota.CMsgGCToClientBattlePassRollup_Winter2017.BattleCup + (*CMsgGCToClientBattlePassRollup_Winter2017_Predictions)(nil), // 494: dota.CMsgGCToClientBattlePassRollup_Winter2017.Predictions + (*CMsgGCToClientBattlePassRollup_Winter2017_Bracket)(nil), // 495: dota.CMsgGCToClientBattlePassRollup_Winter2017.Bracket + (*CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard)(nil), // 496: dota.CMsgGCToClientBattlePassRollup_Winter2017.PlayerCard + (*CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge)(nil), // 497: dota.CMsgGCToClientBattlePassRollup_Winter2017.FantasyChallenge + (*CMsgGCToClientBattlePassRollup_TI7_Questlines)(nil), // 498: dota.CMsgGCToClientBattlePassRollup_TI7.Questlines + (*CMsgGCToClientBattlePassRollup_TI7_Wagering)(nil), // 499: dota.CMsgGCToClientBattlePassRollup_TI7.Wagering + (*CMsgGCToClientBattlePassRollup_TI7_Achievements)(nil), // 500: dota.CMsgGCToClientBattlePassRollup_TI7.Achievements + (*CMsgGCToClientBattlePassRollup_TI7_BattleCup)(nil), // 501: dota.CMsgGCToClientBattlePassRollup_TI7.BattleCup + (*CMsgGCToClientBattlePassRollup_TI7_Predictions)(nil), // 502: dota.CMsgGCToClientBattlePassRollup_TI7.Predictions + (*CMsgGCToClientBattlePassRollup_TI7_Bracket)(nil), // 503: dota.CMsgGCToClientBattlePassRollup_TI7.Bracket + (*CMsgGCToClientBattlePassRollup_TI7_PlayerCard)(nil), // 504: dota.CMsgGCToClientBattlePassRollup_TI7.PlayerCard + (*CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge)(nil), // 505: dota.CMsgGCToClientBattlePassRollup_TI7.FantasyChallenge + (*CMsgGCToClientBattlePassRollup_TI8_CavernCrawl)(nil), // 506: dota.CMsgGCToClientBattlePassRollup_TI8.CavernCrawl + (*CMsgGCToClientBattlePassRollup_TI8_Wagering)(nil), // 507: dota.CMsgGCToClientBattlePassRollup_TI8.Wagering + (*CMsgGCToClientBattlePassRollup_TI8_Achievements)(nil), // 508: dota.CMsgGCToClientBattlePassRollup_TI8.Achievements + (*CMsgGCToClientBattlePassRollup_TI8_Predictions)(nil), // 509: dota.CMsgGCToClientBattlePassRollup_TI8.Predictions + (*CMsgGCToClientBattlePassRollup_TI8_Bracket)(nil), // 510: dota.CMsgGCToClientBattlePassRollup_TI8.Bracket + (*CMsgGCToClientBattlePassRollup_TI8_PlayerCard)(nil), // 511: dota.CMsgGCToClientBattlePassRollup_TI8.PlayerCard + (*CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge)(nil), // 512: dota.CMsgGCToClientBattlePassRollup_TI8.FantasyChallenge + (*CMsgGCToClientBattlePassRollupListResponse_EventInfo)(nil), // 513: dota.CMsgGCToClientBattlePassRollupListResponse.EventInfo + (*CMsgDOTAClientToGCQuickStatsResponse_SimpleStats)(nil), // 514: dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats + (*CMsgProfileResponse_FeaturedHero)(nil), // 515: dota.CMsgProfileResponse.FeaturedHero + (*CMsgProfileResponse_MatchInfo)(nil), // 516: dota.CMsgProfileResponse.MatchInfo + (*CMsgHeroGlobalDataResponse_GraphData)(nil), // 517: dota.CMsgHeroGlobalDataResponse.GraphData + (*CMsgHeroGlobalDataResponse_WeekData)(nil), // 518: dota.CMsgHeroGlobalDataResponse.WeekData + (*CMsgHeroGlobalDataResponse_HeroDataPerRankChunk)(nil), // 519: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk + (*CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData)(nil), // 520: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.HeroData + (*CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData)(nil), // 521: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.RankedHeroData + (*CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo)(nil), // 522: dota.CMsgGCToClientCavernCrawlMapPathCompleted.CompletedPathInfo + (*CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge)(nil), // 523: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.SwappedChallenge + (*CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem)(nil), // 524: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.InventoryItem + (*CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap)(nil), // 525: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.TreasureMap + (*CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant)(nil), // 526: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.MapVariant + (*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant)(nil), // 527: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.MapVariant + (*CMsgDOTAMutationList_Mutation)(nil), // 528: dota.CMsgDOTAMutationList.Mutation + (*CMsgEventTipsSummaryResponse_Tipper)(nil), // 529: dota.CMsgEventTipsSummaryResponse.Tipper + (*CMsgSocialFeedResponse_FeedEvent)(nil), // 530: dota.CMsgSocialFeedResponse.FeedEvent + (*CMsgSocialFeedCommentsResponse_FeedComment)(nil), // 531: dota.CMsgSocialFeedCommentsResponse.FeedComment + (*CMsgClientToGCRequestContestVotesResponse_ItemVote)(nil), // 532: dota.CMsgClientToGCRequestContestVotesResponse.ItemVote + (*CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry)(nil), // 533: dota.CMsgGCToClientGetFilteredPlayersResponse.CFilterEntry + (*CMsgGCToClientVerifyFavoritePlayersResponse_Result)(nil), // 534: dota.CMsgGCToClientVerifyFavoritePlayersResponse.Result + (*CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate)(nil), // 535: dota.CMsgClientToGCRequestReporterUpdatesResponse.ReporterUpdate + (*CMsgClientToGCGetOWMatchDetailsResponse_Marker)(nil), // 536: dota.CMsgClientToGCGetOWMatchDetailsResponse.Marker + (*CMsgClientToGCGetDPCFavoritesResponse_Favorite)(nil), // 537: dota.CMsgClientToGCGetDPCFavoritesResponse.Favorite + (*CMsgClientToGCPlaceStickersRequest_StickerItem)(nil), // 538: dota.CMsgClientToGCPlaceStickersRequest.StickerItem + (*CMsgClientToGCPlaceCollectionStickersRequest_Slot)(nil), // 539: dota.CMsgClientToGCPlaceCollectionStickersRequest.Slot + (*CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote)(nil), // 540: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote + (*CMsgDOTAMatch)(nil), // 541: dota.CMsgDOTAMatch + (MatchType)(0), // 542: dota.MatchType + (DOTAMatchVote)(0), // 543: dota.DOTAMatchVote + (EEvent)(0), // 544: dota.EEvent + (*CExtraMsgBlock)(nil), // 545: dota.CExtraMsgBlock + (EMatchGroupServerStatus)(0), // 546: dota.EMatchGroupServerStatus + (ERankType)(0), // 547: dota.ERankType + (CSODOTAParty_State)(0), // 548: dota.CSODOTAParty.State + (CSODOTALobby_State)(0), // 549: dota.CSODOTALobby.State + (DOTA_GameMode)(0), // 550: dota.DOTA_GameMode + (*CMsgDOTASDOHeroStatsHistory)(nil), // 551: dota.CMsgDOTASDOHeroStatsHistory + (*CMsgArcanaVoteMatchVotes)(nil), // 552: dota.CMsgArcanaVoteMatchVotes + (ELeagueRegion)(0), // 553: dota.ELeagueRegion + (*CMsgDOTATriviaQuestion)(nil), // 554: dota.CMsgDOTATriviaQuestion + (DOTASelectionPriorityChoice)(0), // 555: dota.DOTASelectionPriorityChoice + (EHeroRelicRarity)(0), // 556: dota.EHeroRelicRarity + (*CSOEconItem)(nil), // 557: dota.CSOEconItem + (*CMsgSuccessfulHero)(nil), // 558: dota.CMsgSuccessfulHero + (*CMsgRecentMatchInfo)(nil), // 559: dota.CMsgRecentMatchInfo + (*CMsgStickerbookPage)(nil), // 560: dota.CMsgStickerbookPage + (*CPartySearchClientParty)(nil), // 561: dota.CPartySearchClientParty + (*CMsgPlayerRecentAccomplishments)(nil), // 562: dota.CMsgPlayerRecentAccomplishments + (*CMsgPlayerHeroRecentAccomplishments)(nil), // 563: dota.CMsgPlayerHeroRecentAccomplishments + (*CMsgUnderDraftData)(nil), // 564: dota.CMsgUnderDraftData + (EOverwatchReportReason)(0), // 565: dota.EOverwatchReportReason + (EOverwatchConviction)(0), // 566: dota.EOverwatchConviction + (EDPCFavoriteType)(0), // 567: dota.EDPCFavoriteType + (*CMsgStickerbook)(nil), // 568: dota.CMsgStickerbook + (EStickerbookPageType)(0), // 569: dota.EStickerbookPageType + (*CMsgStickerbookTeamPageOrderSequence)(nil), // 570: dota.CMsgStickerbookTeamPageOrderSequence + (*CMsgStickerHeroes)(nil), // 571: dota.CMsgStickerHeroes + (*CMatchClip)(nil), // 572: dota.CMatchClip + (*CMsgMapStatsSnapshot)(nil), // 573: dota.CMsgMapStatsSnapshot + (*CMsgGlobalMapStats)(nil), // 574: dota.CMsgGlobalMapStats + (ENewBloomGiftingResponse)(0), // 575: dota.ENewBloomGiftingResponse + (EProfileCardSlotType)(0), // 576: dota.EProfileCardSlotType + (*CMsgStickerbookSticker)(nil), // 577: dota.CMsgStickerbookSticker } var file_dota_gcmessages_client_proto_depIdxs = []int32{ - 516, // 0: dota.CMsgDOTARequestMatchesResponse.matches:type_name -> dota.CMsgDOTAMatch - 420, // 1: dota.CMsgDOTARequestMatchesResponse.series:type_name -> dota.CMsgDOTARequestMatchesResponse.Series + 541, // 0: dota.CMsgDOTARequestMatchesResponse.matches:type_name -> dota.CMsgDOTAMatch + 444, // 1: dota.CMsgDOTARequestMatchesResponse.series:type_name -> dota.CMsgDOTARequestMatchesResponse.Series 10, // 2: dota.CMsgDOTAPopup.id:type_name -> dota.CMsgDOTAPopup.PopupID 11, // 3: dota.CMsgDOTASubmitPlayerReportResponse.enum_result:type_name -> dota.CMsgDOTASubmitPlayerReportResponse.EResult - 517, // 4: dota.CMsgDOTAKickedFromMatchmakingQueue.match_type:type_name -> dota.MatchType - 516, // 5: dota.CMsgGCMatchDetailsResponse.match:type_name -> dota.CMsgDOTAMatch - 518, // 6: dota.CMsgGCMatchDetailsResponse.vote:type_name -> dota.DOTAMatchVote - 421, // 7: dota.CMsgDOTAProfileTickets.league_passes:type_name -> dota.CMsgDOTAProfileTickets.LeaguePass - 345, // 8: dota.CMsgGCToClientPartySearchInvites.invites:type_name -> dota.CMsgGCToClientPartySearchInvite - 422, // 9: dota.CMsgDOTAWelcome.extra_messages:type_name -> dota.CMsgDOTAWelcome.CExtraMsg - 519, // 10: dota.CMsgDOTAWelcome.active_event:type_name -> dota.EEvent - 95, // 11: dota.CMsgDOTAWelcome.party_search_friend_invites:type_name -> dota.CMsgGCToClientPartySearchInvites - 520, // 12: dota.CMsgDOTAWelcome.extra_message_blocks:type_name -> dota.CExtraMsgBlock - 423, // 13: dota.CMsgDOTAMatchVotes.votes:type_name -> dota.CMsgDOTAMatchVotes.PlayerVote - 521, // 14: dota.CMsgMatchmakingMatchGroupInfo.status:type_name -> dota.EMatchGroupServerStatus - 99, // 15: dota.CMsgDOTAMatchmakingStatsResponse.match_groups:type_name -> dota.CMsgMatchmakingMatchGroupInfo - 101, // 16: dota.CMsgDOTAUpdateMatchmakingStats.stats:type_name -> dota.CMsgDOTAMatchmakingStatsResponse - 101, // 17: dota.CMsgDOTAUpdateMatchManagementStats.stats:type_name -> dota.CMsgDOTAMatchmakingStatsResponse - 1, // 18: dota.CMsgGCWatchDownloadedReplay.watch_type:type_name -> dota.DOTA_WatchReplayType - 424, // 19: dota.CMsgGCGetHeroStandingsResponse.standings:type_name -> dota.CMsgGCGetHeroStandingsResponse.Hero - 426, // 20: dota.CMsgGCGetHeroTimedStatsResponse.rank_chunked_stats:type_name -> dota.CMsgGCGetHeroTimedStatsResponse.RankChunkedStats - 119, // 21: dota.CMsgGCItemEditorReservationsResponse.reservations:type_name -> dota.CMsgGCItemEditorReservation - 427, // 22: dota.CMsgDOTAClaimEventActionData.grant_item_gift_data:type_name -> dota.CMsgDOTAClaimEventActionData.GrantItemGiftData - 128, // 23: dota.CMsgDOTAClaimEventAction.data:type_name -> dota.CMsgDOTAClaimEventActionData - 12, // 24: dota.CMsgDOTAClaimEventActionResponse.result:type_name -> dota.CMsgDOTAClaimEventActionResponse.ResultCode - 431, // 25: dota.CMsgDOTAClaimEventActionResponse.reward_results:type_name -> dota.CMsgDOTAClaimEventActionResponse.GrantedRewardData - 130, // 26: dota.CMsgClientToGCClaimEventActionUsingItemResponse.action_results:type_name -> dota.CMsgDOTAClaimEventActionResponse - 130, // 27: dota.CMsgGCToClientClaimEventActionUsingItemCompleted.action_results:type_name -> dota.CMsgDOTAClaimEventActionResponse - 432, // 28: dota.CMsgDOTAGetEventPointsResponse.completed_actions:type_name -> dota.CMsgDOTAGetEventPointsResponse.Action - 136, // 29: dota.CMsgDOTAPeriodicResourceUpdated.periodic_resource_key:type_name -> dota.CMsgDOTAGetPeriodicResource - 137, // 30: dota.CMsgDOTAPeriodicResourceUpdated.periodic_resource_value:type_name -> dota.CMsgDOTAGetPeriodicResourceResponse - 139, // 31: dota.CMsgDOTACompendiumData.selections:type_name -> dota.CMsgDOTACompendiumSelection - 141, // 32: dota.CMsgDOTACompendiumDataResponse.compendium_data:type_name -> dota.CMsgDOTACompendiumData - 433, // 33: dota.CMsgDOTAGetPlayerMatchHistoryResponse.matches:type_name -> dota.CMsgDOTAGetPlayerMatchHistoryResponse.Match - 13, // 34: dota.CMsgGCNotificationsUpdate.result:type_name -> dota.CMsgGCNotificationsUpdate.EResult - 147, // 35: dota.CMsgGCNotificationsUpdate.notifications:type_name -> dota.CMsgGCNotifications_Notification - 148, // 36: dota.CMsgGCNotificationsResponse.update:type_name -> dota.CMsgGCNotificationsUpdate - 14, // 37: dota.CMsgGCPlayerInfoSubmitResponse.result:type_name -> dota.CMsgGCPlayerInfoSubmitResponse.EResult - 153, // 38: dota.CMsgGCToClientEmoticonData.emoticon_access:type_name -> dota.CMsgDOTAEmoticonAccessSDO - 434, // 39: dota.CMsgClientToGCGetTrophyListResponse.trophies:type_name -> dota.CMsgClientToGCGetTrophyListResponse.Trophy - 522, // 40: dota.CMsgClientToGCRankRequest.rank_type:type_name -> dota.ERankType - 15, // 41: dota.CMsgGCToClientRankResponse.result:type_name -> dota.CMsgGCToClientRankResponse.EResultCode - 522, // 42: dota.CMsgGCToClientRankUpdate.rank_type:type_name -> dota.ERankType - 165, // 43: dota.CMsgGCToClientRankUpdate.rank_info:type_name -> dota.CMsgGCToClientRankResponse - 435, // 44: dota.CMsgClientToGCSetProfileCardSlots.slots:type_name -> dota.CMsgClientToGCSetProfileCardSlots.CardSlot - 436, // 45: dota.CMsgGCToClientCustomGamesFriendsPlayedResponse.games:type_name -> dota.CMsgGCToClientCustomGamesFriendsPlayedResponse.CustomGame - 523, // 46: dota.CMsgDOTAPartyRichPresence.party_state:type_name -> dota.CSODOTAParty.State - 437, // 47: dota.CMsgDOTAPartyRichPresence.members:type_name -> dota.CMsgDOTAPartyRichPresence.Member - 438, // 48: dota.CMsgDOTAPartyRichPresence.weekend_tourney:type_name -> dota.CMsgDOTAPartyRichPresence.WeekendTourney - 524, // 49: dota.CMsgDOTALobbyRichPresence.lobby_state:type_name -> dota.CSODOTALobby.State - 525, // 50: dota.CMsgDOTALobbyRichPresence.game_mode:type_name -> dota.DOTA_GameMode - 440, // 51: dota.CMsgClientToGCGetQuestProgressResponse.quests:type_name -> dota.CMsgClientToGCGetQuestProgressResponse.Quest - 526, // 52: dota.CMsgGCGetHeroStatsHistoryResponse.records:type_name -> dota.CMsgDOTASDOHeroStatsHistory - 16, // 53: dota.CMsgPlayerConductScorecard.behavior_rating:type_name -> dota.CMsgPlayerConductScorecard.EBehaviorRating - 196, // 54: dota.CMsgGCToClientWageringUpdate.wagering_info:type_name -> dota.CMsgGCToClientWageringResponse - 215, // 55: dota.CMsgGCToClientArcanaVotesUpdate.arcana_votes:type_name -> dota.CMsgClientToGCRequestArcanaVotesRemainingResponse - 519, // 56: dota.CMsgClientToGCGetEventGoals.event_ids:type_name -> dota.EEvent - 441, // 57: dota.CMsgEventGoals.event_goals:type_name -> dota.CMsgEventGoals.EventGoal - 443, // 58: dota.CMsgPredictionRankings.predictions:type_name -> dota.CMsgPredictionRankings.Prediction - 445, // 59: dota.CMsgPredictionResults.results:type_name -> dota.CMsgPredictionResults.Result - 446, // 60: dota.CMsgClientToGCTeammateStatsResponse.teammate_stats:type_name -> dota.CMsgClientToGCTeammateStatsResponse.TeammateStat - 527, // 61: dota.CMsgClientToGCVoteForArcana.matches:type_name -> dota.CMsgArcanaVoteMatchVotes - 17, // 62: dota.CMsgClientToGCVoteForArcanaResponse.result:type_name -> dota.CMsgClientToGCVoteForArcanaResponse.Result - 527, // 63: dota.CMsgClientToGCRequestArcanaVotesRemainingResponse.matches_previously_voted_for:type_name -> dota.CMsgArcanaVoteMatchVotes - 519, // 64: dota.CMsgClientToGCRequestEventPointLogResponseV2.event_id:type_name -> dota.EEvent - 447, // 65: dota.CMsgClientToGCRequestEventPointLogResponseV2.log_entries:type_name -> dota.CMsgClientToGCRequestEventPointLogResponseV2.LogEntry - 519, // 66: dota.CMsgClientToGCRequestSlarkGameResult.event_id:type_name -> dota.EEvent - 448, // 67: dota.CMsgGCToClientQuestProgressUpdated.completed_challenges:type_name -> dota.CMsgGCToClientQuestProgressUpdated.Challenge - 18, // 68: dota.CMsgDOTARedeemItemResponse.response:type_name -> dota.CMsgDOTARedeemItemResponse.EResultCode - 449, // 69: dota.CMsgClientToGCSelectCompendiumInGamePrediction.predictions:type_name -> dota.CMsgClientToGCSelectCompendiumInGamePrediction.Prediction - 19, // 70: dota.CMsgClientToGCSelectCompendiumInGamePredictionResponse.result:type_name -> dota.CMsgClientToGCSelectCompendiumInGamePredictionResponse.EResult - 528, // 71: dota.CMsgClientToGCOpenPlayerCardPack.region:type_name -> dota.ELeagueRegion - 20, // 72: dota.CMsgClientToGCOpenPlayerCardPackResponse.result:type_name -> dota.CMsgClientToGCOpenPlayerCardPackResponse.Result - 21, // 73: dota.CMsgClientToGCRecyclePlayerCardResponse.result:type_name -> dota.CMsgClientToGCRecyclePlayerCardResponse.Result - 22, // 74: dota.CMsgClientToGCCreatePlayerCardPackResponse.result:type_name -> dota.CMsgClientToGCCreatePlayerCardPackResponse.Result - 23, // 75: dota.CMsgClientToGCCreateTeamPlayerCardPackResponse.result:type_name -> dota.CMsgClientToGCCreateTeamPlayerCardPackResponse.Result - 450, // 76: dota.CMsgGCToClientBattlePassRollup_International2016.questlines:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Questlines - 451, // 77: dota.CMsgGCToClientBattlePassRollup_International2016.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Wagering - 452, // 78: dota.CMsgGCToClientBattlePassRollup_International2016.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Achievements - 453, // 79: dota.CMsgGCToClientBattlePassRollup_International2016.battle_cup:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.BattleCup - 454, // 80: dota.CMsgGCToClientBattlePassRollup_International2016.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Predictions - 455, // 81: dota.CMsgGCToClientBattlePassRollup_International2016.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Bracket - 456, // 82: dota.CMsgGCToClientBattlePassRollup_International2016.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.PlayerCard - 457, // 83: dota.CMsgGCToClientBattlePassRollup_International2016.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.FantasyChallenge - 458, // 84: dota.CMsgGCToClientBattlePassRollup_Fall2016.questlines:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Questlines - 459, // 85: dota.CMsgGCToClientBattlePassRollup_Fall2016.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Wagering - 460, // 86: dota.CMsgGCToClientBattlePassRollup_Fall2016.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Achievements - 461, // 87: dota.CMsgGCToClientBattlePassRollup_Fall2016.battle_cup:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.BattleCup - 462, // 88: dota.CMsgGCToClientBattlePassRollup_Fall2016.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Predictions - 463, // 89: dota.CMsgGCToClientBattlePassRollup_Fall2016.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Bracket - 464, // 90: dota.CMsgGCToClientBattlePassRollup_Fall2016.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.PlayerCard - 465, // 91: dota.CMsgGCToClientBattlePassRollup_Fall2016.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.FantasyChallenge - 466, // 92: dota.CMsgGCToClientBattlePassRollup_Winter2017.questlines:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Questlines - 467, // 93: dota.CMsgGCToClientBattlePassRollup_Winter2017.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Wagering - 468, // 94: dota.CMsgGCToClientBattlePassRollup_Winter2017.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Achievements - 469, // 95: dota.CMsgGCToClientBattlePassRollup_Winter2017.battle_cup:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.BattleCup - 470, // 96: dota.CMsgGCToClientBattlePassRollup_Winter2017.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Predictions - 471, // 97: dota.CMsgGCToClientBattlePassRollup_Winter2017.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Bracket - 472, // 98: dota.CMsgGCToClientBattlePassRollup_Winter2017.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.PlayerCard - 473, // 99: dota.CMsgGCToClientBattlePassRollup_Winter2017.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.FantasyChallenge - 474, // 100: dota.CMsgGCToClientBattlePassRollup_TI7.questlines:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Questlines - 475, // 101: dota.CMsgGCToClientBattlePassRollup_TI7.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Wagering - 476, // 102: dota.CMsgGCToClientBattlePassRollup_TI7.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Achievements - 477, // 103: dota.CMsgGCToClientBattlePassRollup_TI7.battle_cup:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.BattleCup - 478, // 104: dota.CMsgGCToClientBattlePassRollup_TI7.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Predictions - 479, // 105: dota.CMsgGCToClientBattlePassRollup_TI7.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Bracket - 480, // 106: dota.CMsgGCToClientBattlePassRollup_TI7.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.PlayerCard - 481, // 107: dota.CMsgGCToClientBattlePassRollup_TI7.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.FantasyChallenge - 482, // 108: dota.CMsgGCToClientBattlePassRollup_TI8.cavern_crawl:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.CavernCrawl - 483, // 109: dota.CMsgGCToClientBattlePassRollup_TI8.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.Wagering - 484, // 110: dota.CMsgGCToClientBattlePassRollup_TI8.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.Achievements - 485, // 111: dota.CMsgGCToClientBattlePassRollup_TI8.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.Predictions - 486, // 112: dota.CMsgGCToClientBattlePassRollup_TI8.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.Bracket - 487, // 113: dota.CMsgGCToClientBattlePassRollup_TI8.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.PlayerCard - 488, // 114: dota.CMsgGCToClientBattlePassRollup_TI8.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.FantasyChallenge - 234, // 115: dota.CMsgGCToClientBattlePassRollupResponse.event_ti6:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016 - 235, // 116: dota.CMsgGCToClientBattlePassRollupResponse.event_fall2016:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016 - 236, // 117: dota.CMsgGCToClientBattlePassRollupResponse.event_winter2017:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017 - 237, // 118: dota.CMsgGCToClientBattlePassRollupResponse.event_ti7:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7 - 238, // 119: dota.CMsgGCToClientBattlePassRollupResponse.event_ti8:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8 - 239, // 120: dota.CMsgGCToClientBattlePassRollupResponse.event_ti9:type_name -> dota.CMsgGCToClientBattlePassRollup_TI9 - 240, // 121: dota.CMsgGCToClientBattlePassRollupResponse.event_ti10:type_name -> dota.CMsgGCToClientBattlePassRollup_TI10 - 489, // 122: dota.CMsgGCToClientBattlePassRollupListResponse.event_info:type_name -> dota.CMsgGCToClientBattlePassRollupListResponse.EventInfo - 529, // 123: dota.CMsgDOTATriviaCurrentQuestions.questions:type_name -> dota.CMsgDOTATriviaQuestion - 4, // 124: dota.CMsgDOTASubmitTriviaQuestionAnswerResponse.result:type_name -> dota.EDOTATriviaAnswerResult - 24, // 125: dota.CMsgDOTAAnchorPhoneNumberResponse.result:type_name -> dota.CMsgDOTAAnchorPhoneNumberResponse.Result - 25, // 126: dota.CMsgDOTAUnanchorPhoneNumberResponse.result:type_name -> dota.CMsgDOTAUnanchorPhoneNumberResponse.Result - 261, // 127: dota.CMsgDOTAClientToGCQuickStatsResponse.original_request:type_name -> dota.CMsgDOTAClientToGCQuickStatsRequest - 490, // 128: dota.CMsgDOTAClientToGCQuickStatsResponse.hero_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats - 490, // 129: dota.CMsgDOTAClientToGCQuickStatsResponse.item_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats - 490, // 130: dota.CMsgDOTAClientToGCQuickStatsResponse.item_hero_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats - 490, // 131: dota.CMsgDOTAClientToGCQuickStatsResponse.item_player_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats - 490, // 132: dota.CMsgDOTAClientToGCQuickStatsResponse.hero_player_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats - 490, // 133: dota.CMsgDOTAClientToGCQuickStatsResponse.full_set_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats - 530, // 134: dota.CMsgDOTASelectionPriorityChoiceRequest.choice:type_name -> dota.DOTASelectionPriorityChoice - 26, // 135: dota.CMsgDOTASelectionPriorityChoiceResponse.result:type_name -> dota.CMsgDOTASelectionPriorityChoiceResponse.Result - 27, // 136: dota.CMsgDOTAGameAutographRewardResponse.result:type_name -> dota.CMsgDOTAGameAutographRewardResponse.Result - 28, // 137: dota.CMsgDOTADestroyLobbyResponse.result:type_name -> dota.CMsgDOTADestroyLobbyResponse.Result - 519, // 138: dota.CMsgPurchaseItemWithEventPoints.event_id:type_name -> dota.EEvent - 29, // 139: dota.CMsgPurchaseItemWithEventPointsResponse.result:type_name -> dota.CMsgPurchaseItemWithEventPointsResponse.Result - 531, // 140: dota.CMsgPurchaseHeroRandomRelic.relic_rarity:type_name -> dota.EHeroRelicRarity - 5, // 141: dota.CMsgPurchaseHeroRandomRelicResponse.result:type_name -> dota.EPurchaseHeroRelicResult - 519, // 142: dota.CMsgClientToGCRequestPlusWeeklyChallengeResult.event_id:type_name -> dota.EEvent - 532, // 143: dota.CMsgProfileResponse.background_item:type_name -> dota.CSOEconItem - 491, // 144: dota.CMsgProfileResponse.featured_heroes:type_name -> dota.CMsgProfileResponse.FeaturedHero - 492, // 145: dota.CMsgProfileResponse.recent_matches:type_name -> dota.CMsgProfileResponse.MatchInfo - 533, // 146: dota.CMsgProfileResponse.successful_heroes:type_name -> dota.CMsgSuccessfulHero - 534, // 147: dota.CMsgProfileResponse.recent_match_details:type_name -> dota.CMsgRecentMatchInfo - 30, // 148: dota.CMsgProfileResponse.result:type_name -> dota.CMsgProfileResponse.EResponse - 535, // 149: dota.CMsgProfileResponse.stickerbook_page:type_name -> dota.CMsgStickerbookPage - 31, // 150: dota.CMsgProfileUpdateResponse.result:type_name -> dota.CMsgProfileUpdateResponse.Result - 495, // 151: dota.CMsgHeroGlobalDataResponse.hero_data_per_chunk:type_name -> dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk - 284, // 152: dota.CMsgHeroGlobalDataAllHeroes.heroes:type_name -> dota.CMsgHeroGlobalDataResponse - 497, // 153: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.ranked_hero_data:type_name -> dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.RankedHeroData - 32, // 154: dota.CMsgActivatePlusFreeTrialResponse.result:type_name -> dota.CMsgActivatePlusFreeTrialResponse.Result - 498, // 155: dota.CMsgGCToClientCavernCrawlMapPathCompleted.completed_paths:type_name -> dota.CMsgGCToClientCavernCrawlMapPathCompleted.CompletedPathInfo - 33, // 156: dota.CMsgClientToGCCavernCrawlClaimRoomResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlClaimRoomResponse.Result - 34, // 157: dota.CMsgClientToGCCavernCrawlUseItemOnRoomResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlUseItemOnRoomResponse.Result - 35, // 158: dota.CMsgClientToGCCavernCrawlUseItemOnPathResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlUseItemOnPathResponse.Result - 36, // 159: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.Result - 500, // 160: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.inventory_item:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.InventoryItem - 502, // 161: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.map_variants:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.MapVariant - 37, // 162: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.Result - 503, // 163: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.map_variants:type_name -> dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.MapVariant - 504, // 164: dota.CMsgDOTAMutationList.mutations:type_name -> dota.CMsgDOTAMutationList.Mutation - 519, // 165: dota.CMsgEventTipsSummaryRequest.event_id:type_name -> dota.EEvent - 505, // 166: dota.CMsgEventTipsSummaryResponse.tips_received:type_name -> dota.CMsgEventTipsSummaryResponse.Tipper - 38, // 167: dota.CMsgSocialFeedResponse.result:type_name -> dota.CMsgSocialFeedResponse.Result - 506, // 168: dota.CMsgSocialFeedResponse.feed_events:type_name -> dota.CMsgSocialFeedResponse.FeedEvent - 39, // 169: dota.CMsgSocialFeedCommentsResponse.result:type_name -> dota.CMsgSocialFeedCommentsResponse.Result - 507, // 170: dota.CMsgSocialFeedCommentsResponse.feed_comments:type_name -> dota.CMsgSocialFeedCommentsResponse.FeedComment - 40, // 171: dota.CMsgClientToGCPlayerCardSpecificPurchaseResponse.result:type_name -> dota.CMsgClientToGCPlayerCardSpecificPurchaseResponse.Result - 41, // 172: dota.CMsgClientToGCRequestContestVotesResponse.result:type_name -> dota.CMsgClientToGCRequestContestVotesResponse.EResponse - 508, // 173: dota.CMsgClientToGCRequestContestVotesResponse.votes:type_name -> dota.CMsgClientToGCRequestContestVotesResponse.ItemVote - 42, // 174: dota.CMsgGCToClientRecordContestVoteResponse.eresult:type_name -> dota.CMsgGCToClientRecordContestVoteResponse.EResult - 519, // 175: dota.CMsgDevGrantEventPoints.event_id:type_name -> dota.EEvent - 6, // 176: dota.CMsgDevGrantEventPointsResponse.result:type_name -> dota.EDevEventRequestResult - 519, // 177: dota.CMsgDevGrantEventAction.event_id:type_name -> dota.EEvent - 6, // 178: dota.CMsgDevGrantEventActionResponse.result:type_name -> dota.EDevEventRequestResult - 519, // 179: dota.CMsgDevDeleteEventActions.event_id:type_name -> dota.EEvent - 6, // 180: dota.CMsgDevDeleteEventActionsResponse.result:type_name -> dota.EDevEventRequestResult - 519, // 181: dota.CMsgDevResetEventState.event_id:type_name -> dota.EEvent - 6, // 182: dota.CMsgDevResetEventStateResponse.result:type_name -> dota.EDevEventRequestResult - 7, // 183: dota.CMsgConsumeEventSupportGrantItemResponse.result:type_name -> dota.ESupportEventRequestResult - 43, // 184: dota.CMsgGCToClientGetFilteredPlayersResponse.result:type_name -> dota.CMsgGCToClientGetFilteredPlayersResponse.Result - 509, // 185: dota.CMsgGCToClientGetFilteredPlayersResponse.filtered_players:type_name -> dota.CMsgGCToClientGetFilteredPlayersResponse.CFilterEntry - 44, // 186: dota.CMsgGCToClientRemoveFilteredPlayerResponse.result:type_name -> dota.CMsgGCToClientRemoveFilteredPlayerResponse.Result - 45, // 187: dota.CMsgGCToClientPurchaseFilteredPlayerSlotResponse.result:type_name -> dota.CMsgGCToClientPurchaseFilteredPlayerSlotResponse.Result - 46, // 188: dota.CMsgGCToClientUpdateFilteredPlayerNoteResponse.result:type_name -> dota.CMsgGCToClientUpdateFilteredPlayerNoteResponse.Result - 47, // 189: dota.CMsgClientToGCUpdatePartyBeacon.action:type_name -> dota.CMsgClientToGCUpdatePartyBeacon.Action - 48, // 190: dota.CMsgGCToClientRequestActiveBeaconPartiesResponse.response:type_name -> dota.CMsgGCToClientRequestActiveBeaconPartiesResponse.EResponse - 536, // 191: dota.CMsgGCToClientRequestActiveBeaconPartiesResponse.active_parties:type_name -> dota.CPartySearchClientParty - 49, // 192: dota.CMsgGCToClientJoinPartyFromBeaconResponse.response:type_name -> dota.CMsgGCToClientJoinPartyFromBeaconResponse.EResponse - 50, // 193: dota.CMsgClientToGCManageFavorites.action:type_name -> dota.CMsgClientToGCManageFavorites.Action - 51, // 194: dota.CMsgGCToClientManageFavoritesResponse.response:type_name -> dota.CMsgGCToClientManageFavoritesResponse.EResponse - 333, // 195: dota.CMsgGCToClientManageFavoritesResponse.player:type_name -> dota.CMsgPartySearchPlayer - 52, // 196: dota.CMsgGCToClientGetFavoritePlayersResponse.response:type_name -> dota.CMsgGCToClientGetFavoritePlayersResponse.EResponse - 333, // 197: dota.CMsgGCToClientGetFavoritePlayersResponse.players:type_name -> dota.CMsgPartySearchPlayer - 510, // 198: dota.CMsgGCToClientVerifyFavoritePlayersResponse.results:type_name -> dota.CMsgGCToClientVerifyFavoritePlayersResponse.Result - 53, // 199: dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.result:type_name -> dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.EResponse - 537, // 200: dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.player_accomplishments:type_name -> dota.CMsgPlayerRecentAccomplishments - 54, // 201: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.result:type_name -> dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.EResponse - 538, // 202: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.hero_accomplishments:type_name -> dota.CMsgPlayerHeroRecentAccomplishments - 55, // 203: dota.CMsgClientToGCSubmitPlayerMatchSurveyResponse.eresult:type_name -> dota.CMsgClientToGCSubmitPlayerMatchSurveyResponse.EResponse - 8, // 204: dota.CMsgClientToGCUnderDraftResponse.result:type_name -> dota.EUnderDraftResponse - 539, // 205: dota.CMsgClientToGCUnderDraftResponse.draft_data:type_name -> dota.CMsgUnderDraftData - 8, // 206: dota.CMsgClientToGCUnderDraftRerollResponse.result:type_name -> dota.EUnderDraftResponse - 539, // 207: dota.CMsgClientToGCUnderDraftRerollResponse.draft_data:type_name -> dota.CMsgUnderDraftData - 8, // 208: dota.CMsgClientToGCUnderDraftBuyResponse.result:type_name -> dota.EUnderDraftResponse - 539, // 209: dota.CMsgClientToGCUnderDraftBuyResponse.draft_data:type_name -> dota.CMsgUnderDraftData - 8, // 210: dota.CMsgClientToGCUnderDraftRollBackBenchResponse.result:type_name -> dota.EUnderDraftResponse - 539, // 211: dota.CMsgClientToGCUnderDraftRollBackBenchResponse.draft_data:type_name -> dota.CMsgUnderDraftData - 8, // 212: dota.CMsgClientToGCUnderDraftSellResponse.result:type_name -> dota.EUnderDraftResponse - 539, // 213: dota.CMsgClientToGCUnderDraftSellResponse.draft_data:type_name -> dota.CMsgUnderDraftData - 8, // 214: dota.CMsgClientToGCUnderDraftRedeemRewardResponse.result:type_name -> dota.EUnderDraftResponse - 9, // 215: dota.CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse.result:type_name -> dota.EDOTADraftTriviaAnswerResult - 56, // 216: dota.CMsgClientToGCRecalibrateMMRResponse.result:type_name -> dota.CMsgClientToGCRecalibrateMMRResponse.EResponse - 57, // 217: dota.CMsgClientToGCGetOWMatchDetailsResponse.result:type_name -> dota.CMsgClientToGCGetOWMatchDetailsResponse.EResponse - 511, // 218: dota.CMsgClientToGCGetOWMatchDetailsResponse.markers:type_name -> dota.CMsgClientToGCGetOWMatchDetailsResponse.Marker - 540, // 219: dota.CMsgClientToGCGetOWMatchDetailsResponse.report_reason:type_name -> dota.EOverwatchReportReason - 541, // 220: dota.CMsgClientToGCSubmitOWConviction.cheating_conviction:type_name -> dota.EOverwatchConviction - 541, // 221: dota.CMsgClientToGCSubmitOWConviction.griefing_conviction:type_name -> dota.EOverwatchConviction - 58, // 222: dota.CMsgClientToGCSubmitOWConvictionResponse.result:type_name -> dota.CMsgClientToGCSubmitOWConvictionResponse.EResponse - 59, // 223: dota.CMsgClientToGCGetDPCFavoritesResponse.result:type_name -> dota.CMsgClientToGCGetDPCFavoritesResponse.EResponse - 512, // 224: dota.CMsgClientToGCGetDPCFavoritesResponse.favorites:type_name -> dota.CMsgClientToGCGetDPCFavoritesResponse.Favorite - 542, // 225: dota.CMsgClientToGCSetDPCFavoriteState.favorite_type:type_name -> dota.EDPCFavoriteType - 60, // 226: dota.CMsgClientToGCSetDPCFavoriteStateResponse.result:type_name -> dota.CMsgClientToGCSetDPCFavoriteStateResponse.EResponse - 61, // 227: dota.CMsgClientToGCSetEventActiveSeasonIDResponse.result:type_name -> dota.CMsgClientToGCSetEventActiveSeasonIDResponse.EResponse - 519, // 228: dota.CMsgClientToGCPurchaseLabyrinthBlessings.event_id:type_name -> dota.EEvent - 62, // 229: dota.CMsgClientToGCPurchaseLabyrinthBlessingsResponse.result:type_name -> dota.CMsgClientToGCPurchaseLabyrinthBlessingsResponse.EResponse - 63, // 230: dota.CMsgClientToGCGetStickerbookResponse.response:type_name -> dota.CMsgClientToGCGetStickerbookResponse.EResponse - 543, // 231: dota.CMsgClientToGCGetStickerbookResponse.stickerbook:type_name -> dota.CMsgStickerbook - 519, // 232: dota.CMsgClientToGCCreateStickerbookPageRequest.event_id:type_name -> dota.EEvent - 544, // 233: dota.CMsgClientToGCCreateStickerbookPageRequest.page_type:type_name -> dota.EStickerbookPageType - 64, // 234: dota.CMsgClientToGCCreateStickerbookPageResponse.response:type_name -> dota.CMsgClientToGCCreateStickerbookPageResponse.EResponse - 65, // 235: dota.CMsgClientToGCDeleteStickerbookPageResponse.response:type_name -> dota.CMsgClientToGCDeleteStickerbookPageResponse.EResponse - 513, // 236: dota.CMsgClientToGCPlaceStickersRequest.sticker_items:type_name -> dota.CMsgClientToGCPlaceStickersRequest.StickerItem - 66, // 237: dota.CMsgClientToGCPlaceStickersResponse.response:type_name -> dota.CMsgClientToGCPlaceStickersResponse.EResponse - 514, // 238: dota.CMsgClientToGCPlaceCollectionStickersRequest.slots:type_name -> dota.CMsgClientToGCPlaceCollectionStickersRequest.Slot - 67, // 239: dota.CMsgClientToGCPlaceCollectionStickersResponse.response:type_name -> dota.CMsgClientToGCPlaceCollectionStickersResponse.EResponse - 545, // 240: dota.CMsgClientToGCOrderStickerbookTeamPageRequest.page_order_sequence:type_name -> dota.CMsgStickerbookTeamPageOrderSequence - 68, // 241: dota.CMsgClientToGCOrderStickerbookTeamPageResponse.response:type_name -> dota.CMsgClientToGCOrderStickerbookTeamPageResponse.EResponse - 69, // 242: dota.CMsgClientToGCSetHeroStickerResponse.response:type_name -> dota.CMsgClientToGCSetHeroStickerResponse.EResponse - 70, // 243: dota.CMsgClientToGCGetHeroStickersResponse.response:type_name -> dota.CMsgClientToGCGetHeroStickersResponse.EResponse - 546, // 244: dota.CMsgClientToGCGetHeroStickersResponse.sticker_heroes:type_name -> dota.CMsgStickerHeroes - 71, // 245: dota.CMsgClientToGCSetFavoritePageResponse.response:type_name -> dota.CMsgClientToGCSetFavoritePageResponse.EResponse - 519, // 246: dota.CMsgClientToGCClaimSwag.event_id:type_name -> dota.EEvent - 72, // 247: dota.CMsgClientToGCClaimSwagResponse.response:type_name -> dota.CMsgClientToGCClaimSwagResponse.EResponse - 515, // 248: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.votes:type_name -> dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote - 547, // 249: dota.CMsgClientToGCUploadMatchClip.match_clip:type_name -> dota.CMatchClip - 74, // 250: dota.CMsgGCToClientUploadMatchClipResponse.response:type_name -> dota.CMsgGCToClientUploadMatchClipResponse.EResponse - 75, // 251: dota.CMsgGCToClientMapStatsResponse.response:type_name -> dota.CMsgGCToClientMapStatsResponse.EResponse - 548, // 252: dota.CMsgGCToClientMapStatsResponse.personal_stats:type_name -> dota.CMsgMapStatsSnapshot - 549, // 253: dota.CMsgGCToClientMapStatsResponse.global_stats:type_name -> dota.CMsgGlobalMapStats - 516, // 254: dota.CMsgDOTARequestMatchesResponse.Series.matches:type_name -> dota.CMsgDOTAMatch - 115, // 255: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.all_stats:type_name -> dota.CMatchPlayerTimedStatAverages - 115, // 256: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.winning_stats:type_name -> dota.CMatchPlayerTimedStatAverages - 115, // 257: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.losing_stats:type_name -> dota.CMatchPlayerTimedStatAverages - 116, // 258: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.winning_stddevs:type_name -> dota.CMatchPlayerTimedStatStdDeviations - 116, // 259: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.losing_stddevs:type_name -> dota.CMatchPlayerTimedStatStdDeviations - 425, // 260: dota.CMsgGCGetHeroTimedStatsResponse.RankChunkedStats.timed_stats:type_name -> dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer - 550, // 261: dota.CMsgClientToGCSetProfileCardSlots.CardSlot.slot_type:type_name -> dota.EProfileCardSlotType - 3, // 262: dota.CMsgDOTAPartyRichPresence.WeekendTourney.event:type_name -> dota.EWeekendTourneyRichPresenceEvent - 439, // 263: dota.CMsgClientToGCGetQuestProgressResponse.Quest.completed_challenges:type_name -> dota.CMsgClientToGCGetQuestProgressResponse.Challenge - 519, // 264: dota.CMsgEventGoals.EventGoal.event_id:type_name -> dota.EEvent - 442, // 265: dota.CMsgPredictionRankings.Prediction.prediction_lines:type_name -> dota.CMsgPredictionRankings.PredictionLine - 444, // 266: dota.CMsgPredictionResults.Result.result_breakdown:type_name -> dota.CMsgPredictionResults.ResultBreakdown - 532, // 267: dota.CMsgProfileResponse.FeaturedHero.equipped_econ_items:type_name -> dota.CSOEconItem - 532, // 268: dota.CMsgProfileResponse.FeaturedHero.plus_hero_relics_item:type_name -> dota.CSOEconItem - 281, // 269: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk.talent_win_rates:type_name -> dota.CMsgTalentWinRates - 282, // 270: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk.hero_averages:type_name -> dota.CMsgGlobalHeroAverages - 493, // 271: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk.graph_data:type_name -> dota.CMsgHeroGlobalDataResponse.GraphData - 494, // 272: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk.week_data:type_name -> dota.CMsgHeroGlobalDataResponse.WeekData - 496, // 273: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.RankedHeroData.hero_data:type_name -> dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.HeroData - 499, // 274: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.MapVariant.swapped_challenge:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.SwappedChallenge - 501, // 275: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.MapVariant.treasure_map:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.TreasureMap - 333, // 276: dota.CMsgGCToClientVerifyFavoritePlayersResponse.Result.player:type_name -> dota.CMsgPartySearchPlayer - 542, // 277: dota.CMsgClientToGCGetDPCFavoritesResponse.Favorite.favorite_type:type_name -> dota.EDPCFavoriteType - 551, // 278: dota.CMsgClientToGCPlaceStickersRequest.StickerItem.sticker:type_name -> dota.CMsgStickerbookSticker - 73, // 279: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote.vote_type:type_name -> dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote.EVoteType - 280, // [280:280] is the sub-list for method output_type - 280, // [280:280] is the sub-list for method input_type - 280, // [280:280] is the sub-list for extension type_name - 280, // [280:280] is the sub-list for extension extendee - 0, // [0:280] is the sub-list for field type_name + 12, // 4: dota.CMsgDOTASubmitPlayerReportResponseV2.enum_result:type_name -> dota.CMsgDOTASubmitPlayerReportResponseV2.EResult + 542, // 5: dota.CMsgDOTAKickedFromMatchmakingQueue.match_type:type_name -> dota.MatchType + 541, // 6: dota.CMsgGCMatchDetailsResponse.match:type_name -> dota.CMsgDOTAMatch + 543, // 7: dota.CMsgGCMatchDetailsResponse.vote:type_name -> dota.DOTAMatchVote + 445, // 8: dota.CMsgDOTAProfileTickets.league_passes:type_name -> dota.CMsgDOTAProfileTickets.LeaguePass + 352, // 9: dota.CMsgGCToClientPartySearchInvites.invites:type_name -> dota.CMsgGCToClientPartySearchInvite + 446, // 10: dota.CMsgDOTAWelcome.extra_messages:type_name -> dota.CMsgDOTAWelcome.CExtraMsg + 544, // 11: dota.CMsgDOTAWelcome.active_event:type_name -> dota.EEvent + 102, // 12: dota.CMsgDOTAWelcome.party_search_friend_invites:type_name -> dota.CMsgGCToClientPartySearchInvites + 545, // 13: dota.CMsgDOTAWelcome.extra_message_blocks:type_name -> dota.CExtraMsgBlock + 447, // 14: dota.CMsgDOTAMatchVotes.votes:type_name -> dota.CMsgDOTAMatchVotes.PlayerVote + 546, // 15: dota.CMsgMatchmakingMatchGroupInfo.status:type_name -> dota.EMatchGroupServerStatus + 106, // 16: dota.CMsgDOTAMatchmakingStatsResponse.match_groups:type_name -> dota.CMsgMatchmakingMatchGroupInfo + 108, // 17: dota.CMsgDOTAUpdateMatchmakingStats.stats:type_name -> dota.CMsgDOTAMatchmakingStatsResponse + 108, // 18: dota.CMsgDOTAUpdateMatchManagementStats.stats:type_name -> dota.CMsgDOTAMatchmakingStatsResponse + 1, // 19: dota.CMsgGCWatchDownloadedReplay.watch_type:type_name -> dota.DOTA_WatchReplayType + 448, // 20: dota.CMsgGCGetHeroStandingsResponse.standings:type_name -> dota.CMsgGCGetHeroStandingsResponse.Hero + 450, // 21: dota.CMsgGCGetHeroTimedStatsResponse.rank_chunked_stats:type_name -> dota.CMsgGCGetHeroTimedStatsResponse.RankChunkedStats + 126, // 22: dota.CMsgGCItemEditorReservationsResponse.reservations:type_name -> dota.CMsgGCItemEditorReservation + 451, // 23: dota.CMsgDOTAClaimEventActionData.grant_item_gift_data:type_name -> dota.CMsgDOTAClaimEventActionData.GrantItemGiftData + 135, // 24: dota.CMsgDOTAClaimEventAction.data:type_name -> dota.CMsgDOTAClaimEventActionData + 13, // 25: dota.CMsgDOTAClaimEventActionResponse.result:type_name -> dota.CMsgDOTAClaimEventActionResponse.ResultCode + 455, // 26: dota.CMsgDOTAClaimEventActionResponse.reward_results:type_name -> dota.CMsgDOTAClaimEventActionResponse.GrantedRewardData + 137, // 27: dota.CMsgClientToGCClaimEventActionUsingItemResponse.action_results:type_name -> dota.CMsgDOTAClaimEventActionResponse + 137, // 28: dota.CMsgGCToClientClaimEventActionUsingItemCompleted.action_results:type_name -> dota.CMsgDOTAClaimEventActionResponse + 456, // 29: dota.CMsgDOTAGetEventPointsResponse.completed_actions:type_name -> dota.CMsgDOTAGetEventPointsResponse.Action + 143, // 30: dota.CMsgDOTAPeriodicResourceUpdated.periodic_resource_key:type_name -> dota.CMsgDOTAGetPeriodicResource + 144, // 31: dota.CMsgDOTAPeriodicResourceUpdated.periodic_resource_value:type_name -> dota.CMsgDOTAGetPeriodicResourceResponse + 146, // 32: dota.CMsgDOTACompendiumData.selections:type_name -> dota.CMsgDOTACompendiumSelection + 148, // 33: dota.CMsgDOTACompendiumDataResponse.compendium_data:type_name -> dota.CMsgDOTACompendiumData + 457, // 34: dota.CMsgDOTAGetPlayerMatchHistoryResponse.matches:type_name -> dota.CMsgDOTAGetPlayerMatchHistoryResponse.Match + 14, // 35: dota.CMsgGCNotificationsUpdate.result:type_name -> dota.CMsgGCNotificationsUpdate.EResult + 154, // 36: dota.CMsgGCNotificationsUpdate.notifications:type_name -> dota.CMsgGCNotifications_Notification + 155, // 37: dota.CMsgGCNotificationsResponse.update:type_name -> dota.CMsgGCNotificationsUpdate + 15, // 38: dota.CMsgGCPlayerInfoSubmitResponse.result:type_name -> dota.CMsgGCPlayerInfoSubmitResponse.EResult + 160, // 39: dota.CMsgGCToClientEmoticonData.emoticon_access:type_name -> dota.CMsgDOTAEmoticonAccessSDO + 458, // 40: dota.CMsgClientToGCGetTrophyListResponse.trophies:type_name -> dota.CMsgClientToGCGetTrophyListResponse.Trophy + 547, // 41: dota.CMsgClientToGCRankRequest.rank_type:type_name -> dota.ERankType + 16, // 42: dota.CMsgGCToClientRankResponse.result:type_name -> dota.CMsgGCToClientRankResponse.EResultCode + 547, // 43: dota.CMsgGCToClientRankUpdate.rank_type:type_name -> dota.ERankType + 172, // 44: dota.CMsgGCToClientRankUpdate.rank_info:type_name -> dota.CMsgGCToClientRankResponse + 459, // 45: dota.CMsgClientToGCSetProfileCardSlots.slots:type_name -> dota.CMsgClientToGCSetProfileCardSlots.CardSlot + 460, // 46: dota.CMsgGCToClientCustomGamesFriendsPlayedResponse.games:type_name -> dota.CMsgGCToClientCustomGamesFriendsPlayedResponse.CustomGame + 548, // 47: dota.CMsgDOTAPartyRichPresence.party_state:type_name -> dota.CSODOTAParty.State + 461, // 48: dota.CMsgDOTAPartyRichPresence.members:type_name -> dota.CMsgDOTAPartyRichPresence.Member + 462, // 49: dota.CMsgDOTAPartyRichPresence.weekend_tourney:type_name -> dota.CMsgDOTAPartyRichPresence.WeekendTourney + 549, // 50: dota.CMsgDOTALobbyRichPresence.lobby_state:type_name -> dota.CSODOTALobby.State + 550, // 51: dota.CMsgDOTALobbyRichPresence.game_mode:type_name -> dota.DOTA_GameMode + 464, // 52: dota.CMsgClientToGCGetQuestProgressResponse.quests:type_name -> dota.CMsgClientToGCGetQuestProgressResponse.Quest + 551, // 53: dota.CMsgGCGetHeroStatsHistoryResponse.records:type_name -> dota.CMsgDOTASDOHeroStatsHistory + 17, // 54: dota.CMsgPlayerConductScorecard.behavior_rating:type_name -> dota.CMsgPlayerConductScorecard.EBehaviorRating + 203, // 55: dota.CMsgGCToClientWageringUpdate.wagering_info:type_name -> dota.CMsgGCToClientWageringResponse + 222, // 56: dota.CMsgGCToClientArcanaVotesUpdate.arcana_votes:type_name -> dota.CMsgClientToGCRequestArcanaVotesRemainingResponse + 544, // 57: dota.CMsgClientToGCGetEventGoals.event_ids:type_name -> dota.EEvent + 465, // 58: dota.CMsgEventGoals.event_goals:type_name -> dota.CMsgEventGoals.EventGoal + 467, // 59: dota.CMsgPredictionRankings.predictions:type_name -> dota.CMsgPredictionRankings.Prediction + 469, // 60: dota.CMsgPredictionResults.results:type_name -> dota.CMsgPredictionResults.Result + 470, // 61: dota.CMsgClientToGCTeammateStatsResponse.teammate_stats:type_name -> dota.CMsgClientToGCTeammateStatsResponse.TeammateStat + 552, // 62: dota.CMsgClientToGCVoteForArcana.matches:type_name -> dota.CMsgArcanaVoteMatchVotes + 18, // 63: dota.CMsgClientToGCVoteForArcanaResponse.result:type_name -> dota.CMsgClientToGCVoteForArcanaResponse.Result + 552, // 64: dota.CMsgClientToGCRequestArcanaVotesRemainingResponse.matches_previously_voted_for:type_name -> dota.CMsgArcanaVoteMatchVotes + 544, // 65: dota.CMsgClientToGCRequestEventPointLogResponseV2.event_id:type_name -> dota.EEvent + 471, // 66: dota.CMsgClientToGCRequestEventPointLogResponseV2.log_entries:type_name -> dota.CMsgClientToGCRequestEventPointLogResponseV2.LogEntry + 544, // 67: dota.CMsgClientToGCRequestSlarkGameResult.event_id:type_name -> dota.EEvent + 472, // 68: dota.CMsgGCToClientQuestProgressUpdated.completed_challenges:type_name -> dota.CMsgGCToClientQuestProgressUpdated.Challenge + 19, // 69: dota.CMsgDOTARedeemItemResponse.response:type_name -> dota.CMsgDOTARedeemItemResponse.EResultCode + 473, // 70: dota.CMsgClientToGCSelectCompendiumInGamePrediction.predictions:type_name -> dota.CMsgClientToGCSelectCompendiumInGamePrediction.Prediction + 20, // 71: dota.CMsgClientToGCSelectCompendiumInGamePredictionResponse.result:type_name -> dota.CMsgClientToGCSelectCompendiumInGamePredictionResponse.EResult + 553, // 72: dota.CMsgClientToGCOpenPlayerCardPack.region:type_name -> dota.ELeagueRegion + 21, // 73: dota.CMsgClientToGCOpenPlayerCardPackResponse.result:type_name -> dota.CMsgClientToGCOpenPlayerCardPackResponse.Result + 22, // 74: dota.CMsgClientToGCRecyclePlayerCardResponse.result:type_name -> dota.CMsgClientToGCRecyclePlayerCardResponse.Result + 23, // 75: dota.CMsgClientToGCCreatePlayerCardPackResponse.result:type_name -> dota.CMsgClientToGCCreatePlayerCardPackResponse.Result + 24, // 76: dota.CMsgClientToGCCreateTeamPlayerCardPackResponse.result:type_name -> dota.CMsgClientToGCCreateTeamPlayerCardPackResponse.Result + 474, // 77: dota.CMsgGCToClientBattlePassRollup_International2016.questlines:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Questlines + 475, // 78: dota.CMsgGCToClientBattlePassRollup_International2016.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Wagering + 476, // 79: dota.CMsgGCToClientBattlePassRollup_International2016.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Achievements + 477, // 80: dota.CMsgGCToClientBattlePassRollup_International2016.battle_cup:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.BattleCup + 478, // 81: dota.CMsgGCToClientBattlePassRollup_International2016.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Predictions + 479, // 82: dota.CMsgGCToClientBattlePassRollup_International2016.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.Bracket + 480, // 83: dota.CMsgGCToClientBattlePassRollup_International2016.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.PlayerCard + 481, // 84: dota.CMsgGCToClientBattlePassRollup_International2016.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016.FantasyChallenge + 482, // 85: dota.CMsgGCToClientBattlePassRollup_Fall2016.questlines:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Questlines + 483, // 86: dota.CMsgGCToClientBattlePassRollup_Fall2016.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Wagering + 484, // 87: dota.CMsgGCToClientBattlePassRollup_Fall2016.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Achievements + 485, // 88: dota.CMsgGCToClientBattlePassRollup_Fall2016.battle_cup:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.BattleCup + 486, // 89: dota.CMsgGCToClientBattlePassRollup_Fall2016.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Predictions + 487, // 90: dota.CMsgGCToClientBattlePassRollup_Fall2016.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.Bracket + 488, // 91: dota.CMsgGCToClientBattlePassRollup_Fall2016.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.PlayerCard + 489, // 92: dota.CMsgGCToClientBattlePassRollup_Fall2016.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016.FantasyChallenge + 490, // 93: dota.CMsgGCToClientBattlePassRollup_Winter2017.questlines:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Questlines + 491, // 94: dota.CMsgGCToClientBattlePassRollup_Winter2017.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Wagering + 492, // 95: dota.CMsgGCToClientBattlePassRollup_Winter2017.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Achievements + 493, // 96: dota.CMsgGCToClientBattlePassRollup_Winter2017.battle_cup:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.BattleCup + 494, // 97: dota.CMsgGCToClientBattlePassRollup_Winter2017.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Predictions + 495, // 98: dota.CMsgGCToClientBattlePassRollup_Winter2017.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.Bracket + 496, // 99: dota.CMsgGCToClientBattlePassRollup_Winter2017.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.PlayerCard + 497, // 100: dota.CMsgGCToClientBattlePassRollup_Winter2017.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017.FantasyChallenge + 498, // 101: dota.CMsgGCToClientBattlePassRollup_TI7.questlines:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Questlines + 499, // 102: dota.CMsgGCToClientBattlePassRollup_TI7.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Wagering + 500, // 103: dota.CMsgGCToClientBattlePassRollup_TI7.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Achievements + 501, // 104: dota.CMsgGCToClientBattlePassRollup_TI7.battle_cup:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.BattleCup + 502, // 105: dota.CMsgGCToClientBattlePassRollup_TI7.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Predictions + 503, // 106: dota.CMsgGCToClientBattlePassRollup_TI7.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.Bracket + 504, // 107: dota.CMsgGCToClientBattlePassRollup_TI7.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.PlayerCard + 505, // 108: dota.CMsgGCToClientBattlePassRollup_TI7.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7.FantasyChallenge + 506, // 109: dota.CMsgGCToClientBattlePassRollup_TI8.cavern_crawl:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.CavernCrawl + 507, // 110: dota.CMsgGCToClientBattlePassRollup_TI8.wagering:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.Wagering + 508, // 111: dota.CMsgGCToClientBattlePassRollup_TI8.achievements:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.Achievements + 509, // 112: dota.CMsgGCToClientBattlePassRollup_TI8.predictions:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.Predictions + 510, // 113: dota.CMsgGCToClientBattlePassRollup_TI8.bracket:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.Bracket + 511, // 114: dota.CMsgGCToClientBattlePassRollup_TI8.player_cards:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.PlayerCard + 512, // 115: dota.CMsgGCToClientBattlePassRollup_TI8.fantasy_challenge:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8.FantasyChallenge + 241, // 116: dota.CMsgGCToClientBattlePassRollupResponse.event_ti6:type_name -> dota.CMsgGCToClientBattlePassRollup_International2016 + 242, // 117: dota.CMsgGCToClientBattlePassRollupResponse.event_fall2016:type_name -> dota.CMsgGCToClientBattlePassRollup_Fall2016 + 243, // 118: dota.CMsgGCToClientBattlePassRollupResponse.event_winter2017:type_name -> dota.CMsgGCToClientBattlePassRollup_Winter2017 + 244, // 119: dota.CMsgGCToClientBattlePassRollupResponse.event_ti7:type_name -> dota.CMsgGCToClientBattlePassRollup_TI7 + 245, // 120: dota.CMsgGCToClientBattlePassRollupResponse.event_ti8:type_name -> dota.CMsgGCToClientBattlePassRollup_TI8 + 246, // 121: dota.CMsgGCToClientBattlePassRollupResponse.event_ti9:type_name -> dota.CMsgGCToClientBattlePassRollup_TI9 + 247, // 122: dota.CMsgGCToClientBattlePassRollupResponse.event_ti10:type_name -> dota.CMsgGCToClientBattlePassRollup_TI10 + 513, // 123: dota.CMsgGCToClientBattlePassRollupListResponse.event_info:type_name -> dota.CMsgGCToClientBattlePassRollupListResponse.EventInfo + 554, // 124: dota.CMsgDOTATriviaCurrentQuestions.questions:type_name -> dota.CMsgDOTATriviaQuestion + 4, // 125: dota.CMsgDOTASubmitTriviaQuestionAnswerResponse.result:type_name -> dota.EDOTATriviaAnswerResult + 25, // 126: dota.CMsgDOTAAnchorPhoneNumberResponse.result:type_name -> dota.CMsgDOTAAnchorPhoneNumberResponse.Result + 26, // 127: dota.CMsgDOTAUnanchorPhoneNumberResponse.result:type_name -> dota.CMsgDOTAUnanchorPhoneNumberResponse.Result + 268, // 128: dota.CMsgDOTAClientToGCQuickStatsResponse.original_request:type_name -> dota.CMsgDOTAClientToGCQuickStatsRequest + 514, // 129: dota.CMsgDOTAClientToGCQuickStatsResponse.hero_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats + 514, // 130: dota.CMsgDOTAClientToGCQuickStatsResponse.item_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats + 514, // 131: dota.CMsgDOTAClientToGCQuickStatsResponse.item_hero_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats + 514, // 132: dota.CMsgDOTAClientToGCQuickStatsResponse.item_player_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats + 514, // 133: dota.CMsgDOTAClientToGCQuickStatsResponse.hero_player_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats + 514, // 134: dota.CMsgDOTAClientToGCQuickStatsResponse.full_set_stats:type_name -> dota.CMsgDOTAClientToGCQuickStatsResponse.SimpleStats + 555, // 135: dota.CMsgDOTASelectionPriorityChoiceRequest.choice:type_name -> dota.DOTASelectionPriorityChoice + 27, // 136: dota.CMsgDOTASelectionPriorityChoiceResponse.result:type_name -> dota.CMsgDOTASelectionPriorityChoiceResponse.Result + 28, // 137: dota.CMsgDOTAGameAutographRewardResponse.result:type_name -> dota.CMsgDOTAGameAutographRewardResponse.Result + 29, // 138: dota.CMsgDOTADestroyLobbyResponse.result:type_name -> dota.CMsgDOTADestroyLobbyResponse.Result + 544, // 139: dota.CMsgPurchaseItemWithEventPoints.event_id:type_name -> dota.EEvent + 30, // 140: dota.CMsgPurchaseItemWithEventPointsResponse.result:type_name -> dota.CMsgPurchaseItemWithEventPointsResponse.Result + 556, // 141: dota.CMsgPurchaseHeroRandomRelic.relic_rarity:type_name -> dota.EHeroRelicRarity + 5, // 142: dota.CMsgPurchaseHeroRandomRelicResponse.result:type_name -> dota.EPurchaseHeroRelicResult + 544, // 143: dota.CMsgClientToGCRequestPlusWeeklyChallengeResult.event_id:type_name -> dota.EEvent + 557, // 144: dota.CMsgProfileResponse.background_item:type_name -> dota.CSOEconItem + 515, // 145: dota.CMsgProfileResponse.featured_heroes:type_name -> dota.CMsgProfileResponse.FeaturedHero + 516, // 146: dota.CMsgProfileResponse.recent_matches:type_name -> dota.CMsgProfileResponse.MatchInfo + 558, // 147: dota.CMsgProfileResponse.successful_heroes:type_name -> dota.CMsgSuccessfulHero + 559, // 148: dota.CMsgProfileResponse.recent_match_details:type_name -> dota.CMsgRecentMatchInfo + 31, // 149: dota.CMsgProfileResponse.result:type_name -> dota.CMsgProfileResponse.EResponse + 560, // 150: dota.CMsgProfileResponse.stickerbook_page:type_name -> dota.CMsgStickerbookPage + 32, // 151: dota.CMsgProfileUpdateResponse.result:type_name -> dota.CMsgProfileUpdateResponse.Result + 519, // 152: dota.CMsgHeroGlobalDataResponse.hero_data_per_chunk:type_name -> dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk + 291, // 153: dota.CMsgHeroGlobalDataAllHeroes.heroes:type_name -> dota.CMsgHeroGlobalDataResponse + 521, // 154: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.ranked_hero_data:type_name -> dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.RankedHeroData + 33, // 155: dota.CMsgActivatePlusFreeTrialResponse.result:type_name -> dota.CMsgActivatePlusFreeTrialResponse.Result + 522, // 156: dota.CMsgGCToClientCavernCrawlMapPathCompleted.completed_paths:type_name -> dota.CMsgGCToClientCavernCrawlMapPathCompleted.CompletedPathInfo + 34, // 157: dota.CMsgClientToGCCavernCrawlClaimRoomResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlClaimRoomResponse.Result + 35, // 158: dota.CMsgClientToGCCavernCrawlUseItemOnRoomResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlUseItemOnRoomResponse.Result + 36, // 159: dota.CMsgClientToGCCavernCrawlUseItemOnPathResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlUseItemOnPathResponse.Result + 37, // 160: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.Result + 524, // 161: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.inventory_item:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.InventoryItem + 526, // 162: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.map_variants:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.MapVariant + 38, // 163: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.result:type_name -> dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.Result + 527, // 164: dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.map_variants:type_name -> dota.CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse.MapVariant + 528, // 165: dota.CMsgDOTAMutationList.mutations:type_name -> dota.CMsgDOTAMutationList.Mutation + 544, // 166: dota.CMsgEventTipsSummaryRequest.event_id:type_name -> dota.EEvent + 529, // 167: dota.CMsgEventTipsSummaryResponse.tips_received:type_name -> dota.CMsgEventTipsSummaryResponse.Tipper + 39, // 168: dota.CMsgSocialFeedResponse.result:type_name -> dota.CMsgSocialFeedResponse.Result + 530, // 169: dota.CMsgSocialFeedResponse.feed_events:type_name -> dota.CMsgSocialFeedResponse.FeedEvent + 40, // 170: dota.CMsgSocialFeedCommentsResponse.result:type_name -> dota.CMsgSocialFeedCommentsResponse.Result + 531, // 171: dota.CMsgSocialFeedCommentsResponse.feed_comments:type_name -> dota.CMsgSocialFeedCommentsResponse.FeedComment + 41, // 172: dota.CMsgClientToGCPlayerCardSpecificPurchaseResponse.result:type_name -> dota.CMsgClientToGCPlayerCardSpecificPurchaseResponse.Result + 42, // 173: dota.CMsgClientToGCRequestContestVotesResponse.result:type_name -> dota.CMsgClientToGCRequestContestVotesResponse.EResponse + 532, // 174: dota.CMsgClientToGCRequestContestVotesResponse.votes:type_name -> dota.CMsgClientToGCRequestContestVotesResponse.ItemVote + 43, // 175: dota.CMsgGCToClientRecordContestVoteResponse.eresult:type_name -> dota.CMsgGCToClientRecordContestVoteResponse.EResult + 544, // 176: dota.CMsgDevGrantEventPoints.event_id:type_name -> dota.EEvent + 6, // 177: dota.CMsgDevGrantEventPointsResponse.result:type_name -> dota.EDevEventRequestResult + 544, // 178: dota.CMsgDevGrantEventAction.event_id:type_name -> dota.EEvent + 6, // 179: dota.CMsgDevGrantEventActionResponse.result:type_name -> dota.EDevEventRequestResult + 544, // 180: dota.CMsgDevDeleteEventActions.event_id:type_name -> dota.EEvent + 6, // 181: dota.CMsgDevDeleteEventActionsResponse.result:type_name -> dota.EDevEventRequestResult + 544, // 182: dota.CMsgDevResetEventState.event_id:type_name -> dota.EEvent + 6, // 183: dota.CMsgDevResetEventStateResponse.result:type_name -> dota.EDevEventRequestResult + 7, // 184: dota.CMsgConsumeEventSupportGrantItemResponse.result:type_name -> dota.ESupportEventRequestResult + 44, // 185: dota.CMsgGCToClientGetFilteredPlayersResponse.result:type_name -> dota.CMsgGCToClientGetFilteredPlayersResponse.Result + 533, // 186: dota.CMsgGCToClientGetFilteredPlayersResponse.filtered_players:type_name -> dota.CMsgGCToClientGetFilteredPlayersResponse.CFilterEntry + 45, // 187: dota.CMsgGCToClientRemoveFilteredPlayerResponse.result:type_name -> dota.CMsgGCToClientRemoveFilteredPlayerResponse.Result + 46, // 188: dota.CMsgGCToClientPurchaseFilteredPlayerSlotResponse.result:type_name -> dota.CMsgGCToClientPurchaseFilteredPlayerSlotResponse.Result + 47, // 189: dota.CMsgGCToClientUpdateFilteredPlayerNoteResponse.result:type_name -> dota.CMsgGCToClientUpdateFilteredPlayerNoteResponse.Result + 48, // 190: dota.CMsgClientToGCUpdatePartyBeacon.action:type_name -> dota.CMsgClientToGCUpdatePartyBeacon.Action + 49, // 191: dota.CMsgGCToClientRequestActiveBeaconPartiesResponse.response:type_name -> dota.CMsgGCToClientRequestActiveBeaconPartiesResponse.EResponse + 561, // 192: dota.CMsgGCToClientRequestActiveBeaconPartiesResponse.active_parties:type_name -> dota.CPartySearchClientParty + 50, // 193: dota.CMsgGCToClientJoinPartyFromBeaconResponse.response:type_name -> dota.CMsgGCToClientJoinPartyFromBeaconResponse.EResponse + 51, // 194: dota.CMsgClientToGCManageFavorites.action:type_name -> dota.CMsgClientToGCManageFavorites.Action + 52, // 195: dota.CMsgGCToClientManageFavoritesResponse.response:type_name -> dota.CMsgGCToClientManageFavoritesResponse.EResponse + 340, // 196: dota.CMsgGCToClientManageFavoritesResponse.player:type_name -> dota.CMsgPartySearchPlayer + 53, // 197: dota.CMsgGCToClientGetFavoritePlayersResponse.response:type_name -> dota.CMsgGCToClientGetFavoritePlayersResponse.EResponse + 340, // 198: dota.CMsgGCToClientGetFavoritePlayersResponse.players:type_name -> dota.CMsgPartySearchPlayer + 534, // 199: dota.CMsgGCToClientVerifyFavoritePlayersResponse.results:type_name -> dota.CMsgGCToClientVerifyFavoritePlayersResponse.Result + 54, // 200: dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.result:type_name -> dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.EResponse + 562, // 201: dota.CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse.player_accomplishments:type_name -> dota.CMsgPlayerRecentAccomplishments + 55, // 202: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.result:type_name -> dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.EResponse + 563, // 203: dota.CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse.hero_accomplishments:type_name -> dota.CMsgPlayerHeroRecentAccomplishments + 56, // 204: dota.CMsgClientToGCSubmitPlayerMatchSurveyResponse.eresult:type_name -> dota.CMsgClientToGCSubmitPlayerMatchSurveyResponse.EResponse + 8, // 205: dota.CMsgClientToGCUnderDraftResponse.result:type_name -> dota.EUnderDraftResponse + 564, // 206: dota.CMsgClientToGCUnderDraftResponse.draft_data:type_name -> dota.CMsgUnderDraftData + 8, // 207: dota.CMsgClientToGCUnderDraftRerollResponse.result:type_name -> dota.EUnderDraftResponse + 564, // 208: dota.CMsgClientToGCUnderDraftRerollResponse.draft_data:type_name -> dota.CMsgUnderDraftData + 8, // 209: dota.CMsgClientToGCUnderDraftBuyResponse.result:type_name -> dota.EUnderDraftResponse + 564, // 210: dota.CMsgClientToGCUnderDraftBuyResponse.draft_data:type_name -> dota.CMsgUnderDraftData + 8, // 211: dota.CMsgClientToGCUnderDraftRollBackBenchResponse.result:type_name -> dota.EUnderDraftResponse + 564, // 212: dota.CMsgClientToGCUnderDraftRollBackBenchResponse.draft_data:type_name -> dota.CMsgUnderDraftData + 8, // 213: dota.CMsgClientToGCUnderDraftSellResponse.result:type_name -> dota.EUnderDraftResponse + 564, // 214: dota.CMsgClientToGCUnderDraftSellResponse.draft_data:type_name -> dota.CMsgUnderDraftData + 8, // 215: dota.CMsgClientToGCUnderDraftRedeemRewardResponse.result:type_name -> dota.EUnderDraftResponse + 9, // 216: dota.CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse.result:type_name -> dota.EDOTADraftTriviaAnswerResult + 57, // 217: dota.CMsgClientToGCRequestReporterUpdatesResponse.enum_result:type_name -> dota.CMsgClientToGCRequestReporterUpdatesResponse.EResponse + 535, // 218: dota.CMsgClientToGCRequestReporterUpdatesResponse.updates:type_name -> dota.CMsgClientToGCRequestReporterUpdatesResponse.ReporterUpdate + 58, // 219: dota.CMsgClientToGCRecalibrateMMRResponse.result:type_name -> dota.CMsgClientToGCRecalibrateMMRResponse.EResponse + 59, // 220: dota.CMsgClientToGCGetOWMatchDetailsResponse.result:type_name -> dota.CMsgClientToGCGetOWMatchDetailsResponse.EResponse + 536, // 221: dota.CMsgClientToGCGetOWMatchDetailsResponse.markers:type_name -> dota.CMsgClientToGCGetOWMatchDetailsResponse.Marker + 565, // 222: dota.CMsgClientToGCGetOWMatchDetailsResponse.report_reason:type_name -> dota.EOverwatchReportReason + 566, // 223: dota.CMsgClientToGCSubmitOWConviction.cheating_conviction:type_name -> dota.EOverwatchConviction + 566, // 224: dota.CMsgClientToGCSubmitOWConviction.griefing_conviction:type_name -> dota.EOverwatchConviction + 60, // 225: dota.CMsgClientToGCSubmitOWConvictionResponse.result:type_name -> dota.CMsgClientToGCSubmitOWConvictionResponse.EResponse + 61, // 226: dota.CMsgClientToGCGetDPCFavoritesResponse.result:type_name -> dota.CMsgClientToGCGetDPCFavoritesResponse.EResponse + 537, // 227: dota.CMsgClientToGCGetDPCFavoritesResponse.favorites:type_name -> dota.CMsgClientToGCGetDPCFavoritesResponse.Favorite + 567, // 228: dota.CMsgClientToGCSetDPCFavoriteState.favorite_type:type_name -> dota.EDPCFavoriteType + 62, // 229: dota.CMsgClientToGCSetDPCFavoriteStateResponse.result:type_name -> dota.CMsgClientToGCSetDPCFavoriteStateResponse.EResponse + 63, // 230: dota.CMsgClientToGCSetEventActiveSeasonIDResponse.result:type_name -> dota.CMsgClientToGCSetEventActiveSeasonIDResponse.EResponse + 544, // 231: dota.CMsgClientToGCPurchaseLabyrinthBlessings.event_id:type_name -> dota.EEvent + 64, // 232: dota.CMsgClientToGCPurchaseLabyrinthBlessingsResponse.result:type_name -> dota.CMsgClientToGCPurchaseLabyrinthBlessingsResponse.EResponse + 65, // 233: dota.CMsgClientToGCGetStickerbookResponse.response:type_name -> dota.CMsgClientToGCGetStickerbookResponse.EResponse + 568, // 234: dota.CMsgClientToGCGetStickerbookResponse.stickerbook:type_name -> dota.CMsgStickerbook + 544, // 235: dota.CMsgClientToGCCreateStickerbookPageRequest.event_id:type_name -> dota.EEvent + 569, // 236: dota.CMsgClientToGCCreateStickerbookPageRequest.page_type:type_name -> dota.EStickerbookPageType + 66, // 237: dota.CMsgClientToGCCreateStickerbookPageResponse.response:type_name -> dota.CMsgClientToGCCreateStickerbookPageResponse.EResponse + 67, // 238: dota.CMsgClientToGCDeleteStickerbookPageResponse.response:type_name -> dota.CMsgClientToGCDeleteStickerbookPageResponse.EResponse + 538, // 239: dota.CMsgClientToGCPlaceStickersRequest.sticker_items:type_name -> dota.CMsgClientToGCPlaceStickersRequest.StickerItem + 68, // 240: dota.CMsgClientToGCPlaceStickersResponse.response:type_name -> dota.CMsgClientToGCPlaceStickersResponse.EResponse + 539, // 241: dota.CMsgClientToGCPlaceCollectionStickersRequest.slots:type_name -> dota.CMsgClientToGCPlaceCollectionStickersRequest.Slot + 69, // 242: dota.CMsgClientToGCPlaceCollectionStickersResponse.response:type_name -> dota.CMsgClientToGCPlaceCollectionStickersResponse.EResponse + 570, // 243: dota.CMsgClientToGCOrderStickerbookTeamPageRequest.page_order_sequence:type_name -> dota.CMsgStickerbookTeamPageOrderSequence + 70, // 244: dota.CMsgClientToGCOrderStickerbookTeamPageResponse.response:type_name -> dota.CMsgClientToGCOrderStickerbookTeamPageResponse.EResponse + 71, // 245: dota.CMsgClientToGCSetHeroStickerResponse.response:type_name -> dota.CMsgClientToGCSetHeroStickerResponse.EResponse + 72, // 246: dota.CMsgClientToGCGetHeroStickersResponse.response:type_name -> dota.CMsgClientToGCGetHeroStickersResponse.EResponse + 571, // 247: dota.CMsgClientToGCGetHeroStickersResponse.sticker_heroes:type_name -> dota.CMsgStickerHeroes + 73, // 248: dota.CMsgClientToGCSetFavoritePageResponse.response:type_name -> dota.CMsgClientToGCSetFavoritePageResponse.EResponse + 544, // 249: dota.CMsgClientToGCClaimSwag.event_id:type_name -> dota.EEvent + 74, // 250: dota.CMsgClientToGCClaimSwagResponse.response:type_name -> dota.CMsgClientToGCClaimSwagResponse.EResponse + 540, // 251: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.votes:type_name -> dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote + 572, // 252: dota.CMsgClientToGCUploadMatchClip.match_clip:type_name -> dota.CMatchClip + 76, // 253: dota.CMsgGCToClientUploadMatchClipResponse.response:type_name -> dota.CMsgGCToClientUploadMatchClipResponse.EResponse + 77, // 254: dota.CMsgGCToClientMapStatsResponse.response:type_name -> dota.CMsgGCToClientMapStatsResponse.EResponse + 573, // 255: dota.CMsgGCToClientMapStatsResponse.personal_stats:type_name -> dota.CMsgMapStatsSnapshot + 574, // 256: dota.CMsgGCToClientMapStatsResponse.global_stats:type_name -> dota.CMsgGlobalMapStats + 430, // 257: dota.CMsgRoadToTIUserData.quests:type_name -> dota.CMsgRoadToTIAssignedQuest + 78, // 258: dota.CMsgClientToGCRoadToTIGetQuestsResponse.response:type_name -> dota.CMsgClientToGCRoadToTIGetQuestsResponse.EResponse + 431, // 259: dota.CMsgClientToGCRoadToTIGetQuestsResponse.quest_data:type_name -> dota.CMsgRoadToTIUserData + 79, // 260: dota.CMsgClientToGCRoadToTIGetActiveQuestResponse.response:type_name -> dota.CMsgClientToGCRoadToTIGetActiveQuestResponse.EResponse + 430, // 261: dota.CMsgClientToGCRoadToTIGetActiveQuestResponse.quest_data:type_name -> dota.CMsgRoadToTIAssignedQuest + 431, // 262: dota.CMsgGCToClientRoadToTIQuestDataUpdated.quest_data:type_name -> dota.CMsgRoadToTIUserData + 80, // 263: dota.CMsgClientToGCRoadToTIUseItemResponse.response:type_name -> dota.CMsgClientToGCRoadToTIUseItemResponse.EResponse + 430, // 264: dota.CMsgLobbyRoadToTIMatchQuestData.quest_data:type_name -> dota.CMsgRoadToTIAssignedQuest + 575, // 265: dota.CMsgClientToGCNewBloomGiftResponse.result:type_name -> dota.ENewBloomGiftingResponse + 541, // 266: dota.CMsgDOTARequestMatchesResponse.Series.matches:type_name -> dota.CMsgDOTAMatch + 122, // 267: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.all_stats:type_name -> dota.CMatchPlayerTimedStatAverages + 122, // 268: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.winning_stats:type_name -> dota.CMatchPlayerTimedStatAverages + 122, // 269: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.losing_stats:type_name -> dota.CMatchPlayerTimedStatAverages + 123, // 270: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.winning_stddevs:type_name -> dota.CMatchPlayerTimedStatStdDeviations + 123, // 271: dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer.losing_stddevs:type_name -> dota.CMatchPlayerTimedStatStdDeviations + 449, // 272: dota.CMsgGCGetHeroTimedStatsResponse.RankChunkedStats.timed_stats:type_name -> dota.CMsgGCGetHeroTimedStatsResponse.TimedStatsContainer + 576, // 273: dota.CMsgClientToGCSetProfileCardSlots.CardSlot.slot_type:type_name -> dota.EProfileCardSlotType + 3, // 274: dota.CMsgDOTAPartyRichPresence.WeekendTourney.event:type_name -> dota.EWeekendTourneyRichPresenceEvent + 463, // 275: dota.CMsgClientToGCGetQuestProgressResponse.Quest.completed_challenges:type_name -> dota.CMsgClientToGCGetQuestProgressResponse.Challenge + 544, // 276: dota.CMsgEventGoals.EventGoal.event_id:type_name -> dota.EEvent + 466, // 277: dota.CMsgPredictionRankings.Prediction.prediction_lines:type_name -> dota.CMsgPredictionRankings.PredictionLine + 468, // 278: dota.CMsgPredictionResults.Result.result_breakdown:type_name -> dota.CMsgPredictionResults.ResultBreakdown + 557, // 279: dota.CMsgProfileResponse.FeaturedHero.equipped_econ_items:type_name -> dota.CSOEconItem + 557, // 280: dota.CMsgProfileResponse.FeaturedHero.plus_hero_relics_item:type_name -> dota.CSOEconItem + 288, // 281: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk.talent_win_rates:type_name -> dota.CMsgTalentWinRates + 289, // 282: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk.hero_averages:type_name -> dota.CMsgGlobalHeroAverages + 517, // 283: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk.graph_data:type_name -> dota.CMsgHeroGlobalDataResponse.GraphData + 518, // 284: dota.CMsgHeroGlobalDataResponse.HeroDataPerRankChunk.week_data:type_name -> dota.CMsgHeroGlobalDataResponse.WeekData + 520, // 285: dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.RankedHeroData.hero_data:type_name -> dota.CMsgHeroGlobalDataHeroesAlliesAndEnemies.HeroData + 523, // 286: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.MapVariant.swapped_challenge:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.SwappedChallenge + 525, // 287: dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.MapVariant.treasure_map:type_name -> dota.CMsgClientToGCCavernCrawlRequestMapStateResponse.TreasureMap + 340, // 288: dota.CMsgGCToClientVerifyFavoritePlayersResponse.Result.player:type_name -> dota.CMsgPartySearchPlayer + 567, // 289: dota.CMsgClientToGCGetDPCFavoritesResponse.Favorite.favorite_type:type_name -> dota.EDPCFavoriteType + 577, // 290: dota.CMsgClientToGCPlaceStickersRequest.StickerItem.sticker:type_name -> dota.CMsgStickerbookSticker + 75, // 291: dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote.vote_type:type_name -> dota.CMsgGCToClientCollectorsCacheAvailableDataResponse.Vote.EVoteType + 292, // [292:292] is the sub-list for method output_type + 292, // [292:292] is the sub-list for method input_type + 292, // [292:292] is the sub-list for extension type_name + 292, // [292:292] is the sub-list for extension extendee + 0, // [0:292] is the sub-list for field type_name } func init() { file_dota_gcmessages_client_proto_init() } @@ -37537,7 +39372,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASubmitLobbyMVPVote); i { + switch v := v.(*CMsgDOTASubmitPlayerReportV2); i { case 0: return &v.state case 1: @@ -37549,7 +39384,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASubmitLobbyMVPVoteResponse); i { + switch v := v.(*CMsgDOTASubmitPlayerReportResponseV2); i { case 0: return &v.state case 1: @@ -37561,7 +39396,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTALobbyMVPAwarded); i { + switch v := v.(*CMsgDOTASubmitLobbyMVPVote); i { case 0: return &v.state case 1: @@ -37573,7 +39408,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAKickedFromMatchmakingQueue); i { + switch v := v.(*CMsgDOTASubmitLobbyMVPVoteResponse); i { case 0: return &v.state case 1: @@ -37585,7 +39420,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCMatchDetailsRequest); i { + switch v := v.(*CMsgDOTALobbyMVPAwarded); i { case 0: return &v.state case 1: @@ -37597,7 +39432,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCMatchDetailsResponse); i { + switch v := v.(*CMsgDOTAKickedFromMatchmakingQueue); i { case 0: return &v.state case 1: @@ -37609,7 +39444,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileTickets); i { + switch v := v.(*CMsgGCMatchDetailsRequest); i { case 0: return &v.state case 1: @@ -37621,7 +39456,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetProfileTickets); i { + switch v := v.(*CMsgGCMatchDetailsResponse); i { case 0: return &v.state case 1: @@ -37633,7 +39468,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientPartySearchInvites); i { + switch v := v.(*CMsgDOTAProfileTickets); i { case 0: return &v.state case 1: @@ -37645,7 +39480,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAWelcome); i { + switch v := v.(*CMsgClientToGCGetProfileTickets); i { case 0: return &v.state case 1: @@ -37657,7 +39492,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAGameHeroFavorites); i { + switch v := v.(*CMsgGCToClientPartySearchInvites); i { case 0: return &v.state case 1: @@ -37669,7 +39504,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatchVotes); i { + switch v := v.(*CMsgDOTAWelcome); i { case 0: return &v.state case 1: @@ -37681,7 +39516,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchmakingMatchGroupInfo); i { + switch v := v.(*CSODOTAGameHeroFavorites); i { case 0: return &v.state case 1: @@ -37693,7 +39528,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatchmakingStatsRequest); i { + switch v := v.(*CMsgDOTAMatchVotes); i { case 0: return &v.state case 1: @@ -37705,7 +39540,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatchmakingStatsResponse); i { + switch v := v.(*CMsgMatchmakingMatchGroupInfo); i { case 0: return &v.state case 1: @@ -37717,7 +39552,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAUpdateMatchmakingStats); i { + switch v := v.(*CMsgDOTAMatchmakingStatsRequest); i { case 0: return &v.state case 1: @@ -37729,7 +39564,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAUpdateMatchManagementStats); i { + switch v := v.(*CMsgDOTAMatchmakingStatsResponse); i { case 0: return &v.state case 1: @@ -37741,7 +39576,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASetMatchHistoryAccess); i { + switch v := v.(*CMsgDOTAUpdateMatchmakingStats); i { case 0: return &v.state case 1: @@ -37753,7 +39588,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASetMatchHistoryAccessResponse); i { + switch v := v.(*CMsgDOTAUpdateMatchManagementStats); i { case 0: return &v.state case 1: @@ -37765,7 +39600,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTANotifyAccountFlagsChange); i { + switch v := v.(*CMsgDOTASetMatchHistoryAccess); i { case 0: return &v.state case 1: @@ -37777,7 +39612,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASetProfilePrivacy); i { + switch v := v.(*CMsgDOTASetMatchHistoryAccessResponse); i { case 0: return &v.state case 1: @@ -37789,7 +39624,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASetProfilePrivacyResponse); i { + switch v := v.(*CMsgDOTANotifyAccountFlagsChange); i { case 0: return &v.state case 1: @@ -37801,7 +39636,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgUpgradeLeagueItem); i { + switch v := v.(*CMsgDOTASetProfilePrivacy); i { case 0: return &v.state case 1: @@ -37813,7 +39648,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgUpgradeLeagueItemResponse); i { + switch v := v.(*CMsgDOTASetProfilePrivacyResponse); i { case 0: return &v.state case 1: @@ -37825,7 +39660,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCWatchDownloadedReplay); i { + switch v := v.(*CMsgUpgradeLeagueItem); i { case 0: return &v.state case 1: @@ -37837,7 +39672,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientsRejoinChatChannels); i { + switch v := v.(*CMsgUpgradeLeagueItemResponse); i { case 0: return &v.state case 1: @@ -37849,7 +39684,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCGetHeroStandings); i { + switch v := v.(*CMsgGCWatchDownloadedReplay); i { case 0: return &v.state case 1: @@ -37861,7 +39696,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCGetHeroStandingsResponse); i { + switch v := v.(*CMsgClientsRejoinChatChannels); i { case 0: return &v.state case 1: @@ -37873,7 +39708,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchPlayerTimedStatAverages); i { + switch v := v.(*CMsgGCGetHeroStandings); i { case 0: return &v.state case 1: @@ -37885,7 +39720,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchPlayerTimedStatStdDeviations); i { + switch v := v.(*CMsgGCGetHeroStandingsResponse); i { case 0: return &v.state case 1: @@ -37897,7 +39732,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCGetHeroTimedStatsResponse); i { + switch v := v.(*CMatchPlayerTimedStatAverages); i { case 0: return &v.state case 1: @@ -37909,7 +39744,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCItemEditorReservationsRequest); i { + switch v := v.(*CMatchPlayerTimedStatStdDeviations); i { case 0: return &v.state case 1: @@ -37921,7 +39756,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCItemEditorReservation); i { + switch v := v.(*CMsgGCGetHeroTimedStatsResponse); i { case 0: return &v.state case 1: @@ -37933,7 +39768,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCItemEditorReservationsResponse); i { + switch v := v.(*CMsgGCItemEditorReservationsRequest); i { case 0: return &v.state case 1: @@ -37945,7 +39780,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCItemEditorReserveItemDef); i { + switch v := v.(*CMsgGCItemEditorReservation); i { case 0: return &v.state case 1: @@ -37957,7 +39792,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCItemEditorReserveItemDefResponse); i { + switch v := v.(*CMsgGCItemEditorReservationsResponse); i { case 0: return &v.state case 1: @@ -37969,7 +39804,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCItemEditorReleaseReservation); i { + switch v := v.(*CMsgGCItemEditorReserveItemDef); i { case 0: return &v.state case 1: @@ -37981,7 +39816,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCItemEditorReleaseReservationResponse); i { + switch v := v.(*CMsgGCItemEditorReserveItemDefResponse); i { case 0: return &v.state case 1: @@ -37993,7 +39828,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARewardTutorialPrizes); i { + switch v := v.(*CMsgGCItemEditorReleaseReservation); i { case 0: return &v.state case 1: @@ -38005,7 +39840,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgFlipLobbyTeams); i { + switch v := v.(*CMsgGCItemEditorReleaseReservationResponse); i { case 0: return &v.state case 1: @@ -38017,7 +39852,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCLobbyUpdateBroadcastChannelInfo); i { + switch v := v.(*CMsgDOTARewardTutorialPrizes); i { case 0: return &v.state case 1: @@ -38029,7 +39864,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAClaimEventActionData); i { + switch v := v.(*CMsgFlipLobbyTeams); i { case 0: return &v.state case 1: @@ -38041,7 +39876,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAClaimEventAction); i { + switch v := v.(*CMsgGCLobbyUpdateBroadcastChannelInfo); i { case 0: return &v.state case 1: @@ -38053,7 +39888,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAClaimEventActionResponse); i { + switch v := v.(*CMsgDOTAClaimEventActionData); i { case 0: return &v.state case 1: @@ -38065,7 +39900,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCClaimEventActionUsingItem); i { + switch v := v.(*CMsgDOTAClaimEventAction); i { case 0: return &v.state case 1: @@ -38077,7 +39912,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCClaimEventActionUsingItemResponse); i { + switch v := v.(*CMsgDOTAClaimEventActionResponse); i { case 0: return &v.state case 1: @@ -38089,7 +39924,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientClaimEventActionUsingItemCompleted); i { + switch v := v.(*CMsgClientToGCClaimEventActionUsingItem); i { case 0: return &v.state case 1: @@ -38101,7 +39936,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAGetEventPoints); i { + switch v := v.(*CMsgClientToGCClaimEventActionUsingItemResponse); i { case 0: return &v.state case 1: @@ -38113,7 +39948,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAGetEventPointsResponse); i { + switch v := v.(*CMsgGCToClientClaimEventActionUsingItemCompleted); i { case 0: return &v.state case 1: @@ -38125,7 +39960,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAGetPeriodicResource); i { + switch v := v.(*CMsgDOTAGetEventPoints); i { case 0: return &v.state case 1: @@ -38137,7 +39972,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAGetPeriodicResourceResponse); i { + switch v := v.(*CMsgDOTAGetEventPointsResponse); i { case 0: return &v.state case 1: @@ -38149,7 +39984,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAPeriodicResourceUpdated); i { + switch v := v.(*CMsgDOTAGetPeriodicResource); i { case 0: return &v.state case 1: @@ -38161,7 +39996,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTACompendiumSelection); i { + switch v := v.(*CMsgDOTAGetPeriodicResourceResponse); i { case 0: return &v.state case 1: @@ -38173,7 +40008,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTACompendiumSelectionResponse); i { + switch v := v.(*CMsgDOTAPeriodicResourceUpdated); i { case 0: return &v.state case 1: @@ -38185,7 +40020,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTACompendiumData); i { + switch v := v.(*CMsgDOTACompendiumSelection); i { case 0: return &v.state case 1: @@ -38197,7 +40032,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTACompendiumDataRequest); i { + switch v := v.(*CMsgDOTACompendiumSelectionResponse); i { case 0: return &v.state case 1: @@ -38209,7 +40044,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTACompendiumDataResponse); i { + switch v := v.(*CMsgDOTACompendiumData); i { case 0: return &v.state case 1: @@ -38221,7 +40056,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAGetPlayerMatchHistory); i { + switch v := v.(*CMsgDOTACompendiumDataRequest); i { case 0: return &v.state case 1: @@ -38233,7 +40068,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAGetPlayerMatchHistoryResponse); i { + switch v := v.(*CMsgDOTACompendiumDataResponse); i { case 0: return &v.state case 1: @@ -38245,7 +40080,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCNotificationsRequest); i { + switch v := v.(*CMsgDOTAGetPlayerMatchHistory); i { case 0: return &v.state case 1: @@ -38257,7 +40092,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCNotifications_Notification); i { + switch v := v.(*CMsgDOTAGetPlayerMatchHistoryResponse); i { case 0: return &v.state case 1: @@ -38269,7 +40104,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCNotificationsUpdate); i { + switch v := v.(*CMsgGCNotificationsRequest); i { case 0: return &v.state case 1: @@ -38281,7 +40116,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCNotificationsResponse); i { + switch v := v.(*CMsgGCNotifications_Notification); i { case 0: return &v.state case 1: @@ -38293,7 +40128,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCNotificationsMarkReadRequest); i { + switch v := v.(*CMsgGCNotificationsUpdate); i { case 0: return &v.state case 1: @@ -38305,7 +40140,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCPlayerInfoSubmit); i { + switch v := v.(*CMsgGCNotificationsResponse); i { case 0: return &v.state case 1: @@ -38317,7 +40152,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCPlayerInfoSubmitResponse); i { + switch v := v.(*CMsgGCNotificationsMarkReadRequest); i { case 0: return &v.state case 1: @@ -38329,7 +40164,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAEmoticonAccessSDO); i { + switch v := v.(*CMsgGCPlayerInfoSubmit); i { case 0: return &v.state case 1: @@ -38341,7 +40176,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCEmoticonDataRequest); i { + switch v := v.(*CMsgGCPlayerInfoSubmitResponse); i { case 0: return &v.state case 1: @@ -38353,7 +40188,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientEmoticonData); i { + switch v := v.(*CMsgDOTAEmoticonAccessSDO); i { case 0: return &v.state case 1: @@ -38365,7 +40200,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientTournamentItemDrop); i { + switch v := v.(*CMsgClientToGCEmoticonDataRequest); i { case 0: return &v.state case 1: @@ -38377,7 +40212,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetAllHeroOrder); i { + switch v := v.(*CMsgGCToClientEmoticonData); i { case 0: return &v.state case 1: @@ -38389,7 +40224,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetAllHeroOrderResponse); i { + switch v := v.(*CMsgGCToClientTournamentItemDrop); i { case 0: return &v.state case 1: @@ -38401,7 +40236,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetAllHeroProgress); i { + switch v := v.(*CMsgClientToGCGetAllHeroOrder); i { case 0: return &v.state case 1: @@ -38413,7 +40248,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetAllHeroProgressResponse); i { + switch v := v.(*CMsgClientToGCGetAllHeroOrderResponse); i { case 0: return &v.state case 1: @@ -38425,7 +40260,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetTrophyList); i { + switch v := v.(*CMsgClientToGCGetAllHeroProgress); i { case 0: return &v.state case 1: @@ -38437,7 +40272,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetTrophyListResponse); i { + switch v := v.(*CMsgClientToGCGetAllHeroProgressResponse); i { case 0: return &v.state case 1: @@ -38449,7 +40284,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientTrophyAwarded); i { + switch v := v.(*CMsgClientToGCGetTrophyList); i { case 0: return &v.state case 1: @@ -38461,7 +40296,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRankRequest); i { + switch v := v.(*CMsgClientToGCGetTrophyListResponse); i { case 0: return &v.state case 1: @@ -38473,7 +40308,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientRankResponse); i { + switch v := v.(*CMsgGCToClientTrophyAwarded); i { case 0: return &v.state case 1: @@ -38485,7 +40320,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientRankUpdate); i { + switch v := v.(*CMsgClientToGCRankRequest); i { case 0: return &v.state case 1: @@ -38497,7 +40332,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetProfileCard); i { + switch v := v.(*CMsgGCToClientRankResponse); i { case 0: return &v.state case 1: @@ -38509,7 +40344,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetProfileCardSlots); i { + switch v := v.(*CMsgGCToClientRankUpdate); i { case 0: return &v.state case 1: @@ -38521,7 +40356,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetProfileCardStats); i { + switch v := v.(*CMsgClientToGCGetProfileCard); i { case 0: return &v.state case 1: @@ -38533,7 +40368,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateHeroStatue); i { + switch v := v.(*CMsgClientToGCSetProfileCardSlots); i { case 0: return &v.state case 1: @@ -38545,7 +40380,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientHeroStatueCreateResult); i { + switch v := v.(*CMsgClientToGCGetProfileCardStats); i { case 0: return &v.state case 1: @@ -38557,7 +40392,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCPlayerStatsRequest); i { + switch v := v.(*CMsgClientToGCCreateHeroStatue); i { case 0: return &v.state case 1: @@ -38569,7 +40404,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientPlayerStatsResponse); i { + switch v := v.(*CMsgGCToClientHeroStatueCreateResult); i { case 0: return &v.state case 1: @@ -38581,7 +40416,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCustomGamesFriendsPlayedRequest); i { + switch v := v.(*CMsgClientToGCPlayerStatsRequest); i { case 0: return &v.state case 1: @@ -38593,7 +40428,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientCustomGamesFriendsPlayedResponse); i { + switch v := v.(*CMsgGCToClientPlayerStatsResponse); i { case 0: return &v.state case 1: @@ -38605,7 +40440,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSocialFeedPostCommentRequest); i { + switch v := v.(*CMsgClientToGCCustomGamesFriendsPlayedRequest); i { case 0: return &v.state case 1: @@ -38617,7 +40452,7 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientSocialFeedPostCommentResponse); i { + switch v := v.(*CMsgGCToClientCustomGamesFriendsPlayedResponse); i { case 0: return &v.state case 1: @@ -38629,6 +40464,30 @@ func file_dota_gcmessages_client_proto_init() { } } file_dota_gcmessages_client_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSocialFeedPostCommentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientSocialFeedPostCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCSocialFeedPostMessageRequest); i { case 0: return &v.state @@ -38640,7 +40499,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientSocialFeedPostMessageResponse); i { case 0: return &v.state @@ -38652,7 +40511,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCFriendsPlayedCustomGameRequest); i { case 0: return &v.state @@ -38664,7 +40523,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientFriendsPlayedCustomGameResponse); i { case 0: return &v.state @@ -38676,7 +40535,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAPartyRichPresence); i { case 0: return &v.state @@ -38688,7 +40547,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTALobbyRichPresence); i { case 0: return &v.state @@ -38700,7 +40559,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTACustomGameListenServerStartedLoading); i { case 0: return &v.state @@ -38712,7 +40571,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTACustomGameClientFinishedLoading); i { case 0: return &v.state @@ -38724,7 +40583,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCApplyGemCombiner); i { case 0: return &v.state @@ -38736,7 +40595,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCH264Unsupported); i { case 0: return &v.state @@ -38748,7 +40607,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetQuestProgress); i { case 0: return &v.state @@ -38760,7 +40619,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetQuestProgressResponse); i { case 0: return &v.state @@ -38772,7 +40631,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientMatchSignedOut); i { case 0: return &v.state @@ -38784,7 +40643,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCGetHeroStatsHistory); i { case 0: return &v.state @@ -38796,7 +40655,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCGetHeroStatsHistoryResponse); i { case 0: return &v.state @@ -38808,7 +40667,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPlayerConductScorecardRequest); i { case 0: return &v.state @@ -38820,7 +40679,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPlayerConductScorecard); i { case 0: return &v.state @@ -38832,7 +40691,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCWageringRequest); i { case 0: return &v.state @@ -38844,7 +40703,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientWageringResponse); i { case 0: return &v.state @@ -38856,7 +40715,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientWageringUpdate); i { case 0: return &v.state @@ -38868,7 +40727,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientArcanaVotesUpdate); i { case 0: return &v.state @@ -38880,7 +40739,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetEventGoals); i { case 0: return &v.state @@ -38892,7 +40751,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgEventGoals); i { case 0: return &v.state @@ -38904,7 +40763,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCLeaguePredictions); i { case 0: return &v.state @@ -38916,7 +40775,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPredictionRankings); i { case 0: return &v.state @@ -38928,7 +40787,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPredictionResults); i { case 0: return &v.state @@ -38940,7 +40799,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCHasPlayerVotedForMVP); i { case 0: return &v.state @@ -38952,7 +40811,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCHasPlayerVotedForMVPResponse); i { case 0: return &v.state @@ -38964,7 +40823,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCVoteForMVP); i { case 0: return &v.state @@ -38976,7 +40835,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCVoteForMVPResponse); i { case 0: return &v.state @@ -38988,7 +40847,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCMVPVoteTimeout); i { case 0: return &v.state @@ -39000,7 +40859,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCMVPVoteTimeoutResponse); i { case 0: return &v.state @@ -39012,7 +40871,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCTeammateStatsRequest); i { case 0: return &v.state @@ -39024,7 +40883,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCTeammateStatsResponse); i { case 0: return &v.state @@ -39036,7 +40895,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCVoteForArcana); i { case 0: return &v.state @@ -39048,7 +40907,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCVoteForArcanaResponse); i { case 0: return &v.state @@ -39060,7 +40919,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestArcanaVotesRemaining); i { case 0: return &v.state @@ -39072,7 +40931,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestArcanaVotesRemainingResponse); i { case 0: return &v.state @@ -39084,7 +40943,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestEventPointLogV2); i { case 0: return &v.state @@ -39096,7 +40955,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestEventPointLogResponseV2); i { case 0: return &v.state @@ -39108,7 +40967,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCPublishUserStat); i { case 0: return &v.state @@ -39120,7 +40979,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestSlarkGameResult); i { case 0: return &v.state @@ -39132,7 +40991,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestSlarkGameResultResponse); i { case 0: return &v.state @@ -39144,7 +41003,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientQuestProgressUpdated); i { case 0: return &v.state @@ -39156,7 +41015,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTARedeemItem); i { case 0: return &v.state @@ -39168,7 +41027,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTARedeemItemResponse); i { case 0: return &v.state @@ -39180,7 +41039,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCSelectCompendiumInGamePrediction); i { case 0: return &v.state @@ -39192,7 +41051,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCSelectCompendiumInGamePredictionResponse); i { case 0: return &v.state @@ -39204,7 +41063,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCOpenPlayerCardPack); i { case 0: return &v.state @@ -39216,7 +41075,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCOpenPlayerCardPackResponse); i { case 0: return &v.state @@ -39228,7 +41087,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRecyclePlayerCard); i { case 0: return &v.state @@ -39240,7 +41099,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRecyclePlayerCardResponse); i { case 0: return &v.state @@ -39252,7 +41111,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCreatePlayerCardPack); i { case 0: return &v.state @@ -39264,7 +41123,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCreatePlayerCardPackResponse); i { case 0: return &v.state @@ -39276,7 +41135,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCreateTeamPlayerCardPack); i { case 0: return &v.state @@ -39288,7 +41147,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCreateTeamPlayerCardPackResponse); i { case 0: return &v.state @@ -39300,7 +41159,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016); i { case 0: return &v.state @@ -39312,7 +41171,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016); i { case 0: return &v.state @@ -39324,7 +41183,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017); i { case 0: return &v.state @@ -39336,7 +41195,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7); i { case 0: return &v.state @@ -39348,7 +41207,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI8); i { case 0: return &v.state @@ -39360,7 +41219,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI9); i { case 0: return &v.state @@ -39372,7 +41231,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI10); i { case 0: return &v.state @@ -39384,7 +41243,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollupRequest); i { case 0: return &v.state @@ -39396,7 +41255,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollupResponse); i { case 0: return &v.state @@ -39408,7 +41267,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollupListRequest); i { case 0: return &v.state @@ -39420,7 +41279,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollupListResponse); i { case 0: return &v.state @@ -39432,7 +41291,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCTransferSeasonalMMRRequest); i { case 0: return &v.state @@ -39444,7 +41303,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCTransferSeasonalMMRResponse); i { case 0: return &v.state @@ -39456,7 +41315,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientPlaytestStatus); i { case 0: return &v.state @@ -39468,7 +41327,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCJoinPlaytest); i { case 0: return &v.state @@ -39480,7 +41339,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCJoinPlaytestResponse); i { case 0: return &v.state @@ -39492,7 +41351,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTASetFavoriteTeam); i { case 0: return &v.state @@ -39504,7 +41363,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTATriviaCurrentQuestions); i { case 0: return &v.state @@ -39516,7 +41375,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTASubmitTriviaQuestionAnswer); i { case 0: return &v.state @@ -39528,7 +41387,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTASubmitTriviaQuestionAnswerResponse); i { case 0: return &v.state @@ -39540,7 +41399,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAStartTriviaSession); i { case 0: return &v.state @@ -39552,7 +41411,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAStartTriviaSessionResponse); i { case 0: return &v.state @@ -39564,7 +41423,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[182].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAAnchorPhoneNumberRequest); i { case 0: return &v.state @@ -39576,7 +41435,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[183].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAAnchorPhoneNumberResponse); i { case 0: return &v.state @@ -39588,7 +41447,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[182].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[184].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAUnanchorPhoneNumberRequest); i { case 0: return &v.state @@ -39600,7 +41459,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[183].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[185].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAUnanchorPhoneNumberResponse); i { case 0: return &v.state @@ -39612,7 +41471,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[184].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[186].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientCommendNotification); i { case 0: return &v.state @@ -39624,7 +41483,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[185].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[187].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAClientToGCQuickStatsRequest); i { case 0: return &v.state @@ -39636,7 +41495,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[186].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[188].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAClientToGCQuickStatsResponse); i { case 0: return &v.state @@ -39648,7 +41507,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[187].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[189].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTASelectionPriorityChoiceRequest); i { case 0: return &v.state @@ -39660,7 +41519,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[188].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[190].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTASelectionPriorityChoiceResponse); i { case 0: return &v.state @@ -39672,7 +41531,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[189].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[191].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAGameAutographReward); i { case 0: return &v.state @@ -39684,7 +41543,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[190].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[192].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAGameAutographRewardResponse); i { case 0: return &v.state @@ -39696,7 +41555,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[191].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[193].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTADestroyLobbyRequest); i { case 0: return &v.state @@ -39708,7 +41567,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[192].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[194].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTADestroyLobbyResponse); i { case 0: return &v.state @@ -39720,7 +41579,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[193].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[195].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAGetRecentPlayTimeFriendsRequest); i { case 0: return &v.state @@ -39732,7 +41591,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[194].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[196].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAGetRecentPlayTimeFriendsResponse); i { case 0: return &v.state @@ -39744,7 +41603,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[195].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[197].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPurchaseItemWithEventPoints); i { case 0: return &v.state @@ -39756,7 +41615,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[196].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[198].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPurchaseItemWithEventPointsResponse); i { case 0: return &v.state @@ -39768,7 +41627,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[197].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[199].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPurchaseHeroRandomRelic); i { case 0: return &v.state @@ -39780,7 +41639,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[198].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[200].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPurchaseHeroRandomRelicResponse); i { case 0: return &v.state @@ -39792,7 +41651,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[199].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[201].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestPlusWeeklyChallengeResult); i { case 0: return &v.state @@ -39804,7 +41663,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[200].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[202].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestPlusWeeklyChallengeResultResponse); i { case 0: return &v.state @@ -39816,7 +41675,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[201].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[203].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgProfileRequest); i { case 0: return &v.state @@ -39828,7 +41687,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[202].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[204].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgProfileResponse); i { case 0: return &v.state @@ -39840,7 +41699,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[203].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[205].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgProfileUpdate); i { case 0: return &v.state @@ -39852,7 +41711,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[204].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[206].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgProfileUpdateResponse); i { case 0: return &v.state @@ -39864,7 +41723,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[205].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[207].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgTalentWinRates); i { case 0: return &v.state @@ -39876,7 +41735,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[206].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[208].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGlobalHeroAverages); i { case 0: return &v.state @@ -39888,7 +41747,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[207].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[209].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataRequest); i { case 0: return &v.state @@ -39900,7 +41759,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[208].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[210].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataResponse); i { case 0: return &v.state @@ -39912,7 +41771,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[209].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[211].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataAllHeroes); i { case 0: return &v.state @@ -39924,7 +41783,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[210].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[212].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataHeroesAlliesAndEnemies); i { case 0: return &v.state @@ -39936,7 +41795,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[211].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[213].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPrivateMetadataKeyRequest); i { case 0: return &v.state @@ -39948,7 +41807,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[212].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[214].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPrivateMetadataKeyResponse); i { case 0: return &v.state @@ -39960,7 +41819,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[213].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[215].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgActivatePlusFreeTrialResponse); i { case 0: return &v.state @@ -39972,7 +41831,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[214].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[216].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientCavernCrawlMapPathCompleted); i { case 0: return &v.state @@ -39984,7 +41843,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[215].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[217].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientCavernCrawlMapUpdated); i { case 0: return &v.state @@ -39996,7 +41855,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[216].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[218].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlClaimRoom); i { case 0: return &v.state @@ -40008,7 +41867,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[217].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[219].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlClaimRoomResponse); i { case 0: return &v.state @@ -40020,7 +41879,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[218].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[220].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlUseItemOnRoom); i { case 0: return &v.state @@ -40032,7 +41891,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[219].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[221].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlUseItemOnRoomResponse); i { case 0: return &v.state @@ -40044,7 +41903,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[220].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[222].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlUseItemOnPath); i { case 0: return &v.state @@ -40056,7 +41915,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[221].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[223].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlUseItemOnPathResponse); i { case 0: return &v.state @@ -40068,7 +41927,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[222].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[224].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlRequestMapState); i { case 0: return &v.state @@ -40080,7 +41939,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[223].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[225].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlRequestMapStateResponse); i { case 0: return &v.state @@ -40092,7 +41951,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[224].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[226].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlGetClaimedRoomCount); i { case 0: return &v.state @@ -40104,7 +41963,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[225].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[227].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse); i { case 0: return &v.state @@ -40116,7 +41975,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[226].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[228].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAMutationList); i { case 0: return &v.state @@ -40128,7 +41987,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[227].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[229].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgEventTipsSummaryRequest); i { case 0: return &v.state @@ -40140,7 +41999,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[228].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[230].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgEventTipsSummaryResponse); i { case 0: return &v.state @@ -40152,7 +42011,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[229].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[231].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSocialFeedRequest); i { case 0: return &v.state @@ -40164,7 +42023,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[230].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[232].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSocialFeedResponse); i { case 0: return &v.state @@ -40176,7 +42035,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[231].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[233].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSocialFeedCommentsRequest); i { case 0: return &v.state @@ -40188,7 +42047,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[232].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[234].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSocialFeedCommentsResponse); i { case 0: return &v.state @@ -40200,7 +42059,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[233].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[235].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCPlayerCardSpecificPurchaseRequest); i { case 0: return &v.state @@ -40212,7 +42071,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[234].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[236].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCPlayerCardSpecificPurchaseResponse); i { case 0: return &v.state @@ -40224,7 +42083,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[235].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[237].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestContestVotes); i { case 0: return &v.state @@ -40236,7 +42095,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[236].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[238].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestContestVotesResponse); i { case 0: return &v.state @@ -40248,7 +42107,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[237].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[239].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRecordContestVote); i { case 0: return &v.state @@ -40260,7 +42119,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[238].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[240].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientRecordContestVoteResponse); i { case 0: return &v.state @@ -40272,7 +42131,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[239].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[241].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDevGrantEventPoints); i { case 0: return &v.state @@ -40284,7 +42143,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[240].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[242].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDevGrantEventPointsResponse); i { case 0: return &v.state @@ -40296,7 +42155,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[241].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[243].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDevGrantEventAction); i { case 0: return &v.state @@ -40308,7 +42167,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[242].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[244].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDevGrantEventActionResponse); i { case 0: return &v.state @@ -40320,7 +42179,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[243].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[245].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDevDeleteEventActions); i { case 0: return &v.state @@ -40332,7 +42191,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[244].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[246].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDevDeleteEventActionsResponse); i { case 0: return &v.state @@ -40344,7 +42203,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[245].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[247].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDevResetEventState); i { case 0: return &v.state @@ -40356,7 +42215,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[246].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[248].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDevResetEventStateResponse); i { case 0: return &v.state @@ -40368,7 +42227,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[247].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[249].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgConsumeEventSupportGrantItem); i { case 0: return &v.state @@ -40380,7 +42239,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[248].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[250].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgConsumeEventSupportGrantItemResponse); i { case 0: return &v.state @@ -40392,7 +42251,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[249].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[251].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetFilteredPlayers); i { case 0: return &v.state @@ -40404,7 +42263,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[250].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[252].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientGetFilteredPlayersResponse); i { case 0: return &v.state @@ -40416,7 +42275,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[251].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[253].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRemoveFilteredPlayer); i { case 0: return &v.state @@ -40428,7 +42287,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[252].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[254].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientRemoveFilteredPlayerResponse); i { case 0: return &v.state @@ -40440,7 +42299,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[253].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[255].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCPurchaseFilteredPlayerSlot); i { case 0: return &v.state @@ -40452,7 +42311,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[254].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[256].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientPurchaseFilteredPlayerSlotResponse); i { case 0: return &v.state @@ -40464,7 +42323,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[255].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[257].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCUpdateFilteredPlayerNote); i { case 0: return &v.state @@ -40476,7 +42335,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[256].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[258].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientUpdateFilteredPlayerNoteResponse); i { case 0: return &v.state @@ -40488,7 +42347,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[257].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[259].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPartySearchPlayer); i { case 0: return &v.state @@ -40500,8 +42359,212 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[258].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientPlayerBeaconState); i { + file_dota_gcmessages_client_proto_msgTypes[260].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientPlayerBeaconState); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[261].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientPartyBeaconUpdate); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[262].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUpdatePartyBeacon); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[263].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRequestActiveBeaconParties); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[264].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientRequestActiveBeaconPartiesResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[265].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCJoinPartyFromBeacon); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[266].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientJoinPartyFromBeaconResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[267].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCManageFavorites); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[268].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientManageFavoritesResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[269].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetFavoritePlayers); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[270].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientGetFavoritePlayersResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[271].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientPartySearchInvite); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[272].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCVerifyFavoritePlayers); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[273].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientVerifyFavoritePlayersResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[274].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRequestPlayerRecentAccomplishments); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[275].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[276].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRequestPlayerHeroRecentAccomplishments); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[277].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse); i { case 0: return &v.state case 1: @@ -40512,8 +42575,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[259].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientPartyBeaconUpdate); i { + file_dota_gcmessages_client_proto_msgTypes[278].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSubmitPlayerMatchSurvey); i { case 0: return &v.state case 1: @@ -40524,8 +42587,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[260].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUpdatePartyBeacon); i { + file_dota_gcmessages_client_proto_msgTypes[279].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSubmitPlayerMatchSurveyResponse); i { case 0: return &v.state case 1: @@ -40536,8 +42599,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[261].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRequestActiveBeaconParties); i { + file_dota_gcmessages_client_proto_msgTypes[280].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientVACReminder); i { case 0: return &v.state case 1: @@ -40548,8 +42611,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[262].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientRequestActiveBeaconPartiesResponse); i { + file_dota_gcmessages_client_proto_msgTypes[281].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftRequest); i { case 0: return &v.state case 1: @@ -40560,8 +42623,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[263].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCJoinPartyFromBeacon); i { + file_dota_gcmessages_client_proto_msgTypes[282].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftResponse); i { case 0: return &v.state case 1: @@ -40572,8 +42635,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[264].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientJoinPartyFromBeaconResponse); i { + file_dota_gcmessages_client_proto_msgTypes[283].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftReroll); i { case 0: return &v.state case 1: @@ -40584,8 +42647,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[265].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCManageFavorites); i { + file_dota_gcmessages_client_proto_msgTypes[284].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftRerollResponse); i { case 0: return &v.state case 1: @@ -40596,8 +42659,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[266].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientManageFavoritesResponse); i { + file_dota_gcmessages_client_proto_msgTypes[285].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftBuy); i { case 0: return &v.state case 1: @@ -40608,8 +42671,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[267].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetFavoritePlayers); i { + file_dota_gcmessages_client_proto_msgTypes[286].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientGuildUnderDraftGoldUpdated); i { case 0: return &v.state case 1: @@ -40620,8 +42683,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[268].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientGetFavoritePlayersResponse); i { + file_dota_gcmessages_client_proto_msgTypes[287].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftBuyResponse); i { case 0: return &v.state case 1: @@ -40632,8 +42695,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[269].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientPartySearchInvite); i { + file_dota_gcmessages_client_proto_msgTypes[288].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftRollBackBench); i { case 0: return &v.state case 1: @@ -40644,8 +42707,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[270].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCVerifyFavoritePlayers); i { + file_dota_gcmessages_client_proto_msgTypes[289].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftRollBackBenchResponse); i { case 0: return &v.state case 1: @@ -40656,8 +42719,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[271].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientVerifyFavoritePlayersResponse); i { + file_dota_gcmessages_client_proto_msgTypes[290].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftSell); i { case 0: return &v.state case 1: @@ -40668,8 +42731,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[272].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRequestPlayerRecentAccomplishments); i { + file_dota_gcmessages_client_proto_msgTypes[291].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftSellResponse); i { case 0: return &v.state case 1: @@ -40680,8 +42743,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[273].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse); i { + file_dota_gcmessages_client_proto_msgTypes[292].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftRedeemReward); i { case 0: return &v.state case 1: @@ -40692,8 +42755,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[274].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRequestPlayerHeroRecentAccomplishments); i { + file_dota_gcmessages_client_proto_msgTypes[293].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUnderDraftRedeemRewardResponse); i { case 0: return &v.state case 1: @@ -40704,8 +42767,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[275].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse); i { + file_dota_gcmessages_client_proto_msgTypes[294].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSubmitDraftTriviaMatchAnswer); i { case 0: return &v.state case 1: @@ -40716,8 +42779,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[276].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSubmitPlayerMatchSurvey); i { + file_dota_gcmessages_client_proto_msgTypes[295].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse); i { case 0: return &v.state case 1: @@ -40728,8 +42791,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[277].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSubmitPlayerMatchSurveyResponse); i { + file_dota_gcmessages_client_proto_msgTypes[296].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDraftTriviaVoteCount); i { case 0: return &v.state case 1: @@ -40740,8 +42803,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[278].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientVACReminder); i { + file_dota_gcmessages_client_proto_msgTypes[297].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRequestReporterUpdates); i { case 0: return &v.state case 1: @@ -40752,8 +42815,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[279].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftRequest); i { + file_dota_gcmessages_client_proto_msgTypes[298].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRequestReporterUpdatesResponse); i { case 0: return &v.state case 1: @@ -40764,8 +42827,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[280].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftResponse); i { + file_dota_gcmessages_client_proto_msgTypes[299].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCAcknowledgeReporterUpdates); i { case 0: return &v.state case 1: @@ -40776,8 +42839,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[281].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftReroll); i { + file_dota_gcmessages_client_proto_msgTypes[300].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRecalibrateMMR); i { case 0: return &v.state case 1: @@ -40788,8 +42851,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[282].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftRerollResponse); i { + file_dota_gcmessages_client_proto_msgTypes[301].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRecalibrateMMRResponse); i { case 0: return &v.state case 1: @@ -40800,8 +42863,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[283].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftBuy); i { + file_dota_gcmessages_client_proto_msgTypes[302].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAPostGameItemAwardNotification); i { case 0: return &v.state case 1: @@ -40812,8 +42875,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[284].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientGuildUnderDraftGoldUpdated); i { + file_dota_gcmessages_client_proto_msgTypes[303].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetOWMatchDetails); i { case 0: return &v.state case 1: @@ -40824,8 +42887,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[285].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftBuyResponse); i { + file_dota_gcmessages_client_proto_msgTypes[304].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetOWMatchDetailsResponse); i { case 0: return &v.state case 1: @@ -40836,8 +42899,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[286].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftRollBackBench); i { + file_dota_gcmessages_client_proto_msgTypes[305].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSubmitOWConviction); i { case 0: return &v.state case 1: @@ -40848,8 +42911,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[287].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftRollBackBenchResponse); i { + file_dota_gcmessages_client_proto_msgTypes[306].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSubmitOWConvictionResponse); i { case 0: return &v.state case 1: @@ -40860,8 +42923,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[288].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftSell); i { + file_dota_gcmessages_client_proto_msgTypes[307].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCChinaSSAURLRequest); i { case 0: return &v.state case 1: @@ -40872,8 +42935,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[289].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftSellResponse); i { + file_dota_gcmessages_client_proto_msgTypes[308].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCChinaSSAURLResponse); i { case 0: return &v.state case 1: @@ -40884,8 +42947,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[290].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftRedeemReward); i { + file_dota_gcmessages_client_proto_msgTypes[309].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCChinaSSAAcceptedRequest); i { case 0: return &v.state case 1: @@ -40896,8 +42959,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[291].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnderDraftRedeemRewardResponse); i { + file_dota_gcmessages_client_proto_msgTypes[310].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCChinaSSAAcceptedResponse); i { case 0: return &v.state case 1: @@ -40908,8 +42971,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[292].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSubmitDraftTriviaMatchAnswer); i { + file_dota_gcmessages_client_proto_msgTypes[311].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientOverwatchCasesAvailable); i { case 0: return &v.state case 1: @@ -40920,8 +42983,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[293].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse); i { + file_dota_gcmessages_client_proto_msgTypes[312].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCStartWatchingOverwatch); i { case 0: return &v.state case 1: @@ -40932,8 +42995,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[294].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDraftTriviaVoteCount); i { + file_dota_gcmessages_client_proto_msgTypes[313].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCStopWatchingOverwatch); i { case 0: return &v.state case 1: @@ -40944,8 +43007,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[295].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRecalibrateMMR); i { + file_dota_gcmessages_client_proto_msgTypes[314].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCOverwatchReplayError); i { case 0: return &v.state case 1: @@ -40956,8 +43019,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[296].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRecalibrateMMRResponse); i { + file_dota_gcmessages_client_proto_msgTypes[315].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetDPCFavorites); i { case 0: return &v.state case 1: @@ -40968,8 +43031,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[297].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAPostGameItemAwardNotification); i { + file_dota_gcmessages_client_proto_msgTypes[316].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetDPCFavoritesResponse); i { case 0: return &v.state case 1: @@ -40980,8 +43043,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[298].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetOWMatchDetails); i { + file_dota_gcmessages_client_proto_msgTypes[317].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetDPCFavoriteState); i { case 0: return &v.state case 1: @@ -40992,8 +43055,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[299].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetOWMatchDetailsResponse); i { + file_dota_gcmessages_client_proto_msgTypes[318].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetDPCFavoriteStateResponse); i { case 0: return &v.state case 1: @@ -41004,8 +43067,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[300].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSubmitOWConviction); i { + file_dota_gcmessages_client_proto_msgTypes[319].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetEventActiveSeasonID); i { case 0: return &v.state case 1: @@ -41016,8 +43079,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[301].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSubmitOWConvictionResponse); i { + file_dota_gcmessages_client_proto_msgTypes[320].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetEventActiveSeasonIDResponse); i { case 0: return &v.state case 1: @@ -41028,8 +43091,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[302].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCChinaSSAURLRequest); i { + file_dota_gcmessages_client_proto_msgTypes[321].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCPurchaseLabyrinthBlessings); i { case 0: return &v.state case 1: @@ -41040,8 +43103,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[303].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCChinaSSAURLResponse); i { + file_dota_gcmessages_client_proto_msgTypes[322].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCPurchaseLabyrinthBlessingsResponse); i { case 0: return &v.state case 1: @@ -41052,8 +43115,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[304].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCChinaSSAAcceptedRequest); i { + file_dota_gcmessages_client_proto_msgTypes[323].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetStickerbookRequest); i { case 0: return &v.state case 1: @@ -41064,8 +43127,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[305].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCChinaSSAAcceptedResponse); i { + file_dota_gcmessages_client_proto_msgTypes[324].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetStickerbookResponse); i { case 0: return &v.state case 1: @@ -41076,8 +43139,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[306].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientOverwatchCasesAvailable); i { + file_dota_gcmessages_client_proto_msgTypes[325].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCCreateStickerbookPageRequest); i { case 0: return &v.state case 1: @@ -41088,8 +43151,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[307].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCStartWatchingOverwatch); i { + file_dota_gcmessages_client_proto_msgTypes[326].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCCreateStickerbookPageResponse); i { case 0: return &v.state case 1: @@ -41100,8 +43163,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[308].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCStopWatchingOverwatch); i { + file_dota_gcmessages_client_proto_msgTypes[327].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCDeleteStickerbookPageRequest); i { case 0: return &v.state case 1: @@ -41112,8 +43175,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[309].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCOverwatchReplayError); i { + file_dota_gcmessages_client_proto_msgTypes[328].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCDeleteStickerbookPageResponse); i { case 0: return &v.state case 1: @@ -41124,8 +43187,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[310].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetDPCFavorites); i { + file_dota_gcmessages_client_proto_msgTypes[329].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCPlaceStickersRequest); i { case 0: return &v.state case 1: @@ -41136,8 +43199,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[311].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetDPCFavoritesResponse); i { + file_dota_gcmessages_client_proto_msgTypes[330].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCPlaceStickersResponse); i { case 0: return &v.state case 1: @@ -41148,8 +43211,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[312].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetDPCFavoriteState); i { + file_dota_gcmessages_client_proto_msgTypes[331].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCPlaceCollectionStickersRequest); i { case 0: return &v.state case 1: @@ -41160,8 +43223,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[313].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetDPCFavoriteStateResponse); i { + file_dota_gcmessages_client_proto_msgTypes[332].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCPlaceCollectionStickersResponse); i { case 0: return &v.state case 1: @@ -41172,8 +43235,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[314].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetEventActiveSeasonID); i { + file_dota_gcmessages_client_proto_msgTypes[333].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCOrderStickerbookTeamPageRequest); i { case 0: return &v.state case 1: @@ -41184,8 +43247,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[315].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetEventActiveSeasonIDResponse); i { + file_dota_gcmessages_client_proto_msgTypes[334].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCOrderStickerbookTeamPageResponse); i { case 0: return &v.state case 1: @@ -41196,8 +43259,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[316].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCPurchaseLabyrinthBlessings); i { + file_dota_gcmessages_client_proto_msgTypes[335].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetHeroSticker); i { case 0: return &v.state case 1: @@ -41208,8 +43271,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[317].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCPurchaseLabyrinthBlessingsResponse); i { + file_dota_gcmessages_client_proto_msgTypes[336].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetHeroStickerResponse); i { case 0: return &v.state case 1: @@ -41220,8 +43283,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[318].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetStickerbookRequest); i { + file_dota_gcmessages_client_proto_msgTypes[337].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetHeroStickers); i { case 0: return &v.state case 1: @@ -41232,8 +43295,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[319].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetStickerbookResponse); i { + file_dota_gcmessages_client_proto_msgTypes[338].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetHeroStickersResponse); i { case 0: return &v.state case 1: @@ -41244,8 +43307,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[320].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateStickerbookPageRequest); i { + file_dota_gcmessages_client_proto_msgTypes[339].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetFavoritePage); i { case 0: return &v.state case 1: @@ -41256,8 +43319,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[321].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateStickerbookPageResponse); i { + file_dota_gcmessages_client_proto_msgTypes[340].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetFavoritePageResponse); i { case 0: return &v.state case 1: @@ -41268,8 +43331,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[322].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCDeleteStickerbookPageRequest); i { + file_dota_gcmessages_client_proto_msgTypes[341].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCClaimSwag); i { case 0: return &v.state case 1: @@ -41280,8 +43343,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[323].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCDeleteStickerbookPageResponse); i { + file_dota_gcmessages_client_proto_msgTypes[342].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCClaimSwagResponse); i { case 0: return &v.state case 1: @@ -41292,8 +43355,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[324].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCPlaceStickersRequest); i { + file_dota_gcmessages_client_proto_msgTypes[343].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCCollectorsCacheAvailableDataRequest); i { case 0: return &v.state case 1: @@ -41304,8 +43367,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[325].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCPlaceStickersResponse); i { + file_dota_gcmessages_client_proto_msgTypes[344].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientCollectorsCacheAvailableDataResponse); i { case 0: return &v.state case 1: @@ -41316,8 +43379,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[326].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCPlaceCollectionStickersRequest); i { + file_dota_gcmessages_client_proto_msgTypes[345].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCUploadMatchClip); i { case 0: return &v.state case 1: @@ -41328,8 +43391,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[327].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCPlaceCollectionStickersResponse); i { + file_dota_gcmessages_client_proto_msgTypes[346].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientUploadMatchClipResponse); i { case 0: return &v.state case 1: @@ -41340,8 +43403,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[328].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCOrderStickerbookTeamPageRequest); i { + file_dota_gcmessages_client_proto_msgTypes[347].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCMapStatsRequest); i { case 0: return &v.state case 1: @@ -41352,8 +43415,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[329].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCOrderStickerbookTeamPageResponse); i { + file_dota_gcmessages_client_proto_msgTypes[348].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientMapStatsResponse); i { case 0: return &v.state case 1: @@ -41364,8 +43427,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[330].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetHeroSticker); i { + file_dota_gcmessages_client_proto_msgTypes[349].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgRoadToTIAssignedQuest); i { case 0: return &v.state case 1: @@ -41376,8 +43439,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[331].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetHeroStickerResponse); i { + file_dota_gcmessages_client_proto_msgTypes[350].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgRoadToTIUserData); i { case 0: return &v.state case 1: @@ -41388,8 +43451,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[332].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetHeroStickers); i { + file_dota_gcmessages_client_proto_msgTypes[351].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRoadToTIGetQuests); i { case 0: return &v.state case 1: @@ -41400,8 +43463,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[333].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetHeroStickersResponse); i { + file_dota_gcmessages_client_proto_msgTypes[352].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRoadToTIGetQuestsResponse); i { case 0: return &v.state case 1: @@ -41412,8 +43475,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[334].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetFavoritePage); i { + file_dota_gcmessages_client_proto_msgTypes[353].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRoadToTIGetActiveQuest); i { case 0: return &v.state case 1: @@ -41424,8 +43487,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[335].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetFavoritePageResponse); i { + file_dota_gcmessages_client_proto_msgTypes[354].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRoadToTIGetActiveQuestResponse); i { case 0: return &v.state case 1: @@ -41436,8 +43499,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[336].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCClaimSwag); i { + file_dota_gcmessages_client_proto_msgTypes[355].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientRoadToTIQuestDataUpdated); i { case 0: return &v.state case 1: @@ -41448,8 +43511,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[337].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCClaimSwagResponse); i { + file_dota_gcmessages_client_proto_msgTypes[356].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRoadToTIUseItem); i { case 0: return &v.state case 1: @@ -41460,8 +43523,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[338].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCollectorsCacheAvailableDataRequest); i { + file_dota_gcmessages_client_proto_msgTypes[357].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRoadToTIUseItemResponse); i { case 0: return &v.state case 1: @@ -41472,8 +43535,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[339].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientCollectorsCacheAvailableDataResponse); i { + file_dota_gcmessages_client_proto_msgTypes[358].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRoadToTIDevForceQuest); i { case 0: return &v.state case 1: @@ -41484,8 +43547,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[340].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUploadMatchClip); i { + file_dota_gcmessages_client_proto_msgTypes[359].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgLobbyRoadToTIMatchQuestData); i { case 0: return &v.state case 1: @@ -41496,8 +43559,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[341].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientUploadMatchClipResponse); i { + file_dota_gcmessages_client_proto_msgTypes[360].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCNewBloomGift); i { case 0: return &v.state case 1: @@ -41508,8 +43571,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[342].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCMapStatsRequest); i { + file_dota_gcmessages_client_proto_msgTypes[361].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCNewBloomGiftResponse); i { case 0: return &v.state case 1: @@ -41520,8 +43583,8 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[343].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientMapStatsResponse); i { + file_dota_gcmessages_client_proto_msgTypes[362].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetBannedHeroes); i { case 0: return &v.state case 1: @@ -41532,7 +43595,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[344].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[363].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTARequestMatchesResponse_Series); i { case 0: return &v.state @@ -41544,7 +43607,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[345].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[364].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAProfileTickets_LeaguePass); i { case 0: return &v.state @@ -41556,7 +43619,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[346].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[365].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAWelcome_CExtraMsg); i { case 0: return &v.state @@ -41568,7 +43631,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[347].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[366].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAMatchVotes_PlayerVote); i { case 0: return &v.state @@ -41580,7 +43643,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[348].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[367].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCGetHeroStandingsResponse_Hero); i { case 0: return &v.state @@ -41592,7 +43655,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[349].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[368].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCGetHeroTimedStatsResponse_TimedStatsContainer); i { case 0: return &v.state @@ -41604,7 +43667,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[350].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[369].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCGetHeroTimedStatsResponse_RankChunkedStats); i { case 0: return &v.state @@ -41616,7 +43679,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[351].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[370].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAClaimEventActionData_GrantItemGiftData); i { case 0: return &v.state @@ -41628,7 +43691,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[352].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[371].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAClaimEventActionResponse_MysteryItemRewardData); i { case 0: return &v.state @@ -41640,7 +43703,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[353].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[372].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAClaimEventActionResponse_LootListRewardData); i { case 0: return &v.state @@ -41652,7 +43715,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[354].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[373].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAClaimEventActionResponse_ActionListRewardData); i { case 0: return &v.state @@ -41664,7 +43727,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[355].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[374].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAClaimEventActionResponse_GrantedRewardData); i { case 0: return &v.state @@ -41676,7 +43739,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[356].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[375].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAGetEventPointsResponse_Action); i { case 0: return &v.state @@ -41688,7 +43751,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[357].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[376].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAGetPlayerMatchHistoryResponse_Match); i { case 0: return &v.state @@ -41700,7 +43763,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[358].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[377].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetTrophyListResponse_Trophy); i { case 0: return &v.state @@ -41712,7 +43775,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[359].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[378].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCSetProfileCardSlots_CardSlot); i { case 0: return &v.state @@ -41724,7 +43787,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[360].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[379].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame); i { case 0: return &v.state @@ -41736,7 +43799,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[361].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[380].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAPartyRichPresence_Member); i { case 0: return &v.state @@ -41748,7 +43811,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[362].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[381].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAPartyRichPresence_WeekendTourney); i { case 0: return &v.state @@ -41760,7 +43823,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[363].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[382].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetQuestProgressResponse_Challenge); i { case 0: return &v.state @@ -41772,7 +43835,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[364].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[383].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetQuestProgressResponse_Quest); i { case 0: return &v.state @@ -41784,7 +43847,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[365].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[384].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgEventGoals_EventGoal); i { case 0: return &v.state @@ -41796,7 +43859,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[366].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[385].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPredictionRankings_PredictionLine); i { case 0: return &v.state @@ -41808,7 +43871,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[367].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[386].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPredictionRankings_Prediction); i { case 0: return &v.state @@ -41820,7 +43883,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[368].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[387].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPredictionResults_ResultBreakdown); i { case 0: return &v.state @@ -41832,7 +43895,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[369].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[388].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgPredictionResults_Result); i { case 0: return &v.state @@ -41844,7 +43907,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[370].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[389].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCTeammateStatsResponse_TeammateStat); i { case 0: return &v.state @@ -41856,7 +43919,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[371].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[390].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestEventPointLogResponseV2_LogEntry); i { case 0: return &v.state @@ -41868,7 +43931,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[372].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[391].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientQuestProgressUpdated_Challenge); i { case 0: return &v.state @@ -41880,7 +43943,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[373].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[392].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCSelectCompendiumInGamePrediction_Prediction); i { case 0: return &v.state @@ -41892,7 +43955,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[374].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[393].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016_Questlines); i { case 0: return &v.state @@ -41904,7 +43967,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[375].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[394].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016_Wagering); i { case 0: return &v.state @@ -41916,7 +43979,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[376].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[395].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016_Achievements); i { case 0: return &v.state @@ -41928,7 +43991,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[377].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[396].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016_BattleCup); i { case 0: return &v.state @@ -41940,7 +44003,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[378].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[397].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016_Predictions); i { case 0: return &v.state @@ -41952,7 +44015,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[379].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[398].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016_Bracket); i { case 0: return &v.state @@ -41964,7 +44027,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[380].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[399].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016_PlayerCard); i { case 0: return &v.state @@ -41976,7 +44039,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[381].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[400].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_International2016_FantasyChallenge); i { case 0: return &v.state @@ -41988,7 +44051,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[382].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[401].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016_Questlines); i { case 0: return &v.state @@ -42000,7 +44063,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[383].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[402].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016_Wagering); i { case 0: return &v.state @@ -42012,7 +44075,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[384].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[403].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016_Achievements); i { case 0: return &v.state @@ -42024,7 +44087,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[385].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[404].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016_BattleCup); i { case 0: return &v.state @@ -42036,7 +44099,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[386].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[405].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016_Predictions); i { case 0: return &v.state @@ -42048,7 +44111,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[387].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[406].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016_Bracket); i { case 0: return &v.state @@ -42060,7 +44123,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[388].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[407].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016_PlayerCard); i { case 0: return &v.state @@ -42072,7 +44135,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[389].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[408].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Fall2016_FantasyChallenge); i { case 0: return &v.state @@ -42084,7 +44147,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[390].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[409].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017_Questlines); i { case 0: return &v.state @@ -42096,7 +44159,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[391].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[410].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017_Wagering); i { case 0: return &v.state @@ -42108,7 +44171,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[392].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[411].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017_Achievements); i { case 0: return &v.state @@ -42120,7 +44183,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[393].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[412].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017_BattleCup); i { case 0: return &v.state @@ -42132,7 +44195,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[394].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[413].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017_Predictions); i { case 0: return &v.state @@ -42144,7 +44207,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[395].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[414].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017_Bracket); i { case 0: return &v.state @@ -42156,7 +44219,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[396].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[415].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard); i { case 0: return &v.state @@ -42168,7 +44231,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[397].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[416].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge); i { case 0: return &v.state @@ -42180,7 +44243,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[398].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[417].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7_Questlines); i { case 0: return &v.state @@ -42192,7 +44255,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[399].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[418].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7_Wagering); i { case 0: return &v.state @@ -42204,7 +44267,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[400].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[419].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7_Achievements); i { case 0: return &v.state @@ -42216,7 +44279,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[401].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[420].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7_BattleCup); i { case 0: return &v.state @@ -42228,7 +44291,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[402].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[421].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7_Predictions); i { case 0: return &v.state @@ -42240,7 +44303,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[403].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[422].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7_Bracket); i { case 0: return &v.state @@ -42252,7 +44315,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[404].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[423].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7_PlayerCard); i { case 0: return &v.state @@ -42264,7 +44327,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[405].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[424].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI7_FantasyChallenge); i { case 0: return &v.state @@ -42276,7 +44339,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[406].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[425].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI8_CavernCrawl); i { case 0: return &v.state @@ -42288,7 +44351,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[407].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[426].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI8_Wagering); i { case 0: return &v.state @@ -42300,7 +44363,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[408].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[427].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI8_Achievements); i { case 0: return &v.state @@ -42312,7 +44375,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[409].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[428].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI8_Predictions); i { case 0: return &v.state @@ -42324,7 +44387,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[410].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[429].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI8_Bracket); i { case 0: return &v.state @@ -42336,7 +44399,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[411].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[430].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI8_PlayerCard); i { case 0: return &v.state @@ -42348,7 +44411,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[412].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[431].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge); i { case 0: return &v.state @@ -42360,7 +44423,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[413].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[432].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientBattlePassRollupListResponse_EventInfo); i { case 0: return &v.state @@ -42372,7 +44435,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[414].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[433].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAClientToGCQuickStatsResponse_SimpleStats); i { case 0: return &v.state @@ -42384,7 +44447,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[415].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[434].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgProfileResponse_FeaturedHero); i { case 0: return &v.state @@ -42396,7 +44459,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[416].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[435].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgProfileResponse_MatchInfo); i { case 0: return &v.state @@ -42408,7 +44471,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[417].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[436].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataResponse_GraphData); i { case 0: return &v.state @@ -42420,7 +44483,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[418].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[437].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataResponse_WeekData); i { case 0: return &v.state @@ -42432,7 +44495,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[419].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[438].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataResponse_HeroDataPerRankChunk); i { case 0: return &v.state @@ -42444,7 +44507,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[420].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[439].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataHeroesAlliesAndEnemies_HeroData); i { case 0: return &v.state @@ -42456,7 +44519,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[421].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[440].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgHeroGlobalDataHeroesAlliesAndEnemies_RankedHeroData); i { case 0: return &v.state @@ -42468,7 +44531,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[422].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[441].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo); i { case 0: return &v.state @@ -42480,7 +44543,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[423].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[442].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge); i { case 0: return &v.state @@ -42492,7 +44555,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[424].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[443].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem); i { case 0: return &v.state @@ -42504,7 +44567,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[425].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[444].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap); i { case 0: return &v.state @@ -42516,7 +44579,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[426].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[445].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant); i { case 0: return &v.state @@ -42528,7 +44591,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[427].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[446].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant); i { case 0: return &v.state @@ -42540,7 +44603,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[428].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[447].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAMutationList_Mutation); i { case 0: return &v.state @@ -42552,7 +44615,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[429].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[448].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgEventTipsSummaryResponse_Tipper); i { case 0: return &v.state @@ -42564,7 +44627,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[430].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[449].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSocialFeedResponse_FeedEvent); i { case 0: return &v.state @@ -42576,7 +44639,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[431].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[450].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSocialFeedCommentsResponse_FeedComment); i { case 0: return &v.state @@ -42588,7 +44651,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[432].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[451].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCRequestContestVotesResponse_ItemVote); i { case 0: return &v.state @@ -42600,7 +44663,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[433].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[452].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry); i { case 0: return &v.state @@ -42612,7 +44675,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[434].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[453].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientVerifyFavoritePlayersResponse_Result); i { case 0: return &v.state @@ -42624,7 +44687,19 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[435].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[454].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_proto_msgTypes[455].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetOWMatchDetailsResponse_Marker); i { case 0: return &v.state @@ -42636,7 +44711,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[436].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[456].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCGetDPCFavoritesResponse_Favorite); i { case 0: return &v.state @@ -42648,7 +44723,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[437].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[457].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCPlaceStickersRequest_StickerItem); i { case 0: return &v.state @@ -42660,7 +44735,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[438].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[458].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCPlaceCollectionStickersRequest_Slot); i { case 0: return &v.state @@ -42672,7 +44747,7 @@ func file_dota_gcmessages_client_proto_init() { return nil } } - file_dota_gcmessages_client_proto_msgTypes[439].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_proto_msgTypes[459].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote); i { case 0: return &v.state @@ -42690,8 +44765,8 @@ func file_dota_gcmessages_client_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_gcmessages_client_proto_rawDesc, - NumEnums: 76, - NumMessages: 440, + NumEnums: 81, + NumMessages: 460, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_gcmessages_client.proto b/dota/dota_gcmessages_client.proto index 08b49c34..7d8ec8bf 100644 --- a/dota/dota_gcmessages_client.proto +++ b/dota/dota_gcmessages_client.proto @@ -200,6 +200,7 @@ message CMsgDOTAPopup { CUSTOM_GAME_COOLDOWN_RESTRICTED = 76; CREATE_LOBBY_FAILED_TOO_MUCH_PLAYTIME = 77; CUSTOM_GAME_TOO_FEW_GAMES = 78; + COMM_SCORE_TOO_LOW = 79; } optional CMsgDOTAPopup.PopupID id = 1; @@ -268,6 +269,40 @@ message CMsgDOTASubmitPlayerAvoidRequestResponse { optional string debug_message = 3; } +message CMsgDOTASubmitPlayerReportV2 { + optional uint32 target_account_id = 1; + repeated uint32 report_reason = 2; + optional uint64 lobby_id = 3; + optional float game_time = 4; + optional uint32 debug_slot = 5; + optional fixed64 debug_match_id = 6; +} + +message CMsgDOTASubmitPlayerReportResponseV2 { + enum EResult { + k_eInternalError = 0; + k_eSuccess = 1; + k_eDuplicateReport = 2; + k_eMixedReportFlags = 3; + k_eTooLate = 4; + k_eInvalidPregameReport = 5; + k_eHasntChatted = 6; + k_eInvalid = 7; + k_eOwnership = 8; + k_eMissingRequirements = 9; + k_eInvalidRoleReport = 10; + k_eInvalidCoachReport = 11; + k_eNoRemainingReports = 12; + k_eInvalidMember = 13; + k_eCannotReportPartyMember = 14; + } + + optional uint32 target_account_id = 1; + repeated uint32 report_reason = 2; + optional string debug_message = 4; + optional CMsgDOTASubmitPlayerReportResponseV2.EResult enum_result = 5; +} + message CMsgDOTASubmitLobbyMVPVote { optional uint32 target_account_id = 1; } @@ -1830,6 +1865,7 @@ message CMsgGCToClientCommendNotification { optional uint32 commender_account_id = 1; optional string commender_name = 2; optional uint32 flags = 3; + optional uint32 commender_hero_id = 4; } message CMsgDOTAClientToGCQuickStatsRequest { @@ -2745,6 +2781,37 @@ message CMsgDraftTriviaVoteCount { optional uint32 dire_votes = 3; } +message CMsgClientToGCRequestReporterUpdates { +} + +message CMsgClientToGCRequestReporterUpdatesResponse { + message ReporterUpdate { + optional uint64 match_id = 1; + optional uint32 hero_id = 2; + optional uint32 report_reason = 3; + optional uint32 timestamp = 4; + } + + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTimeout = 2; + k_eTooBusy = 3; + k_eNotPermitted = 4; + k_eNotToSoon = 5; + k_eNotValid = 6; + } + + optional CMsgClientToGCRequestReporterUpdatesResponse.EResponse enum_result = 1; + repeated CMsgClientToGCRequestReporterUpdatesResponse.ReporterUpdate updates = 2; + optional int32 num_reported = 3; + optional int32 num_no_action_taken = 4; +} + +message CMsgClientToGCAcknowledgeReporterUpdates { + repeated uint64 match_ids = 1; +} + message CMsgClientToGCRecalibrateMMR { } @@ -3186,3 +3253,104 @@ message CMsgGCToClientMapStatsResponse { optional CMsgMapStatsSnapshot personal_stats = 2; optional CMsgGlobalMapStats global_stats = 3; } + +message CMsgRoadToTIAssignedQuest { + optional uint32 quest_id = 1; + optional uint32 difficulty = 2; + optional uint32 progress_flags = 3; + optional uint32 half_credit_flags = 4; + optional bool completed = 5; +} + +message CMsgRoadToTIUserData { + repeated CMsgRoadToTIAssignedQuest quests = 1; +} + +message CMsgClientToGCRoadToTIGetQuests { + optional uint32 event_id = 1; +} + +message CMsgClientToGCRoadToTIGetQuestsResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidID = 5; + } + + optional CMsgClientToGCRoadToTIGetQuestsResponse.EResponse response = 1; + optional CMsgRoadToTIUserData quest_data = 2; +} + +message CMsgClientToGCRoadToTIGetActiveQuest { + optional uint32 event_id = 1; +} + +message CMsgClientToGCRoadToTIGetActiveQuestResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eNone = 2; + k_eTooBusy = 3; + k_eDisabled = 4; + k_eTimeout = 5; + k_eInvalidID = 6; + } + + optional CMsgClientToGCRoadToTIGetActiveQuestResponse.EResponse response = 1; + optional CMsgRoadToTIAssignedQuest quest_data = 2; +} + +message CMsgGCToClientRoadToTIQuestDataUpdated { + optional uint32 event_id = 1; + optional CMsgRoadToTIUserData quest_data = 2; +} + +message CMsgClientToGCRoadToTIUseItem { + optional uint32 event_id = 1; + optional uint32 item_type = 2; + optional uint32 hero_index = 3; +} + +message CMsgClientToGCRoadToTIUseItemResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eBadInput = 2; + k_eNoItem = 3; + k_eDisabled = 4; + k_eTimeout = 5; + k_eInvalidID = 6; + } + + optional CMsgClientToGCRoadToTIUseItemResponse.EResponse response = 1; +} + +message CMsgClientToGCRoadToTIDevForceQuest { + optional uint32 event_id = 1; + optional bool force_match_type = 2; + optional uint32 force_id = 3; +} + +message CMsgLobbyRoadToTIMatchQuestData { + optional CMsgRoadToTIAssignedQuest quest_data = 1; + optional uint32 quest_period = 2; + optional uint32 quest_number = 3; +} + +message CMsgClientToGCNewBloomGift { + optional uint32 defindex = 1; + optional uint64 lobby_id = 2; + repeated uint32 target_account_ids = 3; +} + +message CMsgClientToGCNewBloomGiftResponse { + optional ENewBloomGiftingResponse result = 1; + repeated uint32 received_account_ids = 2; +} + +message CMsgClientToGCSetBannedHeroes { + repeated uint32 banned_hero_ids = 1; +} diff --git a/dota/dota_gcmessages_client_battle_report.pb.go b/dota/dota_gcmessages_client_battle_report.pb.go index 1224084a..c8c63b2d 100644 --- a/dota/dota_gcmessages_client_battle_report.pb.go +++ b/dota/dota_gcmessages_client_battle_report.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_battle_report.proto @@ -337,7 +337,7 @@ const ( CMsgBattleReport_Role_k_eSafelane CMsgBattleReport_Role = 0 CMsgBattleReport_Role_k_eMidlane CMsgBattleReport_Role = 1 CMsgBattleReport_Role_k_eOfflane CMsgBattleReport_Role = 2 - CMsgBattleReport_Role_k_eSoftSupport CMsgBattleReport_Role = 3 + CMsgBattleReport_Role_k_eSupport CMsgBattleReport_Role = 3 CMsgBattleReport_Role_k_eHardSupport CMsgBattleReport_Role = 4 ) @@ -348,7 +348,7 @@ var ( 0: "k_eSafelane", 1: "k_eMidlane", 2: "k_eOfflane", - 3: "k_eSoftSupport", + 3: "k_eSupport", 4: "k_eHardSupport", } CMsgBattleReport_Role_value = map[string]int32{ @@ -356,7 +356,7 @@ var ( "k_eSafelane": 0, "k_eMidlane": 1, "k_eOfflane": 2, - "k_eSoftSupport": 3, + "k_eSupport": 3, "k_eHardSupport": 4, } ) @@ -3770,59 +3770,58 @@ var file_dota_gcmessages_client_battle_report_proto_rawDesc = []byte{ 0x72, 0x61, 0x6c, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x10, - 0x02, 0x2a, 0x8d, 0x01, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x02, 0x2a, 0x89, 0x01, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x53, 0x61, 0x66, 0x65, 0x6c, 0x61, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x4d, 0x69, 0x64, 0x6c, 0x61, 0x6e, 0x65, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, - 0x4f, 0x66, 0x66, 0x6c, 0x61, 0x6e, 0x65, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, - 0x53, 0x6f, 0x66, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x03, 0x12, 0x12, 0x0a, - 0x0e, 0x6b, 0x5f, 0x65, 0x48, 0x61, 0x72, 0x64, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x10, - 0x04, 0x2a, 0xad, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x25, 0x0a, 0x18, 0x6b, 0x5f, 0x65, 0x43, 0x6f, 0x6d, 0x70, - 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x14, 0x0a, 0x10, - 0x6b, 0x5f, 0x65, 0x41, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x4f, 0x66, 0x53, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x52, 0x61, 0x6e, 0x6b, 0x10, 0x01, 0x12, - 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, - 0x03, 0x2a, 0xbd, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, - 0x54, 0x69, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, - 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, 0x4c, 0x6f, 0x77, 0x10, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, - 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, - 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, - 0x54, 0x69, 0x65, 0x72, 0x31, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x48, 0x69, - 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, 0x32, 0x10, 0x02, 0x12, 0x15, - 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, - 0x65, 0x72, 0x33, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, - 0x6c, 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x10, - 0x04, 0x2a, 0x6a, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x52, - 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, - 0x6c, 0x69, 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x10, 0x00, 0x12, 0x18, 0x0a, - 0x14, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x55, 0x6e, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x48, 0x69, - 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x52, 0x61, 0x72, 0x65, 0x10, 0x02, 0x2a, 0x34, 0x0a, - 0x19, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x5f, 0x45, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x6b, 0x5f, - 0x65, 0x57, 0x69, 0x6e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x73, - 0x73, 0x10, 0x01, 0x2a, 0x75, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x4f, 0x75, 0x74, - 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, - 0x77, 0x6e, 0x4c, 0x61, 0x6e, 0x65, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x10, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x57, - 0x6f, 0x6e, 0x4c, 0x61, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x4c, - 0x6f, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, - 0x45, 0x76, 0x65, 0x6e, 0x4c, 0x61, 0x6e, 0x65, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, - 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, - 0x61, + 0x4f, 0x66, 0x66, 0x6c, 0x61, 0x6e, 0x65, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, + 0x48, 0x61, 0x72, 0x64, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x10, 0x04, 0x2a, 0xad, 0x01, + 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x12, 0x25, 0x0a, 0x18, 0x6b, 0x5f, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x41, + 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x10, 0x00, 0x12, 0x1b, + 0x0a, 0x17, 0x6b, 0x5f, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4f, 0x66, 0x53, 0x69, + 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x52, 0x61, 0x6e, 0x6b, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x6b, + 0x5f, 0x65, 0x41, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x10, 0x02, 0x12, 0x1d, + 0x0a, 0x19, 0x6b, 0x5f, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x50, 0x65, 0x72, 0x73, + 0x6f, 0x6e, 0x61, 0x6c, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x03, 0x2a, 0xbd, 0x01, + 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, + 0x12, 0x20, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, + 0x54, 0x69, 0x65, 0x72, 0x4c, 0x6f, 0x77, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, + 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, + 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, + 0x31, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, + 0x67, 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, 0x32, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, + 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x65, 0x72, 0x33, 0x10, + 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, + 0x74, 0x54, 0x69, 0x65, 0x72, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x10, 0x04, 0x2a, 0x6a, 0x0a, + 0x20, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x52, 0x61, 0x72, 0x69, 0x74, + 0x79, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, + 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x55, 0x6e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, + 0x67, 0x68, 0x74, 0x52, 0x61, 0x72, 0x65, 0x10, 0x02, 0x2a, 0x34, 0x0a, 0x19, 0x43, 0x4d, 0x73, + 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x45, 0x4f, + 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x6b, 0x5f, 0x65, 0x57, 0x69, 0x6e, + 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x73, 0x73, 0x10, 0x01, 0x2a, + 0x75, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, + 0x12, 0x22, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x4c, 0x61, + 0x6e, 0x65, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x57, 0x6f, 0x6e, 0x4c, 0x61, + 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x73, 0x74, 0x4c, + 0x61, 0x6e, 0x65, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x45, 0x76, 0x65, 0x6e, + 0x4c, 0x61, 0x6e, 0x65, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, + 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/dota_gcmessages_client_battle_report.proto b/dota/dota_gcmessages_client_battle_report.proto index 0aed6730..7ed978a4 100644 --- a/dota/dota_gcmessages_client_battle_report.proto +++ b/dota/dota_gcmessages_client_battle_report.proto @@ -94,7 +94,7 @@ enum CMsgBattleReport_Role { k_eSafelane = 0; k_eMidlane = 1; k_eOfflane = 2; - k_eSoftSupport = 3; + k_eSupport = 3; k_eHardSupport = 4; } diff --git a/dota/dota_gcmessages_client_bingo.pb.go b/dota/dota_gcmessages_client_bingo.pb.go new file mode 100644 index 00000000..aa44584e --- /dev/null +++ b/dota/dota_gcmessages_client_bingo.pb.go @@ -0,0 +1,1385 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.30.0 +// protoc v3.21.5 +// source: dota_gcmessages_client_bingo.proto + +package dota + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type CMsgClientToGCBingoGetUserDataResponse_EResponse int32 + +const ( + CMsgClientToGCBingoGetUserDataResponse_k_eInternalError CMsgClientToGCBingoGetUserDataResponse_EResponse = 0 + CMsgClientToGCBingoGetUserDataResponse_k_eSuccess CMsgClientToGCBingoGetUserDataResponse_EResponse = 1 + CMsgClientToGCBingoGetUserDataResponse_k_eTooBusy CMsgClientToGCBingoGetUserDataResponse_EResponse = 2 + CMsgClientToGCBingoGetUserDataResponse_k_eDisabled CMsgClientToGCBingoGetUserDataResponse_EResponse = 3 + CMsgClientToGCBingoGetUserDataResponse_k_eTimeout CMsgClientToGCBingoGetUserDataResponse_EResponse = 4 +) + +// Enum value maps for CMsgClientToGCBingoGetUserDataResponse_EResponse. +var ( + CMsgClientToGCBingoGetUserDataResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + } + CMsgClientToGCBingoGetUserDataResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + } +) + +func (x CMsgClientToGCBingoGetUserDataResponse_EResponse) Enum() *CMsgClientToGCBingoGetUserDataResponse_EResponse { + p := new(CMsgClientToGCBingoGetUserDataResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCBingoGetUserDataResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCBingoGetUserDataResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_bingo_proto_enumTypes[0].Descriptor() +} + +func (CMsgClientToGCBingoGetUserDataResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_bingo_proto_enumTypes[0] +} + +func (x CMsgClientToGCBingoGetUserDataResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCBingoGetUserDataResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCBingoGetUserDataResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCBingoGetUserDataResponse_EResponse.Descriptor instead. +func (CMsgClientToGCBingoGetUserDataResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{3, 0} +} + +type CMsgClientToGCBingoGetStatsDataResponse_EResponse int32 + +const ( + CMsgClientToGCBingoGetStatsDataResponse_k_eInternalError CMsgClientToGCBingoGetStatsDataResponse_EResponse = 0 + CMsgClientToGCBingoGetStatsDataResponse_k_eSuccess CMsgClientToGCBingoGetStatsDataResponse_EResponse = 1 + CMsgClientToGCBingoGetStatsDataResponse_k_eTooBusy CMsgClientToGCBingoGetStatsDataResponse_EResponse = 2 + CMsgClientToGCBingoGetStatsDataResponse_k_eDisabled CMsgClientToGCBingoGetStatsDataResponse_EResponse = 3 + CMsgClientToGCBingoGetStatsDataResponse_k_eTimeout CMsgClientToGCBingoGetStatsDataResponse_EResponse = 4 +) + +// Enum value maps for CMsgClientToGCBingoGetStatsDataResponse_EResponse. +var ( + CMsgClientToGCBingoGetStatsDataResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + } + CMsgClientToGCBingoGetStatsDataResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + } +) + +func (x CMsgClientToGCBingoGetStatsDataResponse_EResponse) Enum() *CMsgClientToGCBingoGetStatsDataResponse_EResponse { + p := new(CMsgClientToGCBingoGetStatsDataResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCBingoGetStatsDataResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCBingoGetStatsDataResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_bingo_proto_enumTypes[1].Descriptor() +} + +func (CMsgClientToGCBingoGetStatsDataResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_bingo_proto_enumTypes[1] +} + +func (x CMsgClientToGCBingoGetStatsDataResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCBingoGetStatsDataResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCBingoGetStatsDataResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCBingoGetStatsDataResponse_EResponse.Descriptor instead. +func (CMsgClientToGCBingoGetStatsDataResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{7, 0} +} + +type CMsgClientToGCBingoClaimRowResponse_EResponse int32 + +const ( + CMsgClientToGCBingoClaimRowResponse_k_eInternalError CMsgClientToGCBingoClaimRowResponse_EResponse = 0 + CMsgClientToGCBingoClaimRowResponse_k_eSuccess CMsgClientToGCBingoClaimRowResponse_EResponse = 1 + CMsgClientToGCBingoClaimRowResponse_k_eTooBusy CMsgClientToGCBingoClaimRowResponse_EResponse = 2 + CMsgClientToGCBingoClaimRowResponse_k_eDisabled CMsgClientToGCBingoClaimRowResponse_EResponse = 3 + CMsgClientToGCBingoClaimRowResponse_k_eTimeout CMsgClientToGCBingoClaimRowResponse_EResponse = 4 + CMsgClientToGCBingoClaimRowResponse_k_eInvalidRow CMsgClientToGCBingoClaimRowResponse_EResponse = 5 + CMsgClientToGCBingoClaimRowResponse_k_eExpiredCard CMsgClientToGCBingoClaimRowResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCBingoClaimRowResponse_EResponse. +var ( + CMsgClientToGCBingoClaimRowResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidRow", + 6: "k_eExpiredCard", + } + CMsgClientToGCBingoClaimRowResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidRow": 5, + "k_eExpiredCard": 6, + } +) + +func (x CMsgClientToGCBingoClaimRowResponse_EResponse) Enum() *CMsgClientToGCBingoClaimRowResponse_EResponse { + p := new(CMsgClientToGCBingoClaimRowResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCBingoClaimRowResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCBingoClaimRowResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_bingo_proto_enumTypes[2].Descriptor() +} + +func (CMsgClientToGCBingoClaimRowResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_bingo_proto_enumTypes[2] +} + +func (x CMsgClientToGCBingoClaimRowResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCBingoClaimRowResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCBingoClaimRowResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCBingoClaimRowResponse_EResponse.Descriptor instead. +func (CMsgClientToGCBingoClaimRowResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{10, 0} +} + +type CMsgClientToGCBingoDevRerollCardResponse_EResponse int32 + +const ( + CMsgClientToGCBingoDevRerollCardResponse_k_eInternalError CMsgClientToGCBingoDevRerollCardResponse_EResponse = 0 + CMsgClientToGCBingoDevRerollCardResponse_k_eSuccess CMsgClientToGCBingoDevRerollCardResponse_EResponse = 1 + CMsgClientToGCBingoDevRerollCardResponse_k_eTooBusy CMsgClientToGCBingoDevRerollCardResponse_EResponse = 2 + CMsgClientToGCBingoDevRerollCardResponse_k_eDisabled CMsgClientToGCBingoDevRerollCardResponse_EResponse = 3 + CMsgClientToGCBingoDevRerollCardResponse_k_eTimeout CMsgClientToGCBingoDevRerollCardResponse_EResponse = 4 + CMsgClientToGCBingoDevRerollCardResponse_k_eExpiredCard CMsgClientToGCBingoDevRerollCardResponse_EResponse = 6 + CMsgClientToGCBingoDevRerollCardResponse_k_eNotAllowed CMsgClientToGCBingoDevRerollCardResponse_EResponse = 7 +) + +// Enum value maps for CMsgClientToGCBingoDevRerollCardResponse_EResponse. +var ( + CMsgClientToGCBingoDevRerollCardResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 6: "k_eExpiredCard", + 7: "k_eNotAllowed", + } + CMsgClientToGCBingoDevRerollCardResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eExpiredCard": 6, + "k_eNotAllowed": 7, + } +) + +func (x CMsgClientToGCBingoDevRerollCardResponse_EResponse) Enum() *CMsgClientToGCBingoDevRerollCardResponse_EResponse { + p := new(CMsgClientToGCBingoDevRerollCardResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCBingoDevRerollCardResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCBingoDevRerollCardResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_bingo_proto_enumTypes[3].Descriptor() +} + +func (CMsgClientToGCBingoDevRerollCardResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_bingo_proto_enumTypes[3] +} + +func (x CMsgClientToGCBingoDevRerollCardResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCBingoDevRerollCardResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCBingoDevRerollCardResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCBingoDevRerollCardResponse_EResponse.Descriptor instead. +func (CMsgClientToGCBingoDevRerollCardResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{12, 0} +} + +type CMsgBingoSquare struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + StatId *uint32 `protobuf:"varint,1,opt,name=stat_id,json=statId" json:"stat_id,omitempty"` + StatThreshold *int32 `protobuf:"varint,2,opt,name=stat_threshold,json=statThreshold" json:"stat_threshold,omitempty"` +} + +func (x *CMsgBingoSquare) Reset() { + *x = CMsgBingoSquare{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgBingoSquare) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgBingoSquare) ProtoMessage() {} + +func (x *CMsgBingoSquare) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgBingoSquare.ProtoReflect.Descriptor instead. +func (*CMsgBingoSquare) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{0} +} + +func (x *CMsgBingoSquare) GetStatId() uint32 { + if x != nil && x.StatId != nil { + return *x.StatId + } + return 0 +} + +func (x *CMsgBingoSquare) GetStatThreshold() int32 { + if x != nil && x.StatThreshold != nil { + return *x.StatThreshold + } + return 0 +} + +type CMsgBingoUserData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Squares []*CMsgBingoSquare `protobuf:"bytes,1,rep,name=squares" json:"squares,omitempty"` +} + +func (x *CMsgBingoUserData) Reset() { + *x = CMsgBingoUserData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgBingoUserData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgBingoUserData) ProtoMessage() {} + +func (x *CMsgBingoUserData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgBingoUserData.ProtoReflect.Descriptor instead. +func (*CMsgBingoUserData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{1} +} + +func (x *CMsgBingoUserData) GetSquares() []*CMsgBingoSquare { + if x != nil { + return x.Squares + } + return nil +} + +type CMsgClientToGCBingoGetUserData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + LeaguePhase *uint32 `protobuf:"varint,2,opt,name=league_phase,json=leaguePhase" json:"league_phase,omitempty"` +} + +func (x *CMsgClientToGCBingoGetUserData) Reset() { + *x = CMsgClientToGCBingoGetUserData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBingoGetUserData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBingoGetUserData) ProtoMessage() {} + +func (x *CMsgClientToGCBingoGetUserData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBingoGetUserData.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBingoGetUserData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{2} +} + +func (x *CMsgClientToGCBingoGetUserData) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgClientToGCBingoGetUserData) GetLeaguePhase() uint32 { + if x != nil && x.LeaguePhase != nil { + return *x.LeaguePhase + } + return 0 +} + +type CMsgClientToGCBingoGetUserDataResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCBingoGetUserDataResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCBingoGetUserDataResponse_EResponse" json:"response,omitempty"` + UserData *CMsgBingoUserData `protobuf:"bytes,2,opt,name=user_data,json=userData" json:"user_data,omitempty"` +} + +func (x *CMsgClientToGCBingoGetUserDataResponse) Reset() { + *x = CMsgClientToGCBingoGetUserDataResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBingoGetUserDataResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBingoGetUserDataResponse) ProtoMessage() {} + +func (x *CMsgClientToGCBingoGetUserDataResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBingoGetUserDataResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBingoGetUserDataResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{3} +} + +func (x *CMsgClientToGCBingoGetUserDataResponse) GetResponse() CMsgClientToGCBingoGetUserDataResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCBingoGetUserDataResponse_k_eInternalError +} + +func (x *CMsgClientToGCBingoGetUserDataResponse) GetUserData() *CMsgBingoUserData { + if x != nil { + return x.UserData + } + return nil +} + +type CMsgBingoIndividualStatData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + StatId *uint32 `protobuf:"varint,1,opt,name=stat_id,json=statId" json:"stat_id,omitempty"` + StatValue *int32 `protobuf:"varint,2,opt,name=stat_value,json=statValue" json:"stat_value,omitempty"` +} + +func (x *CMsgBingoIndividualStatData) Reset() { + *x = CMsgBingoIndividualStatData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgBingoIndividualStatData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgBingoIndividualStatData) ProtoMessage() {} + +func (x *CMsgBingoIndividualStatData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgBingoIndividualStatData.ProtoReflect.Descriptor instead. +func (*CMsgBingoIndividualStatData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{4} +} + +func (x *CMsgBingoIndividualStatData) GetStatId() uint32 { + if x != nil && x.StatId != nil { + return *x.StatId + } + return 0 +} + +func (x *CMsgBingoIndividualStatData) GetStatValue() int32 { + if x != nil && x.StatValue != nil { + return *x.StatValue + } + return 0 +} + +type CMsgBingoStatsData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + StatsData []*CMsgBingoIndividualStatData `protobuf:"bytes,1,rep,name=stats_data,json=statsData" json:"stats_data,omitempty"` +} + +func (x *CMsgBingoStatsData) Reset() { + *x = CMsgBingoStatsData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgBingoStatsData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgBingoStatsData) ProtoMessage() {} + +func (x *CMsgBingoStatsData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgBingoStatsData.ProtoReflect.Descriptor instead. +func (*CMsgBingoStatsData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{5} +} + +func (x *CMsgBingoStatsData) GetStatsData() []*CMsgBingoIndividualStatData { + if x != nil { + return x.StatsData + } + return nil +} + +type CMsgClientToGCBingoGetStatsData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + LeaguePhase *uint32 `protobuf:"varint,2,opt,name=league_phase,json=leaguePhase" json:"league_phase,omitempty"` +} + +func (x *CMsgClientToGCBingoGetStatsData) Reset() { + *x = CMsgClientToGCBingoGetStatsData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBingoGetStatsData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBingoGetStatsData) ProtoMessage() {} + +func (x *CMsgClientToGCBingoGetStatsData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBingoGetStatsData.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBingoGetStatsData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{6} +} + +func (x *CMsgClientToGCBingoGetStatsData) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgClientToGCBingoGetStatsData) GetLeaguePhase() uint32 { + if x != nil && x.LeaguePhase != nil { + return *x.LeaguePhase + } + return 0 +} + +type CMsgClientToGCBingoGetStatsDataResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCBingoGetStatsDataResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCBingoGetStatsDataResponse_EResponse" json:"response,omitempty"` + StatsData *CMsgBingoStatsData `protobuf:"bytes,2,opt,name=stats_data,json=statsData" json:"stats_data,omitempty"` +} + +func (x *CMsgClientToGCBingoGetStatsDataResponse) Reset() { + *x = CMsgClientToGCBingoGetStatsDataResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBingoGetStatsDataResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBingoGetStatsDataResponse) ProtoMessage() {} + +func (x *CMsgClientToGCBingoGetStatsDataResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBingoGetStatsDataResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBingoGetStatsDataResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{7} +} + +func (x *CMsgClientToGCBingoGetStatsDataResponse) GetResponse() CMsgClientToGCBingoGetStatsDataResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCBingoGetStatsDataResponse_k_eInternalError +} + +func (x *CMsgClientToGCBingoGetStatsDataResponse) GetStatsData() *CMsgBingoStatsData { + if x != nil { + return x.StatsData + } + return nil +} + +type CMsgGCToClientBingoUserDataUpdated struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + LeaguePhase *uint32 `protobuf:"varint,2,opt,name=league_phase,json=leaguePhase" json:"league_phase,omitempty"` + UserData *CMsgBingoUserData `protobuf:"bytes,3,opt,name=user_data,json=userData" json:"user_data,omitempty"` +} + +func (x *CMsgGCToClientBingoUserDataUpdated) Reset() { + *x = CMsgGCToClientBingoUserDataUpdated{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgGCToClientBingoUserDataUpdated) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgGCToClientBingoUserDataUpdated) ProtoMessage() {} + +func (x *CMsgGCToClientBingoUserDataUpdated) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgGCToClientBingoUserDataUpdated.ProtoReflect.Descriptor instead. +func (*CMsgGCToClientBingoUserDataUpdated) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{8} +} + +func (x *CMsgGCToClientBingoUserDataUpdated) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgGCToClientBingoUserDataUpdated) GetLeaguePhase() uint32 { + if x != nil && x.LeaguePhase != nil { + return *x.LeaguePhase + } + return 0 +} + +func (x *CMsgGCToClientBingoUserDataUpdated) GetUserData() *CMsgBingoUserData { + if x != nil { + return x.UserData + } + return nil +} + +type CMsgClientToGCBingoClaimRow struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + LeaguePhase *uint32 `protobuf:"varint,2,opt,name=league_phase,json=leaguePhase" json:"league_phase,omitempty"` + RowIndex *uint32 `protobuf:"varint,3,opt,name=row_index,json=rowIndex" json:"row_index,omitempty"` +} + +func (x *CMsgClientToGCBingoClaimRow) Reset() { + *x = CMsgClientToGCBingoClaimRow{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBingoClaimRow) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBingoClaimRow) ProtoMessage() {} + +func (x *CMsgClientToGCBingoClaimRow) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBingoClaimRow.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBingoClaimRow) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{9} +} + +func (x *CMsgClientToGCBingoClaimRow) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgClientToGCBingoClaimRow) GetLeaguePhase() uint32 { + if x != nil && x.LeaguePhase != nil { + return *x.LeaguePhase + } + return 0 +} + +func (x *CMsgClientToGCBingoClaimRow) GetRowIndex() uint32 { + if x != nil && x.RowIndex != nil { + return *x.RowIndex + } + return 0 +} + +type CMsgClientToGCBingoClaimRowResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCBingoClaimRowResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCBingoClaimRowResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCBingoClaimRowResponse) Reset() { + *x = CMsgClientToGCBingoClaimRowResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBingoClaimRowResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBingoClaimRowResponse) ProtoMessage() {} + +func (x *CMsgClientToGCBingoClaimRowResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBingoClaimRowResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBingoClaimRowResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{10} +} + +func (x *CMsgClientToGCBingoClaimRowResponse) GetResponse() CMsgClientToGCBingoClaimRowResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCBingoClaimRowResponse_k_eInternalError +} + +type CMsgClientToGCBingoDevRerollCard struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + LeaguePhase *uint32 `protobuf:"varint,2,opt,name=league_phase,json=leaguePhase" json:"league_phase,omitempty"` +} + +func (x *CMsgClientToGCBingoDevRerollCard) Reset() { + *x = CMsgClientToGCBingoDevRerollCard{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBingoDevRerollCard) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBingoDevRerollCard) ProtoMessage() {} + +func (x *CMsgClientToGCBingoDevRerollCard) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBingoDevRerollCard.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBingoDevRerollCard) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{11} +} + +func (x *CMsgClientToGCBingoDevRerollCard) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgClientToGCBingoDevRerollCard) GetLeaguePhase() uint32 { + if x != nil && x.LeaguePhase != nil { + return *x.LeaguePhase + } + return 0 +} + +type CMsgClientToGCBingoDevRerollCardResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCBingoDevRerollCardResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCBingoDevRerollCardResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCBingoDevRerollCardResponse) Reset() { + *x = CMsgClientToGCBingoDevRerollCardResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBingoDevRerollCardResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBingoDevRerollCardResponse) ProtoMessage() {} + +func (x *CMsgClientToGCBingoDevRerollCardResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_bingo_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBingoDevRerollCardResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBingoDevRerollCardResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_bingo_proto_rawDescGZIP(), []int{12} +} + +func (x *CMsgClientToGCBingoDevRerollCardResponse) GetResponse() CMsgClientToGCBingoDevRerollCardResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCBingoDevRerollCardResponse_k_eInternalError +} + +var File_dota_gcmessages_client_bingo_proto protoreflect.FileDescriptor + +var file_dota_gcmessages_client_bingo_proto_rawDesc = []byte{ + 0x0a, 0x22, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x73, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x69, 0x6e, 0x67, 0x6f, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0x13, 0x73, 0x74, 0x65, 0x61, + 0x6d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, + 0x17, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x75, + 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x67, + 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x67, 0x63, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x77, 0x65, 0x62, 0x61, 0x70, 0x69, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x63, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x63, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x62, 0x61, + 0x73, 0x65, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x65, 0x63, 0x6f, 0x6e, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x64, 0x6f, 0x74, 0x61, + 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x76, 0x61, 0x6c, 0x76, 0x65, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0x51, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x53, 0x71, 0x75, 0x61, + 0x72, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, + 0x74, 0x61, 0x74, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x74, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, + 0x6c, 0x64, 0x22, 0x44, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x55, + 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2f, 0x0a, 0x07, 0x73, 0x71, 0x75, 0x61, 0x72, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x53, 0x71, 0x75, 0x61, 0x72, 0x65, 0x52, + 0x07, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x22, 0x60, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x47, + 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, + 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x5f, 0x70, 0x68, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x68, 0x61, 0x73, 0x65, 0x22, 0x96, 0x02, 0x0a, 0x26, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, + 0x67, 0x6f, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, + 0x67, 0x6f, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x09, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x55, 0x73, 0x65, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x22, + 0x62, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, + 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, + 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x10, 0x04, 0x22, 0x55, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x69, 0x6e, 0x67, 0x6f, + 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x44, 0x61, + 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, + 0x74, 0x61, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x73, 0x74, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x56, 0x0a, 0x12, 0x43, 0x4d, + 0x73, 0x67, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x40, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x53, + 0x74, 0x61, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x73, 0x44, 0x61, + 0x74, 0x61, 0x22, 0x61, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x70, 0x68, 0x61, + 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x50, 0x68, 0x61, 0x73, 0x65, 0x22, 0x9b, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x47, 0x65, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x53, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x47, 0x65, + 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x73, 0x44, 0x61, 0x74, 0x61, 0x22, + 0x62, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, + 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, + 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x10, 0x04, 0x22, 0x9a, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, + 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x5f, 0x70, 0x68, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x09, 0x75, 0x73, + 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x55, 0x73, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x22, 0x7a, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x6f, 0x77, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x70, 0x68, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x82, 0x02, 0x0a, + 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, + 0x69, 0x6e, 0x67, 0x6f, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, + 0x6f, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x89, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, + 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x77, 0x10, 0x05, 0x12, 0x12, 0x0a, + 0x0e, 0x6b, 0x5f, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x10, + 0x06, 0x22, 0x62, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x44, 0x65, 0x76, 0x52, 0x65, 0x72, 0x6f, 0x6c, + 0x6c, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x70, 0x68, 0x61, + 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x50, 0x68, 0x61, 0x73, 0x65, 0x22, 0x8c, 0x02, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x44, 0x65, 0x76, + 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x54, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x44, + 0x65, 0x76, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x89, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, + 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x12, 0x0a, + 0x0e, 0x6b, 0x5f, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x10, + 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, + 0x65, 0x64, 0x10, 0x07, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, + 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, +} + +var ( + file_dota_gcmessages_client_bingo_proto_rawDescOnce sync.Once + file_dota_gcmessages_client_bingo_proto_rawDescData = file_dota_gcmessages_client_bingo_proto_rawDesc +) + +func file_dota_gcmessages_client_bingo_proto_rawDescGZIP() []byte { + file_dota_gcmessages_client_bingo_proto_rawDescOnce.Do(func() { + file_dota_gcmessages_client_bingo_proto_rawDescData = protoimpl.X.CompressGZIP(file_dota_gcmessages_client_bingo_proto_rawDescData) + }) + return file_dota_gcmessages_client_bingo_proto_rawDescData +} + +var file_dota_gcmessages_client_bingo_proto_enumTypes = make([]protoimpl.EnumInfo, 4) +var file_dota_gcmessages_client_bingo_proto_msgTypes = make([]protoimpl.MessageInfo, 13) +var file_dota_gcmessages_client_bingo_proto_goTypes = []interface{}{ + (CMsgClientToGCBingoGetUserDataResponse_EResponse)(0), // 0: dota.CMsgClientToGCBingoGetUserDataResponse.EResponse + (CMsgClientToGCBingoGetStatsDataResponse_EResponse)(0), // 1: dota.CMsgClientToGCBingoGetStatsDataResponse.EResponse + (CMsgClientToGCBingoClaimRowResponse_EResponse)(0), // 2: dota.CMsgClientToGCBingoClaimRowResponse.EResponse + (CMsgClientToGCBingoDevRerollCardResponse_EResponse)(0), // 3: dota.CMsgClientToGCBingoDevRerollCardResponse.EResponse + (*CMsgBingoSquare)(nil), // 4: dota.CMsgBingoSquare + (*CMsgBingoUserData)(nil), // 5: dota.CMsgBingoUserData + (*CMsgClientToGCBingoGetUserData)(nil), // 6: dota.CMsgClientToGCBingoGetUserData + (*CMsgClientToGCBingoGetUserDataResponse)(nil), // 7: dota.CMsgClientToGCBingoGetUserDataResponse + (*CMsgBingoIndividualStatData)(nil), // 8: dota.CMsgBingoIndividualStatData + (*CMsgBingoStatsData)(nil), // 9: dota.CMsgBingoStatsData + (*CMsgClientToGCBingoGetStatsData)(nil), // 10: dota.CMsgClientToGCBingoGetStatsData + (*CMsgClientToGCBingoGetStatsDataResponse)(nil), // 11: dota.CMsgClientToGCBingoGetStatsDataResponse + (*CMsgGCToClientBingoUserDataUpdated)(nil), // 12: dota.CMsgGCToClientBingoUserDataUpdated + (*CMsgClientToGCBingoClaimRow)(nil), // 13: dota.CMsgClientToGCBingoClaimRow + (*CMsgClientToGCBingoClaimRowResponse)(nil), // 14: dota.CMsgClientToGCBingoClaimRowResponse + (*CMsgClientToGCBingoDevRerollCard)(nil), // 15: dota.CMsgClientToGCBingoDevRerollCard + (*CMsgClientToGCBingoDevRerollCardResponse)(nil), // 16: dota.CMsgClientToGCBingoDevRerollCardResponse +} +var file_dota_gcmessages_client_bingo_proto_depIdxs = []int32{ + 4, // 0: dota.CMsgBingoUserData.squares:type_name -> dota.CMsgBingoSquare + 0, // 1: dota.CMsgClientToGCBingoGetUserDataResponse.response:type_name -> dota.CMsgClientToGCBingoGetUserDataResponse.EResponse + 5, // 2: dota.CMsgClientToGCBingoGetUserDataResponse.user_data:type_name -> dota.CMsgBingoUserData + 8, // 3: dota.CMsgBingoStatsData.stats_data:type_name -> dota.CMsgBingoIndividualStatData + 1, // 4: dota.CMsgClientToGCBingoGetStatsDataResponse.response:type_name -> dota.CMsgClientToGCBingoGetStatsDataResponse.EResponse + 9, // 5: dota.CMsgClientToGCBingoGetStatsDataResponse.stats_data:type_name -> dota.CMsgBingoStatsData + 5, // 6: dota.CMsgGCToClientBingoUserDataUpdated.user_data:type_name -> dota.CMsgBingoUserData + 2, // 7: dota.CMsgClientToGCBingoClaimRowResponse.response:type_name -> dota.CMsgClientToGCBingoClaimRowResponse.EResponse + 3, // 8: dota.CMsgClientToGCBingoDevRerollCardResponse.response:type_name -> dota.CMsgClientToGCBingoDevRerollCardResponse.EResponse + 9, // [9:9] is the sub-list for method output_type + 9, // [9:9] is the sub-list for method input_type + 9, // [9:9] is the sub-list for extension type_name + 9, // [9:9] is the sub-list for extension extendee + 0, // [0:9] is the sub-list for field type_name +} + +func init() { file_dota_gcmessages_client_bingo_proto_init() } +func file_dota_gcmessages_client_bingo_proto_init() { + if File_dota_gcmessages_client_bingo_proto != nil { + return + } + file_steammessages_proto_init() + file_dota_shared_enums_proto_init() + file_dota_gcmessages_common_proto_init() + file_dota_gcmessages_webapi_proto_init() + file_gcsdk_gcmessages_proto_init() + file_base_gcmessages_proto_init() + file_econ_gcmessages_proto_init() + file_dota_gcmessages_client_proto_init() + file_valveextensions_proto_init() + if !protoimpl.UnsafeEnabled { + file_dota_gcmessages_client_bingo_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgBingoSquare); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgBingoUserData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBingoGetUserData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBingoGetUserDataResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgBingoIndividualStatData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgBingoStatsData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBingoGetStatsData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBingoGetStatsDataResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientBingoUserDataUpdated); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBingoClaimRow); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBingoClaimRowResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBingoDevRerollCard); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_bingo_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBingoDevRerollCardResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_dota_gcmessages_client_bingo_proto_rawDesc, + NumEnums: 4, + NumMessages: 13, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_dota_gcmessages_client_bingo_proto_goTypes, + DependencyIndexes: file_dota_gcmessages_client_bingo_proto_depIdxs, + EnumInfos: file_dota_gcmessages_client_bingo_proto_enumTypes, + MessageInfos: file_dota_gcmessages_client_bingo_proto_msgTypes, + }.Build() + File_dota_gcmessages_client_bingo_proto = out.File + file_dota_gcmessages_client_bingo_proto_rawDesc = nil + file_dota_gcmessages_client_bingo_proto_goTypes = nil + file_dota_gcmessages_client_bingo_proto_depIdxs = nil +} diff --git a/dota/dota_gcmessages_client_bingo.proto b/dota/dota_gcmessages_client_bingo.proto new file mode 100644 index 00000000..e45108c9 --- /dev/null +++ b/dota/dota_gcmessages_client_bingo.proto @@ -0,0 +1,113 @@ +syntax = "proto2"; + +package dota; +option go_package = "github.com/dotabuff/manta/dota;dota"; + +import "steammessages.proto"; +import "dota_shared_enums.proto"; +import "dota_gcmessages_common.proto"; +import "dota_gcmessages_webapi.proto"; +import "gcsdk_gcmessages.proto"; +import "base_gcmessages.proto"; +import "econ_gcmessages.proto"; +import "dota_gcmessages_client.proto"; +import "valveextensions.proto"; + +message CMsgBingoSquare { + optional uint32 stat_id = 1; + optional int32 stat_threshold = 2; +} + +message CMsgBingoUserData { + repeated CMsgBingoSquare squares = 1; +} + +message CMsgClientToGCBingoGetUserData { + optional uint32 league_id = 1; + optional uint32 league_phase = 2; +} + +message CMsgClientToGCBingoGetUserDataResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + } + + optional CMsgClientToGCBingoGetUserDataResponse.EResponse response = 1; + optional CMsgBingoUserData user_data = 2; +} + +message CMsgBingoIndividualStatData { + optional uint32 stat_id = 1; + optional int32 stat_value = 2; +} + +message CMsgBingoStatsData { + repeated CMsgBingoIndividualStatData stats_data = 1; +} + +message CMsgClientToGCBingoGetStatsData { + optional uint32 league_id = 1; + optional uint32 league_phase = 2; +} + +message CMsgClientToGCBingoGetStatsDataResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + } + + optional CMsgClientToGCBingoGetStatsDataResponse.EResponse response = 1; + optional CMsgBingoStatsData stats_data = 2; +} + +message CMsgGCToClientBingoUserDataUpdated { + optional uint32 league_id = 1; + optional uint32 league_phase = 2; + optional CMsgBingoUserData user_data = 3; +} + +message CMsgClientToGCBingoClaimRow { + optional uint32 league_id = 1; + optional uint32 league_phase = 2; + optional uint32 row_index = 3; +} + +message CMsgClientToGCBingoClaimRowResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidRow = 5; + k_eExpiredCard = 6; + } + + optional CMsgClientToGCBingoClaimRowResponse.EResponse response = 1; +} + +message CMsgClientToGCBingoDevRerollCard { + optional uint32 league_id = 1; + optional uint32 league_phase = 2; +} + +message CMsgClientToGCBingoDevRerollCardResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eExpiredCard = 6; + k_eNotAllowed = 7; + } + + optional CMsgClientToGCBingoDevRerollCardResponse.EResponse response = 1; +} diff --git a/dota/dota_gcmessages_client_candy_shop.pb.go b/dota/dota_gcmessages_client_candy_shop.pb.go index 113b3096..54e8d559 100644 --- a/dota/dota_gcmessages_client_candy_shop.pb.go +++ b/dota/dota_gcmessages_client_candy_shop.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_candy_shop.proto diff --git a/dota/dota_gcmessages_client_chat.pb.go b/dota/dota_gcmessages_client_chat.pb.go index bf3cd32e..f184ccc6 100644 --- a/dota/dota_gcmessages_client_chat.pb.go +++ b/dota/dota_gcmessages_client_chat.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_chat.proto @@ -738,44 +738,45 @@ type CMsgDOTAChatMessage struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` - ChannelId *uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId" json:"channel_id,omitempty"` - PersonaName *string `protobuf:"bytes,3,opt,name=persona_name,json=personaName" json:"persona_name,omitempty"` - Text *string `protobuf:"bytes,4,opt,name=text" json:"text,omitempty"` - Timestamp *uint32 `protobuf:"varint,5,opt,name=timestamp" json:"timestamp,omitempty"` - SuggestInviteAccountId *uint32 `protobuf:"varint,6,opt,name=suggest_invite_account_id,json=suggestInviteAccountId" json:"suggest_invite_account_id,omitempty"` - SuggestInviteName *string `protobuf:"bytes,7,opt,name=suggest_invite_name,json=suggestInviteName" json:"suggest_invite_name,omitempty"` - FantasyDraftOwnerAccountId *uint32 `protobuf:"varint,8,opt,name=fantasy_draft_owner_account_id,json=fantasyDraftOwnerAccountId" json:"fantasy_draft_owner_account_id,omitempty"` - FantasyDraftPlayerAccountId *uint32 `protobuf:"varint,9,opt,name=fantasy_draft_player_account_id,json=fantasyDraftPlayerAccountId" json:"fantasy_draft_player_account_id,omitempty"` - EventId *uint32 `protobuf:"varint,10,opt,name=event_id,json=eventId" json:"event_id,omitempty"` - SuggestInviteToLobby *bool `protobuf:"varint,11,opt,name=suggest_invite_to_lobby,json=suggestInviteToLobby" json:"suggest_invite_to_lobby,omitempty"` - EventPoints *uint32 `protobuf:"varint,12,opt,name=event_points,json=eventPoints" json:"event_points,omitempty"` - CoinFlip *bool `protobuf:"varint,13,opt,name=coin_flip,json=coinFlip" json:"coin_flip,omitempty"` - PlayerId *int32 `protobuf:"varint,14,opt,name=player_id,json=playerId" json:"player_id,omitempty"` - ShareProfileAccountId *uint32 `protobuf:"varint,15,opt,name=share_profile_account_id,json=shareProfileAccountId" json:"share_profile_account_id,omitempty"` - ChannelUserId *uint32 `protobuf:"varint,16,opt,name=channel_user_id,json=channelUserId" json:"channel_user_id,omitempty"` - DiceRoll *CMsgDOTAChatMessage_DiceRoll `protobuf:"bytes,17,opt,name=dice_roll,json=diceRoll" json:"dice_roll,omitempty"` - SharePartyId *uint64 `protobuf:"varint,18,opt,name=share_party_id,json=sharePartyId" json:"share_party_id,omitempty"` - ShareLobbyId *uint64 `protobuf:"varint,19,opt,name=share_lobby_id,json=shareLobbyId" json:"share_lobby_id,omitempty"` - ShareLobbyCustomGameId *uint64 `protobuf:"varint,20,opt,name=share_lobby_custom_game_id,json=shareLobbyCustomGameId" json:"share_lobby_custom_game_id,omitempty"` - ShareLobbyPasskey *string `protobuf:"bytes,21,opt,name=share_lobby_passkey,json=shareLobbyPasskey" json:"share_lobby_passkey,omitempty"` - PrivateChatChannelId *uint32 `protobuf:"varint,22,opt,name=private_chat_channel_id,json=privateChatChannelId" json:"private_chat_channel_id,omitempty"` - Status *uint32 `protobuf:"varint,23,opt,name=status" json:"status,omitempty"` - LegacyBattleCupVictory *bool `protobuf:"varint,24,opt,name=legacy_battle_cup_victory,json=legacyBattleCupVictory" json:"legacy_battle_cup_victory,omitempty"` - BattleCupStreak *uint32 `protobuf:"varint,29,opt,name=battle_cup_streak,json=battleCupStreak" json:"battle_cup_streak,omitempty"` - BadgeLevel *uint32 `protobuf:"varint,25,opt,name=badge_level,json=badgeLevel" json:"badge_level,omitempty"` - SuggestPickHeroId *uint32 `protobuf:"varint,26,opt,name=suggest_pick_hero_id,json=suggestPickHeroId" json:"suggest_pick_hero_id,omitempty"` - SuggestPickHeroRole *string `protobuf:"bytes,27,opt,name=suggest_pick_hero_role,json=suggestPickHeroRole" json:"suggest_pick_hero_role,omitempty"` - SuggestBanHeroId *uint32 `protobuf:"varint,30,opt,name=suggest_ban_hero_id,json=suggestBanHeroId" json:"suggest_ban_hero_id,omitempty"` - TriviaAnswer *CMsgDOTAChatMessage_TriviaAnswered `protobuf:"bytes,32,opt,name=trivia_answer,json=triviaAnswer" json:"trivia_answer,omitempty"` - RequestedAbilityId *int32 `protobuf:"varint,33,opt,name=requested_ability_id,json=requestedAbilityId" json:"requested_ability_id,omitempty"` - ChatFlags *uint32 `protobuf:"varint,34,opt,name=chat_flags,json=chatFlags" json:"chat_flags,omitempty"` - StartedFindingMatch *bool `protobuf:"varint,35,opt,name=started_finding_match,json=startedFindingMatch" json:"started_finding_match,omitempty"` - CtrlIsDown *bool `protobuf:"varint,36,opt,name=ctrl_is_down,json=ctrlIsDown" json:"ctrl_is_down,omitempty"` - FavoriteTeamId *uint32 `protobuf:"varint,37,opt,name=favorite_team_id,json=favoriteTeamId" json:"favorite_team_id,omitempty"` - FavoriteTeamQuality *uint32 `protobuf:"varint,38,opt,name=favorite_team_quality,json=favoriteTeamQuality" json:"favorite_team_quality,omitempty"` - SuggestPlayerDraftPick *int32 `protobuf:"varint,39,opt,name=suggest_player_draft_pick,json=suggestPlayerDraftPick" json:"suggest_player_draft_pick,omitempty"` - PlayerDraftPick *CMsgDOTAChatMessage_PlayerDraftPick `protobuf:"bytes,40,opt,name=player_draft_pick,json=playerDraftPick" json:"player_draft_pick,omitempty"` + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + ChannelId *uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId" json:"channel_id,omitempty"` + PersonaName *string `protobuf:"bytes,3,opt,name=persona_name,json=personaName" json:"persona_name,omitempty"` + Text *string `protobuf:"bytes,4,opt,name=text" json:"text,omitempty"` + Timestamp *uint32 `protobuf:"varint,5,opt,name=timestamp" json:"timestamp,omitempty"` + SuggestInviteAccountId *uint32 `protobuf:"varint,6,opt,name=suggest_invite_account_id,json=suggestInviteAccountId" json:"suggest_invite_account_id,omitempty"` + SuggestInviteName *string `protobuf:"bytes,7,opt,name=suggest_invite_name,json=suggestInviteName" json:"suggest_invite_name,omitempty"` + FantasyDraftOwnerAccountId *uint32 `protobuf:"varint,8,opt,name=fantasy_draft_owner_account_id,json=fantasyDraftOwnerAccountId" json:"fantasy_draft_owner_account_id,omitempty"` + FantasyDraftPlayerAccountId *uint32 `protobuf:"varint,9,opt,name=fantasy_draft_player_account_id,json=fantasyDraftPlayerAccountId" json:"fantasy_draft_player_account_id,omitempty"` + EventId *uint32 `protobuf:"varint,10,opt,name=event_id,json=eventId" json:"event_id,omitempty"` + SuggestInviteToLobby *bool `protobuf:"varint,11,opt,name=suggest_invite_to_lobby,json=suggestInviteToLobby" json:"suggest_invite_to_lobby,omitempty"` + EventPoints *uint32 `protobuf:"varint,12,opt,name=event_points,json=eventPoints" json:"event_points,omitempty"` + CoinFlip *bool `protobuf:"varint,13,opt,name=coin_flip,json=coinFlip" json:"coin_flip,omitempty"` + PlayerId *int32 `protobuf:"varint,14,opt,name=player_id,json=playerId" json:"player_id,omitempty"` + ShareProfileAccountId *uint32 `protobuf:"varint,15,opt,name=share_profile_account_id,json=shareProfileAccountId" json:"share_profile_account_id,omitempty"` + ChannelUserId *uint32 `protobuf:"varint,16,opt,name=channel_user_id,json=channelUserId" json:"channel_user_id,omitempty"` + DiceRoll *CMsgDOTAChatMessage_DiceRoll `protobuf:"bytes,17,opt,name=dice_roll,json=diceRoll" json:"dice_roll,omitempty"` + SharePartyId *uint64 `protobuf:"varint,18,opt,name=share_party_id,json=sharePartyId" json:"share_party_id,omitempty"` + ShareLobbyId *uint64 `protobuf:"varint,19,opt,name=share_lobby_id,json=shareLobbyId" json:"share_lobby_id,omitempty"` + ShareLobbyCustomGameId *uint64 `protobuf:"varint,20,opt,name=share_lobby_custom_game_id,json=shareLobbyCustomGameId" json:"share_lobby_custom_game_id,omitempty"` + ShareLobbyPasskey *string `protobuf:"bytes,21,opt,name=share_lobby_passkey,json=shareLobbyPasskey" json:"share_lobby_passkey,omitempty"` + PrivateChatChannelId *uint32 `protobuf:"varint,22,opt,name=private_chat_channel_id,json=privateChatChannelId" json:"private_chat_channel_id,omitempty"` + Status *uint32 `protobuf:"varint,23,opt,name=status" json:"status,omitempty"` + LegacyBattleCupVictory *bool `protobuf:"varint,24,opt,name=legacy_battle_cup_victory,json=legacyBattleCupVictory" json:"legacy_battle_cup_victory,omitempty"` + BattleCupStreak *uint32 `protobuf:"varint,29,opt,name=battle_cup_streak,json=battleCupStreak" json:"battle_cup_streak,omitempty"` + BadgeLevel *uint32 `protobuf:"varint,25,opt,name=badge_level,json=badgeLevel" json:"badge_level,omitempty"` + SuggestPickHeroId *uint32 `protobuf:"varint,26,opt,name=suggest_pick_hero_id,json=suggestPickHeroId" json:"suggest_pick_hero_id,omitempty"` + SuggestPickHeroRole *string `protobuf:"bytes,27,opt,name=suggest_pick_hero_role,json=suggestPickHeroRole" json:"suggest_pick_hero_role,omitempty"` + SuggestBanHeroId *uint32 `protobuf:"varint,30,opt,name=suggest_ban_hero_id,json=suggestBanHeroId" json:"suggest_ban_hero_id,omitempty"` + TriviaAnswer *CMsgDOTAChatMessage_TriviaAnswered `protobuf:"bytes,32,opt,name=trivia_answer,json=triviaAnswer" json:"trivia_answer,omitempty"` + RequestedAbilityId *int32 `protobuf:"varint,33,opt,name=requested_ability_id,json=requestedAbilityId" json:"requested_ability_id,omitempty"` + ChatFlags *uint32 `protobuf:"varint,34,opt,name=chat_flags,json=chatFlags" json:"chat_flags,omitempty"` + StartedFindingMatch *bool `protobuf:"varint,35,opt,name=started_finding_match,json=startedFindingMatch" json:"started_finding_match,omitempty"` + CtrlIsDown *bool `protobuf:"varint,36,opt,name=ctrl_is_down,json=ctrlIsDown" json:"ctrl_is_down,omitempty"` + FavoriteTeamId *uint32 `protobuf:"varint,37,opt,name=favorite_team_id,json=favoriteTeamId" json:"favorite_team_id,omitempty"` + FavoriteTeamQuality *uint32 `protobuf:"varint,38,opt,name=favorite_team_quality,json=favoriteTeamQuality" json:"favorite_team_quality,omitempty"` + SuggestPlayerDraftPick *int32 `protobuf:"varint,39,opt,name=suggest_player_draft_pick,json=suggestPlayerDraftPick" json:"suggest_player_draft_pick,omitempty"` + PlayerDraftPick *CMsgDOTAChatMessage_PlayerDraftPick `protobuf:"bytes,40,opt,name=player_draft_pick,json=playerDraftPick" json:"player_draft_pick,omitempty"` + ChatWheelMessage *CMsgDOTAChatMessage_ChatWheelMessage `protobuf:"bytes,41,opt,name=chat_wheel_message,json=chatWheelMessage" json:"chat_wheel_message,omitempty"` } func (x *CMsgDOTAChatMessage) Reset() { @@ -1076,6 +1077,13 @@ func (x *CMsgDOTAChatMessage) GetPlayerDraftPick() *CMsgDOTAChatMessage_PlayerDr return nil } +func (x *CMsgDOTAChatMessage) GetChatWheelMessage() *CMsgDOTAChatMessage_ChatWheelMessage { + if x != nil { + return x.ChatWheelMessage + } + return nil +} + type CMsgDOTAChatMember struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1926,6 +1934,77 @@ func (x *CMsgDOTAChatMessage_PlayerDraftPick) GetTeam() int32 { return 0 } +type CMsgDOTAChatMessage_ChatWheelMessage struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MessageId *uint32 `protobuf:"varint,1,opt,name=message_id,json=messageId" json:"message_id,omitempty"` + EmoticonId *uint32 `protobuf:"varint,2,opt,name=emoticon_id,json=emoticonId" json:"emoticon_id,omitempty"` + MessageText *string `protobuf:"bytes,3,opt,name=message_text,json=messageText" json:"message_text,omitempty"` + HeroBadgeTier *uint32 `protobuf:"varint,4,opt,name=hero_badge_tier,json=heroBadgeTier" json:"hero_badge_tier,omitempty"` +} + +func (x *CMsgDOTAChatMessage_ChatWheelMessage) Reset() { + *x = CMsgDOTAChatMessage_ChatWheelMessage{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_chat_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTAChatMessage_ChatWheelMessage) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTAChatMessage_ChatWheelMessage) ProtoMessage() {} + +func (x *CMsgDOTAChatMessage_ChatWheelMessage) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_chat_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTAChatMessage_ChatWheelMessage.ProtoReflect.Descriptor instead. +func (*CMsgDOTAChatMessage_ChatWheelMessage) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_chat_proto_rawDescGZIP(), []int{9, 3} +} + +func (x *CMsgDOTAChatMessage_ChatWheelMessage) GetMessageId() uint32 { + if x != nil && x.MessageId != nil { + return *x.MessageId + } + return 0 +} + +func (x *CMsgDOTAChatMessage_ChatWheelMessage) GetEmoticonId() uint32 { + if x != nil && x.EmoticonId != nil { + return *x.EmoticonId + } + return 0 +} + +func (x *CMsgDOTAChatMessage_ChatWheelMessage) GetMessageText() string { + if x != nil && x.MessageText != nil { + return *x.MessageText + } + return "" +} + +func (x *CMsgDOTAChatMessage_ChatWheelMessage) GetHeroBadgeTier() uint32 { + if x != nil && x.HeroBadgeTier != nil { + return *x.HeroBadgeTier + } + return 0 +} + type CMsgDOTARequestChatChannelListResponse_ChatChannel struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1939,7 +2018,7 @@ type CMsgDOTARequestChatChannelListResponse_ChatChannel struct { func (x *CMsgDOTARequestChatChannelListResponse_ChatChannel) Reset() { *x = CMsgDOTARequestChatChannelListResponse_ChatChannel{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_chat_proto_msgTypes[23] + mi := &file_dota_gcmessages_client_chat_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1952,7 +2031,7 @@ func (x *CMsgDOTARequestChatChannelListResponse_ChatChannel) String() string { func (*CMsgDOTARequestChatChannelListResponse_ChatChannel) ProtoMessage() {} func (x *CMsgDOTARequestChatChannelListResponse_ChatChannel) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_chat_proto_msgTypes[23] + mi := &file_dota_gcmessages_client_chat_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2003,7 +2082,7 @@ type CMsgDOTAChatGetUserListResponse_Member struct { func (x *CMsgDOTAChatGetUserListResponse_Member) Reset() { *x = CMsgDOTAChatGetUserListResponse_Member{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_chat_proto_msgTypes[24] + mi := &file_dota_gcmessages_client_chat_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2016,7 +2095,7 @@ func (x *CMsgDOTAChatGetUserListResponse_Member) String() string { func (*CMsgDOTAChatGetUserListResponse_Member) ProtoMessage() {} func (x *CMsgDOTAChatGetUserListResponse_Member) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_chat_proto_msgTypes[24] + mi := &file_dota_gcmessages_client_chat_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2074,7 +2153,7 @@ type CMsgDOTAChatRegionsEnabled_Region struct { func (x *CMsgDOTAChatRegionsEnabled_Region) Reset() { *x = CMsgDOTAChatRegionsEnabled_Region{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_chat_proto_msgTypes[25] + mi := &file_dota_gcmessages_client_chat_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2087,7 +2166,7 @@ func (x *CMsgDOTAChatRegionsEnabled_Region) String() string { func (*CMsgDOTAChatRegionsEnabled_Region) ProtoMessage() {} func (x *CMsgDOTAChatRegionsEnabled_Region) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_chat_proto_msgTypes[25] + mi := &file_dota_gcmessages_client_chat_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2239,7 +2318,7 @@ var file_dota_gcmessages_client_chat_proto_rawDesc = []byte{ 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x8b, 0x11, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x69, 0x6f, 0x6e, 0x22, 0x85, 0x13, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, @@ -2350,206 +2429,222 @@ var file_dota_gcmessages_client_chat_proto_rawDesc = []byte{ 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x52, 0x0f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x1a, 0x58, - 0x0a, 0x08, 0x44, 0x69, 0x63, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, - 0x6c, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x6f, - 0x6c, 0x6c, 0x4d, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x61, - 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, - 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x1a, 0xf2, 0x01, 0x0a, 0x0e, 0x54, 0x72, 0x69, - 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, - 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x36, 0x0a, 0x17, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x5f, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x15, 0x70, 0x61, 0x72, 0x74, 0x79, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x79, - 0x5f, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x70, 0x61, 0x72, 0x74, 0x79, 0x51, 0x75, - 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x56, 0x69, 0x65, 0x77, 0x65, 0x64, 0x12, 0x2e, 0x0a, - 0x13, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x74, 0x72, 0x69, 0x76, 0x69, 0x61, 0x5f, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, 0x61, 0x72, 0x74, - 0x79, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x42, 0x0a, - 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, - 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x65, 0x61, - 0x6d, 0x22, 0x92, 0x01, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, - 0x61, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, - 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, - 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xa6, 0x08, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x63, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, - 0x61, 0x78, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x32, 0x0a, 0x07, 0x6d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x58, + 0x0a, 0x12, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x3e, 0x0a, - 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x43, - 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, - 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x44, 0x0a, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x10, 0x63, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, + 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x58, 0x0a, 0x08, 0x44, 0x69, 0x63, 0x65, + 0x52, 0x6f, 0x6c, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x69, 0x6e, 0x12, + 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x1a, 0xf2, 0x01, 0x0a, 0x0e, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x41, 0x6e, 0x73, + 0x77, 0x65, 0x72, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, + 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x6e, + 0x73, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x36, 0x0a, 0x17, 0x70, 0x61, 0x72, + 0x74, 0x79, 0x5f, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x63, 0x6f, 0x72, + 0x72, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x70, 0x61, 0x72, 0x74, + 0x79, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, + 0x74, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x14, 0x70, 0x61, 0x72, 0x74, 0x79, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x56, 0x69, 0x65, 0x77, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x61, 0x72, 0x74, 0x79, + 0x5f, 0x74, 0x72, 0x69, 0x76, 0x69, 0x61, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, 0x61, 0x72, 0x74, 0x79, 0x54, 0x72, 0x69, 0x76, 0x69, + 0x61, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x42, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x1a, 0x9d, 0x01, 0x0a, 0x10, + 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, + 0x1f, 0x0a, 0x0b, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x65, 0x78, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, + 0x65, 0x78, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x64, 0x67, + 0x65, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x68, 0x65, + 0x72, 0x6f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x69, 0x65, 0x72, 0x22, 0x92, 0x01, 0x0a, 0x12, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, + 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x22, 0xa6, 0x08, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x63, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x6a, 0x6f, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, - 0x67, 0x63, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x12, - 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x65, 0x6c, 0x63, 0x6f, - 0x6d, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0e, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x12, 0x4b, 0x0a, 0x12, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x69, 0x76, - 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x43, 0x68, 0x61, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, - 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x52, 0x11, 0x73, 0x70, 0x65, 0x63, - 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x22, 0xff, 0x03, - 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x0c, 0x4a, 0x4f, 0x49, 0x4e, - 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x49, 0x4e, - 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, - 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x41, - 0x43, 0x48, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x55, - 0x53, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4d, 0x41, 0x4e, 0x59, 0x5f, - 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x53, 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x41, - 0x54, 0x45, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x45, 0x44, 0x45, - 0x44, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x46, - 0x55, 0x4c, 0x4c, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, - 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x46, 0x4c, 0x4f, 0x57, 0x45, 0x44, - 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x5f, - 0x41, 0x44, 0x44, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x08, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x48, - 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, - 0x4c, 0x45, 0x44, 0x10, 0x09, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, - 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, - 0x4c, 0x45, 0x44, 0x10, 0x0a, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, - 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, - 0x49, 0x4f, 0x4e, 0x10, 0x0b, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, - 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x4f, 0x43, - 0x4b, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x52, - 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, - 0x44, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, - 0x41, 0x4c, 0x4c, 0x4f, 0x57, 0x45, 0x44, 0x10, 0x0e, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x4e, 0x53, - 0x55, 0x52, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x49, 0x41, 0x4c, 0x5f, 0x50, 0x52, 0x49, 0x56, - 0x49, 0x4c, 0x45, 0x47, 0x45, 0x53, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x0f, 0x12, - 0x20, 0x0a, 0x1c, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x55, 0x53, - 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x45, 0x4c, 0x49, 0x47, 0x49, 0x42, 0x4c, 0x45, 0x10, - 0x10, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x49, 0x4c, 0x45, 0x4e, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x10, 0x11, 0x12, 0x1a, 0x0a, 0x16, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, - 0x52, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x10, 0x12, 0x22, - 0xbd, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4f, 0x74, 0x68, 0x65, - 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, - 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, - 0x80, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4f, 0x74, 0x68, 0x65, - 0x72, 0x4c, 0x65, 0x66, 0x74, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, - 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x64, 0x22, 0x20, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x4c, 0x69, 0x73, 0x74, 0x22, 0x92, 0x02, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x54, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x08, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x1a, 0x91, 0x01, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, - 0x75, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x3e, 0x0a, 0x0c, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x43, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x52, 0x0b, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x91, 0x02, 0x0a, 0x1f, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x07, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, - 0x74, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x1a, 0x86, 0x01, 0x0a, 0x06, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x65, - 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, - 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x7f, 0x0a, - 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3e, - 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, - 0x74, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0xaa, - 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, - 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x12, 0x32, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, + 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x3e, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x44, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, + 0x11, 0x67, 0x63, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6a, 0x6f, + 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x67, 0x63, 0x49, 0x6e, 0x69, 0x74, + 0x69, 0x61, 0x74, 0x65, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x77, 0x65, 0x6c, 0x63, + 0x6f, 0x6d, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4b, 0x0a, 0x12, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x43, + 0x68, 0x61, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, + 0x65, 0x67, 0x65, 0x73, 0x52, 0x11, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, + 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x22, 0xff, 0x03, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x0c, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, + 0x53, 0x53, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, + 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x01, 0x12, 0x15, + 0x0a, 0x11, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x4f, + 0x55, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x43, 0x48, 0x5f, 0x46, 0x41, 0x49, + 0x4c, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x49, 0x4e, + 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4d, 0x41, 0x4e, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, + 0x4c, 0x53, 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x49, 0x4d, + 0x49, 0x54, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x05, 0x12, 0x10, 0x0a, + 0x0c, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x06, 0x12, + 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x5f, + 0x4f, 0x56, 0x45, 0x52, 0x46, 0x4c, 0x4f, 0x57, 0x45, 0x44, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, + 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x55, 0x53, + 0x45, 0x52, 0x10, 0x08, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x09, 0x12, + 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x0a, 0x12, + 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x4e, 0x4f, 0x5f, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x0b, 0x12, + 0x23, 0x0a, 0x1f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x46, 0x41, 0x49, 0x4c, + 0x45, 0x44, 0x10, 0x0c, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, + 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x0d, 0x12, 0x14, 0x0a, + 0x10, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x57, 0x45, + 0x44, 0x10, 0x0e, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x4e, 0x53, 0x55, 0x52, 0x45, 0x5f, 0x53, 0x50, + 0x45, 0x43, 0x49, 0x41, 0x4c, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x49, 0x4c, 0x45, 0x47, 0x45, 0x53, + 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x0f, 0x12, 0x20, 0x0a, 0x1c, 0x4e, 0x45, 0x57, + 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, + 0x5f, 0x45, 0x4c, 0x49, 0x47, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x10, 0x12, 0x10, 0x0a, 0x0c, 0x53, + 0x49, 0x4c, 0x45, 0x4e, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x11, 0x12, 0x1a, 0x0a, + 0x16, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x55, 0x53, 0x45, 0x52, + 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x10, 0x12, 0x22, 0xbd, 0x01, 0x0a, 0x1e, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x65, + 0x64, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, + 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, + 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x80, 0x01, 0x0a, 0x1c, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x4c, 0x65, 0x66, 0x74, 0x43, + 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, + 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, + 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x20, 0x0a, 0x1e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, + 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x92, + 0x02, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x08, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x1a, + 0x91, 0x01, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, + 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x12, 0x3e, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x91, 0x02, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x55, 0x73, + 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x1a, 0x86, + 0x01, 0x0a, 0x06, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, + 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x7f, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x52, 0x0b, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xb7, 0x02, 0x0a, 0x1a, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x67, 0x69, - 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, - 0x6c, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x50, 0x0a, 0x0f, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x98, 0x01, 0x0a, 0x06, 0x52, - 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x5f, 0x6c, 0x61, 0x74, - 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x69, 0x6e, - 0x4c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x5f, - 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, - 0x6d, 0x61, 0x78, 0x4c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6d, - 0x69, 0x6e, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, - 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x4c, 0x6f, 0x6e, 0x67, - 0x69, 0x74, 0x75, 0x64, 0x65, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, - 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0xaa, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, + 0x79, 0x70, 0x65, 0x5f, 0x74, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xb7, 0x02, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, + 0x6c, 0x6c, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x10, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x67, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x50, 0x0a, 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x72, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x52, + 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x2e, 0x52, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x67, + 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x98, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, + 0x21, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x5f, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x4c, 0x61, 0x74, 0x69, 0x74, 0x75, + 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, + 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x4c, 0x61, 0x74, + 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x6c, 0x6f, 0x6e, + 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x69, + 0x6e, 0x4c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x61, + 0x78, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x4c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x42, + 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, + 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, + 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -2565,7 +2660,7 @@ func file_dota_gcmessages_client_chat_proto_rawDescGZIP() []byte { } var file_dota_gcmessages_client_chat_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_dota_gcmessages_client_chat_proto_msgTypes = make([]protoimpl.MessageInfo, 26) +var file_dota_gcmessages_client_chat_proto_msgTypes = make([]protoimpl.MessageInfo, 27) var file_dota_gcmessages_client_chat_proto_goTypes = []interface{}{ (CMsgGCToClientPrivateChatResponse_Result)(0), // 0: dota.CMsgGCToClientPrivateChatResponse.Result (CMsgDOTAJoinChatChannelResponse_Result)(0), // 1: dota.CMsgDOTAJoinChatChannelResponse.Result @@ -2592,33 +2687,35 @@ var file_dota_gcmessages_client_chat_proto_goTypes = []interface{}{ (*CMsgDOTAChatMessage_DiceRoll)(nil), // 22: dota.CMsgDOTAChatMessage.DiceRoll (*CMsgDOTAChatMessage_TriviaAnswered)(nil), // 23: dota.CMsgDOTAChatMessage.TriviaAnswered (*CMsgDOTAChatMessage_PlayerDraftPick)(nil), // 24: dota.CMsgDOTAChatMessage.PlayerDraftPick - (*CMsgDOTARequestChatChannelListResponse_ChatChannel)(nil), // 25: dota.CMsgDOTARequestChatChannelListResponse.ChatChannel - (*CMsgDOTAChatGetUserListResponse_Member)(nil), // 26: dota.CMsgDOTAChatGetUserListResponse.Member - (*CMsgDOTAChatRegionsEnabled_Region)(nil), // 27: dota.CMsgDOTAChatRegionsEnabled.Region - (DOTAChatChannelTypeT)(0), // 28: dota.DOTAChatChannelType_t - (EChatSpecialPrivileges)(0), // 29: dota.EChatSpecialPrivileges + (*CMsgDOTAChatMessage_ChatWheelMessage)(nil), // 25: dota.CMsgDOTAChatMessage.ChatWheelMessage + (*CMsgDOTARequestChatChannelListResponse_ChatChannel)(nil), // 26: dota.CMsgDOTARequestChatChannelListResponse.ChatChannel + (*CMsgDOTAChatGetUserListResponse_Member)(nil), // 27: dota.CMsgDOTAChatGetUserListResponse.Member + (*CMsgDOTAChatRegionsEnabled_Region)(nil), // 28: dota.CMsgDOTAChatRegionsEnabled.Region + (DOTAChatChannelTypeT)(0), // 29: dota.DOTAChatChannelType_t + (EChatSpecialPrivileges)(0), // 30: dota.EChatSpecialPrivileges } var file_dota_gcmessages_client_chat_proto_depIdxs = []int32{ 0, // 0: dota.CMsgGCToClientPrivateChatResponse.result:type_name -> dota.CMsgGCToClientPrivateChatResponse.Result - 28, // 1: dota.CMsgDOTAJoinChatChannel.channel_type:type_name -> dota.DOTAChatChannelType_t + 29, // 1: dota.CMsgDOTAJoinChatChannel.channel_type:type_name -> dota.DOTAChatChannelType_t 22, // 2: dota.CMsgDOTAChatMessage.dice_roll:type_name -> dota.CMsgDOTAChatMessage.DiceRoll 23, // 3: dota.CMsgDOTAChatMessage.trivia_answer:type_name -> dota.CMsgDOTAChatMessage.TriviaAnswered 24, // 4: dota.CMsgDOTAChatMessage.player_draft_pick:type_name -> dota.CMsgDOTAChatMessage.PlayerDraftPick - 12, // 5: dota.CMsgDOTAJoinChatChannelResponse.members:type_name -> dota.CMsgDOTAChatMember - 28, // 6: dota.CMsgDOTAJoinChatChannelResponse.channel_type:type_name -> dota.DOTAChatChannelType_t - 1, // 7: dota.CMsgDOTAJoinChatChannelResponse.result:type_name -> dota.CMsgDOTAJoinChatChannelResponse.Result - 29, // 8: dota.CMsgDOTAJoinChatChannelResponse.special_privileges:type_name -> dota.EChatSpecialPrivileges - 25, // 9: dota.CMsgDOTARequestChatChannelListResponse.channels:type_name -> dota.CMsgDOTARequestChatChannelListResponse.ChatChannel - 26, // 10: dota.CMsgDOTAChatGetUserListResponse.members:type_name -> dota.CMsgDOTAChatGetUserListResponse.Member - 28, // 11: dota.CMsgDOTAChatGetMemberCount.channel_type:type_name -> dota.DOTAChatChannelType_t - 28, // 12: dota.CMsgDOTAChatGetMemberCountResponse.channel_type:type_name -> dota.DOTAChatChannelType_t - 27, // 13: dota.CMsgDOTAChatRegionsEnabled.enabled_regions:type_name -> dota.CMsgDOTAChatRegionsEnabled.Region - 28, // 14: dota.CMsgDOTARequestChatChannelListResponse.ChatChannel.channel_type:type_name -> dota.DOTAChatChannelType_t - 15, // [15:15] is the sub-list for method output_type - 15, // [15:15] is the sub-list for method input_type - 15, // [15:15] is the sub-list for extension type_name - 15, // [15:15] is the sub-list for extension extendee - 0, // [0:15] is the sub-list for field type_name + 25, // 5: dota.CMsgDOTAChatMessage.chat_wheel_message:type_name -> dota.CMsgDOTAChatMessage.ChatWheelMessage + 12, // 6: dota.CMsgDOTAJoinChatChannelResponse.members:type_name -> dota.CMsgDOTAChatMember + 29, // 7: dota.CMsgDOTAJoinChatChannelResponse.channel_type:type_name -> dota.DOTAChatChannelType_t + 1, // 8: dota.CMsgDOTAJoinChatChannelResponse.result:type_name -> dota.CMsgDOTAJoinChatChannelResponse.Result + 30, // 9: dota.CMsgDOTAJoinChatChannelResponse.special_privileges:type_name -> dota.EChatSpecialPrivileges + 26, // 10: dota.CMsgDOTARequestChatChannelListResponse.channels:type_name -> dota.CMsgDOTARequestChatChannelListResponse.ChatChannel + 27, // 11: dota.CMsgDOTAChatGetUserListResponse.members:type_name -> dota.CMsgDOTAChatGetUserListResponse.Member + 29, // 12: dota.CMsgDOTAChatGetMemberCount.channel_type:type_name -> dota.DOTAChatChannelType_t + 29, // 13: dota.CMsgDOTAChatGetMemberCountResponse.channel_type:type_name -> dota.DOTAChatChannelType_t + 28, // 14: dota.CMsgDOTAChatRegionsEnabled.enabled_regions:type_name -> dota.CMsgDOTAChatRegionsEnabled.Region + 29, // 15: dota.CMsgDOTARequestChatChannelListResponse.ChatChannel.channel_type:type_name -> dota.DOTAChatChannelType_t + 16, // [16:16] is the sub-list for method output_type + 16, // [16:16] is the sub-list for method input_type + 16, // [16:16] is the sub-list for extension type_name + 16, // [16:16] is the sub-list for extension extendee + 0, // [0:16] is the sub-list for field type_name } func init() { file_dota_gcmessages_client_chat_proto_init() } @@ -2905,7 +3002,7 @@ func file_dota_gcmessages_client_chat_proto_init() { } } file_dota_gcmessages_client_chat_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARequestChatChannelListResponse_ChatChannel); i { + switch v := v.(*CMsgDOTAChatMessage_ChatWheelMessage); i { case 0: return &v.state case 1: @@ -2917,7 +3014,7 @@ func file_dota_gcmessages_client_chat_proto_init() { } } file_dota_gcmessages_client_chat_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAChatGetUserListResponse_Member); i { + switch v := v.(*CMsgDOTARequestChatChannelListResponse_ChatChannel); i { case 0: return &v.state case 1: @@ -2929,6 +3026,18 @@ func file_dota_gcmessages_client_chat_proto_init() { } } file_dota_gcmessages_client_chat_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAChatGetUserListResponse_Member); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_chat_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAChatRegionsEnabled_Region); i { case 0: return &v.state @@ -2947,7 +3056,7 @@ func file_dota_gcmessages_client_chat_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_gcmessages_client_chat_proto_rawDesc, NumEnums: 2, - NumMessages: 26, + NumMessages: 27, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_gcmessages_client_chat.proto b/dota/dota_gcmessages_client_chat.proto index 667534c4..1fb1f380 100644 --- a/dota/dota_gcmessages_client_chat.proto +++ b/dota/dota_gcmessages_client_chat.proto @@ -90,6 +90,13 @@ message CMsgDOTAChatMessage { optional int32 team = 2; } + message ChatWheelMessage { + optional uint32 message_id = 1; + optional uint32 emoticon_id = 2; + optional string message_text = 3; + optional uint32 hero_badge_tier = 4; + } + optional uint32 account_id = 1; optional uint64 channel_id = 2; optional string persona_name = 3; @@ -128,6 +135,7 @@ message CMsgDOTAChatMessage { optional uint32 favorite_team_quality = 38; optional int32 suggest_player_draft_pick = 39; optional CMsgDOTAChatMessage.PlayerDraftPick player_draft_pick = 40; + optional CMsgDOTAChatMessage.ChatWheelMessage chat_wheel_message = 41; } message CMsgDOTAChatMember { diff --git a/dota/dota_gcmessages_client_coaching.pb.go b/dota/dota_gcmessages_client_coaching.pb.go index 673b34c3..327629d5 100644 --- a/dota/dota_gcmessages_client_coaching.pb.go +++ b/dota/dota_gcmessages_client_coaching.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_coaching.proto diff --git a/dota/dota_gcmessages_client_fantasy.pb.go b/dota/dota_gcmessages_client_fantasy.pb.go index e3ddfc00..c6983a22 100644 --- a/dota/dota_gcmessages_client_fantasy.pb.go +++ b/dota/dota_gcmessages_client_fantasy.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_fantasy.proto @@ -689,6 +689,497 @@ func (CMsgDOTADPCSearchResults_ESearchResultsDesired) EnumDescriptor() ([]byte, return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{17, 0} } +type CMsgClientToGCFantasyCraftingGetDataResponse_EResponse int32 + +const ( + CMsgClientToGCFantasyCraftingGetDataResponse_k_eInternalError CMsgClientToGCFantasyCraftingGetDataResponse_EResponse = 0 + CMsgClientToGCFantasyCraftingGetDataResponse_k_eSuccess CMsgClientToGCFantasyCraftingGetDataResponse_EResponse = 1 + CMsgClientToGCFantasyCraftingGetDataResponse_k_eTooBusy CMsgClientToGCFantasyCraftingGetDataResponse_EResponse = 2 + CMsgClientToGCFantasyCraftingGetDataResponse_k_eDisabled CMsgClientToGCFantasyCraftingGetDataResponse_EResponse = 3 + CMsgClientToGCFantasyCraftingGetDataResponse_k_eTimeout CMsgClientToGCFantasyCraftingGetDataResponse_EResponse = 4 + CMsgClientToGCFantasyCraftingGetDataResponse_k_eInvalidLeague CMsgClientToGCFantasyCraftingGetDataResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCFantasyCraftingGetDataResponse_EResponse. +var ( + CMsgClientToGCFantasyCraftingGetDataResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidLeague", + } + CMsgClientToGCFantasyCraftingGetDataResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidLeague": 5, + } +) + +func (x CMsgClientToGCFantasyCraftingGetDataResponse_EResponse) Enum() *CMsgClientToGCFantasyCraftingGetDataResponse_EResponse { + p := new(CMsgClientToGCFantasyCraftingGetDataResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCFantasyCraftingGetDataResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCFantasyCraftingGetDataResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_fantasy_proto_enumTypes[6].Descriptor() +} + +func (CMsgClientToGCFantasyCraftingGetDataResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_fantasy_proto_enumTypes[6] +} + +func (x CMsgClientToGCFantasyCraftingGetDataResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCFantasyCraftingGetDataResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCFantasyCraftingGetDataResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingGetDataResponse_EResponse.Descriptor instead. +func (CMsgClientToGCFantasyCraftingGetDataResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{24, 0} +} + +type CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse int32 + +const ( + CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eInternalError CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse = 0 + CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eSuccess CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse = 1 + CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eTooBusy CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse = 2 + CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eDisabled CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse = 3 + CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eTimeout CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse = 4 + CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eInvalidLeague CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse = 5 + CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eNoTokens CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse = 6 + CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eMoreInfo CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse = 7 +) + +// Enum value maps for CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse. +var ( + CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidLeague", + 6: "k_eNoTokens", + 7: "k_eMoreInfo", + } + CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidLeague": 5, + "k_eNoTokens": 6, + "k_eMoreInfo": 7, + } +) + +func (x CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse) Enum() *CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse { + p := new(CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_fantasy_proto_enumTypes[7].Descriptor() +} + +func (CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_fantasy_proto_enumTypes[7] +} + +func (x CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse.Descriptor instead. +func (CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{26, 0} +} + +type CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse int32 + +const ( + CMsgClientToGCFantasyCraftingDevModifyTabletResponse_k_eInternalError CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse = 0 + CMsgClientToGCFantasyCraftingDevModifyTabletResponse_k_eSuccess CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse = 1 + CMsgClientToGCFantasyCraftingDevModifyTabletResponse_k_eTooBusy CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse = 2 + CMsgClientToGCFantasyCraftingDevModifyTabletResponse_k_eDisabled CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse = 3 + CMsgClientToGCFantasyCraftingDevModifyTabletResponse_k_eTimeout CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse = 4 + CMsgClientToGCFantasyCraftingDevModifyTabletResponse_k_eInvalidLeague CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse. +var ( + CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidLeague", + } + CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidLeague": 5, + } +) + +func (x CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse) Enum() *CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse { + p := new(CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_fantasy_proto_enumTypes[8].Descriptor() +} + +func (CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_fantasy_proto_enumTypes[8] +} + +func (x CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse.Descriptor instead. +func (CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{29, 0} +} + +type CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse int32 + +const ( + CMsgClientToGCFantasyCraftingSelectPlayerResponse_k_eInternalError CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse = 0 + CMsgClientToGCFantasyCraftingSelectPlayerResponse_k_eSuccess CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse = 1 + CMsgClientToGCFantasyCraftingSelectPlayerResponse_k_eTooBusy CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse = 2 + CMsgClientToGCFantasyCraftingSelectPlayerResponse_k_eDisabled CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse = 3 + CMsgClientToGCFantasyCraftingSelectPlayerResponse_k_eTimeout CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse = 4 + CMsgClientToGCFantasyCraftingSelectPlayerResponse_k_eInvalidLeague CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse = 5 + CMsgClientToGCFantasyCraftingSelectPlayerResponse_k_eInvalidPlayer CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse. +var ( + CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidLeague", + 6: "k_eInvalidPlayer", + } + CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidLeague": 5, + "k_eInvalidPlayer": 6, + } +) + +func (x CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse) Enum() *CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse { + p := new(CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_fantasy_proto_enumTypes[9].Descriptor() +} + +func (CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_fantasy_proto_enumTypes[9] +} + +func (x CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse.Descriptor instead. +func (CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{31, 0} +} + +type CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse int32 + +const ( + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_k_eInternalError CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse = 0 + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_k_eSuccess CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse = 1 + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_k_eTooBusy CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse = 2 + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_k_eDisabled CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse = 3 + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_k_eTimeout CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse = 4 + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_k_eInvalidLeague CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse = 5 + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_k_eInvalidPlayer CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse. +var ( + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidLeague", + 6: "k_eInvalidPlayer", + } + CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidLeague": 5, + "k_eInvalidPlayer": 6, + } +) + +func (x CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse) Enum() *CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse { + p := new(CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_fantasy_proto_enumTypes[10].Descriptor() +} + +func (CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_fantasy_proto_enumTypes[10] +} + +func (x CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse.Descriptor instead. +func (CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{33, 0} +} + +type CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse int32 + +const ( + CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_k_eInternalError CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse = 0 + CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_k_eSuccess CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse = 1 + CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_k_eTooBusy CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse = 2 + CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_k_eDisabled CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse = 3 + CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_k_eTimeout CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse = 4 + CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_k_eInvalidLeague CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse. +var ( + CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidLeague", + } + CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidLeague": 5, + } +) + +func (x CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse) Enum() *CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse { + p := new(CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_fantasy_proto_enumTypes[11].Descriptor() +} + +func (CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_fantasy_proto_enumTypes[11] +} + +func (x CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse.Descriptor instead. +func (CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{35, 0} +} + +type CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse int32 + +const ( + CMsgClientToGCFantasyCraftingRerollOptionsResponse_k_eInternalError CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse = 0 + CMsgClientToGCFantasyCraftingRerollOptionsResponse_k_eSuccess CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse = 1 + CMsgClientToGCFantasyCraftingRerollOptionsResponse_k_eTooBusy CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse = 2 + CMsgClientToGCFantasyCraftingRerollOptionsResponse_k_eDisabled CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse = 3 + CMsgClientToGCFantasyCraftingRerollOptionsResponse_k_eTimeout CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse = 4 + CMsgClientToGCFantasyCraftingRerollOptionsResponse_k_eInvalidLeague CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse = 5 + CMsgClientToGCFantasyCraftingRerollOptionsResponse_k_eInsufficientTokens CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse. +var ( + CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalidLeague", + 6: "k_eInsufficientTokens", + } + CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidLeague": 5, + "k_eInsufficientTokens": 6, + } +) + +func (x CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse) Enum() *CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse { + p := new(CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_fantasy_proto_enumTypes[12].Descriptor() +} + +func (CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_fantasy_proto_enumTypes[12] +} + +func (x CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse.Descriptor instead. +func (CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{37, 0} +} + type CMsgDOTAPlayerInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1902,18 +2393,17 @@ func (x *CMsgDOTADPCTeamFavoriteRankings) GetTeams() []*CMsgDOTADPCTeamFavoriteR return nil } -type CMsgDOTAPlayerInfo_Results struct { +type CMsgDotaFantasyCraftingTabletPeriodData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` - Placement *uint32 `protobuf:"varint,2,opt,name=placement" json:"placement,omitempty"` - Earnings *uint32 `protobuf:"varint,3,opt,name=earnings" json:"earnings,omitempty"` + FantasyPeriod *uint32 `protobuf:"varint,1,opt,name=fantasy_period,json=fantasyPeriod" json:"fantasy_period,omitempty"` + Tablets []*CMsgDotaFantasyCraftingTabletPeriodData_Tablet `protobuf:"bytes,2,rep,name=tablets" json:"tablets,omitempty"` } -func (x *CMsgDOTAPlayerInfo_Results) Reset() { - *x = CMsgDOTAPlayerInfo_Results{} +func (x *CMsgDotaFantasyCraftingTabletPeriodData) Reset() { + *x = CMsgDotaFantasyCraftingTabletPeriodData{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1921,13 +2411,13 @@ func (x *CMsgDOTAPlayerInfo_Results) Reset() { } } -func (x *CMsgDOTAPlayerInfo_Results) String() string { +func (x *CMsgDotaFantasyCraftingTabletPeriodData) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTAPlayerInfo_Results) ProtoMessage() {} +func (*CMsgDotaFantasyCraftingTabletPeriodData) ProtoMessage() {} -func (x *CMsgDOTAPlayerInfo_Results) ProtoReflect() protoreflect.Message { +func (x *CMsgDotaFantasyCraftingTabletPeriodData) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1939,47 +2429,35 @@ func (x *CMsgDOTAPlayerInfo_Results) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTAPlayerInfo_Results.ProtoReflect.Descriptor instead. -func (*CMsgDOTAPlayerInfo_Results) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{0, 0} -} - -func (x *CMsgDOTAPlayerInfo_Results) GetLeagueId() uint32 { - if x != nil && x.LeagueId != nil { - return *x.LeagueId - } - return 0 +// Deprecated: Use CMsgDotaFantasyCraftingTabletPeriodData.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingTabletPeriodData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{19} } -func (x *CMsgDOTAPlayerInfo_Results) GetPlacement() uint32 { - if x != nil && x.Placement != nil { - return *x.Placement +func (x *CMsgDotaFantasyCraftingTabletPeriodData) GetFantasyPeriod() uint32 { + if x != nil && x.FantasyPeriod != nil { + return *x.FantasyPeriod } return 0 } -func (x *CMsgDOTAPlayerInfo_Results) GetEarnings() uint32 { - if x != nil && x.Earnings != nil { - return *x.Earnings +func (x *CMsgDotaFantasyCraftingTabletPeriodData) GetTablets() []*CMsgDotaFantasyCraftingTabletPeriodData_Tablet { + if x != nil { + return x.Tablets } - return 0 + return nil } -type CMsgDOTAPlayerInfo_AuditEntry struct { +type CMsgDotaFantasyCraftingTabletData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - StartTimestamp *uint32 `protobuf:"varint,1,opt,name=start_timestamp,json=startTimestamp" json:"start_timestamp,omitempty"` - EndTimestamp *uint32 `protobuf:"varint,2,opt,name=end_timestamp,json=endTimestamp" json:"end_timestamp,omitempty"` - TeamId *uint32 `protobuf:"varint,3,opt,name=team_id,json=teamId" json:"team_id,omitempty"` - TeamName *string `protobuf:"bytes,4,opt,name=team_name,json=teamName" json:"team_name,omitempty"` - TeamTag *string `protobuf:"bytes,5,opt,name=team_tag,json=teamTag" json:"team_tag,omitempty"` - TeamUrlLogo *string `protobuf:"bytes,6,opt,name=team_url_logo,json=teamUrlLogo" json:"team_url_logo,omitempty"` + TabletPeriodData []*CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry `protobuf:"bytes,1,rep,name=tablet_period_data,json=tabletPeriodData" json:"tablet_period_data,omitempty"` } -func (x *CMsgDOTAPlayerInfo_AuditEntry) Reset() { - *x = CMsgDOTAPlayerInfo_AuditEntry{} +func (x *CMsgDotaFantasyCraftingTabletData) Reset() { + *x = CMsgDotaFantasyCraftingTabletData{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1987,13 +2465,13 @@ func (x *CMsgDOTAPlayerInfo_AuditEntry) Reset() { } } -func (x *CMsgDOTAPlayerInfo_AuditEntry) String() string { +func (x *CMsgDotaFantasyCraftingTabletData) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTAPlayerInfo_AuditEntry) ProtoMessage() {} +func (*CMsgDotaFantasyCraftingTabletData) ProtoMessage() {} -func (x *CMsgDOTAPlayerInfo_AuditEntry) ProtoReflect() protoreflect.Message { +func (x *CMsgDotaFantasyCraftingTabletData) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2005,64 +2483,30 @@ func (x *CMsgDOTAPlayerInfo_AuditEntry) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTAPlayerInfo_AuditEntry.ProtoReflect.Descriptor instead. -func (*CMsgDOTAPlayerInfo_AuditEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{0, 1} -} - -func (x *CMsgDOTAPlayerInfo_AuditEntry) GetStartTimestamp() uint32 { - if x != nil && x.StartTimestamp != nil { - return *x.StartTimestamp - } - return 0 -} - -func (x *CMsgDOTAPlayerInfo_AuditEntry) GetEndTimestamp() uint32 { - if x != nil && x.EndTimestamp != nil { - return *x.EndTimestamp - } - return 0 -} - -func (x *CMsgDOTAPlayerInfo_AuditEntry) GetTeamId() uint32 { - if x != nil && x.TeamId != nil { - return *x.TeamId - } - return 0 -} - -func (x *CMsgDOTAPlayerInfo_AuditEntry) GetTeamName() string { - if x != nil && x.TeamName != nil { - return *x.TeamName - } - return "" -} - -func (x *CMsgDOTAPlayerInfo_AuditEntry) GetTeamTag() string { - if x != nil && x.TeamTag != nil { - return *x.TeamTag - } - return "" +// Deprecated: Use CMsgDotaFantasyCraftingTabletData.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingTabletData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{20} } -func (x *CMsgDOTAPlayerInfo_AuditEntry) GetTeamUrlLogo() string { - if x != nil && x.TeamUrlLogo != nil { - return *x.TeamUrlLogo +func (x *CMsgDotaFantasyCraftingTabletData) GetTabletPeriodData() []*CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry { + if x != nil { + return x.TabletPeriodData } - return "" + return nil } -type CMsgDOTADPCProfileInfo_PredictionInfo struct { +type CMsgDotaFantasyCraftingUserData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Percent *uint32 `protobuf:"varint,1,opt,name=percent" json:"percent,omitempty"` - ShardWinnings *int32 `protobuf:"varint,2,opt,name=shard_winnings,json=shardWinnings" json:"shard_winnings,omitempty"` + AvailableRolls []uint32 `protobuf:"varint,1,rep,name=available_rolls,json=availableRolls" json:"available_rolls,omitempty"` + PeriodRollTokens []*CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry `protobuf:"bytes,2,rep,name=period_roll_tokens,json=periodRollTokens" json:"period_roll_tokens,omitempty"` + PeriodScores []*CMsgDotaFantasyCraftingUserData_PeriodScoresEntry `protobuf:"bytes,3,rep,name=period_scores,json=periodScores" json:"period_scores,omitempty"` } -func (x *CMsgDOTADPCProfileInfo_PredictionInfo) Reset() { - *x = CMsgDOTADPCProfileInfo_PredictionInfo{} +func (x *CMsgDotaFantasyCraftingUserData) Reset() { + *x = CMsgDotaFantasyCraftingUserData{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2070,13 +2514,13 @@ func (x *CMsgDOTADPCProfileInfo_PredictionInfo) Reset() { } } -func (x *CMsgDOTADPCProfileInfo_PredictionInfo) String() string { +func (x *CMsgDotaFantasyCraftingUserData) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTADPCProfileInfo_PredictionInfo) ProtoMessage() {} +func (*CMsgDotaFantasyCraftingUserData) ProtoMessage() {} -func (x *CMsgDOTADPCProfileInfo_PredictionInfo) ProtoReflect() protoreflect.Message { +func (x *CMsgDotaFantasyCraftingUserData) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2088,38 +2532,42 @@ func (x *CMsgDOTADPCProfileInfo_PredictionInfo) ProtoReflect() protoreflect.Mess return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTADPCProfileInfo_PredictionInfo.ProtoReflect.Descriptor instead. -func (*CMsgDOTADPCProfileInfo_PredictionInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{3, 0} +// Deprecated: Use CMsgDotaFantasyCraftingUserData.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingUserData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{21} } -func (x *CMsgDOTADPCProfileInfo_PredictionInfo) GetPercent() uint32 { - if x != nil && x.Percent != nil { - return *x.Percent +func (x *CMsgDotaFantasyCraftingUserData) GetAvailableRolls() []uint32 { + if x != nil { + return x.AvailableRolls } - return 0 + return nil } -func (x *CMsgDOTADPCProfileInfo_PredictionInfo) GetShardWinnings() int32 { - if x != nil && x.ShardWinnings != nil { - return *x.ShardWinnings +func (x *CMsgDotaFantasyCraftingUserData) GetPeriodRollTokens() []*CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry { + if x != nil { + return x.PeriodRollTokens } - return 0 + return nil } -type CMsgDOTADPCProfileInfo_FantasyInfo struct { +func (x *CMsgDotaFantasyCraftingUserData) GetPeriodScores() []*CMsgDotaFantasyCraftingUserData_PeriodScoresEntry { + if x != nil { + return x.PeriodScores + } + return nil +} + +type CMsgDotaFantasyCraftingDataCache struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Top_90Finishes *uint32 `protobuf:"varint,1,opt,name=top_90_finishes,json=top90Finishes" json:"top_90_finishes,omitempty"` - Top_75Finishes *uint32 `protobuf:"varint,2,opt,name=top_75_finishes,json=top75Finishes" json:"top_75_finishes,omitempty"` - Top_50Finishes *uint32 `protobuf:"varint,3,opt,name=top_50_finishes,json=top50Finishes" json:"top_50_finishes,omitempty"` - ShardWinnings *uint32 `protobuf:"varint,4,opt,name=shard_winnings,json=shardWinnings" json:"shard_winnings,omitempty"` + CacheEntries []*CMsgDotaFantasyCraftingDataCache_CacheEntry `protobuf:"bytes,1,rep,name=cache_entries,json=cacheEntries" json:"cache_entries,omitempty"` } -func (x *CMsgDOTADPCProfileInfo_FantasyInfo) Reset() { - *x = CMsgDOTADPCProfileInfo_FantasyInfo{} +func (x *CMsgDotaFantasyCraftingDataCache) Reset() { + *x = CMsgDotaFantasyCraftingDataCache{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2127,13 +2575,13 @@ func (x *CMsgDOTADPCProfileInfo_FantasyInfo) Reset() { } } -func (x *CMsgDOTADPCProfileInfo_FantasyInfo) String() string { +func (x *CMsgDotaFantasyCraftingDataCache) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTADPCProfileInfo_FantasyInfo) ProtoMessage() {} +func (*CMsgDotaFantasyCraftingDataCache) ProtoMessage() {} -func (x *CMsgDOTADPCProfileInfo_FantasyInfo) ProtoReflect() protoreflect.Message { +func (x *CMsgDotaFantasyCraftingDataCache) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2145,50 +2593,29 @@ func (x *CMsgDOTADPCProfileInfo_FantasyInfo) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTADPCProfileInfo_FantasyInfo.ProtoReflect.Descriptor instead. -func (*CMsgDOTADPCProfileInfo_FantasyInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{3, 1} -} - -func (x *CMsgDOTADPCProfileInfo_FantasyInfo) GetTop_90Finishes() uint32 { - if x != nil && x.Top_90Finishes != nil { - return *x.Top_90Finishes - } - return 0 -} - -func (x *CMsgDOTADPCProfileInfo_FantasyInfo) GetTop_75Finishes() uint32 { - if x != nil && x.Top_75Finishes != nil { - return *x.Top_75Finishes - } - return 0 -} - -func (x *CMsgDOTADPCProfileInfo_FantasyInfo) GetTop_50Finishes() uint32 { - if x != nil && x.Top_50Finishes != nil { - return *x.Top_50Finishes - } - return 0 +// Deprecated: Use CMsgDotaFantasyCraftingDataCache.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingDataCache) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{22} } -func (x *CMsgDOTADPCProfileInfo_FantasyInfo) GetShardWinnings() uint32 { - if x != nil && x.ShardWinnings != nil { - return *x.ShardWinnings +func (x *CMsgDotaFantasyCraftingDataCache) GetCacheEntries() []*CMsgDotaFantasyCraftingDataCache_CacheEntry { + if x != nil { + return x.CacheEntries } - return 0 + return nil } -type CMsgDOTALeaderboards_RegionLeaderboard struct { +type CMsgClientToGCFantasyCraftingGetData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Division *uint32 `protobuf:"varint,1,opt,name=division" json:"division,omitempty"` - AccountIds []uint32 `protobuf:"varint,2,rep,name=account_ids,json=accountIds" json:"account_ids,omitempty"` + FantasyLeague *uint32 `protobuf:"varint,1,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` + AccountId *uint32 `protobuf:"varint,2,opt,name=account_id,json=accountId" json:"account_id,omitempty"` } -func (x *CMsgDOTALeaderboards_RegionLeaderboard) Reset() { - *x = CMsgDOTALeaderboards_RegionLeaderboard{} +func (x *CMsgClientToGCFantasyCraftingGetData) Reset() { + *x = CMsgClientToGCFantasyCraftingGetData{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2196,13 +2623,13 @@ func (x *CMsgDOTALeaderboards_RegionLeaderboard) Reset() { } } -func (x *CMsgDOTALeaderboards_RegionLeaderboard) String() string { +func (x *CMsgClientToGCFantasyCraftingGetData) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTALeaderboards_RegionLeaderboard) ProtoMessage() {} +func (*CMsgClientToGCFantasyCraftingGetData) ProtoMessage() {} -func (x *CMsgDOTALeaderboards_RegionLeaderboard) ProtoReflect() protoreflect.Message { +func (x *CMsgClientToGCFantasyCraftingGetData) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2214,36 +2641,37 @@ func (x *CMsgDOTALeaderboards_RegionLeaderboard) ProtoReflect() protoreflect.Mes return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTALeaderboards_RegionLeaderboard.ProtoReflect.Descriptor instead. -func (*CMsgDOTALeaderboards_RegionLeaderboard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{4, 0} +// Deprecated: Use CMsgClientToGCFantasyCraftingGetData.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingGetData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{23} } -func (x *CMsgDOTALeaderboards_RegionLeaderboard) GetDivision() uint32 { - if x != nil && x.Division != nil { - return *x.Division +func (x *CMsgClientToGCFantasyCraftingGetData) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague } return 0 } -func (x *CMsgDOTALeaderboards_RegionLeaderboard) GetAccountIds() []uint32 { - if x != nil { - return x.AccountIds +func (x *CMsgClientToGCFantasyCraftingGetData) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId } - return nil + return 0 } -type CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp struct { +type CMsgClientToGCFantasyCraftingGetDataResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` - FantasyPeriod *uint32 `protobuf:"varint,3,opt,name=fantasy_period,json=fantasyPeriod" json:"fantasy_period,omitempty"` + Response *CMsgClientToGCFantasyCraftingGetDataResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCFantasyCraftingGetDataResponse_EResponse" json:"response,omitempty"` + UserData *CMsgDotaFantasyCraftingUserData `protobuf:"bytes,2,opt,name=user_data,json=userData" json:"user_data,omitempty"` + TabletData *CMsgDotaFantasyCraftingTabletData `protobuf:"bytes,4,opt,name=tablet_data,json=tabletData" json:"tablet_data,omitempty"` } -func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) Reset() { - *x = CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp{} +func (x *CMsgClientToGCFantasyCraftingGetDataResponse) Reset() { + *x = CMsgClientToGCFantasyCraftingGetDataResponse{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2251,13 +2679,13 @@ func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) Reset() } } -func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) String() string { +func (x *CMsgClientToGCFantasyCraftingGetDataResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) ProtoMessage() {} +func (*CMsgClientToGCFantasyCraftingGetDataResponse) ProtoMessage() {} -func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) ProtoReflect() protoreflect.Message { +func (x *CMsgClientToGCFantasyCraftingGetDataResponse) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2269,42 +2697,45 @@ func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) ProtoRef return mi.MessageOf(x) } -// Deprecated: Use CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp.ProtoReflect.Descriptor instead. -func (*CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{12, 0} +// Deprecated: Use CMsgClientToGCFantasyCraftingGetDataResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingGetDataResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{24} } -func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) GetLeagueId() uint32 { - if x != nil && x.LeagueId != nil { - return *x.LeagueId +func (x *CMsgClientToGCFantasyCraftingGetDataResponse) GetResponse() CMsgClientToGCFantasyCraftingGetDataResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response } - return 0 + return CMsgClientToGCFantasyCraftingGetDataResponse_k_eInternalError } -func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) GetFantasyPeriod() uint32 { - if x != nil && x.FantasyPeriod != nil { - return *x.FantasyPeriod +func (x *CMsgClientToGCFantasyCraftingGetDataResponse) GetUserData() *CMsgDotaFantasyCraftingUserData { + if x != nil { + return x.UserData } - return 0 + return nil } -type CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse struct { +func (x *CMsgClientToGCFantasyCraftingGetDataResponse) GetTabletData() *CMsgDotaFantasyCraftingTabletData { + if x != nil { + return x.TabletData + } + return nil +} + +type CMsgClientToGCFantasyCraftingPerformOperation struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` - DeprecatedTimestamp *uint32 `protobuf:"varint,2,opt,name=deprecated_timestamp,json=deprecatedTimestamp" json:"deprecated_timestamp,omitempty"` - Result *CMsgClientToGCBatchGetPlayerCardRosterResponse_Result `protobuf:"varint,3,opt,name=result,enum=dota.CMsgClientToGCBatchGetPlayerCardRosterResponse_Result" json:"result,omitempty"` - PlayerCardItemId []uint64 `protobuf:"varint,4,rep,name=player_card_item_id,json=playerCardItemId" json:"player_card_item_id,omitempty"` - Score *float32 `protobuf:"fixed32,5,opt,name=score" json:"score,omitempty"` - Finalized *bool `protobuf:"varint,6,opt,name=finalized" json:"finalized,omitempty"` - Percentile *float32 `protobuf:"fixed32,7,opt,name=percentile" json:"percentile,omitempty"` - FantasyPeriod *uint32 `protobuf:"varint,8,opt,name=fantasy_period,json=fantasyPeriod" json:"fantasy_period,omitempty"` + FantasyLeague *uint32 `protobuf:"varint,1,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` + TabletId *uint32 `protobuf:"varint,2,opt,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"` + OperationId *uint32 `protobuf:"varint,3,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"` + ExtraData *uint64 `protobuf:"varint,4,opt,name=extra_data,json=extraData" json:"extra_data,omitempty"` } -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) Reset() { - *x = CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse{} +func (x *CMsgClientToGCFantasyCraftingPerformOperation) Reset() { + *x = CMsgClientToGCFantasyCraftingPerformOperation{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2312,13 +2743,13 @@ func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) Reset() } } -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) String() string { +func (x *CMsgClientToGCFantasyCraftingPerformOperation) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) ProtoMessage() {} +func (*CMsgClientToGCFantasyCraftingPerformOperation) ProtoMessage() {} -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) ProtoReflect() protoreflect.Message { +func (x *CMsgClientToGCFantasyCraftingPerformOperation) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2330,82 +2761,57 @@ func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) ProtoRef return mi.MessageOf(x) } -// Deprecated: Use CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse.ProtoReflect.Descriptor instead. -func (*CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{13, 0} -} - -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetLeagueId() uint32 { - if x != nil && x.LeagueId != nil { - return *x.LeagueId - } - return 0 +// Deprecated: Use CMsgClientToGCFantasyCraftingPerformOperation.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingPerformOperation) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{25} } -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetDeprecatedTimestamp() uint32 { - if x != nil && x.DeprecatedTimestamp != nil { - return *x.DeprecatedTimestamp +func (x *CMsgClientToGCFantasyCraftingPerformOperation) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague } return 0 } -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetResult() CMsgClientToGCBatchGetPlayerCardRosterResponse_Result { - if x != nil && x.Result != nil { - return *x.Result - } - return CMsgClientToGCBatchGetPlayerCardRosterResponse_SUCCESS -} - -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetPlayerCardItemId() []uint64 { - if x != nil { - return x.PlayerCardItemId - } - return nil -} - -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetScore() float32 { - if x != nil && x.Score != nil { - return *x.Score +func (x *CMsgClientToGCFantasyCraftingPerformOperation) GetTabletId() uint32 { + if x != nil && x.TabletId != nil { + return *x.TabletId } return 0 } -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetFinalized() bool { - if x != nil && x.Finalized != nil { - return *x.Finalized - } - return false -} - -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetPercentile() float32 { - if x != nil && x.Percentile != nil { - return *x.Percentile +func (x *CMsgClientToGCFantasyCraftingPerformOperation) GetOperationId() uint32 { + if x != nil && x.OperationId != nil { + return *x.OperationId } return 0 } -func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetFantasyPeriod() uint32 { - if x != nil && x.FantasyPeriod != nil { - return *x.FantasyPeriod +func (x *CMsgClientToGCFantasyCraftingPerformOperation) GetExtraData() uint64 { + if x != nil && x.ExtraData != nil { + return *x.ExtraData } return 0 } -type CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo struct { +type CMsgClientToGCFantasyCraftingPerformOperationResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` - LeagueName *string `protobuf:"bytes,2,opt,name=league_name,json=leagueName" json:"league_name,omitempty"` - StartTimestamp *uint32 `protobuf:"varint,3,opt,name=start_timestamp,json=startTimestamp" json:"start_timestamp,omitempty"` - EndTimestamp *uint32 `protobuf:"varint,4,opt,name=end_timestamp,json=endTimestamp" json:"end_timestamp,omitempty"` - DayTimestamps []uint32 `protobuf:"varint,5,rep,name=day_timestamps,json=dayTimestamps" json:"day_timestamps,omitempty"` - Status *CMsgDOTAFantasyDPCLeagueStatus_ERosterStatus `protobuf:"varint,8,opt,name=status,enum=dota.CMsgDOTAFantasyDPCLeagueStatus_ERosterStatus" json:"status,omitempty"` + Response *CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse" json:"response,omitempty"` + OperationId *uint32 `protobuf:"varint,2,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"` + TabletId *uint32 `protobuf:"varint,7,opt,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"` + UserData *CMsgDotaFantasyCraftingUserData `protobuf:"bytes,8,opt,name=user_data,json=userData" json:"user_data,omitempty"` + TabletData *CMsgDotaFantasyCraftingTabletData `protobuf:"bytes,9,opt,name=tablet_data,json=tabletData" json:"tablet_data,omitempty"` + PlayerChoices []uint32 `protobuf:"varint,3,rep,name=player_choices,json=playerChoices" json:"player_choices,omitempty"` + PrefixChoices []uint32 `protobuf:"varint,4,rep,name=prefix_choices,json=prefixChoices" json:"prefix_choices,omitempty"` + SuffixChoices []uint32 `protobuf:"varint,5,rep,name=suffix_choices,json=suffixChoices" json:"suffix_choices,omitempty"` + TitleChoices []*CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice `protobuf:"bytes,6,rep,name=title_choices,json=titleChoices" json:"title_choices,omitempty"` } -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) Reset() { - *x = CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo{} +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) Reset() { + *x = CMsgClientToGCFantasyCraftingPerformOperationResponse{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2413,13 +2819,13 @@ func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) Reset() { } } -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) String() string { +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) ProtoMessage() {} +func (*CMsgClientToGCFantasyCraftingPerformOperationResponse) ProtoMessage() {} -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) ProtoReflect() protoreflect.Message { +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2431,80 +2837,1849 @@ func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) ProtoReflect() protoreflect. return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo.ProtoReflect.Descriptor instead. -func (*CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{16, 0} +// Deprecated: Use CMsgClientToGCFantasyCraftingPerformOperationResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingPerformOperationResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{26} } -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetLeagueId() uint32 { - if x != nil && x.LeagueId != nil { - return *x.LeagueId +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetResponse() CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response } - return 0 + return CMsgClientToGCFantasyCraftingPerformOperationResponse_k_eInternalError } -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetLeagueName() string { - if x != nil && x.LeagueName != nil { - return *x.LeagueName +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetOperationId() uint32 { + if x != nil && x.OperationId != nil { + return *x.OperationId } - return "" + return 0 } -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetStartTimestamp() uint32 { - if x != nil && x.StartTimestamp != nil { - return *x.StartTimestamp +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetTabletId() uint32 { + if x != nil && x.TabletId != nil { + return *x.TabletId } return 0 } -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetEndTimestamp() uint32 { - if x != nil && x.EndTimestamp != nil { - return *x.EndTimestamp +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetUserData() *CMsgDotaFantasyCraftingUserData { + if x != nil { + return x.UserData + } + return nil +} + +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetTabletData() *CMsgDotaFantasyCraftingTabletData { + if x != nil { + return x.TabletData + } + return nil +} + +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetPlayerChoices() []uint32 { + if x != nil { + return x.PlayerChoices + } + return nil +} + +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetPrefixChoices() []uint32 { + if x != nil { + return x.PrefixChoices + } + return nil +} + +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetSuffixChoices() []uint32 { + if x != nil { + return x.SuffixChoices + } + return nil +} + +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse) GetTitleChoices() []*CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice { + if x != nil { + return x.TitleChoices + } + return nil +} + +type CMsgGCToClientFantasyCraftingDataUpdated struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FantasyLeague *uint32 `protobuf:"varint,1,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` + UserData *CMsgDotaFantasyCraftingUserData `protobuf:"bytes,2,opt,name=user_data,json=userData" json:"user_data,omitempty"` + TabletData *CMsgDotaFantasyCraftingTabletData `protobuf:"bytes,4,opt,name=tablet_data,json=tabletData" json:"tablet_data,omitempty"` +} + +func (x *CMsgGCToClientFantasyCraftingDataUpdated) Reset() { + *x = CMsgGCToClientFantasyCraftingDataUpdated{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgGCToClientFantasyCraftingDataUpdated) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgGCToClientFantasyCraftingDataUpdated) ProtoMessage() {} + +func (x *CMsgGCToClientFantasyCraftingDataUpdated) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgGCToClientFantasyCraftingDataUpdated.ProtoReflect.Descriptor instead. +func (*CMsgGCToClientFantasyCraftingDataUpdated) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{27} +} + +func (x *CMsgGCToClientFantasyCraftingDataUpdated) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague + } + return 0 +} + +func (x *CMsgGCToClientFantasyCraftingDataUpdated) GetUserData() *CMsgDotaFantasyCraftingUserData { + if x != nil { + return x.UserData + } + return nil +} + +func (x *CMsgGCToClientFantasyCraftingDataUpdated) GetTabletData() *CMsgDotaFantasyCraftingTabletData { + if x != nil { + return x.TabletData + } + return nil +} + +type CMsgClientToGCFantasyCraftingDevModifyTablet struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FantasyLeague *uint32 `protobuf:"varint,1,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` + ResetTablet *bool `protobuf:"varint,2,opt,name=reset_tablet,json=resetTablet" json:"reset_tablet,omitempty"` + ModifyTokens *uint32 `protobuf:"varint,3,opt,name=modify_tokens,json=modifyTokens" json:"modify_tokens,omitempty"` + UpgradeTablets *bool `protobuf:"varint,6,opt,name=upgrade_tablets,json=upgradeTablets" json:"upgrade_tablets,omitempty"` + FantasyPeriod *uint32 `protobuf:"varint,5,opt,name=fantasy_period,json=fantasyPeriod" json:"fantasy_period,omitempty"` +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTablet) Reset() { + *x = CMsgClientToGCFantasyCraftingDevModifyTablet{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTablet) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCFantasyCraftingDevModifyTablet) ProtoMessage() {} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTablet) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingDevModifyTablet.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingDevModifyTablet) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{28} +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTablet) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague + } + return 0 +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTablet) GetResetTablet() bool { + if x != nil && x.ResetTablet != nil { + return *x.ResetTablet + } + return false +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTablet) GetModifyTokens() uint32 { + if x != nil && x.ModifyTokens != nil { + return *x.ModifyTokens + } + return 0 +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTablet) GetUpgradeTablets() bool { + if x != nil && x.UpgradeTablets != nil { + return *x.UpgradeTablets + } + return false +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTablet) GetFantasyPeriod() uint32 { + if x != nil && x.FantasyPeriod != nil { + return *x.FantasyPeriod + } + return 0 +} + +type CMsgClientToGCFantasyCraftingDevModifyTabletResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse" json:"response,omitempty"` + UserData *CMsgDotaFantasyCraftingUserData `protobuf:"bytes,2,opt,name=user_data,json=userData" json:"user_data,omitempty"` + TabletData *CMsgDotaFantasyCraftingTabletData `protobuf:"bytes,3,opt,name=tablet_data,json=tabletData" json:"tablet_data,omitempty"` +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTabletResponse) Reset() { + *x = CMsgClientToGCFantasyCraftingDevModifyTabletResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTabletResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCFantasyCraftingDevModifyTabletResponse) ProtoMessage() {} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTabletResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingDevModifyTabletResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingDevModifyTabletResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{29} +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTabletResponse) GetResponse() CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCFantasyCraftingDevModifyTabletResponse_k_eInternalError +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTabletResponse) GetUserData() *CMsgDotaFantasyCraftingUserData { + if x != nil { + return x.UserData + } + return nil +} + +func (x *CMsgClientToGCFantasyCraftingDevModifyTabletResponse) GetTabletData() *CMsgDotaFantasyCraftingTabletData { + if x != nil { + return x.TabletData + } + return nil +} + +type CMsgClientToGCFantasyCraftingSelectPlayer struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FantasyLeague *uint32 `protobuf:"varint,1,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` + AccountId *uint32 `protobuf:"varint,2,opt,name=account_id,json=accountId" json:"account_id,omitempty"` +} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayer) Reset() { + *x = CMsgClientToGCFantasyCraftingSelectPlayer{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayer) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCFantasyCraftingSelectPlayer) ProtoMessage() {} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayer) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingSelectPlayer.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingSelectPlayer) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{30} +} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayer) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague + } + return 0 +} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayer) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId + } + return 0 +} + +type CMsgClientToGCFantasyCraftingSelectPlayerResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse" json:"response,omitempty"` + TabletData *CMsgDotaFantasyCraftingTabletData `protobuf:"bytes,2,opt,name=tablet_data,json=tabletData" json:"tablet_data,omitempty"` +} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayerResponse) Reset() { + *x = CMsgClientToGCFantasyCraftingSelectPlayerResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayerResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCFantasyCraftingSelectPlayerResponse) ProtoMessage() {} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayerResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingSelectPlayerResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingSelectPlayerResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{31} +} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayerResponse) GetResponse() CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCFantasyCraftingSelectPlayerResponse_k_eInternalError +} + +func (x *CMsgClientToGCFantasyCraftingSelectPlayerResponse) GetTabletData() *CMsgDotaFantasyCraftingTabletData { + if x != nil { + return x.TabletData + } + return nil +} + +type CMsgClientToGCFantasyCraftingGenerateTablets struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FantasyLeague *uint32 `protobuf:"varint,1,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` + AccountIds []uint32 `protobuf:"varint,2,rep,name=account_ids,json=accountIds" json:"account_ids,omitempty"` +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTablets) Reset() { + *x = CMsgClientToGCFantasyCraftingGenerateTablets{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTablets) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCFantasyCraftingGenerateTablets) ProtoMessage() {} + +func (x *CMsgClientToGCFantasyCraftingGenerateTablets) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingGenerateTablets.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingGenerateTablets) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{32} +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTablets) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague + } + return 0 +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTablets) GetAccountIds() []uint32 { + if x != nil { + return x.AccountIds + } + return nil +} + +type CMsgClientToGCFantasyCraftingGenerateTabletsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse" json:"response,omitempty"` + UserData *CMsgDotaFantasyCraftingUserData `protobuf:"bytes,2,opt,name=user_data,json=userData" json:"user_data,omitempty"` + TabletData *CMsgDotaFantasyCraftingTabletData `protobuf:"bytes,3,opt,name=tablet_data,json=tabletData" json:"tablet_data,omitempty"` +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTabletsResponse) Reset() { + *x = CMsgClientToGCFantasyCraftingGenerateTabletsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTabletsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCFantasyCraftingGenerateTabletsResponse) ProtoMessage() {} + +func (x *CMsgClientToGCFantasyCraftingGenerateTabletsResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingGenerateTabletsResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingGenerateTabletsResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{33} +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTabletsResponse) GetResponse() CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCFantasyCraftingGenerateTabletsResponse_k_eInternalError +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTabletsResponse) GetUserData() *CMsgDotaFantasyCraftingUserData { + if x != nil { + return x.UserData + } + return nil +} + +func (x *CMsgClientToGCFantasyCraftingGenerateTabletsResponse) GetTabletData() *CMsgDotaFantasyCraftingTabletData { + if x != nil { + return x.TabletData + } + return nil +} + +type CMsgClientToGcFantasyCraftingUpgradeTablets struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FantasyLeague *uint32 `protobuf:"varint,1,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` +} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTablets) Reset() { + *x = CMsgClientToGcFantasyCraftingUpgradeTablets{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTablets) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGcFantasyCraftingUpgradeTablets) ProtoMessage() {} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTablets) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGcFantasyCraftingUpgradeTablets.ProtoReflect.Descriptor instead. +func (*CMsgClientToGcFantasyCraftingUpgradeTablets) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{34} +} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTablets) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague + } + return 0 +} + +type CMsgClientToGcFantasyCraftingUpgradeTabletsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse" json:"response,omitempty"` + TabletData *CMsgDotaFantasyCraftingTabletData `protobuf:"bytes,3,opt,name=tablet_data,json=tabletData" json:"tablet_data,omitempty"` +} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTabletsResponse) Reset() { + *x = CMsgClientToGcFantasyCraftingUpgradeTabletsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTabletsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGcFantasyCraftingUpgradeTabletsResponse) ProtoMessage() {} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTabletsResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGcFantasyCraftingUpgradeTabletsResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGcFantasyCraftingUpgradeTabletsResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{35} +} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTabletsResponse) GetResponse() CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_k_eInternalError +} + +func (x *CMsgClientToGcFantasyCraftingUpgradeTabletsResponse) GetTabletData() *CMsgDotaFantasyCraftingTabletData { + if x != nil { + return x.TabletData + } + return nil +} + +type CMsgClientToGCFantasyCraftingRerollOptions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FantasyLeague *uint32 `protobuf:"varint,1,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` +} + +func (x *CMsgClientToGCFantasyCraftingRerollOptions) Reset() { + *x = CMsgClientToGCFantasyCraftingRerollOptions{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCFantasyCraftingRerollOptions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCFantasyCraftingRerollOptions) ProtoMessage() {} + +func (x *CMsgClientToGCFantasyCraftingRerollOptions) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingRerollOptions.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingRerollOptions) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{36} +} + +func (x *CMsgClientToGCFantasyCraftingRerollOptions) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague + } + return 0 +} + +type CMsgClientToGCFantasyCraftingRerollOptionsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse" json:"response,omitempty"` + UserData *CMsgDotaFantasyCraftingUserData `protobuf:"bytes,2,opt,name=user_data,json=userData" json:"user_data,omitempty"` +} + +func (x *CMsgClientToGCFantasyCraftingRerollOptionsResponse) Reset() { + *x = CMsgClientToGCFantasyCraftingRerollOptionsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCFantasyCraftingRerollOptionsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCFantasyCraftingRerollOptionsResponse) ProtoMessage() {} + +func (x *CMsgClientToGCFantasyCraftingRerollOptionsResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCFantasyCraftingRerollOptionsResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingRerollOptionsResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{37} +} + +func (x *CMsgClientToGCFantasyCraftingRerollOptionsResponse) GetResponse() CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCFantasyCraftingRerollOptionsResponse_k_eInternalError +} + +func (x *CMsgClientToGCFantasyCraftingRerollOptionsResponse) GetUserData() *CMsgDotaFantasyCraftingUserData { + if x != nil { + return x.UserData + } + return nil +} + +type CMsgDOTAPlayerInfo_Results struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + Placement *uint32 `protobuf:"varint,2,opt,name=placement" json:"placement,omitempty"` + Earnings *uint32 `protobuf:"varint,3,opt,name=earnings" json:"earnings,omitempty"` +} + +func (x *CMsgDOTAPlayerInfo_Results) Reset() { + *x = CMsgDOTAPlayerInfo_Results{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTAPlayerInfo_Results) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTAPlayerInfo_Results) ProtoMessage() {} + +func (x *CMsgDOTAPlayerInfo_Results) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[38] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTAPlayerInfo_Results.ProtoReflect.Descriptor instead. +func (*CMsgDOTAPlayerInfo_Results) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{0, 0} +} + +func (x *CMsgDOTAPlayerInfo_Results) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgDOTAPlayerInfo_Results) GetPlacement() uint32 { + if x != nil && x.Placement != nil { + return *x.Placement + } + return 0 +} + +func (x *CMsgDOTAPlayerInfo_Results) GetEarnings() uint32 { + if x != nil && x.Earnings != nil { + return *x.Earnings + } + return 0 +} + +type CMsgDOTAPlayerInfo_AuditEntry struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + StartTimestamp *uint32 `protobuf:"varint,1,opt,name=start_timestamp,json=startTimestamp" json:"start_timestamp,omitempty"` + EndTimestamp *uint32 `protobuf:"varint,2,opt,name=end_timestamp,json=endTimestamp" json:"end_timestamp,omitempty"` + TeamId *uint32 `protobuf:"varint,3,opt,name=team_id,json=teamId" json:"team_id,omitempty"` + TeamName *string `protobuf:"bytes,4,opt,name=team_name,json=teamName" json:"team_name,omitempty"` + TeamTag *string `protobuf:"bytes,5,opt,name=team_tag,json=teamTag" json:"team_tag,omitempty"` + TeamUrlLogo *string `protobuf:"bytes,6,opt,name=team_url_logo,json=teamUrlLogo" json:"team_url_logo,omitempty"` +} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) Reset() { + *x = CMsgDOTAPlayerInfo_AuditEntry{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTAPlayerInfo_AuditEntry) ProtoMessage() {} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[39] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTAPlayerInfo_AuditEntry.ProtoReflect.Descriptor instead. +func (*CMsgDOTAPlayerInfo_AuditEntry) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{0, 1} +} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) GetStartTimestamp() uint32 { + if x != nil && x.StartTimestamp != nil { + return *x.StartTimestamp + } + return 0 +} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) GetEndTimestamp() uint32 { + if x != nil && x.EndTimestamp != nil { + return *x.EndTimestamp + } + return 0 +} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) GetTeamId() uint32 { + if x != nil && x.TeamId != nil { + return *x.TeamId + } + return 0 +} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) GetTeamName() string { + if x != nil && x.TeamName != nil { + return *x.TeamName + } + return "" +} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) GetTeamTag() string { + if x != nil && x.TeamTag != nil { + return *x.TeamTag + } + return "" +} + +func (x *CMsgDOTAPlayerInfo_AuditEntry) GetTeamUrlLogo() string { + if x != nil && x.TeamUrlLogo != nil { + return *x.TeamUrlLogo + } + return "" +} + +type CMsgDOTADPCProfileInfo_PredictionInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Percent *uint32 `protobuf:"varint,1,opt,name=percent" json:"percent,omitempty"` + ShardWinnings *int32 `protobuf:"varint,2,opt,name=shard_winnings,json=shardWinnings" json:"shard_winnings,omitempty"` +} + +func (x *CMsgDOTADPCProfileInfo_PredictionInfo) Reset() { + *x = CMsgDOTADPCProfileInfo_PredictionInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTADPCProfileInfo_PredictionInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTADPCProfileInfo_PredictionInfo) ProtoMessage() {} + +func (x *CMsgDOTADPCProfileInfo_PredictionInfo) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[40] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTADPCProfileInfo_PredictionInfo.ProtoReflect.Descriptor instead. +func (*CMsgDOTADPCProfileInfo_PredictionInfo) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{3, 0} +} + +func (x *CMsgDOTADPCProfileInfo_PredictionInfo) GetPercent() uint32 { + if x != nil && x.Percent != nil { + return *x.Percent + } + return 0 +} + +func (x *CMsgDOTADPCProfileInfo_PredictionInfo) GetShardWinnings() int32 { + if x != nil && x.ShardWinnings != nil { + return *x.ShardWinnings + } + return 0 +} + +type CMsgDOTADPCProfileInfo_FantasyInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Top_90Finishes *uint32 `protobuf:"varint,1,opt,name=top_90_finishes,json=top90Finishes" json:"top_90_finishes,omitempty"` + Top_75Finishes *uint32 `protobuf:"varint,2,opt,name=top_75_finishes,json=top75Finishes" json:"top_75_finishes,omitempty"` + Top_50Finishes *uint32 `protobuf:"varint,3,opt,name=top_50_finishes,json=top50Finishes" json:"top_50_finishes,omitempty"` + ShardWinnings *uint32 `protobuf:"varint,4,opt,name=shard_winnings,json=shardWinnings" json:"shard_winnings,omitempty"` +} + +func (x *CMsgDOTADPCProfileInfo_FantasyInfo) Reset() { + *x = CMsgDOTADPCProfileInfo_FantasyInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTADPCProfileInfo_FantasyInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTADPCProfileInfo_FantasyInfo) ProtoMessage() {} + +func (x *CMsgDOTADPCProfileInfo_FantasyInfo) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[41] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTADPCProfileInfo_FantasyInfo.ProtoReflect.Descriptor instead. +func (*CMsgDOTADPCProfileInfo_FantasyInfo) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{3, 1} +} + +func (x *CMsgDOTADPCProfileInfo_FantasyInfo) GetTop_90Finishes() uint32 { + if x != nil && x.Top_90Finishes != nil { + return *x.Top_90Finishes + } + return 0 +} + +func (x *CMsgDOTADPCProfileInfo_FantasyInfo) GetTop_75Finishes() uint32 { + if x != nil && x.Top_75Finishes != nil { + return *x.Top_75Finishes + } + return 0 +} + +func (x *CMsgDOTADPCProfileInfo_FantasyInfo) GetTop_50Finishes() uint32 { + if x != nil && x.Top_50Finishes != nil { + return *x.Top_50Finishes + } + return 0 +} + +func (x *CMsgDOTADPCProfileInfo_FantasyInfo) GetShardWinnings() uint32 { + if x != nil && x.ShardWinnings != nil { + return *x.ShardWinnings + } + return 0 +} + +type CMsgDOTALeaderboards_RegionLeaderboard struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Division *uint32 `protobuf:"varint,1,opt,name=division" json:"division,omitempty"` + AccountIds []uint32 `protobuf:"varint,2,rep,name=account_ids,json=accountIds" json:"account_ids,omitempty"` +} + +func (x *CMsgDOTALeaderboards_RegionLeaderboard) Reset() { + *x = CMsgDOTALeaderboards_RegionLeaderboard{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTALeaderboards_RegionLeaderboard) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTALeaderboards_RegionLeaderboard) ProtoMessage() {} + +func (x *CMsgDOTALeaderboards_RegionLeaderboard) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[42] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTALeaderboards_RegionLeaderboard.ProtoReflect.Descriptor instead. +func (*CMsgDOTALeaderboards_RegionLeaderboard) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{4, 0} +} + +func (x *CMsgDOTALeaderboards_RegionLeaderboard) GetDivision() uint32 { + if x != nil && x.Division != nil { + return *x.Division + } + return 0 +} + +func (x *CMsgDOTALeaderboards_RegionLeaderboard) GetAccountIds() []uint32 { + if x != nil { + return x.AccountIds + } + return nil +} + +type CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + FantasyPeriod *uint32 `protobuf:"varint,3,opt,name=fantasy_period,json=fantasyPeriod" json:"fantasy_period,omitempty"` +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) Reset() { + *x = CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) ProtoMessage() {} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[43] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{12, 0} +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp) GetFantasyPeriod() uint32 { + if x != nil && x.FantasyPeriod != nil { + return *x.FantasyPeriod + } + return 0 +} + +type CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + DeprecatedTimestamp *uint32 `protobuf:"varint,2,opt,name=deprecated_timestamp,json=deprecatedTimestamp" json:"deprecated_timestamp,omitempty"` + Result *CMsgClientToGCBatchGetPlayerCardRosterResponse_Result `protobuf:"varint,3,opt,name=result,enum=dota.CMsgClientToGCBatchGetPlayerCardRosterResponse_Result" json:"result,omitempty"` + PlayerCardItemId []uint64 `protobuf:"varint,4,rep,name=player_card_item_id,json=playerCardItemId" json:"player_card_item_id,omitempty"` + Score *float32 `protobuf:"fixed32,5,opt,name=score" json:"score,omitempty"` + Finalized *bool `protobuf:"varint,6,opt,name=finalized" json:"finalized,omitempty"` + Percentile *float32 `protobuf:"fixed32,7,opt,name=percentile" json:"percentile,omitempty"` + FantasyPeriod *uint32 `protobuf:"varint,8,opt,name=fantasy_period,json=fantasyPeriod" json:"fantasy_period,omitempty"` +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) Reset() { + *x = CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) ProtoMessage() {} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[44] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{13, 0} +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetDeprecatedTimestamp() uint32 { + if x != nil && x.DeprecatedTimestamp != nil { + return *x.DeprecatedTimestamp + } + return 0 +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetResult() CMsgClientToGCBatchGetPlayerCardRosterResponse_Result { + if x != nil && x.Result != nil { + return *x.Result + } + return CMsgClientToGCBatchGetPlayerCardRosterResponse_SUCCESS +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetPlayerCardItemId() []uint64 { + if x != nil { + return x.PlayerCardItemId + } + return nil +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetScore() float32 { + if x != nil && x.Score != nil { + return *x.Score + } + return 0 +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetFinalized() bool { + if x != nil && x.Finalized != nil { + return *x.Finalized + } + return false +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetPercentile() float32 { + if x != nil && x.Percentile != nil { + return *x.Percentile + } + return 0 +} + +func (x *CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse) GetFantasyPeriod() uint32 { + if x != nil && x.FantasyPeriod != nil { + return *x.FantasyPeriod + } + return 0 +} + +type CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LeagueId *uint32 `protobuf:"varint,1,opt,name=league_id,json=leagueId" json:"league_id,omitempty"` + LeagueName *string `protobuf:"bytes,2,opt,name=league_name,json=leagueName" json:"league_name,omitempty"` + StartTimestamp *uint32 `protobuf:"varint,3,opt,name=start_timestamp,json=startTimestamp" json:"start_timestamp,omitempty"` + EndTimestamp *uint32 `protobuf:"varint,4,opt,name=end_timestamp,json=endTimestamp" json:"end_timestamp,omitempty"` + DayTimestamps []uint32 `protobuf:"varint,5,rep,name=day_timestamps,json=dayTimestamps" json:"day_timestamps,omitempty"` + Status *CMsgDOTAFantasyDPCLeagueStatus_ERosterStatus `protobuf:"varint,8,opt,name=status,enum=dota.CMsgDOTAFantasyDPCLeagueStatus_ERosterStatus" json:"status,omitempty"` +} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) Reset() { + *x = CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) ProtoMessage() {} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[45] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo.ProtoReflect.Descriptor instead. +func (*CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{16, 0} +} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetLeagueId() uint32 { + if x != nil && x.LeagueId != nil { + return *x.LeagueId + } + return 0 +} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetLeagueName() string { + if x != nil && x.LeagueName != nil { + return *x.LeagueName + } + return "" +} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetStartTimestamp() uint32 { + if x != nil && x.StartTimestamp != nil { + return *x.StartTimestamp + } + return 0 +} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetEndTimestamp() uint32 { + if x != nil && x.EndTimestamp != nil { + return *x.EndTimestamp + } + return 0 +} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetDayTimestamps() []uint32 { + if x != nil { + return x.DayTimestamps + } + return nil +} + +func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetStatus() CMsgDOTAFantasyDPCLeagueStatus_ERosterStatus { + if x != nil && x.Status != nil { + return *x.Status + } + return CMsgDOTAFantasyDPCLeagueStatus_UNSET +} + +type CMsgDOTADPCSearchResults_Player struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id *uint32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` + Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + RealName *string `protobuf:"bytes,3,opt,name=real_name,json=realName" json:"real_name,omitempty"` +} + +func (x *CMsgDOTADPCSearchResults_Player) Reset() { + *x = CMsgDOTADPCSearchResults_Player{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTADPCSearchResults_Player) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTADPCSearchResults_Player) ProtoMessage() {} + +func (x *CMsgDOTADPCSearchResults_Player) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[46] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTADPCSearchResults_Player.ProtoReflect.Descriptor instead. +func (*CMsgDOTADPCSearchResults_Player) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{17, 0} +} + +func (x *CMsgDOTADPCSearchResults_Player) GetId() uint32 { + if x != nil && x.Id != nil { + return *x.Id + } + return 0 +} + +func (x *CMsgDOTADPCSearchResults_Player) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *CMsgDOTADPCSearchResults_Player) GetRealName() string { + if x != nil && x.RealName != nil { + return *x.RealName + } + return "" +} + +type CMsgDOTADPCSearchResults_Team struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id *uint32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` + Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + Url *string `protobuf:"bytes,3,opt,name=url" json:"url,omitempty"` +} + +func (x *CMsgDOTADPCSearchResults_Team) Reset() { + *x = CMsgDOTADPCSearchResults_Team{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[47] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTADPCSearchResults_Team) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTADPCSearchResults_Team) ProtoMessage() {} + +func (x *CMsgDOTADPCSearchResults_Team) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[47] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTADPCSearchResults_Team.ProtoReflect.Descriptor instead. +func (*CMsgDOTADPCSearchResults_Team) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{17, 1} +} + +func (x *CMsgDOTADPCSearchResults_Team) GetId() uint32 { + if x != nil && x.Id != nil { + return *x.Id + } + return 0 +} + +func (x *CMsgDOTADPCSearchResults_Team) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *CMsgDOTADPCSearchResults_Team) GetUrl() string { + if x != nil && x.Url != nil { + return *x.Url + } + return "" +} + +type CMsgDOTADPCSearchResults_League struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id *uint32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` + Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` +} + +func (x *CMsgDOTADPCSearchResults_League) Reset() { + *x = CMsgDOTADPCSearchResults_League{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[48] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTADPCSearchResults_League) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTADPCSearchResults_League) ProtoMessage() {} + +func (x *CMsgDOTADPCSearchResults_League) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[48] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTADPCSearchResults_League.ProtoReflect.Descriptor instead. +func (*CMsgDOTADPCSearchResults_League) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{17, 2} +} + +func (x *CMsgDOTADPCSearchResults_League) GetId() uint32 { + if x != nil && x.Id != nil { + return *x.Id + } + return 0 +} + +func (x *CMsgDOTADPCSearchResults_League) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +type CMsgDOTADPCTeamFavoriteRankings_Team struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TeamId *uint32 `protobuf:"varint,1,opt,name=team_id,json=teamId" json:"team_id,omitempty"` + Favorites *uint32 `protobuf:"varint,2,opt,name=favorites" json:"favorites,omitempty"` +} + +func (x *CMsgDOTADPCTeamFavoriteRankings_Team) Reset() { + *x = CMsgDOTADPCTeamFavoriteRankings_Team{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTADPCTeamFavoriteRankings_Team) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTADPCTeamFavoriteRankings_Team) ProtoMessage() {} + +func (x *CMsgDOTADPCTeamFavoriteRankings_Team) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[49] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTADPCTeamFavoriteRankings_Team.ProtoReflect.Descriptor instead. +func (*CMsgDOTADPCTeamFavoriteRankings_Team) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{18, 0} +} + +func (x *CMsgDOTADPCTeamFavoriteRankings_Team) GetTeamId() uint32 { + if x != nil && x.TeamId != nil { + return *x.TeamId + } + return 0 +} + +func (x *CMsgDOTADPCTeamFavoriteRankings_Team) GetFavorites() uint32 { + if x != nil && x.Favorites != nil { + return *x.Favorites + } + return 0 +} + +type CMsgDotaFantasyCraftingTabletPeriodData_Gem struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Type *Fantasy_Gem_Type `protobuf:"varint,1,opt,name=type,enum=dota.Fantasy_Gem_Type" json:"type,omitempty"` + Slot *uint32 `protobuf:"varint,2,opt,name=slot" json:"slot,omitempty"` + Shape *uint32 `protobuf:"varint,3,opt,name=shape" json:"shape,omitempty"` + Quality *uint32 `protobuf:"varint,4,opt,name=quality" json:"quality,omitempty"` + Stat *Fantasy_Scoring `protobuf:"varint,5,opt,name=stat,enum=dota.Fantasy_Scoring" json:"stat,omitempty"` +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Gem) Reset() { + *x = CMsgDotaFantasyCraftingTabletPeriodData_Gem{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Gem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDotaFantasyCraftingTabletPeriodData_Gem) ProtoMessage() {} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Gem) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[50] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDotaFantasyCraftingTabletPeriodData_Gem.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingTabletPeriodData_Gem) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{19, 0} +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Gem) GetType() Fantasy_Gem_Type { + if x != nil && x.Type != nil { + return *x.Type + } + return Fantasy_Gem_Type_FANTASY_GEM_TYPE_RUBY +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Gem) GetSlot() uint32 { + if x != nil && x.Slot != nil { + return *x.Slot + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Gem) GetShape() uint32 { + if x != nil && x.Shape != nil { + return *x.Shape + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Gem) GetQuality() uint32 { + if x != nil && x.Quality != nil { + return *x.Quality + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Gem) GetStat() Fantasy_Scoring { + if x != nil && x.Stat != nil { + return *x.Stat + } + return Fantasy_Scoring_FANTASY_SCORING_KILLS +} + +type CMsgDotaFantasyCraftingTabletPeriodData_Tablet struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TabletId *uint32 `protobuf:"varint,1,opt,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"` + TabletLevel *uint32 `protobuf:"varint,2,opt,name=tablet_level,json=tabletLevel" json:"tablet_level,omitempty"` + FantasyRole *Fantasy_Roles `protobuf:"varint,3,opt,name=fantasy_role,json=fantasyRole,enum=dota.Fantasy_Roles" json:"fantasy_role,omitempty"` + AccountId *uint32 `protobuf:"varint,4,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + Prefix *uint32 `protobuf:"varint,5,opt,name=prefix" json:"prefix,omitempty"` + Suffix *uint32 `protobuf:"varint,6,opt,name=suffix" json:"suffix,omitempty"` + Gems []*CMsgDotaFantasyCraftingTabletPeriodData_Gem `protobuf:"bytes,7,rep,name=gems" json:"gems,omitempty"` + Score *float32 `protobuf:"fixed32,8,opt,name=score" json:"score,omitempty"` + BestSeries *uint32 `protobuf:"varint,9,opt,name=best_series,json=bestSeries" json:"best_series,omitempty"` +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) Reset() { + *x = CMsgDotaFantasyCraftingTabletPeriodData_Tablet{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[51] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDotaFantasyCraftingTabletPeriodData_Tablet) ProtoMessage() {} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[51] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDotaFantasyCraftingTabletPeriodData_Tablet.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingTabletPeriodData_Tablet) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{19, 1} +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetTabletId() uint32 { + if x != nil && x.TabletId != nil { + return *x.TabletId + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetTabletLevel() uint32 { + if x != nil && x.TabletLevel != nil { + return *x.TabletLevel + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetFantasyRole() Fantasy_Roles { + if x != nil && x.FantasyRole != nil { + return *x.FantasyRole + } + return Fantasy_Roles_FANTASY_ROLE_UNDEFINED +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetPrefix() uint32 { + if x != nil && x.Prefix != nil { + return *x.Prefix + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetSuffix() uint32 { + if x != nil && x.Suffix != nil { + return *x.Suffix + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetGems() []*CMsgDotaFantasyCraftingTabletPeriodData_Gem { + if x != nil { + return x.Gems + } + return nil +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetScore() float32 { + if x != nil && x.Score != nil { + return *x.Score + } + return 0 +} + +func (x *CMsgDotaFantasyCraftingTabletPeriodData_Tablet) GetBestSeries() uint32 { + if x != nil && x.BestSeries != nil { + return *x.BestSeries + } + return 0 +} + +type CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Key *uint32 `protobuf:"varint,1,opt,name=key" json:"key,omitempty"` + Value *CMsgDotaFantasyCraftingTabletPeriodData `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` +} + +func (x *CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry) Reset() { + *x = CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry) ProtoMessage() {} + +func (x *CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[52] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{20, 0} +} + +func (x *CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry) GetKey() uint32 { + if x != nil && x.Key != nil { + return *x.Key } return 0 } -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetDayTimestamps() []uint32 { - if x != nil { - return x.DayTimestamps +func (x *CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry) GetValue() *CMsgDotaFantasyCraftingTabletPeriodData { + if x != nil { + return x.Value + } + return nil +} + +type CMsgDotaFantasyCraftingUserData_PeriodScore struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TotalScore *float32 `protobuf:"fixed32,1,opt,name=total_score,json=totalScore" json:"total_score,omitempty"` + Percentile *float32 `protobuf:"fixed32,2,opt,name=percentile" json:"percentile,omitempty"` +} + +func (x *CMsgDotaFantasyCraftingUserData_PeriodScore) Reset() { + *x = CMsgDotaFantasyCraftingUserData_PeriodScore{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[53] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDotaFantasyCraftingUserData_PeriodScore) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDotaFantasyCraftingUserData_PeriodScore) ProtoMessage() {} + +func (x *CMsgDotaFantasyCraftingUserData_PeriodScore) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[53] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDotaFantasyCraftingUserData_PeriodScore.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingUserData_PeriodScore) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{21, 0} +} + +func (x *CMsgDotaFantasyCraftingUserData_PeriodScore) GetTotalScore() float32 { + if x != nil && x.TotalScore != nil { + return *x.TotalScore } - return nil + return 0 } -func (x *CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo) GetStatus() CMsgDOTAFantasyDPCLeagueStatus_ERosterStatus { - if x != nil && x.Status != nil { - return *x.Status +func (x *CMsgDotaFantasyCraftingUserData_PeriodScore) GetPercentile() float32 { + if x != nil && x.Percentile != nil { + return *x.Percentile } - return CMsgDOTAFantasyDPCLeagueStatus_UNSET + return 0 } -type CMsgDOTADPCSearchResults_Player struct { +type CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id *uint32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` - Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - RealName *string `protobuf:"bytes,3,opt,name=real_name,json=realName" json:"real_name,omitempty"` + Key *uint32 `protobuf:"varint,1,opt,name=key" json:"key,omitempty"` + Value *uint32 `protobuf:"varint,2,opt,name=value" json:"value,omitempty"` } -func (x *CMsgDOTADPCSearchResults_Player) Reset() { - *x = CMsgDOTADPCSearchResults_Player{} +func (x *CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry) Reset() { + *x = CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[27] + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgDOTADPCSearchResults_Player) String() string { +func (x *CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTADPCSearchResults_Player) ProtoMessage() {} +func (*CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry) ProtoMessage() {} -func (x *CMsgDOTADPCSearchResults_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[27] +func (x *CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2515,59 +4690,51 @@ func (x *CMsgDOTADPCSearchResults_Player) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTADPCSearchResults_Player.ProtoReflect.Descriptor instead. -func (*CMsgDOTADPCSearchResults_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{17, 0} +// Deprecated: Use CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{21, 1} } -func (x *CMsgDOTADPCSearchResults_Player) GetId() uint32 { - if x != nil && x.Id != nil { - return *x.Id +func (x *CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry) GetKey() uint32 { + if x != nil && x.Key != nil { + return *x.Key } return 0 } -func (x *CMsgDOTADPCSearchResults_Player) GetName() string { - if x != nil && x.Name != nil { - return *x.Name - } - return "" -} - -func (x *CMsgDOTADPCSearchResults_Player) GetRealName() string { - if x != nil && x.RealName != nil { - return *x.RealName +func (x *CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry) GetValue() uint32 { + if x != nil && x.Value != nil { + return *x.Value } - return "" + return 0 } -type CMsgDOTADPCSearchResults_Team struct { +type CMsgDotaFantasyCraftingUserData_PeriodScoresEntry struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id *uint32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` - Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - Url *string `protobuf:"bytes,3,opt,name=url" json:"url,omitempty"` + Key *uint32 `protobuf:"varint,1,opt,name=key" json:"key,omitempty"` + Value *CMsgDotaFantasyCraftingUserData_PeriodScore `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` } -func (x *CMsgDOTADPCSearchResults_Team) Reset() { - *x = CMsgDOTADPCSearchResults_Team{} +func (x *CMsgDotaFantasyCraftingUserData_PeriodScoresEntry) Reset() { + *x = CMsgDotaFantasyCraftingUserData_PeriodScoresEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[28] + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgDOTADPCSearchResults_Team) String() string { +func (x *CMsgDotaFantasyCraftingUserData_PeriodScoresEntry) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTADPCSearchResults_Team) ProtoMessage() {} +func (*CMsgDotaFantasyCraftingUserData_PeriodScoresEntry) ProtoMessage() {} -func (x *CMsgDOTADPCSearchResults_Team) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[28] +func (x *CMsgDotaFantasyCraftingUserData_PeriodScoresEntry) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2578,58 +4745,52 @@ func (x *CMsgDOTADPCSearchResults_Team) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTADPCSearchResults_Team.ProtoReflect.Descriptor instead. -func (*CMsgDOTADPCSearchResults_Team) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{17, 1} +// Deprecated: Use CMsgDotaFantasyCraftingUserData_PeriodScoresEntry.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingUserData_PeriodScoresEntry) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{21, 2} } -func (x *CMsgDOTADPCSearchResults_Team) GetId() uint32 { - if x != nil && x.Id != nil { - return *x.Id +func (x *CMsgDotaFantasyCraftingUserData_PeriodScoresEntry) GetKey() uint32 { + if x != nil && x.Key != nil { + return *x.Key } return 0 } -func (x *CMsgDOTADPCSearchResults_Team) GetName() string { - if x != nil && x.Name != nil { - return *x.Name - } - return "" -} - -func (x *CMsgDOTADPCSearchResults_Team) GetUrl() string { - if x != nil && x.Url != nil { - return *x.Url +func (x *CMsgDotaFantasyCraftingUserData_PeriodScoresEntry) GetValue() *CMsgDotaFantasyCraftingUserData_PeriodScore { + if x != nil { + return x.Value } - return "" + return nil } -type CMsgDOTADPCSearchResults_League struct { +type CMsgDotaFantasyCraftingDataCache_CacheEntry struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id *uint32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` - Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + FantasyLeague *uint32 `protobuf:"varint,2,opt,name=fantasy_league,json=fantasyLeague" json:"fantasy_league,omitempty"` + CacheData *CMsgGCToClientFantasyCraftingDataUpdated `protobuf:"bytes,3,opt,name=cache_data,json=cacheData" json:"cache_data,omitempty"` } -func (x *CMsgDOTADPCSearchResults_League) Reset() { - *x = CMsgDOTADPCSearchResults_League{} +func (x *CMsgDotaFantasyCraftingDataCache_CacheEntry) Reset() { + *x = CMsgDotaFantasyCraftingDataCache_CacheEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[29] + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgDOTADPCSearchResults_League) String() string { +func (x *CMsgDotaFantasyCraftingDataCache_CacheEntry) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTADPCSearchResults_League) ProtoMessage() {} +func (*CMsgDotaFantasyCraftingDataCache_CacheEntry) ProtoMessage() {} -func (x *CMsgDOTADPCSearchResults_League) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[29] +func (x *CMsgDotaFantasyCraftingDataCache_CacheEntry) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2640,51 +4801,58 @@ func (x *CMsgDOTADPCSearchResults_League) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTADPCSearchResults_League.ProtoReflect.Descriptor instead. -func (*CMsgDOTADPCSearchResults_League) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{17, 2} +// Deprecated: Use CMsgDotaFantasyCraftingDataCache_CacheEntry.ProtoReflect.Descriptor instead. +func (*CMsgDotaFantasyCraftingDataCache_CacheEntry) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{22, 0} } -func (x *CMsgDOTADPCSearchResults_League) GetId() uint32 { - if x != nil && x.Id != nil { - return *x.Id +func (x *CMsgDotaFantasyCraftingDataCache_CacheEntry) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId } return 0 } -func (x *CMsgDOTADPCSearchResults_League) GetName() string { - if x != nil && x.Name != nil { - return *x.Name +func (x *CMsgDotaFantasyCraftingDataCache_CacheEntry) GetFantasyLeague() uint32 { + if x != nil && x.FantasyLeague != nil { + return *x.FantasyLeague } - return "" + return 0 } -type CMsgDOTADPCTeamFavoriteRankings_Team struct { +func (x *CMsgDotaFantasyCraftingDataCache_CacheEntry) GetCacheData() *CMsgGCToClientFantasyCraftingDataUpdated { + if x != nil { + return x.CacheData + } + return nil +} + +type CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - TeamId *uint32 `protobuf:"varint,1,opt,name=team_id,json=teamId" json:"team_id,omitempty"` - Favorites *uint32 `protobuf:"varint,2,opt,name=favorites" json:"favorites,omitempty"` + PrefixChoice *uint32 `protobuf:"varint,1,opt,name=prefix_choice,json=prefixChoice" json:"prefix_choice,omitempty"` + SuffixChoice *uint32 `protobuf:"varint,2,opt,name=suffix_choice,json=suffixChoice" json:"suffix_choice,omitempty"` } -func (x *CMsgDOTADPCTeamFavoriteRankings_Team) Reset() { - *x = CMsgDOTADPCTeamFavoriteRankings_Team{} +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice) Reset() { + *x = CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[30] + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgDOTADPCTeamFavoriteRankings_Team) String() string { +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgDOTADPCTeamFavoriteRankings_Team) ProtoMessage() {} +func (*CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice) ProtoMessage() {} -func (x *CMsgDOTADPCTeamFavoriteRankings_Team) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[30] +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_fantasy_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2695,21 +4863,21 @@ func (x *CMsgDOTADPCTeamFavoriteRankings_Team) ProtoReflect() protoreflect.Messa return mi.MessageOf(x) } -// Deprecated: Use CMsgDOTADPCTeamFavoriteRankings_Team.ProtoReflect.Descriptor instead. -func (*CMsgDOTADPCTeamFavoriteRankings_Team) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{18, 0} +// Deprecated: Use CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_fantasy_proto_rawDescGZIP(), []int{26, 0} } -func (x *CMsgDOTADPCTeamFavoriteRankings_Team) GetTeamId() uint32 { - if x != nil && x.TeamId != nil { - return *x.TeamId +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice) GetPrefixChoice() uint32 { + if x != nil && x.PrefixChoice != nil { + return *x.PrefixChoice } return 0 } -func (x *CMsgDOTADPCTeamFavoriteRankings_Team) GetFavorites() uint32 { - if x != nil && x.Favorites != nil { - return *x.Favorites +func (x *CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice) GetSuffixChoice() uint32 { + if x != nil && x.SuffixChoice != nil { + return *x.SuffixChoice } return 0 } @@ -3092,180 +5260,561 @@ var file_dota_gcmessages_client_fantasy_proto_rawDesc = []byte{ 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x66, 0x61, 0x76, 0x6f, - 0x72, 0x69, 0x74, 0x65, 0x73, 0x2a, 0xa3, 0x15, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x32, - 0x30, 0x31, 0x33, 0x50, 0x61, 0x73, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x19, 0x50, + 0x72, 0x69, 0x74, 0x65, 0x73, 0x22, 0x93, 0x05, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, + 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, + 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, + 0x73, 0x79, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x4e, 0x0a, 0x07, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x50, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, + 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x1a, 0xa0, 0x01, 0x0a, 0x03, 0x47, 0x65, 0x6d, + 0x12, 0x2a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x47, 0x65, + 0x6d, 0x5f, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x05, 0x73, 0x68, 0x61, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x12, 0x29, 0x0a, 0x04, 0x73, 0x74, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x53, 0x63, + 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x04, 0x73, 0x74, 0x61, 0x74, 0x1a, 0xcd, 0x02, 0x0a, 0x06, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x36, 0x0a, 0x0c, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, + 0x79, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x52, 0x6f, 0x6c, 0x65, + 0x73, 0x52, 0x0b, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, + 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x12, 0x45, 0x0a, + 0x04, 0x67, 0x65, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, + 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x6d, 0x52, 0x04, + 0x67, 0x65, 0x6d, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x65, + 0x73, 0x74, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x62, 0x65, 0x73, 0x74, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x80, 0x02, 0x0a, 0x21, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x6b, 0x0a, 0x12, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x50, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x6e, + 0x0a, 0x15, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x44, 0x61, + 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x43, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x50, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x94, + 0x04, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, + 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, + 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x76, 0x61, + 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x73, 0x12, 0x69, 0x0a, 0x12, 0x70, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, + 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x50, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x6f, 0x6c, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x6f, 0x6c, 0x6c, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x5c, 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, + 0x44, 0x61, 0x74, 0x61, 0x2e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x73, 0x1a, 0x4e, 0x0a, 0x0b, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, + 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, + 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, + 0x74, 0x69, 0x6c, 0x65, 0x1a, 0x3f, 0x0a, 0x15, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x6f, + 0x6c, 0x6c, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x6e, 0x0a, 0x11, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x47, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, + 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x2e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x9e, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, + 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, + 0x67, 0x44, 0x61, 0x74, 0x61, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x56, 0x0a, 0x0d, 0x63, 0x61, + 0x63, 0x68, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, + 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x44, 0x61, 0x74, 0x61, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x61, 0x63, 0x68, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x69, + 0x65, 0x73, 0x1a, 0xa1, 0x01, 0x0a, 0x0a, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, + 0x79, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x12, 0x4d, 0x0a, 0x0a, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x52, 0x09, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0x6c, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x25, + 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x22, 0x90, 0x03, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, + 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x42, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, + 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, + 0x67, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x48, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x78, 0x0a, + 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, + 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, + 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, + 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x10, 0x05, 0x22, 0xb5, 0x01, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, + 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, + 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x22, + 0xc1, 0x06, 0x0a, 0x35, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, + 0x67, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, 0x0a, 0x08, 0x72, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x45, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x09, + 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x73, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x48, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, + 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x66, 0x69, + 0x78, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x75, 0x66, 0x66, + 0x69, 0x78, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x0d, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, + 0x6c, 0x0a, 0x0d, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, + 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, + 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72, 0x66, 0x6f, + 0x72, 0x6d, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, + 0x0c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x1a, 0x57, 0x0a, + 0x0b, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x43, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x5f, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, + 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x22, 0x9a, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, + 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x10, + 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, + 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x4d, 0x6f, 0x72, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x10, 0x07, 0x22, 0xdf, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, + 0x66, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, + 0x79, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x12, 0x42, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, + 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x48, 0x0a, 0x0b, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, + 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, + 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0xed, 0x01, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x76, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, + 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, + 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, + 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x12, 0x25, + 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x50, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22, 0xa0, 0x03, 0x0a, 0x34, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x76, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, + 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, + 0x66, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x76, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x42, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, + 0x6e, 0x67, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x48, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x78, + 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, + 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, + 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, + 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x10, 0x05, 0x22, 0x71, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, + 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x5f, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xed, 0x02, 0x0a, 0x31, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, + 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x5d, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x48, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, + 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x8e, 0x01, 0x0a, 0x09, 0x45, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, + 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, + 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, + 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0x06, 0x22, 0x76, 0x0a, 0x2c, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x66, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x73, 0x22, 0xb7, 0x03, 0x0a, 0x34, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, + 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, + 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x08, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x44, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, + 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, + 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, + 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x12, 0x48, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, + 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, + 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x8e, 0x01, 0x0a, + 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, + 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, + 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, + 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0x06, 0x22, 0x54, 0x0a, + 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x63, 0x46, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x70, + 0x67, 0x72, 0x61, 0x64, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, + 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x22, 0xda, 0x02, 0x0a, 0x33, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x63, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, + 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x08, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x43, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x63, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, + 0x6e, 0x67, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0b, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, + 0x61, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x78, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, + 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x10, 0x05, + 0x22, 0x53, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, + 0x67, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x25, + 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x22, 0xee, 0x02, 0x0a, 0x32, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x08, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, + 0x69, 0x6e, 0x67, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x09, + 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x46, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x73, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x22, 0x93, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, + 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x73, 0x75, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x73, 0x10, 0x06, 0x2a, 0xa3, 0x15, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x32, 0x30, 0x31, 0x33, 0x50, 0x61, 0x73, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x19, + 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, + 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x30, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, - 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x30, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, + 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x31, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, - 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x31, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, + 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x32, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, - 0x41, 0x59, 0x45, 0x52, 0x5f, 0x32, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, + 0x41, 0x59, 0x45, 0x52, 0x5f, 0x33, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, 0x41, - 0x59, 0x45, 0x52, 0x5f, 0x33, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, + 0x59, 0x45, 0x52, 0x5f, 0x34, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x45, 0x52, 0x5f, 0x34, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, + 0x45, 0x52, 0x5f, 0x35, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, - 0x52, 0x5f, 0x35, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, + 0x52, 0x5f, 0x36, 0x10, 0x06, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, - 0x5f, 0x36, 0x10, 0x06, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, + 0x5f, 0x37, 0x10, 0x07, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, - 0x37, 0x10, 0x07, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, - 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x38, - 0x10, 0x08, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x41, - 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x39, 0x10, - 0x09, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, - 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x30, 0x10, 0x0a, 0x12, - 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, - 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x10, 0x0b, 0x12, 0x1c, 0x0a, - 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, - 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x32, 0x10, 0x0c, 0x12, 0x1c, 0x0a, 0x18, 0x50, - 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, - 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x33, 0x10, 0x0d, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, - 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, - 0x45, 0x53, 0x54, 0x5f, 0x34, 0x10, 0x0e, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, - 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, - 0x54, 0x5f, 0x35, 0x10, 0x0f, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, - 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, - 0x36, 0x10, 0x10, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, - 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x37, 0x10, - 0x11, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, - 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x38, 0x10, 0x12, 0x12, - 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, - 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x39, 0x10, 0x13, 0x12, 0x1d, 0x0a, - 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, - 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x30, 0x10, 0x14, 0x12, 0x1d, 0x0a, 0x19, + 0x38, 0x10, 0x08, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, + 0x41, 0x4c, 0x4c, 0x53, 0x54, 0x41, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x39, + 0x10, 0x09, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, + 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x30, 0x10, 0x0a, + 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, + 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x10, 0x0b, 0x12, 0x1c, + 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, + 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x32, 0x10, 0x0c, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, - 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x31, 0x10, 0x15, 0x12, 0x1d, 0x0a, 0x19, 0x50, - 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, - 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x32, 0x10, 0x16, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, + 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x33, 0x10, 0x0d, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, - 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x33, 0x10, 0x17, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, - 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, - 0x45, 0x53, 0x54, 0x5f, 0x31, 0x34, 0x10, 0x18, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, - 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, - 0x53, 0x54, 0x5f, 0x30, 0x10, 0x19, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, - 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, - 0x5f, 0x31, 0x10, 0x1a, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, - 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x32, - 0x10, 0x1b, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, - 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x33, 0x10, 0x1c, + 0x57, 0x45, 0x53, 0x54, 0x5f, 0x34, 0x10, 0x0e, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, + 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, + 0x53, 0x54, 0x5f, 0x35, 0x10, 0x0f, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, + 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, + 0x5f, 0x36, 0x10, 0x10, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, + 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x37, + 0x10, 0x11, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, + 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x38, 0x10, 0x12, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, - 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x34, 0x10, 0x1d, 0x12, 0x1c, - 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, - 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x35, 0x10, 0x1e, 0x12, 0x1c, 0x0a, 0x18, + 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x39, 0x10, 0x13, 0x12, 0x1d, + 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, + 0x52, 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x30, 0x10, 0x14, 0x12, 0x1d, 0x0a, + 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, + 0x45, 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x31, 0x10, 0x15, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, - 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x36, 0x10, 0x1f, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, + 0x44, 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x32, 0x10, 0x16, 0x12, 0x1d, 0x0a, 0x19, 0x50, + 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, + 0x5f, 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x33, 0x10, 0x17, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, - 0x45, 0x41, 0x53, 0x54, 0x5f, 0x37, 0x10, 0x20, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, - 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, - 0x53, 0x54, 0x5f, 0x38, 0x10, 0x21, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, - 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, - 0x5f, 0x39, 0x10, 0x22, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, + 0x57, 0x45, 0x53, 0x54, 0x5f, 0x31, 0x34, 0x10, 0x18, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, + 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, + 0x41, 0x53, 0x54, 0x5f, 0x30, 0x10, 0x19, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, + 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, + 0x54, 0x5f, 0x31, 0x10, 0x1a, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, + 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, + 0x32, 0x10, 0x1b, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, + 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x33, 0x10, + 0x1c, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, + 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x34, 0x10, 0x1d, 0x12, + 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, + 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x35, 0x10, 0x1e, 0x12, 0x1c, 0x0a, + 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, + 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x36, 0x10, 0x1f, 0x12, 0x1c, 0x0a, 0x18, 0x50, + 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, + 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x37, 0x10, 0x20, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, + 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, + 0x41, 0x53, 0x54, 0x5f, 0x38, 0x10, 0x21, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x50, 0x31, 0x33, 0x5f, + 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, + 0x54, 0x5f, 0x39, 0x10, 0x22, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, + 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, + 0x31, 0x30, 0x10, 0x23, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x31, - 0x30, 0x10, 0x23, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, - 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x31, 0x31, - 0x10, 0x24, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, - 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x31, 0x32, 0x10, - 0x25, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, - 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x31, 0x33, 0x10, 0x26, - 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, 0x41, - 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x31, 0x34, 0x10, 0x27, 0x12, - 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x43, 0x55, 0x50, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x28, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x50, - 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x43, 0x55, 0x50, 0x5f, 0x50, - 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x29, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x50, 0x31, 0x33, 0x5f, - 0x53, 0x45, 0x4c, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x43, 0x55, 0x50, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x2a, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x50, 0x31, 0x33, 0x5f, - 0x53, 0x45, 0x4c, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x43, 0x55, 0x50, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x45, 0x52, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x2b, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, - 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, - 0x30, 0x10, 0x2c, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x10, 0x2d, 0x12, 0x18, 0x0a, - 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, - 0x52, 0x45, 0x44, 0x5f, 0x32, 0x10, 0x2e, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, - 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x10, - 0x2f, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, - 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x34, 0x10, 0x30, 0x12, 0x18, 0x0a, 0x14, 0x50, - 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, - 0x44, 0x5f, 0x35, 0x10, 0x31, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, - 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x36, 0x10, 0x32, 0x12, - 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, - 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x37, 0x10, 0x33, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, - 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, - 0x38, 0x10, 0x34, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x39, 0x10, 0x35, 0x12, 0x19, 0x0a, - 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, - 0x52, 0x45, 0x44, 0x5f, 0x31, 0x30, 0x10, 0x36, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, - 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, - 0x31, 0x10, 0x37, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x32, 0x10, 0x38, 0x12, 0x19, + 0x31, 0x10, 0x24, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, + 0x51, 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x31, 0x32, + 0x10, 0x25, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, + 0x55, 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x31, 0x33, 0x10, + 0x26, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x51, 0x55, + 0x41, 0x4c, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x31, 0x34, 0x10, 0x27, + 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x54, 0x45, 0x41, + 0x4d, 0x43, 0x55, 0x50, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x28, 0x12, 0x1b, 0x0a, 0x17, 0x50, + 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x43, 0x55, 0x50, 0x5f, + 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x29, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x50, 0x31, 0x33, + 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x43, 0x55, 0x50, 0x5f, 0x54, 0x45, 0x41, + 0x4d, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x2a, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x50, 0x31, 0x33, + 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x43, 0x55, 0x50, 0x5f, 0x50, 0x4c, 0x41, + 0x59, 0x45, 0x52, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x2b, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, + 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, + 0x5f, 0x30, 0x10, 0x2c, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, + 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x10, 0x2d, 0x12, 0x18, + 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, + 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x10, 0x2e, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, + 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, + 0x10, 0x2f, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x34, 0x10, 0x30, 0x12, 0x18, 0x0a, 0x14, + 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, + 0x45, 0x44, 0x5f, 0x35, 0x10, 0x31, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, + 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x36, 0x10, 0x32, + 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x37, 0x10, 0x33, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, + 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, + 0x5f, 0x38, 0x10, 0x34, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, + 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x39, 0x10, 0x35, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x33, 0x10, 0x39, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, + 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x30, 0x10, 0x36, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, - 0x31, 0x34, 0x10, 0x3a, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, - 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x35, 0x10, 0x3b, 0x12, + 0x31, 0x31, 0x10, 0x37, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, + 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x32, 0x10, 0x38, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, - 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x36, 0x10, 0x3c, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, + 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x33, 0x10, 0x39, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, - 0x5f, 0x31, 0x37, 0x10, 0x3d, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, - 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x38, 0x10, 0x3e, + 0x5f, 0x31, 0x34, 0x10, 0x3a, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, + 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x35, 0x10, 0x3b, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, - 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x39, 0x10, 0x3f, 0x12, 0x19, 0x0a, 0x15, 0x50, + 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x36, 0x10, 0x3c, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, - 0x44, 0x5f, 0x32, 0x30, 0x10, 0x40, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, - 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x31, 0x10, - 0x41, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, - 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x32, 0x10, 0x42, 0x12, 0x19, 0x0a, 0x15, + 0x44, 0x5f, 0x31, 0x37, 0x10, 0x3d, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, + 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x38, 0x10, + 0x3e, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x31, 0x39, 0x10, 0x3f, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, - 0x45, 0x44, 0x5f, 0x32, 0x33, 0x10, 0x43, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, - 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x34, - 0x10, 0x44, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x35, 0x10, 0x45, 0x12, 0x19, 0x0a, + 0x45, 0x44, 0x5f, 0x32, 0x30, 0x10, 0x40, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, + 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x31, + 0x10, 0x41, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x32, 0x10, 0x42, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, - 0x52, 0x45, 0x44, 0x5f, 0x32, 0x36, 0x10, 0x46, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, + 0x52, 0x45, 0x44, 0x5f, 0x32, 0x33, 0x10, 0x43, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, - 0x37, 0x10, 0x47, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x38, 0x10, 0x48, 0x12, 0x19, + 0x34, 0x10, 0x44, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, + 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x35, 0x10, 0x45, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x39, 0x10, 0x49, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, + 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x36, 0x10, 0x46, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, - 0x33, 0x30, 0x10, 0x4a, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, - 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x31, 0x10, 0x4b, 0x12, + 0x32, 0x37, 0x10, 0x47, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, + 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x38, 0x10, 0x48, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, - 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x32, 0x10, 0x4c, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, + 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x32, 0x39, 0x10, 0x49, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, - 0x5f, 0x33, 0x33, 0x10, 0x4d, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, - 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x34, 0x10, 0x4e, + 0x5f, 0x33, 0x30, 0x10, 0x4a, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, + 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x31, 0x10, 0x4b, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, - 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x35, 0x10, 0x4f, 0x12, 0x19, 0x0a, 0x15, 0x50, + 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x32, 0x10, 0x4c, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, - 0x44, 0x5f, 0x33, 0x36, 0x10, 0x50, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, - 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x37, 0x10, - 0x51, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, - 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x38, 0x10, 0x52, 0x12, 0x19, 0x0a, 0x15, + 0x44, 0x5f, 0x33, 0x33, 0x10, 0x4d, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, + 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x34, 0x10, + 0x4e, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x35, 0x10, 0x4f, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, - 0x45, 0x44, 0x5f, 0x33, 0x39, 0x10, 0x53, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, - 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x34, 0x30, - 0x10, 0x54, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x34, 0x31, 0x10, 0x55, 0x12, 0x19, 0x0a, + 0x45, 0x44, 0x5f, 0x33, 0x36, 0x10, 0x50, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, + 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x37, + 0x10, 0x51, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x33, 0x38, 0x10, 0x52, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, - 0x52, 0x45, 0x44, 0x5f, 0x34, 0x32, 0x10, 0x56, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, + 0x52, 0x45, 0x44, 0x5f, 0x33, 0x39, 0x10, 0x53, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x34, - 0x33, 0x10, 0x57, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, - 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x30, 0x10, 0x58, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, - 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x31, 0x10, 0x59, 0x12, 0x13, 0x0a, - 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x32, - 0x10, 0x5a, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, - 0x4f, 0x4c, 0x4f, 0x5f, 0x33, 0x10, 0x5b, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, - 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x34, 0x10, 0x5c, 0x12, 0x13, 0x0a, 0x0f, - 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x35, 0x10, - 0x5d, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, - 0x4c, 0x4f, 0x5f, 0x36, 0x10, 0x5e, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, - 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x37, 0x10, 0x5f, 0x42, 0x25, 0x5a, 0x23, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, - 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, - 0x74, 0x61, + 0x30, 0x10, 0x54, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, + 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, 0x34, 0x31, 0x10, 0x55, 0x12, 0x19, + 0x0a, 0x15, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, + 0x50, 0x52, 0x45, 0x44, 0x5f, 0x34, 0x32, 0x10, 0x56, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x50, 0x31, + 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x50, 0x52, 0x45, 0x44, 0x5f, + 0x34, 0x33, 0x10, 0x57, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, + 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x30, 0x10, 0x58, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, + 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x31, 0x10, 0x59, 0x12, 0x13, + 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, + 0x32, 0x10, 0x5a, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, + 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x33, 0x10, 0x5b, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, + 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x34, 0x10, 0x5c, 0x12, 0x13, 0x0a, + 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x35, + 0x10, 0x5d, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, 0x53, 0x45, 0x4c, 0x5f, 0x53, + 0x4f, 0x4c, 0x4f, 0x5f, 0x36, 0x10, 0x5e, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x50, 0x31, 0x33, 0x5f, + 0x53, 0x45, 0x4c, 0x5f, 0x53, 0x4f, 0x4c, 0x4f, 0x5f, 0x37, 0x10, 0x5f, 0x42, 0x25, 0x5a, 0x23, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, + 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, + 0x6f, 0x74, 0x61, } var ( @@ -3280,78 +5829,147 @@ func file_dota_gcmessages_client_fantasy_proto_rawDescGZIP() []byte { return file_dota_gcmessages_client_fantasy_proto_rawDescData } -var file_dota_gcmessages_client_fantasy_proto_enumTypes = make([]protoimpl.EnumInfo, 6) -var file_dota_gcmessages_client_fantasy_proto_msgTypes = make([]protoimpl.MessageInfo, 31) +var file_dota_gcmessages_client_fantasy_proto_enumTypes = make([]protoimpl.EnumInfo, 13) +var file_dota_gcmessages_client_fantasy_proto_msgTypes = make([]protoimpl.MessageInfo, 58) var file_dota_gcmessages_client_fantasy_proto_goTypes = []interface{}{ - (DOTA_2013PassportSelectionIndices)(0), // 0: dota.DOTA_2013PassportSelectionIndices - (CMsgClientToGCGetPlayerCardRosterResponse_Result)(0), // 1: dota.CMsgClientToGCGetPlayerCardRosterResponse.Result - (CMsgClientToGCBatchGetPlayerCardRosterResponse_Result)(0), // 2: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.Result - (CMsgClientToGCSetPlayerCardRosterResponse_Result)(0), // 3: dota.CMsgClientToGCSetPlayerCardRosterResponse.Result - (CMsgDOTAFantasyDPCLeagueStatus_ERosterStatus)(0), // 4: dota.CMsgDOTAFantasyDPCLeagueStatus.ERosterStatus - (CMsgDOTADPCSearchResults_ESearchResultsDesired)(0), // 5: dota.CMsgDOTADPCSearchResults.ESearchResultsDesired - (*CMsgDOTAPlayerInfo)(nil), // 6: dota.CMsgDOTAPlayerInfo - (*CMsgDOTAPlayerInfoList)(nil), // 7: dota.CMsgDOTAPlayerInfoList - (*CMsgDOTATeamRoster)(nil), // 8: dota.CMsgDOTATeamRoster - (*CMsgDOTADPCProfileInfo)(nil), // 9: dota.CMsgDOTADPCProfileInfo - (*CMsgDOTALeaderboards)(nil), // 10: dota.CMsgDOTALeaderboards - (*CMsgDOTAPassportVoteTeamGuess)(nil), // 11: dota.CMsgDOTAPassportVoteTeamGuess - (*CMsgDOTAPassportVoteGenericSelection)(nil), // 12: dota.CMsgDOTAPassportVoteGenericSelection - (*CMsgDOTAPassportStampedPlayer)(nil), // 13: dota.CMsgDOTAPassportStampedPlayer - (*CMsgDOTAPassportPlayerCardChallenge)(nil), // 14: dota.CMsgDOTAPassportPlayerCardChallenge - (*CMsgDOTAPassportVote)(nil), // 15: dota.CMsgDOTAPassportVote - (*CMsgClientToGCGetPlayerCardRosterRequest)(nil), // 16: dota.CMsgClientToGCGetPlayerCardRosterRequest - (*CMsgClientToGCGetPlayerCardRosterResponse)(nil), // 17: dota.CMsgClientToGCGetPlayerCardRosterResponse - (*CMsgClientToGCBatchGetPlayerCardRosterRequest)(nil), // 18: dota.CMsgClientToGCBatchGetPlayerCardRosterRequest - (*CMsgClientToGCBatchGetPlayerCardRosterResponse)(nil), // 19: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse - (*CMsgClientToGCSetPlayerCardRosterRequest)(nil), // 20: dota.CMsgClientToGCSetPlayerCardRosterRequest - (*CMsgClientToGCSetPlayerCardRosterResponse)(nil), // 21: dota.CMsgClientToGCSetPlayerCardRosterResponse - (*CMsgDOTAFantasyDPCLeagueStatus)(nil), // 22: dota.CMsgDOTAFantasyDPCLeagueStatus - (*CMsgDOTADPCSearchResults)(nil), // 23: dota.CMsgDOTADPCSearchResults - (*CMsgDOTADPCTeamFavoriteRankings)(nil), // 24: dota.CMsgDOTADPCTeamFavoriteRankings - (*CMsgDOTAPlayerInfo_Results)(nil), // 25: dota.CMsgDOTAPlayerInfo.Results - (*CMsgDOTAPlayerInfo_AuditEntry)(nil), // 26: dota.CMsgDOTAPlayerInfo.AuditEntry - (*CMsgDOTADPCProfileInfo_PredictionInfo)(nil), // 27: dota.CMsgDOTADPCProfileInfo.PredictionInfo - (*CMsgDOTADPCProfileInfo_FantasyInfo)(nil), // 28: dota.CMsgDOTADPCProfileInfo.FantasyInfo - (*CMsgDOTALeaderboards_RegionLeaderboard)(nil), // 29: dota.CMsgDOTALeaderboards.RegionLeaderboard - (*CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp)(nil), // 30: dota.CMsgClientToGCBatchGetPlayerCardRosterRequest.LeagueTimestamp - (*CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse)(nil), // 31: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.RosterResponse - (*CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo)(nil), // 32: dota.CMsgDOTAFantasyDPCLeagueStatus.LeagueInfo - (*CMsgDOTADPCSearchResults_Player)(nil), // 33: dota.CMsgDOTADPCSearchResults.Player - (*CMsgDOTADPCSearchResults_Team)(nil), // 34: dota.CMsgDOTADPCSearchResults.Team - (*CMsgDOTADPCSearchResults_League)(nil), // 35: dota.CMsgDOTADPCSearchResults.League - (*CMsgDOTADPCTeamFavoriteRankings_Team)(nil), // 36: dota.CMsgDOTADPCTeamFavoriteRankings.Team - (Fantasy_Roles)(0), // 37: dota.Fantasy_Roles + (DOTA_2013PassportSelectionIndices)(0), // 0: dota.DOTA_2013PassportSelectionIndices + (CMsgClientToGCGetPlayerCardRosterResponse_Result)(0), // 1: dota.CMsgClientToGCGetPlayerCardRosterResponse.Result + (CMsgClientToGCBatchGetPlayerCardRosterResponse_Result)(0), // 2: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.Result + (CMsgClientToGCSetPlayerCardRosterResponse_Result)(0), // 3: dota.CMsgClientToGCSetPlayerCardRosterResponse.Result + (CMsgDOTAFantasyDPCLeagueStatus_ERosterStatus)(0), // 4: dota.CMsgDOTAFantasyDPCLeagueStatus.ERosterStatus + (CMsgDOTADPCSearchResults_ESearchResultsDesired)(0), // 5: dota.CMsgDOTADPCSearchResults.ESearchResultsDesired + (CMsgClientToGCFantasyCraftingGetDataResponse_EResponse)(0), // 6: dota.CMsgClientToGCFantasyCraftingGetDataResponse.EResponse + (CMsgClientToGCFantasyCraftingPerformOperationResponse_EResponse)(0), // 7: dota.CMsgClientToGCFantasyCraftingPerformOperationResponse.EResponse + (CMsgClientToGCFantasyCraftingDevModifyTabletResponse_EResponse)(0), // 8: dota.CMsgClientToGCFantasyCraftingDevModifyTabletResponse.EResponse + (CMsgClientToGCFantasyCraftingSelectPlayerResponse_EResponse)(0), // 9: dota.CMsgClientToGCFantasyCraftingSelectPlayerResponse.EResponse + (CMsgClientToGCFantasyCraftingGenerateTabletsResponse_EResponse)(0), // 10: dota.CMsgClientToGCFantasyCraftingGenerateTabletsResponse.EResponse + (CMsgClientToGcFantasyCraftingUpgradeTabletsResponse_EResponse)(0), // 11: dota.CMsgClientToGcFantasyCraftingUpgradeTabletsResponse.EResponse + (CMsgClientToGCFantasyCraftingRerollOptionsResponse_EResponse)(0), // 12: dota.CMsgClientToGCFantasyCraftingRerollOptionsResponse.EResponse + (*CMsgDOTAPlayerInfo)(nil), // 13: dota.CMsgDOTAPlayerInfo + (*CMsgDOTAPlayerInfoList)(nil), // 14: dota.CMsgDOTAPlayerInfoList + (*CMsgDOTATeamRoster)(nil), // 15: dota.CMsgDOTATeamRoster + (*CMsgDOTADPCProfileInfo)(nil), // 16: dota.CMsgDOTADPCProfileInfo + (*CMsgDOTALeaderboards)(nil), // 17: dota.CMsgDOTALeaderboards + (*CMsgDOTAPassportVoteTeamGuess)(nil), // 18: dota.CMsgDOTAPassportVoteTeamGuess + (*CMsgDOTAPassportVoteGenericSelection)(nil), // 19: dota.CMsgDOTAPassportVoteGenericSelection + (*CMsgDOTAPassportStampedPlayer)(nil), // 20: dota.CMsgDOTAPassportStampedPlayer + (*CMsgDOTAPassportPlayerCardChallenge)(nil), // 21: dota.CMsgDOTAPassportPlayerCardChallenge + (*CMsgDOTAPassportVote)(nil), // 22: dota.CMsgDOTAPassportVote + (*CMsgClientToGCGetPlayerCardRosterRequest)(nil), // 23: dota.CMsgClientToGCGetPlayerCardRosterRequest + (*CMsgClientToGCGetPlayerCardRosterResponse)(nil), // 24: dota.CMsgClientToGCGetPlayerCardRosterResponse + (*CMsgClientToGCBatchGetPlayerCardRosterRequest)(nil), // 25: dota.CMsgClientToGCBatchGetPlayerCardRosterRequest + (*CMsgClientToGCBatchGetPlayerCardRosterResponse)(nil), // 26: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse + (*CMsgClientToGCSetPlayerCardRosterRequest)(nil), // 27: dota.CMsgClientToGCSetPlayerCardRosterRequest + (*CMsgClientToGCSetPlayerCardRosterResponse)(nil), // 28: dota.CMsgClientToGCSetPlayerCardRosterResponse + (*CMsgDOTAFantasyDPCLeagueStatus)(nil), // 29: dota.CMsgDOTAFantasyDPCLeagueStatus + (*CMsgDOTADPCSearchResults)(nil), // 30: dota.CMsgDOTADPCSearchResults + (*CMsgDOTADPCTeamFavoriteRankings)(nil), // 31: dota.CMsgDOTADPCTeamFavoriteRankings + (*CMsgDotaFantasyCraftingTabletPeriodData)(nil), // 32: dota.CMsgDotaFantasyCraftingTabletPeriodData + (*CMsgDotaFantasyCraftingTabletData)(nil), // 33: dota.CMsgDotaFantasyCraftingTabletData + (*CMsgDotaFantasyCraftingUserData)(nil), // 34: dota.CMsgDotaFantasyCraftingUserData + (*CMsgDotaFantasyCraftingDataCache)(nil), // 35: dota.CMsgDotaFantasyCraftingDataCache + (*CMsgClientToGCFantasyCraftingGetData)(nil), // 36: dota.CMsgClientToGCFantasyCraftingGetData + (*CMsgClientToGCFantasyCraftingGetDataResponse)(nil), // 37: dota.CMsgClientToGCFantasyCraftingGetDataResponse + (*CMsgClientToGCFantasyCraftingPerformOperation)(nil), // 38: dota.CMsgClientToGCFantasyCraftingPerformOperation + (*CMsgClientToGCFantasyCraftingPerformOperationResponse)(nil), // 39: dota.CMsgClientToGCFantasyCraftingPerformOperationResponse + (*CMsgGCToClientFantasyCraftingDataUpdated)(nil), // 40: dota.CMsgGCToClientFantasyCraftingDataUpdated + (*CMsgClientToGCFantasyCraftingDevModifyTablet)(nil), // 41: dota.CMsgClientToGCFantasyCraftingDevModifyTablet + (*CMsgClientToGCFantasyCraftingDevModifyTabletResponse)(nil), // 42: dota.CMsgClientToGCFantasyCraftingDevModifyTabletResponse + (*CMsgClientToGCFantasyCraftingSelectPlayer)(nil), // 43: dota.CMsgClientToGCFantasyCraftingSelectPlayer + (*CMsgClientToGCFantasyCraftingSelectPlayerResponse)(nil), // 44: dota.CMsgClientToGCFantasyCraftingSelectPlayerResponse + (*CMsgClientToGCFantasyCraftingGenerateTablets)(nil), // 45: dota.CMsgClientToGCFantasyCraftingGenerateTablets + (*CMsgClientToGCFantasyCraftingGenerateTabletsResponse)(nil), // 46: dota.CMsgClientToGCFantasyCraftingGenerateTabletsResponse + (*CMsgClientToGcFantasyCraftingUpgradeTablets)(nil), // 47: dota.CMsgClientToGcFantasyCraftingUpgradeTablets + (*CMsgClientToGcFantasyCraftingUpgradeTabletsResponse)(nil), // 48: dota.CMsgClientToGcFantasyCraftingUpgradeTabletsResponse + (*CMsgClientToGCFantasyCraftingRerollOptions)(nil), // 49: dota.CMsgClientToGCFantasyCraftingRerollOptions + (*CMsgClientToGCFantasyCraftingRerollOptionsResponse)(nil), // 50: dota.CMsgClientToGCFantasyCraftingRerollOptionsResponse + (*CMsgDOTAPlayerInfo_Results)(nil), // 51: dota.CMsgDOTAPlayerInfo.Results + (*CMsgDOTAPlayerInfo_AuditEntry)(nil), // 52: dota.CMsgDOTAPlayerInfo.AuditEntry + (*CMsgDOTADPCProfileInfo_PredictionInfo)(nil), // 53: dota.CMsgDOTADPCProfileInfo.PredictionInfo + (*CMsgDOTADPCProfileInfo_FantasyInfo)(nil), // 54: dota.CMsgDOTADPCProfileInfo.FantasyInfo + (*CMsgDOTALeaderboards_RegionLeaderboard)(nil), // 55: dota.CMsgDOTALeaderboards.RegionLeaderboard + (*CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp)(nil), // 56: dota.CMsgClientToGCBatchGetPlayerCardRosterRequest.LeagueTimestamp + (*CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse)(nil), // 57: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.RosterResponse + (*CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo)(nil), // 58: dota.CMsgDOTAFantasyDPCLeagueStatus.LeagueInfo + (*CMsgDOTADPCSearchResults_Player)(nil), // 59: dota.CMsgDOTADPCSearchResults.Player + (*CMsgDOTADPCSearchResults_Team)(nil), // 60: dota.CMsgDOTADPCSearchResults.Team + (*CMsgDOTADPCSearchResults_League)(nil), // 61: dota.CMsgDOTADPCSearchResults.League + (*CMsgDOTADPCTeamFavoriteRankings_Team)(nil), // 62: dota.CMsgDOTADPCTeamFavoriteRankings.Team + (*CMsgDotaFantasyCraftingTabletPeriodData_Gem)(nil), // 63: dota.CMsgDotaFantasyCraftingTabletPeriodData.Gem + (*CMsgDotaFantasyCraftingTabletPeriodData_Tablet)(nil), // 64: dota.CMsgDotaFantasyCraftingTabletPeriodData.Tablet + (*CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry)(nil), // 65: dota.CMsgDotaFantasyCraftingTabletData.TabletPeriodDataEntry + (*CMsgDotaFantasyCraftingUserData_PeriodScore)(nil), // 66: dota.CMsgDotaFantasyCraftingUserData.PeriodScore + (*CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry)(nil), // 67: dota.CMsgDotaFantasyCraftingUserData.PeriodRollTokensEntry + (*CMsgDotaFantasyCraftingUserData_PeriodScoresEntry)(nil), // 68: dota.CMsgDotaFantasyCraftingUserData.PeriodScoresEntry + (*CMsgDotaFantasyCraftingDataCache_CacheEntry)(nil), // 69: dota.CMsgDotaFantasyCraftingDataCache.CacheEntry + (*CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice)(nil), // 70: dota.CMsgClientToGCFantasyCraftingPerformOperationResponse.TitleChoice + (Fantasy_Roles)(0), // 71: dota.Fantasy_Roles + (Fantasy_Gem_Type)(0), // 72: dota.Fantasy_Gem_Type + (Fantasy_Scoring)(0), // 73: dota.Fantasy_Scoring } var file_dota_gcmessages_client_fantasy_proto_depIdxs = []int32{ - 37, // 0: dota.CMsgDOTAPlayerInfo.fantasy_role:type_name -> dota.Fantasy_Roles - 25, // 1: dota.CMsgDOTAPlayerInfo.results:type_name -> dota.CMsgDOTAPlayerInfo.Results - 26, // 2: dota.CMsgDOTAPlayerInfo.audit_entries:type_name -> dota.CMsgDOTAPlayerInfo.AuditEntry - 6, // 3: dota.CMsgDOTAPlayerInfoList.player_infos:type_name -> dota.CMsgDOTAPlayerInfo - 6, // 4: dota.CMsgDOTADPCProfileInfo.player_info:type_name -> dota.CMsgDOTAPlayerInfo - 27, // 5: dota.CMsgDOTADPCProfileInfo.prediction_info:type_name -> dota.CMsgDOTADPCProfileInfo.PredictionInfo - 28, // 6: dota.CMsgDOTADPCProfileInfo.fantasy_info:type_name -> dota.CMsgDOTADPCProfileInfo.FantasyInfo - 29, // 7: dota.CMsgDOTALeaderboards.leaderboards:type_name -> dota.CMsgDOTALeaderboards.RegionLeaderboard + 71, // 0: dota.CMsgDOTAPlayerInfo.fantasy_role:type_name -> dota.Fantasy_Roles + 51, // 1: dota.CMsgDOTAPlayerInfo.results:type_name -> dota.CMsgDOTAPlayerInfo.Results + 52, // 2: dota.CMsgDOTAPlayerInfo.audit_entries:type_name -> dota.CMsgDOTAPlayerInfo.AuditEntry + 13, // 3: dota.CMsgDOTAPlayerInfoList.player_infos:type_name -> dota.CMsgDOTAPlayerInfo + 13, // 4: dota.CMsgDOTADPCProfileInfo.player_info:type_name -> dota.CMsgDOTAPlayerInfo + 53, // 5: dota.CMsgDOTADPCProfileInfo.prediction_info:type_name -> dota.CMsgDOTADPCProfileInfo.PredictionInfo + 54, // 6: dota.CMsgDOTADPCProfileInfo.fantasy_info:type_name -> dota.CMsgDOTADPCProfileInfo.FantasyInfo + 55, // 7: dota.CMsgDOTALeaderboards.leaderboards:type_name -> dota.CMsgDOTALeaderboards.RegionLeaderboard 0, // 8: dota.CMsgDOTAPassportVoteGenericSelection.selection_index:type_name -> dota.DOTA_2013PassportSelectionIndices - 11, // 9: dota.CMsgDOTAPassportVote.team_votes:type_name -> dota.CMsgDOTAPassportVoteTeamGuess - 12, // 10: dota.CMsgDOTAPassportVote.generic_selections:type_name -> dota.CMsgDOTAPassportVoteGenericSelection - 13, // 11: dota.CMsgDOTAPassportVote.stamped_players:type_name -> dota.CMsgDOTAPassportStampedPlayer - 14, // 12: dota.CMsgDOTAPassportVote.player_card_challenges:type_name -> dota.CMsgDOTAPassportPlayerCardChallenge + 18, // 9: dota.CMsgDOTAPassportVote.team_votes:type_name -> dota.CMsgDOTAPassportVoteTeamGuess + 19, // 10: dota.CMsgDOTAPassportVote.generic_selections:type_name -> dota.CMsgDOTAPassportVoteGenericSelection + 20, // 11: dota.CMsgDOTAPassportVote.stamped_players:type_name -> dota.CMsgDOTAPassportStampedPlayer + 21, // 12: dota.CMsgDOTAPassportVote.player_card_challenges:type_name -> dota.CMsgDOTAPassportPlayerCardChallenge 1, // 13: dota.CMsgClientToGCGetPlayerCardRosterResponse.result:type_name -> dota.CMsgClientToGCGetPlayerCardRosterResponse.Result - 30, // 14: dota.CMsgClientToGCBatchGetPlayerCardRosterRequest.league_timestamps:type_name -> dota.CMsgClientToGCBatchGetPlayerCardRosterRequest.LeagueTimestamp - 31, // 15: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.responses:type_name -> dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.RosterResponse + 56, // 14: dota.CMsgClientToGCBatchGetPlayerCardRosterRequest.league_timestamps:type_name -> dota.CMsgClientToGCBatchGetPlayerCardRosterRequest.LeagueTimestamp + 57, // 15: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.responses:type_name -> dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.RosterResponse 3, // 16: dota.CMsgClientToGCSetPlayerCardRosterResponse.result:type_name -> dota.CMsgClientToGCSetPlayerCardRosterResponse.Result - 32, // 17: dota.CMsgDOTAFantasyDPCLeagueStatus.league_infos:type_name -> dota.CMsgDOTAFantasyDPCLeagueStatus.LeagueInfo - 33, // 18: dota.CMsgDOTADPCSearchResults.players:type_name -> dota.CMsgDOTADPCSearchResults.Player - 34, // 19: dota.CMsgDOTADPCSearchResults.teams:type_name -> dota.CMsgDOTADPCSearchResults.Team - 35, // 20: dota.CMsgDOTADPCSearchResults.leagues:type_name -> dota.CMsgDOTADPCSearchResults.League - 36, // 21: dota.CMsgDOTADPCTeamFavoriteRankings.teams:type_name -> dota.CMsgDOTADPCTeamFavoriteRankings.Team - 2, // 22: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.RosterResponse.result:type_name -> dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.Result - 4, // 23: dota.CMsgDOTAFantasyDPCLeagueStatus.LeagueInfo.status:type_name -> dota.CMsgDOTAFantasyDPCLeagueStatus.ERosterStatus - 24, // [24:24] is the sub-list for method output_type - 24, // [24:24] is the sub-list for method input_type - 24, // [24:24] is the sub-list for extension type_name - 24, // [24:24] is the sub-list for extension extendee - 0, // [0:24] is the sub-list for field type_name + 58, // 17: dota.CMsgDOTAFantasyDPCLeagueStatus.league_infos:type_name -> dota.CMsgDOTAFantasyDPCLeagueStatus.LeagueInfo + 59, // 18: dota.CMsgDOTADPCSearchResults.players:type_name -> dota.CMsgDOTADPCSearchResults.Player + 60, // 19: dota.CMsgDOTADPCSearchResults.teams:type_name -> dota.CMsgDOTADPCSearchResults.Team + 61, // 20: dota.CMsgDOTADPCSearchResults.leagues:type_name -> dota.CMsgDOTADPCSearchResults.League + 62, // 21: dota.CMsgDOTADPCTeamFavoriteRankings.teams:type_name -> dota.CMsgDOTADPCTeamFavoriteRankings.Team + 64, // 22: dota.CMsgDotaFantasyCraftingTabletPeriodData.tablets:type_name -> dota.CMsgDotaFantasyCraftingTabletPeriodData.Tablet + 65, // 23: dota.CMsgDotaFantasyCraftingTabletData.tablet_period_data:type_name -> dota.CMsgDotaFantasyCraftingTabletData.TabletPeriodDataEntry + 67, // 24: dota.CMsgDotaFantasyCraftingUserData.period_roll_tokens:type_name -> dota.CMsgDotaFantasyCraftingUserData.PeriodRollTokensEntry + 68, // 25: dota.CMsgDotaFantasyCraftingUserData.period_scores:type_name -> dota.CMsgDotaFantasyCraftingUserData.PeriodScoresEntry + 69, // 26: dota.CMsgDotaFantasyCraftingDataCache.cache_entries:type_name -> dota.CMsgDotaFantasyCraftingDataCache.CacheEntry + 6, // 27: dota.CMsgClientToGCFantasyCraftingGetDataResponse.response:type_name -> dota.CMsgClientToGCFantasyCraftingGetDataResponse.EResponse + 34, // 28: dota.CMsgClientToGCFantasyCraftingGetDataResponse.user_data:type_name -> dota.CMsgDotaFantasyCraftingUserData + 33, // 29: dota.CMsgClientToGCFantasyCraftingGetDataResponse.tablet_data:type_name -> dota.CMsgDotaFantasyCraftingTabletData + 7, // 30: dota.CMsgClientToGCFantasyCraftingPerformOperationResponse.response:type_name -> dota.CMsgClientToGCFantasyCraftingPerformOperationResponse.EResponse + 34, // 31: dota.CMsgClientToGCFantasyCraftingPerformOperationResponse.user_data:type_name -> dota.CMsgDotaFantasyCraftingUserData + 33, // 32: dota.CMsgClientToGCFantasyCraftingPerformOperationResponse.tablet_data:type_name -> dota.CMsgDotaFantasyCraftingTabletData + 70, // 33: dota.CMsgClientToGCFantasyCraftingPerformOperationResponse.title_choices:type_name -> dota.CMsgClientToGCFantasyCraftingPerformOperationResponse.TitleChoice + 34, // 34: dota.CMsgGCToClientFantasyCraftingDataUpdated.user_data:type_name -> dota.CMsgDotaFantasyCraftingUserData + 33, // 35: dota.CMsgGCToClientFantasyCraftingDataUpdated.tablet_data:type_name -> dota.CMsgDotaFantasyCraftingTabletData + 8, // 36: dota.CMsgClientToGCFantasyCraftingDevModifyTabletResponse.response:type_name -> dota.CMsgClientToGCFantasyCraftingDevModifyTabletResponse.EResponse + 34, // 37: dota.CMsgClientToGCFantasyCraftingDevModifyTabletResponse.user_data:type_name -> dota.CMsgDotaFantasyCraftingUserData + 33, // 38: dota.CMsgClientToGCFantasyCraftingDevModifyTabletResponse.tablet_data:type_name -> dota.CMsgDotaFantasyCraftingTabletData + 9, // 39: dota.CMsgClientToGCFantasyCraftingSelectPlayerResponse.response:type_name -> dota.CMsgClientToGCFantasyCraftingSelectPlayerResponse.EResponse + 33, // 40: dota.CMsgClientToGCFantasyCraftingSelectPlayerResponse.tablet_data:type_name -> dota.CMsgDotaFantasyCraftingTabletData + 10, // 41: dota.CMsgClientToGCFantasyCraftingGenerateTabletsResponse.response:type_name -> dota.CMsgClientToGCFantasyCraftingGenerateTabletsResponse.EResponse + 34, // 42: dota.CMsgClientToGCFantasyCraftingGenerateTabletsResponse.user_data:type_name -> dota.CMsgDotaFantasyCraftingUserData + 33, // 43: dota.CMsgClientToGCFantasyCraftingGenerateTabletsResponse.tablet_data:type_name -> dota.CMsgDotaFantasyCraftingTabletData + 11, // 44: dota.CMsgClientToGcFantasyCraftingUpgradeTabletsResponse.response:type_name -> dota.CMsgClientToGcFantasyCraftingUpgradeTabletsResponse.EResponse + 33, // 45: dota.CMsgClientToGcFantasyCraftingUpgradeTabletsResponse.tablet_data:type_name -> dota.CMsgDotaFantasyCraftingTabletData + 12, // 46: dota.CMsgClientToGCFantasyCraftingRerollOptionsResponse.response:type_name -> dota.CMsgClientToGCFantasyCraftingRerollOptionsResponse.EResponse + 34, // 47: dota.CMsgClientToGCFantasyCraftingRerollOptionsResponse.user_data:type_name -> dota.CMsgDotaFantasyCraftingUserData + 2, // 48: dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.RosterResponse.result:type_name -> dota.CMsgClientToGCBatchGetPlayerCardRosterResponse.Result + 4, // 49: dota.CMsgDOTAFantasyDPCLeagueStatus.LeagueInfo.status:type_name -> dota.CMsgDOTAFantasyDPCLeagueStatus.ERosterStatus + 72, // 50: dota.CMsgDotaFantasyCraftingTabletPeriodData.Gem.type:type_name -> dota.Fantasy_Gem_Type + 73, // 51: dota.CMsgDotaFantasyCraftingTabletPeriodData.Gem.stat:type_name -> dota.Fantasy_Scoring + 71, // 52: dota.CMsgDotaFantasyCraftingTabletPeriodData.Tablet.fantasy_role:type_name -> dota.Fantasy_Roles + 63, // 53: dota.CMsgDotaFantasyCraftingTabletPeriodData.Tablet.gems:type_name -> dota.CMsgDotaFantasyCraftingTabletPeriodData.Gem + 32, // 54: dota.CMsgDotaFantasyCraftingTabletData.TabletPeriodDataEntry.value:type_name -> dota.CMsgDotaFantasyCraftingTabletPeriodData + 66, // 55: dota.CMsgDotaFantasyCraftingUserData.PeriodScoresEntry.value:type_name -> dota.CMsgDotaFantasyCraftingUserData.PeriodScore + 40, // 56: dota.CMsgDotaFantasyCraftingDataCache.CacheEntry.cache_data:type_name -> dota.CMsgGCToClientFantasyCraftingDataUpdated + 57, // [57:57] is the sub-list for method output_type + 57, // [57:57] is the sub-list for method input_type + 57, // [57:57] is the sub-list for extension type_name + 57, // [57:57] is the sub-list for extension extendee + 0, // [0:57] is the sub-list for field type_name } func init() { file_dota_gcmessages_client_fantasy_proto_init() } @@ -3373,8 +5991,128 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAPlayerInfoList); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAPlayerInfoList); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTATeamRoster); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTADPCProfileInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTALeaderboards); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAPassportVoteTeamGuess); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAPassportVoteGenericSelection); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAPassportStampedPlayer); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAPassportPlayerCardChallenge); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAPassportVote); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetPlayerCardRosterRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCGetPlayerCardRosterResponse); i { case 0: return &v.state case 1: @@ -3385,8 +6123,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamRoster); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBatchGetPlayerCardRosterRequest); i { case 0: return &v.state case 1: @@ -3397,8 +6135,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTADPCProfileInfo); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCBatchGetPlayerCardRosterResponse); i { case 0: return &v.state case 1: @@ -3409,8 +6147,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTALeaderboards); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetPlayerCardRosterRequest); i { case 0: return &v.state case 1: @@ -3421,8 +6159,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAPassportVoteTeamGuess); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCSetPlayerCardRosterResponse); i { case 0: return &v.state case 1: @@ -3433,8 +6171,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAPassportVoteGenericSelection); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAFantasyDPCLeagueStatus); i { case 0: return &v.state case 1: @@ -3445,8 +6183,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAPassportStampedPlayer); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTADPCSearchResults); i { case 0: return &v.state case 1: @@ -3457,8 +6195,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAPassportPlayerCardChallenge); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTADPCTeamFavoriteRankings); i { case 0: return &v.state case 1: @@ -3469,8 +6207,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAPassportVote); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingTabletPeriodData); i { case 0: return &v.state case 1: @@ -3481,8 +6219,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetPlayerCardRosterRequest); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingTabletData); i { case 0: return &v.state case 1: @@ -3493,8 +6231,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetPlayerCardRosterResponse); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingUserData); i { case 0: return &v.state case 1: @@ -3505,8 +6243,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCBatchGetPlayerCardRosterRequest); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingDataCache); i { case 0: return &v.state case 1: @@ -3517,8 +6255,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCBatchGetPlayerCardRosterResponse); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingGetData); i { case 0: return &v.state case 1: @@ -3529,8 +6267,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetPlayerCardRosterRequest); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingGetDataResponse); i { case 0: return &v.state case 1: @@ -3541,8 +6279,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetPlayerCardRosterResponse); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingPerformOperation); i { case 0: return &v.state case 1: @@ -3553,8 +6291,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyDPCLeagueStatus); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingPerformOperationResponse); i { case 0: return &v.state case 1: @@ -3565,8 +6303,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTADPCSearchResults); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientFantasyCraftingDataUpdated); i { case 0: return &v.state case 1: @@ -3577,8 +6315,8 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTADPCTeamFavoriteRankings); i { + file_dota_gcmessages_client_fantasy_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingDevModifyTablet); i { case 0: return &v.state case 1: @@ -3589,7 +6327,115 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingDevModifyTabletResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingSelectPlayer); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingSelectPlayerResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingGenerateTablets); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingGenerateTabletsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGcFantasyCraftingUpgradeTablets); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGcFantasyCraftingUpgradeTabletsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingRerollOptions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingRerollOptionsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAPlayerInfo_Results); i { case 0: return &v.state @@ -3601,7 +6447,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAPlayerInfo_AuditEntry); i { case 0: return &v.state @@ -3613,7 +6459,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTADPCProfileInfo_PredictionInfo); i { case 0: return &v.state @@ -3625,7 +6471,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTADPCProfileInfo_FantasyInfo); i { case 0: return &v.state @@ -3637,7 +6483,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTALeaderboards_RegionLeaderboard); i { case 0: return &v.state @@ -3649,7 +6495,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp); i { case 0: return &v.state @@ -3661,7 +6507,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse); i { case 0: return &v.state @@ -3673,7 +6519,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTAFantasyDPCLeagueStatus_LeagueInfo); i { case 0: return &v.state @@ -3685,7 +6531,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTADPCSearchResults_Player); i { case 0: return &v.state @@ -3697,7 +6543,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTADPCSearchResults_Team); i { case 0: return &v.state @@ -3709,7 +6555,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTADPCSearchResults_League); i { case 0: return &v.state @@ -3721,7 +6567,7 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } - file_dota_gcmessages_client_fantasy_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + file_dota_gcmessages_client_fantasy_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTADPCTeamFavoriteRankings_Team); i { case 0: return &v.state @@ -3733,14 +6579,110 @@ func file_dota_gcmessages_client_fantasy_proto_init() { return nil } } + file_dota_gcmessages_client_fantasy_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingTabletPeriodData_Gem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingTabletPeriodData_Tablet); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingTabletData_TabletPeriodDataEntry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingUserData_PeriodScore); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingUserData_PeriodRollTokensEntry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingUserData_PeriodScoresEntry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDotaFantasyCraftingDataCache_CacheEntry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_fantasy_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCFantasyCraftingPerformOperationResponse_TitleChoice); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_gcmessages_client_fantasy_proto_rawDesc, - NumEnums: 6, - NumMessages: 31, + NumEnums: 13, + NumMessages: 58, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_gcmessages_client_fantasy.proto b/dota/dota_gcmessages_client_fantasy.proto index d6ddefef..a94cc30b 100644 --- a/dota/dota_gcmessages_client_fantasy.proto +++ b/dota/dota_gcmessages_client_fantasy.proto @@ -340,3 +340,230 @@ message CMsgDOTADPCTeamFavoriteRankings { repeated CMsgDOTADPCTeamFavoriteRankings.Team teams = 1; } + +message CMsgDotaFantasyCraftingTabletPeriodData { + message Gem { + optional Fantasy_Gem_Type type = 1; + optional uint32 slot = 2; + optional uint32 shape = 3; + optional uint32 quality = 4; + optional Fantasy_Scoring stat = 5; + } + + message Tablet { + optional uint32 tablet_id = 1; + optional uint32 tablet_level = 2; + optional Fantasy_Roles fantasy_role = 3; + optional uint32 account_id = 4; + optional uint32 prefix = 5; + optional uint32 suffix = 6; + repeated CMsgDotaFantasyCraftingTabletPeriodData.Gem gems = 7; + optional float score = 8; + optional uint32 best_series = 9; + } + + optional uint32 fantasy_period = 1; + repeated CMsgDotaFantasyCraftingTabletPeriodData.Tablet tablets = 2; +} + +message CMsgDotaFantasyCraftingTabletData { + message TabletPeriodDataEntry { + optional uint32 key = 1; + optional CMsgDotaFantasyCraftingTabletPeriodData value = 2; + } + + repeated CMsgDotaFantasyCraftingTabletData.TabletPeriodDataEntry tablet_period_data = 1; +} + +message CMsgDotaFantasyCraftingUserData { + message PeriodScore { + optional float total_score = 1; + optional float percentile = 2; + } + + message PeriodRollTokensEntry { + optional uint32 key = 1; + optional uint32 value = 2; + } + + message PeriodScoresEntry { + optional uint32 key = 1; + optional CMsgDotaFantasyCraftingUserData.PeriodScore value = 2; + } + + repeated uint32 available_rolls = 1; + repeated CMsgDotaFantasyCraftingUserData.PeriodRollTokensEntry period_roll_tokens = 2; + repeated CMsgDotaFantasyCraftingUserData.PeriodScoresEntry period_scores = 3; +} + +message CMsgDotaFantasyCraftingDataCache { + message CacheEntry { + optional uint32 account_id = 1; + optional uint32 fantasy_league = 2; + optional CMsgGCToClientFantasyCraftingDataUpdated cache_data = 3; + } + + repeated CMsgDotaFantasyCraftingDataCache.CacheEntry cache_entries = 1; +} + +message CMsgClientToGCFantasyCraftingGetData { + optional uint32 fantasy_league = 1; + optional uint32 account_id = 2; +} + +message CMsgClientToGCFantasyCraftingGetDataResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidLeague = 5; + } + + optional CMsgClientToGCFantasyCraftingGetDataResponse.EResponse response = 1; + optional CMsgDotaFantasyCraftingUserData user_data = 2; + optional CMsgDotaFantasyCraftingTabletData tablet_data = 4; +} + +message CMsgClientToGCFantasyCraftingPerformOperation { + optional uint32 fantasy_league = 1; + optional uint32 tablet_id = 2; + optional uint32 operation_id = 3; + optional uint64 extra_data = 4; +} + +message CMsgClientToGCFantasyCraftingPerformOperationResponse { + message TitleChoice { + optional uint32 prefix_choice = 1; + optional uint32 suffix_choice = 2; + } + + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidLeague = 5; + k_eNoTokens = 6; + k_eMoreInfo = 7; + } + + optional CMsgClientToGCFantasyCraftingPerformOperationResponse.EResponse response = 1; + optional uint32 operation_id = 2; + optional uint32 tablet_id = 7; + optional CMsgDotaFantasyCraftingUserData user_data = 8; + optional CMsgDotaFantasyCraftingTabletData tablet_data = 9; + repeated uint32 player_choices = 3; + repeated uint32 prefix_choices = 4; + repeated uint32 suffix_choices = 5; + repeated CMsgClientToGCFantasyCraftingPerformOperationResponse.TitleChoice title_choices = 6; +} + +message CMsgGCToClientFantasyCraftingDataUpdated { + optional uint32 fantasy_league = 1; + optional CMsgDotaFantasyCraftingUserData user_data = 2; + optional CMsgDotaFantasyCraftingTabletData tablet_data = 4; +} + +message CMsgClientToGCFantasyCraftingDevModifyTablet { + optional uint32 fantasy_league = 1; + optional bool reset_tablet = 2; + optional uint32 modify_tokens = 3; + optional bool upgrade_tablets = 6; + optional uint32 fantasy_period = 5; +} + +message CMsgClientToGCFantasyCraftingDevModifyTabletResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidLeague = 5; + } + + optional CMsgClientToGCFantasyCraftingDevModifyTabletResponse.EResponse response = 1; + optional CMsgDotaFantasyCraftingUserData user_data = 2; + optional CMsgDotaFantasyCraftingTabletData tablet_data = 3; +} + +message CMsgClientToGCFantasyCraftingSelectPlayer { + optional uint32 fantasy_league = 1; + optional uint32 account_id = 2; +} + +message CMsgClientToGCFantasyCraftingSelectPlayerResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidLeague = 5; + k_eInvalidPlayer = 6; + } + + optional CMsgClientToGCFantasyCraftingSelectPlayerResponse.EResponse response = 1; + optional CMsgDotaFantasyCraftingTabletData tablet_data = 2; +} + +message CMsgClientToGCFantasyCraftingGenerateTablets { + optional uint32 fantasy_league = 1; + repeated uint32 account_ids = 2; +} + +message CMsgClientToGCFantasyCraftingGenerateTabletsResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidLeague = 5; + k_eInvalidPlayer = 6; + } + + optional CMsgClientToGCFantasyCraftingGenerateTabletsResponse.EResponse response = 1; + optional CMsgDotaFantasyCraftingUserData user_data = 2; + optional CMsgDotaFantasyCraftingTabletData tablet_data = 3; +} + +message CMsgClientToGcFantasyCraftingUpgradeTablets { + optional uint32 fantasy_league = 1; +} + +message CMsgClientToGcFantasyCraftingUpgradeTabletsResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidLeague = 5; + } + + optional CMsgClientToGcFantasyCraftingUpgradeTabletsResponse.EResponse response = 1; + optional CMsgDotaFantasyCraftingTabletData tablet_data = 3; +} + +message CMsgClientToGCFantasyCraftingRerollOptions { + optional uint32 fantasy_league = 1; +} + +message CMsgClientToGCFantasyCraftingRerollOptionsResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalidLeague = 5; + k_eInsufficientTokens = 6; + } + + optional CMsgClientToGCFantasyCraftingRerollOptionsResponse.EResponse response = 1; + optional CMsgDotaFantasyCraftingUserData user_data = 2; +} diff --git a/dota/dota_gcmessages_client_guild.pb.go b/dota/dota_gcmessages_client_guild.pb.go index ad83ea64..90375fa0 100644 --- a/dota/dota_gcmessages_client_guild.pb.go +++ b/dota/dota_gcmessages_client_guild.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_guild.proto @@ -210,22 +210,23 @@ func (EGuildChatType) EnumDescriptor() ([]byte, []int) { type CMsgClientToGCCreateGuildResponse_EResponse int32 const ( - CMsgClientToGCCreateGuildResponse_k_eInternalError CMsgClientToGCCreateGuildResponse_EResponse = 0 - CMsgClientToGCCreateGuildResponse_k_eSuccess CMsgClientToGCCreateGuildResponse_EResponse = 1 - CMsgClientToGCCreateGuildResponse_k_eTooBusy CMsgClientToGCCreateGuildResponse_EResponse = 2 - CMsgClientToGCCreateGuildResponse_k_eDisabled CMsgClientToGCCreateGuildResponse_EResponse = 3 - CMsgClientToGCCreateGuildResponse_k_eTimeout CMsgClientToGCCreateGuildResponse_EResponse = 4 - CMsgClientToGCCreateGuildResponse_k_eInvalidName CMsgClientToGCCreateGuildResponse_EResponse = 5 - CMsgClientToGCCreateGuildResponse_k_eNameAlreadyUsed CMsgClientToGCCreateGuildResponse_EResponse = 6 - CMsgClientToGCCreateGuildResponse_k_eInvalidTag CMsgClientToGCCreateGuildResponse_EResponse = 7 - CMsgClientToGCCreateGuildResponse_k_eTagAlreadyUsed CMsgClientToGCCreateGuildResponse_EResponse = 8 - CMsgClientToGCCreateGuildResponse_k_eInvalidDescription CMsgClientToGCCreateGuildResponse_EResponse = 9 - CMsgClientToGCCreateGuildResponse_k_eInvalidRegion CMsgClientToGCCreateGuildResponse_EResponse = 10 - CMsgClientToGCCreateGuildResponse_k_eInvalidLogo CMsgClientToGCCreateGuildResponse_EResponse = 11 - CMsgClientToGCCreateGuildResponse_k_eDoesNotOwnEvent CMsgClientToGCCreateGuildResponse_EResponse = 12 - CMsgClientToGCCreateGuildResponse_k_eGuildLimit CMsgClientToGCCreateGuildResponse_EResponse = 13 - CMsgClientToGCCreateGuildResponse_k_eInvalidMotD CMsgClientToGCCreateGuildResponse_EResponse = 14 - CMsgClientToGCCreateGuildResponse_k_eBlocked CMsgClientToGCCreateGuildResponse_EResponse = 15 + CMsgClientToGCCreateGuildResponse_k_eInternalError CMsgClientToGCCreateGuildResponse_EResponse = 0 + CMsgClientToGCCreateGuildResponse_k_eSuccess CMsgClientToGCCreateGuildResponse_EResponse = 1 + CMsgClientToGCCreateGuildResponse_k_eTooBusy CMsgClientToGCCreateGuildResponse_EResponse = 2 + CMsgClientToGCCreateGuildResponse_k_eDisabled CMsgClientToGCCreateGuildResponse_EResponse = 3 + CMsgClientToGCCreateGuildResponse_k_eTimeout CMsgClientToGCCreateGuildResponse_EResponse = 4 + CMsgClientToGCCreateGuildResponse_k_eInvalidName CMsgClientToGCCreateGuildResponse_EResponse = 5 + CMsgClientToGCCreateGuildResponse_k_eNameAlreadyUsed CMsgClientToGCCreateGuildResponse_EResponse = 6 + CMsgClientToGCCreateGuildResponse_k_eInvalidTag CMsgClientToGCCreateGuildResponse_EResponse = 7 + CMsgClientToGCCreateGuildResponse_k_eTagAlreadyUsed CMsgClientToGCCreateGuildResponse_EResponse = 8 + CMsgClientToGCCreateGuildResponse_k_eInvalidDescription CMsgClientToGCCreateGuildResponse_EResponse = 9 + CMsgClientToGCCreateGuildResponse_k_eInvalidRegion CMsgClientToGCCreateGuildResponse_EResponse = 10 + CMsgClientToGCCreateGuildResponse_k_eInvalidLogo CMsgClientToGCCreateGuildResponse_EResponse = 11 + CMsgClientToGCCreateGuildResponse_k_eDoesNotOwnEvent CMsgClientToGCCreateGuildResponse_EResponse = 12 + CMsgClientToGCCreateGuildResponse_k_eGuildLimit CMsgClientToGCCreateGuildResponse_EResponse = 13 + CMsgClientToGCCreateGuildResponse_k_eInvalidMotD CMsgClientToGCCreateGuildResponse_EResponse = 14 + CMsgClientToGCCreateGuildResponse_k_eBlocked CMsgClientToGCCreateGuildResponse_EResponse = 15 + CMsgClientToGCCreateGuildResponse_k_eFreeTrialNotAllowed CMsgClientToGCCreateGuildResponse_EResponse = 16 ) // Enum value maps for CMsgClientToGCCreateGuildResponse_EResponse. @@ -247,24 +248,26 @@ var ( 13: "k_eGuildLimit", 14: "k_eInvalidMotD", 15: "k_eBlocked", + 16: "k_eFreeTrialNotAllowed", } CMsgClientToGCCreateGuildResponse_EResponse_value = map[string]int32{ - "k_eInternalError": 0, - "k_eSuccess": 1, - "k_eTooBusy": 2, - "k_eDisabled": 3, - "k_eTimeout": 4, - "k_eInvalidName": 5, - "k_eNameAlreadyUsed": 6, - "k_eInvalidTag": 7, - "k_eTagAlreadyUsed": 8, - "k_eInvalidDescription": 9, - "k_eInvalidRegion": 10, - "k_eInvalidLogo": 11, - "k_eDoesNotOwnEvent": 12, - "k_eGuildLimit": 13, - "k_eInvalidMotD": 14, - "k_eBlocked": 15, + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalidName": 5, + "k_eNameAlreadyUsed": 6, + "k_eInvalidTag": 7, + "k_eTagAlreadyUsed": 8, + "k_eInvalidDescription": 9, + "k_eInvalidRegion": 10, + "k_eInvalidLogo": 11, + "k_eDoesNotOwnEvent": 12, + "k_eGuildLimit": 13, + "k_eInvalidMotD": 14, + "k_eBlocked": 15, + "k_eFreeTrialNotAllowed": 16, } ) @@ -5740,7 +5743,7 @@ var file_dota_gcmessages_client_guild_proto_rawDesc = []byte{ 0x3c, 0x0a, 0x0f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, - 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0xd8, 0x03, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0xf4, 0x03, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, @@ -5749,7 +5752,7 @@ var file_dota_gcmessages_client_guild_proto_rawDesc = []byte{ 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xcc, 0x02, 0x0a, 0x09, 0x45, 0x52, + 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xe8, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, @@ -5770,469 +5773,264 @@ var file_dota_gcmessages_client_guild_proto_rawDesc = []byte{ 0x0c, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0x0d, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x6f, 0x74, 0x44, 0x10, 0x0e, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x42, - 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0f, 0x22, 0xa9, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x49, 0x64, 0x12, 0x32, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x67, 0x75, 0x69, - 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3c, 0x0a, 0x0f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, - 0x63, 0x68, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x22, 0xb6, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0f, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x46, + 0x72, 0x65, 0x65, 0x54, 0x72, 0x69, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, + 0x65, 0x64, 0x10, 0x10, 0x22, 0xa9, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xc3, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, - 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, - 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, - 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, - 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x07, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x4d, - 0x6f, 0x74, 0x44, 0x54, 0x6f, 0x6f, 0x4c, 0x6f, 0x6e, 0x67, 0x10, 0x08, 0x12, 0x1e, 0x0a, 0x1a, - 0x6b, 0x5f, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, - 0x6b, 0x5f, 0x65, 0x54, 0x61, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x0a, 0x12, 0x12, 0x0a, 0x0e, 0x6b, - 0x5f, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x0b, 0x12, - 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x54, 0x61, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x10, 0x0c, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x0d, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0e, 0x22, 0x3b, 0x0a, - 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xb8, 0x02, 0x0a, 0x26, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x32, + 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x3c, 0x0a, 0x0f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x74, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x22, 0xb6, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x22, 0xc3, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, + 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x10, 0x0a, + 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x06, 0x12, + 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x10, 0x07, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x4d, 0x6f, 0x74, 0x44, 0x54, + 0x6f, 0x6f, 0x4c, 0x6f, 0x6e, 0x67, 0x10, 0x08, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x65, 0x54, + 0x61, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x0a, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x0b, 0x12, 0x11, 0x0a, 0x0d, 0x6b, + 0x5f, 0x65, 0x54, 0x61, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x0c, 0x12, 0x19, + 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x0d, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0e, 0x22, 0x3b, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x32, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, - 0x67, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x22, 0x89, 0x01, 0x0a, 0x09, 0x45, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, - 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, - 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x10, 0x06, 0x22, 0x77, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x7c, - 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x44, 0x61, 0x74, 0x61, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x44, 0x61, 0x74, 0x61, 0x22, 0x26, 0x0a, 0x24, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x73, 0x68, 0x69, 0x70, 0x22, 0xb8, 0x02, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xb8, 0x02, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x4e, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, - 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x4e, 0x0a, 0x11, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x52, 0x10, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x22, 0x62, 0x0a, 0x09, 0x45, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, - 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, - 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, - 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x22, - 0x76, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x32, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x44, 0x61, 0x74, 0x61, 0x22, 0x89, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, + 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, + 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, + 0x06, 0x22, 0x77, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x7c, 0x0a, 0x25, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x38, + 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x0b, 0x6d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x73, 0x44, 0x61, 0x74, 0x61, 0x22, 0x26, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x11, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x22, 0xb8, 0x02, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x54, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x4e, 0x0a, 0x11, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x52, 0x10, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x22, 0x34, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xd3, 0x02, - 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x47, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xe6, 0x01, 0x0a, 0x09, 0x45, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, - 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, - 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, - 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, - 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, - 0x65, 0x61, 0x64, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, - 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0x08, 0x12, - 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x73, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0x09, 0x12, 0x16, 0x0a, 0x12, 0x6b, - 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x6f, 0x6f, 0x4c, 0x6f, - 0x77, 0x10, 0x0a, 0x22, 0x35, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, - 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x8a, 0x02, 0x0a, 0x20, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, - 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x48, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x9b, 0x01, 0x0a, 0x09, 0x45, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, - 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, - 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4c, 0x61, 0x73, 0x74, - 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x10, 0x07, 0x22, 0x66, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, - 0xcd, 0x02, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4b, - 0x69, 0x63, 0x6b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xd4, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, - 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, - 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x06, 0x12, 0x16, 0x0a, - 0x12, 0x6b, 0x5f, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x08, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, - 0x65, 0x43, 0x61, 0x6e, 0x74, 0x4b, 0x69, 0x63, 0x6b, 0x53, 0x65, 0x6c, 0x66, 0x10, 0x09, 0x22, - 0x8f, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, + 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x22, 0x62, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, + 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x22, 0x76, 0x0a, 0x24, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x11, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, + 0x73, 0x52, 0x10, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, + 0x69, 0x70, 0x73, 0x22, 0x34, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, + 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xd3, 0x02, 0x0a, 0x1f, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xe6, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, + 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, + 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x75, 0x6c, 0x6c, + 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0x08, 0x12, 0x1a, 0x0a, 0x16, 0x6b, + 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x49, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0x09, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x6f, 0x6f, 0x4c, 0x6f, 0x77, 0x10, 0x0a, 0x22, + 0x35, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x8a, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x9b, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, + 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, + 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, + 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4c, 0x61, 0x73, 0x74, 0x41, 0x64, 0x6d, 0x69, + 0x6e, 0x10, 0x07, 0x22, 0x66, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x49, - 0x64, 0x22, 0xe9, 0x02, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, - 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x22, 0xea, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, - 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, - 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x54, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x07, 0x12, 0x13, 0x0a, - 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x52, 0x6f, 0x6c, 0x65, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x64, 0x6d, - 0x69, 0x6e, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0a, 0x22, 0x64, 0x0a, - 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, - 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x22, 0x8e, 0x03, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x99, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, - 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, - 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x75, - 0x6c, 0x6c, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x07, 0x12, - 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x41, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, - 0x65, 0x61, 0x64, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x10, 0x09, 0x12, 0x1a, 0x0a, - 0x16, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x0a, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, - 0x54, 0x6f, 0x6f, 0x4d, 0x61, 0x6e, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x10, 0x0b, - 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x73, - 0x65, 0x72, 0x10, 0x0c, 0x22, 0x3f, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x76, - 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x90, 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, - 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, - 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, - 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x06, 0x22, 0x3e, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, - 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, - 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xe1, 0x02, 0x0a, 0x29, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, - 0x70, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xe0, 0x01, 0x0a, 0x09, 0x45, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, - 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, - 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x6b, - 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0x08, 0x12, 0x15, - 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x72, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, - 0x61, 0x64, 0x79, 0x49, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x0a, 0x22, 0x6a, 0x0a, 0x21, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, - 0x6e, 0x63, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xa4, 0x02, 0x0a, 0x29, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, - 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, - 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xa3, 0x01, 0x0a, 0x09, 0x45, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, - 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, - 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, - 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x07, 0x22, - 0x73, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x19, 0x0a, - 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x66, 0x6c, - 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x46, - 0x6c, 0x61, 0x67, 0x73, 0x22, 0x96, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, - 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, - 0x22, 0x8a, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, - 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, - 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, 0x73, 0x65, 0x64, - 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, - 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0x08, 0x12, 0x12, 0x0a, - 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x10, - 0x09, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x56, 0x69, 0x6f, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0a, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x54, - 0x6f, 0x6f, 0x4d, 0x61, 0x6e, 0x79, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x10, 0x0b, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0c, 0x22, 0x8f, 0x01, - 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, - 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x6f, 0x6c, - 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, - 0x82, 0x03, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, - 0x6f, 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x89, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, - 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, - 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x52, 0x6f, 0x6c, 0x65, 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, 0x73, 0x65, 0x64, 0x10, 0x07, 0x12, 0x13, - 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x46, 0x6c, 0x61, 0x67, - 0x73, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x09, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x0a, 0x12, 0x15, 0x0a, - 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, - 0x65, 0x64, 0x10, 0x0c, 0x22, 0x53, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, - 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x22, 0xe4, 0x02, 0x0a, 0x25, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x22, 0xeb, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, - 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0x06, - 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x4e, 0x6f, 0x74, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x6b, - 0x5f, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x10, 0x09, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x65, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0x0a, - 0x22, 0x96, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x4f, - 0x72, 0x64, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, - 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x6f, 0x6c, - 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x73, 0x12, 0x2a, 0x0a, - 0x11, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, - 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, - 0x75, 0x73, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x73, 0x22, 0xf8, 0x02, 0x0a, 0x27, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x65, 0x64, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0d, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x52, 0x6f, 0x6c, - 0x65, 0x49, 0x64, 0x73, 0x22, 0xcd, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xcd, 0x02, 0x0a, 0x25, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4b, 0x69, + 0x63, 0x6b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x22, 0xd4, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, - 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x12, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x19, + 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x6f, + 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, + 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, + 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x08, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x43, 0x61, 0x6e, + 0x74, 0x4b, 0x69, 0x63, 0x6b, 0x53, 0x65, 0x6c, 0x66, 0x10, 0x09, 0x22, 0x8f, 0x01, 0x0a, 0x20, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, + 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, + 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x22, 0xe9, 0x02, + 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xea, 0x01, 0x0a, + 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, + 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, + 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, + 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, + 0x06, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x6f, + 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, + 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, - 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x08, 0x12, 0x15, 0x0a, - 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x10, 0x09, 0x22, 0x5d, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, + 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x56, 0x69, + 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0a, 0x22, 0x64, 0x0a, 0x1b, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, + 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, + 0x8e, 0x03, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x22, 0x99, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x10, + 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x06, + 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x72, + 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x07, 0x12, 0x15, 0x0a, 0x11, 0x6b, + 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x41, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x10, 0x09, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, + 0x4e, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x10, 0x0a, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4d, + 0x61, 0x6e, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x10, 0x0b, 0x12, 0x12, 0x0a, 0x0e, + 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x73, 0x65, 0x72, 0x10, 0x0c, + 0x22, 0x3f, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, + 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, - 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, - 0x6e, 0x49, 0x64, 0x22, 0xde, 0x02, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, - 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, - 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x66, 0x65, 0x65, - 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, - 0x65, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x66, 0x65, 0x65, 0x64, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x73, 0x22, 0x8d, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x64, 0x22, 0x90, 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, + 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x52, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, @@ -6240,24 +6038,20 @@ var file_dota_gcmessages_client_guild_proto_rawDesc = []byte{ 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x14, - 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x10, 0x06, 0x22, 0x3b, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, - 0x64, 0x22, 0x3f, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x49, 0x64, 0x22, 0xa8, 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x6f, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x52, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x46, 0x6f, 0x75, + 0x6e, 0x64, 0x10, 0x06, 0x22, 0x3e, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x49, 0x6e, 0x76, 0x69, + 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x49, 0x64, 0x22, 0xe1, 0x02, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x51, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x49, 0x6e, + 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xa5, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xe0, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, @@ -6265,224 +6059,434 @@ var file_dota_gcmessages_client_guild_proto_rawDesc = []byte{ 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, - 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, - 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, - 0x74, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x07, 0x22, 0xc6, 0x02, - 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, - 0x79, 0x54, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x64, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x42, 0x79, 0x54, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0d, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x8b, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, - 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x11, 0x0a, - 0x0d, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x61, 0x67, 0x10, 0x05, - 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4e, 0x6f, 0x74, 0x46, - 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x06, 0x22, 0xb6, 0x03, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x6f, 0x72, 0x4f, 0x70, 0x65, 0x6e, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x6f, 0x72, 0x4f, - 0x70, 0x65, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x46, 0x6f, + 0x75, 0x6e, 0x64, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x10, + 0x09, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x49, + 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x0a, 0x22, 0x6a, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, + 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x22, 0xa4, 0x02, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x51, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x49, 0x6e, + 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xa3, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, + 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, + 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x46, 0x6f, + 0x75, 0x6e, 0x64, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x07, 0x22, 0x73, 0x0a, 0x1a, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, + 0x22, 0x96, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x59, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x6f, 0x72, - 0x4f, 0x70, 0x65, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, - 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x23, - 0x0a, 0x0d, 0x75, 0x73, 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x75, 0x73, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, - 0x69, 0x73, 0x74, 0x1a, 0x66, 0x0a, 0x0c, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x3b, - 0x0a, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x0c, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x62, 0x0a, 0x09, 0x45, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, - 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, - 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, - 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, - 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x22, - 0xeb, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, - 0x2e, 0x0a, 0x13, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, - 0x7c, 0x0a, 0x0d, 0x45, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, - 0x12, 0x0b, 0x0a, 0x07, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x18, 0x0a, - 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x49, 0x6e, - 0x61, 0x70, 0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67, 0x10, 0x02, - 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x70, 0x72, - 0x69, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, - 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0x07, 0x22, 0x8c, 0x02, - 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x06, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8d, 0x01, 0x0a, + 0x75, 0x6c, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x8a, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, - 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4e, 0x6f, 0x74, - 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x46, 0x6c, - 0x61, 0x67, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x06, 0x22, 0x4d, 0x0a, 0x2c, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xd6, 0x02, 0x0a, 0x34, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, - 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, 0x73, 0x65, 0x64, 0x10, 0x06, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x09, 0x12, 0x15, 0x0a, + 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x10, 0x0a, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x4d, 0x61, + 0x6e, 0x79, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0c, 0x22, 0x8f, 0x01, 0x0a, 0x1d, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x6f, 0x64, 0x69, + 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x82, 0x03, 0x0a, 0x25, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x6f, + 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x6f, 0x64, 0x69, 0x66, + 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x22, 0x89, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x12, + 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, + 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x72, + 0x65, 0x61, 0x64, 0x79, 0x55, 0x73, 0x65, 0x64, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0x08, 0x12, + 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4e, 0x61, 0x6d, + 0x65, 0x10, 0x09, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x0a, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x0b, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0c, + 0x22, 0x53, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, + 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, + 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x22, 0xe4, 0x02, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x4d, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xeb, + 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, + 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, + 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, 0x65, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, + 0x6b, 0x5f, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x4e, 0x6f, 0x74, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x10, + 0x07, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x41, 0x64, + 0x6d, 0x69, 0x6e, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x09, 0x12, 0x1c, + 0x0a, 0x18, 0x6b, 0x5f, 0x65, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0x0a, 0x22, 0x96, 0x01, 0x0a, + 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x65, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x65, + 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x52, 0x6f, + 0x6c, 0x65, 0x49, 0x64, 0x73, 0x22, 0xf8, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x52, 0x6f, 0x6c, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x4f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, + 0x6f, 0x6c, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x12, 0x45, 0x0a, 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x69, 0x6e, - 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x73, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x70, 0x65, - 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x79, 0x0a, 0x09, 0x45, 0x52, 0x65, + 0x6c, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, + 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x10, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x73, + 0x22, 0xcd, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, + 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x5f, + 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0x06, 0x12, 0x13, + 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x08, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x09, + 0x22, 0x5d, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x20, 0x0a, + 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x49, 0x64, 0x22, + 0xde, 0x02, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, + 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x66, 0x65, 0x65, 0x64, 0x5f, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x66, 0x65, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x22, 0x8d, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, + 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, + 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x06, + 0x22, 0x3b, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x3f, 0x0a, + 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, + 0x64, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, + 0x68, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xa8, + 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x41, 0x64, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x22, 0xa5, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, + 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, + 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x6b, + 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x06, 0x12, 0x1a, 0x0a, + 0x16, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x74, 0x4e, 0x6f, 0x74, + 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x07, 0x22, 0xc6, 0x02, 0x0a, 0x1a, 0x43, 0x4d, + 0x73, 0x67, 0x46, 0x69, 0x6e, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x79, 0x54, 0x61, 0x67, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x79, 0x54, + 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x08, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x53, + 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x75, 0x6d, + 0x6d, 0x61, 0x72, 0x79, 0x22, 0x8b, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x61, 0x67, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, + 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, + 0x10, 0x06, 0x22, 0xb6, 0x03, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x61, 0x72, 0x63, + 0x68, 0x46, 0x6f, 0x72, 0x4f, 0x70, 0x65, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x6f, 0x72, 0x4f, 0x70, 0x65, 0x6e, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, + 0x59, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x6f, 0x72, 0x4f, 0x70, 0x65, 0x6e, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0d, 0x73, 0x65, 0x61, + 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x75, 0x73, + 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0c, 0x75, 0x73, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x1a, + 0x66, 0x0a, 0x0c, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, + 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0d, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x62, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, + 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, + 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x22, 0xeb, 0x01, 0x0a, 0x20, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x6c, 0x61, + 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x7c, 0x0a, 0x0d, 0x45, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x0b, 0x0a, 0x07, + 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x61, 0x70, 0x70, 0x72, + 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, + 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x65, + 0x4c, 0x6f, 0x67, 0x6f, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x65, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0x07, 0x22, 0x8c, 0x02, 0x0a, 0x28, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, - 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x15, 0x0a, - 0x11, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x10, 0x05, 0x22, 0x54, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x14, 0x0a, + 0x10, 0x6b, 0x5f, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, + 0x64, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x06, 0x22, 0x4d, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, + 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xd6, 0x02, 0x0a, 0x34, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, + 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x5c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, - 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xe2, 0x02, 0x0a, 0x39, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x47, 0x0a, 0x0d, 0x70, - 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x50, 0x65, 0x72, 0x73, 0x6f, - 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, - 0x6e, 0x66, 0x6f, 0x73, 0x22, 0x79, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, - 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x49, - 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x05, 0x2a, - 0xe7, 0x08, 0x0a, 0x11, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x49, 0x6e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x45, + 0x0a, 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x50, 0x65, 0x72, + 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, + 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x79, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x05, + 0x22, 0x54, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xe2, 0x02, 0x0a, 0x39, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x73, + 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, + 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x47, 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x73, 0x6f, + 0x6e, 0x61, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x0c, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x73, + 0x22, 0x79, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, + 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, + 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, + 0x75, 0x74, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x05, 0x2a, 0xe7, 0x08, 0x0a, 0x11, + 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, + 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, + 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x64, 0x10, 0x02, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2c, 0x0a, 0x28, + 0x69, 0x6c, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, + 0x03, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, + 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x10, 0x05, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, - 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x02, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, - 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x64, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, + 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, + 0x65, 0x66, 0x74, 0x10, 0x06, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x10, 0x05, - 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, + 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4b, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x07, + 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x4c, 0x65, 0x66, 0x74, 0x10, 0x06, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, + 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x08, + 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x6f, 0x67, + 0x6f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x09, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, + 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0a, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0b, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0c, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4b, 0x69, 0x63, 0x6b, - 0x65, 0x64, 0x10, 0x07, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x64, 0x10, 0x08, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4c, 0x6f, 0x67, 0x6f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x09, 0x12, 0x2a, - 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x67, 0x69, 0x6f, - 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0a, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, + 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0d, 0x12, 0x2b, 0x0a, + 0x27, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, + 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0e, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0b, 0x12, 0x30, 0x0a, 0x2c, 0x6b, - 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x43, - 0x6f, 0x6c, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0c, 0x12, 0x32, 0x0a, - 0x2e, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, - 0x0d, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, - 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x61, - 0x74, 0x74, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x0e, 0x12, 0x28, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6c, 0x65, 0x61, 0x72, - 0x65, 0x64, 0x4c, 0x6f, 0x67, 0x6f, 0x10, 0x0f, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x47, + 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x65, 0x64, 0x4c, 0x6f, + 0x67, 0x6f, 0x10, 0x0f, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x64, 0x10, 0x10, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x4d, 0x6f, 0x74, 0x44, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x12, + 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, + 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x13, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x52, 0x61, 0x6e, - 0x6b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x10, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, - 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x6f, 0x74, 0x44, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x64, 0x10, 0x12, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, - 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x13, 0x12, 0x25, 0x0a, 0x21, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x61, 0x67, 0x10, 0x14, 0x12, + 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, + 0x10, 0x15, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, + 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4e, + 0x61, 0x6d, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x16, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x61, - 0x67, 0x10, 0x14, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, + 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x54, 0x61, 0x67, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x64, 0x10, 0x17, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, + 0x69, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x10, 0x18, 0x12, 0x24, 0x0a, + 0x20, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, + 0x64, 0x10, 0x19, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, - 0x4c, 0x6f, 0x63, 0x6b, 0x10, 0x15, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x16, - 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x54, 0x61, 0x67, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x17, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x10, - 0x18, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, - 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x42, 0x6c, - 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x19, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, - 0x64, 0x6d, 0x69, 0x6e, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x10, 0x1a, - 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x6f, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x10, 0x1b, 0x2a, 0x70, 0x0a, 0x0e, 0x45, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x6b, - 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, - 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x23, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, - 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x43, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, - 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, - 0x74, 0x61, + 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x10, 0x1a, 0x12, 0x27, 0x0a, 0x23, + 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x6f, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x65, 0x64, 0x10, 0x1b, 0x2a, 0x70, 0x0a, 0x0e, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, + 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x55, 0x6e, 0x73, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x10, 0x01, 0x12, 0x17, + 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x47, 0x43, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, + 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, + 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/dota_gcmessages_client_guild.proto b/dota/dota_gcmessages_client_guild.proto index 228c0bf0..b2cde728 100644 --- a/dota/dota_gcmessages_client_guild.proto +++ b/dota/dota_gcmessages_client_guild.proto @@ -156,6 +156,7 @@ message CMsgClientToGCCreateGuildResponse { k_eGuildLimit = 13; k_eInvalidMotD = 14; k_eBlocked = 15; + k_eFreeTrialNotAllowed = 16; } optional CMsgClientToGCCreateGuildResponse.EResponse result = 1; diff --git a/dota/dota_gcmessages_client_guild_events.pb.go b/dota/dota_gcmessages_client_guild_events.pb.go index 2d395f5a..ea065a05 100644 --- a/dota/dota_gcmessages_client_guild_events.pb.go +++ b/dota/dota_gcmessages_client_guild_events.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_guild_events.proto diff --git a/dota/dota_gcmessages_client_match_management.pb.go b/dota/dota_gcmessages_client_match_management.pb.go index 02c22daf..d3222666 100644 --- a/dota/dota_gcmessages_client_match_management.pb.go +++ b/dota/dota_gcmessages_client_match_management.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_match_management.proto @@ -61,6 +61,7 @@ const ( EStartFindingMatchResult_k_EStartFindingMatchResult_MatchmakingBusy EStartFindingMatchResult = 132 EStartFindingMatchResult_k_EStartFindingMatchResult_SteamChinaBanned EStartFindingMatchResult = 133 EStartFindingMatchResult_k_EStartFindingMatchResult_SteamChinaInvalidMixedParty EStartFindingMatchResult = 134 + EStartFindingMatchResult_k_EStartFindingMatchResult_RestrictedFromRanked EStartFindingMatchResult = 135 ) // Enum value maps for EStartFindingMatchResult. @@ -104,6 +105,7 @@ var ( 132: "k_EStartFindingMatchResult_MatchmakingBusy", 133: "k_EStartFindingMatchResult_SteamChinaBanned", 134: "k_EStartFindingMatchResult_SteamChinaInvalidMixedParty", + 135: "k_EStartFindingMatchResult_RestrictedFromRanked", } EStartFindingMatchResult_value = map[string]int32{ "k_EStartFindingMatchResult_Invalid": 0, @@ -144,6 +146,7 @@ var ( "k_EStartFindingMatchResult_MatchmakingBusy": 132, "k_EStartFindingMatchResult_SteamChinaBanned": 133, "k_EStartFindingMatchResult_SteamChinaInvalidMixedParty": 134, + "k_EStartFindingMatchResult_RestrictedFromRanked": 135, } ) @@ -664,9 +667,12 @@ type CMsgReadyUpStatus struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LobbyId *uint64 `protobuf:"fixed64,1,opt,name=lobby_id,json=lobbyId" json:"lobby_id,omitempty"` - AcceptedIds []uint32 `protobuf:"varint,2,rep,name=accepted_ids,json=acceptedIds" json:"accepted_ids,omitempty"` - DeclinedIds []uint32 `protobuf:"varint,3,rep,name=declined_ids,json=declinedIds" json:"declined_ids,omitempty"` + LobbyId *uint64 `protobuf:"fixed64,1,opt,name=lobby_id,json=lobbyId" json:"lobby_id,omitempty"` + AcceptedIds []uint32 `protobuf:"varint,2,rep,name=accepted_ids,json=acceptedIds" json:"accepted_ids,omitempty"` + DeclinedIds []uint32 `protobuf:"varint,3,rep,name=declined_ids,json=declinedIds" json:"declined_ids,omitempty"` + AcceptedIndices []uint32 `protobuf:"varint,4,rep,name=accepted_indices,json=acceptedIndices" json:"accepted_indices,omitempty"` + DeclinedIndices []uint32 `protobuf:"varint,5,rep,name=declined_indices,json=declinedIndices" json:"declined_indices,omitempty"` + LocalReadyState *DOTALobbyReadyState `protobuf:"varint,6,opt,name=local_ready_state,json=localReadyState,enum=dota.DOTALobbyReadyState" json:"local_ready_state,omitempty"` } func (x *CMsgReadyUpStatus) Reset() { @@ -722,6 +728,27 @@ func (x *CMsgReadyUpStatus) GetDeclinedIds() []uint32 { return nil } +func (x *CMsgReadyUpStatus) GetAcceptedIndices() []uint32 { + if x != nil { + return x.AcceptedIndices + } + return nil +} + +func (x *CMsgReadyUpStatus) GetDeclinedIndices() []uint32 { + if x != nil { + return x.DeclinedIndices + } + return nil +} + +func (x *CMsgReadyUpStatus) GetLocalReadyState() DOTALobbyReadyState { + if x != nil && x.LocalReadyState != nil { + return *x.LocalReadyState + } + return DOTALobbyReadyState_DOTALobbyReadyState_UNDECLARED +} + type CMsgAbandonCurrentGame struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4613,785 +4640,798 @@ var file_dota_gcmessages_client_match_management_proto_rawDesc = []byte{ 0x70, 0x65, 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x0d, 0x68, 0x61, 0x72, 0x64, - 0x77, 0x61, 0x72, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x22, 0x74, 0x0a, 0x11, 0x43, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x61, 0x64, 0x79, 0x55, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, - 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, - 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, - 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, - 0x0b, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x49, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, - 0x64, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x64, 0x73, 0x22, - 0x18, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x43, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x22, 0x45, 0x0a, 0x15, 0x43, 0x4d, 0x73, - 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x53, 0x61, - 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x22, 0xee, 0x10, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, - 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, - 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x67, 0x61, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, - 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, - 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x2b, 0x0a, 0x07, 0x63, 0x6d, 0x5f, 0x70, 0x69, 0x63, - 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x52, 0x06, 0x63, 0x6d, 0x50, - 0x69, 0x63, 0x6b, 0x12, 0x4d, 0x0a, 0x16, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, - 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, - 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x14, 0x62, 0x6f, - 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x61, 0x64, 0x69, 0x61, - 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x68, 0x65, 0x61, - 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, - 0x68, 0x65, 0x61, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x69, 0x6c, 0x6c, 0x5f, 0x77, 0x69, - 0x74, 0x68, 0x5f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, - 0x69, 0x6c, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x42, 0x6f, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, - 0x6e, 0x74, 0x72, 0x6f, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x09, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x6c, - 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x70, 0x65, 0x63, 0x74, - 0x61, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, - 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, - 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x15, - 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x72, 0x61, - 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, 0x65, 0x6e, - 0x61, 0x6c, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, - 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, - 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x44, 0x69, 0x72, 0x65, 0x12, 0x20, - 0x0a, 0x0c, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x13, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, - 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x72, - 0x69, 0x65, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, - 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x57, 0x69, 0x6e, - 0x73, 0x12, 0x28, 0x0a, 0x10, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, - 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x69, 0x72, - 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x57, 0x69, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, - 0x6c, 0x6c, 0x63, 0x68, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, - 0x6c, 0x63, 0x68, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x0d, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x76, - 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, 0x44, - 0x65, 0x6c, 0x61, 0x79, 0x52, 0x0b, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x76, 0x44, 0x65, 0x6c, 0x61, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x61, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, - 0x6c, 0x61, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, - 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x26, 0x0a, - 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x61, - 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, - 0x74, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x1e, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x69, 0x6e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x1f, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x61, 0x78, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, - 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, - 0x72, 0x63, 0x18, 0x22, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x18, 0x25, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x17, 0x70, - 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x76, - 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x26, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x70, 0x72, - 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x76, 0x65, 0x72, 0x72, - 0x69, 0x64, 0x65, 0x12, 0x40, 0x0a, 0x0d, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x65, 0x74, - 0x74, 0x69, 0x6e, 0x67, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x61, 0x75, 0x73, 0x65, - 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x70, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, - 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x47, 0x0a, 0x13, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, - 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x2b, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, - 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x11, 0x62, 0x6f, 0x74, - 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x44, 0x69, 0x72, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x62, 0x6f, 0x74, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x2c, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x6f, 0x74, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x2d, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x07, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x72, 0x65, 0x12, 0x5a, 0x0a, 0x18, 0x73, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x16, - 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x18, - 0x2f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, - 0x65, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x61, - 0x6e, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x30, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x48, - 0x6f, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, - 0x64, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, - 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x32, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x73, 0x12, 0x40, 0x0a, 0x0d, 0x73, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x5f, - 0x73, 0x61, 0x76, 0x65, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x63, 0x65, 0x6e, 0x61, - 0x72, 0x69, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x52, 0x0c, 0x73, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, - 0x6f, 0x53, 0x61, 0x76, 0x65, 0x12, 0x82, 0x01, 0x0a, 0x1e, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x5f, 0x64, 0x72, 0x61, 0x66, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, - 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, - 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x2e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x70, - 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x1b, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, - 0x66, 0x69, 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x6f, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x64, 0x72, 0x61, 0x66, 0x74, 0x18, 0x35, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0d, 0x64, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, - 0x66, 0x74, 0x1a, 0x4d, 0x0a, 0x1b, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, - 0x66, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x5f, 0x64, 0x72, 0x61, - 0x66, 0x74, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, - 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x4f, 0x72, 0x64, 0x65, - 0x72, 0x22, 0xfa, 0x02, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, - 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x12, 0x19, 0x0a, 0x08, - 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x70, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, - 0x0a, 0x0d, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x77, 0x61, 0x72, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x22, 0x91, 0x02, 0x0a, 0x11, 0x43, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x61, 0x64, 0x79, 0x55, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, + 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x49, 0x64, 0x73, 0x12, 0x21, 0x0a, + 0x0c, 0x64, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x64, 0x73, + 0x12, 0x29, 0x0a, 0x10, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, + 0x69, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x61, 0x63, 0x63, 0x65, + 0x70, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x64, + 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x64, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x49, + 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x11, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, + 0x72, 0x65, 0x61, 0x64, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0f, 0x6c, 0x6f, + 0x63, 0x61, 0x6c, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x18, 0x0a, + 0x16, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x43, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x22, 0x45, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x53, 0x61, 0x76, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xee, + 0x10, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x19, + 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, + 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x61, + 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, + 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, + 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x2b, 0x0a, 0x07, 0x63, 0x6d, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x52, 0x06, 0x63, 0x6d, 0x50, 0x69, 0x63, + 0x6b, 0x12, 0x4d, 0x0a, 0x16, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, + 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, + 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x14, 0x62, 0x6f, 0x74, 0x44, + 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, + 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x68, 0x65, 0x61, 0x74, 0x73, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x68, 0x65, + 0x61, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x69, 0x6c, 0x6c, 0x5f, 0x77, 0x69, 0x74, 0x68, + 0x5f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x69, 0x6c, + 0x6c, 0x57, 0x69, 0x74, 0x68, 0x42, 0x6f, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x74, + 0x72, 0x6f, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, + 0x6e, 0x74, 0x72, 0x6f, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, + 0x69, 0x6e, 0x67, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x1a, + 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x65, + 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x72, 0x61, 0x64, 0x69, + 0x61, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, 0x65, 0x6e, 0x61, 0x6c, + 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x2c, + 0x0a, 0x12, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, + 0x64, 0x69, 0x72, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x6e, 0x61, + 0x6c, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x44, 0x69, 0x72, 0x65, 0x12, 0x20, 0x0a, 0x0c, + 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x2e, 0x0a, 0x13, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x57, 0x69, 0x6e, 0x73, 0x12, + 0x28, 0x0a, 0x10, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x77, + 0x69, 0x6e, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x57, 0x69, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x6c, + 0x63, 0x68, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x63, + 0x68, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x0d, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x76, 0x5f, 0x64, + 0x65, 0x6c, 0x61, 0x79, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, 0x44, 0x65, 0x6c, + 0x61, 0x79, 0x52, 0x0b, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6c, 0x61, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x6c, 0x61, + 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, + 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x1b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x61, 0x70, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x64, 0x69, + 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, + 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x1e, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x69, 0x6e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, + 0x61, 0x78, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x18, 0x21, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, + 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x26, 0x0a, + 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x72, 0x63, + 0x18, 0x22, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, + 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x25, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x17, 0x70, 0x72, 0x65, + 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x76, 0x65, 0x72, + 0x72, 0x69, 0x64, 0x65, 0x18, 0x26, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, + 0x69, 0x6f, 0x75, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, + 0x65, 0x12, 0x40, 0x0a, 0x0d, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, + 0x6e, 0x67, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, + 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x70, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, + 0x69, 0x6e, 0x67, 0x12, 0x47, 0x0a, 0x13, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, + 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, + 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x11, 0x62, 0x6f, 0x74, 0x44, 0x69, + 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x44, 0x69, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x62, 0x6f, 0x74, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0a, 0x62, 0x6f, 0x74, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x19, 0x0a, + 0x08, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x72, 0x65, 0x12, 0x5a, 0x0a, 0x18, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x72, + 0x75, 0x6c, 0x65, 0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, + 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x16, 0x73, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, + 0x75, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x18, 0x2f, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x50, + 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x61, 0x6e, 0x5f, + 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x30, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x48, 0x6f, 0x73, + 0x74, 0x50, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, + 0x0e, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, + 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, + 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x32, 0x20, 0x03, 0x28, 0x0d, 0x52, + 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, + 0x73, 0x12, 0x40, 0x0a, 0x0d, 0x73, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x5f, 0x73, 0x61, + 0x76, 0x65, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, + 0x6f, 0x53, 0x61, 0x76, 0x65, 0x52, 0x0c, 0x73, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x53, + 0x61, 0x76, 0x65, 0x12, 0x82, 0x01, 0x0a, 0x1e, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x64, 0x72, 0x61, 0x66, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x5f, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, + 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x70, 0x65, 0x63, + 0x69, 0x66, 0x69, 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x1b, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, + 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x6f, 0x5f, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x64, 0x72, 0x61, 0x66, 0x74, 0x18, 0x35, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0d, 0x64, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, + 0x1a, 0x4d, 0x0a, 0x1b, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, + 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, + 0x2e, 0x0a, 0x13, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x5f, 0x64, 0x72, 0x61, 0x66, 0x74, + 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x73, 0x68, + 0x75, 0x66, 0x66, 0x6c, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x22, + 0xfa, 0x02, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, + 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, + 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x0d, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, + 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, 0x74, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0c, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x6d, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, + 0x08, 0x73, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x1a, 0x71, 0x0a, 0x08, 0x53, 0x61, 0x76, + 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1c, + 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x06, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x9a, 0x01, 0x0a, + 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x53, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x26, 0x0a, + 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, + 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x3e, 0x0a, 0x0e, 0x62, 0x6f, 0x74, + 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, + 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x0d, 0x62, 0x6f, 0x74, 0x44, + 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x22, 0x43, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, - 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0c, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, - 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, - 0x65, 0x52, 0x08, 0x73, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x1a, 0x71, 0x0a, 0x08, 0x53, - 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, - 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x9a, - 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x12, - 0x26, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, - 0x4d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x3e, 0x0a, 0x0e, 0x62, - 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, - 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x0d, 0x62, 0x6f, - 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x22, 0x43, 0x0a, 0x19, 0x43, + 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x22, 0xe4, + 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, + 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x12, 0x33, 0x0a, 0x15, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x14, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x72, 0x65, 0x66, 0x65, + 0x72, 0x72, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, + 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x36, 0x0a, + 0x17, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, + 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x42, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, + 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x42, + 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0x38, 0x0a, 0x36, 0x43, 0x4d, 0x73, + 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x6f, + 0x67, 0x67, 0x6c, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x22, 0x36, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, + 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4b, 0x69, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x53, 0x65, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, - 0x22, 0xe4, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, - 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x33, 0x0a, 0x15, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, - 0x64, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x14, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x44, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x72, 0x65, - 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, - 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x70, 0x72, 0x65, 0x66, 0x65, - 0x72, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, - 0x36, 0x0a, 0x17, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x6e, - 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x15, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x4c, 0x61, 0x6e, 0x67, 0x75, - 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x42, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x50, - 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6c, 0x6f, 0x73, - 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0x38, 0x0a, 0x36, 0x43, + 0x4b, 0x69, 0x63, 0x6b, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x18, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x36, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4b, 0x69, 0x63, 0x6b, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x3e, 0x0a, - 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x4b, 0x69, 0x63, 0x6b, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x18, 0x0a, - 0x16, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x22, 0x40, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x50, - 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x61, 0x75, 0x6e, - 0x63, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x37, 0x0a, 0x1c, 0x43, 0x4d, 0x73, - 0x67, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x6f, 0x50, 0x72, 0x61, 0x63, - 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, - 0x49, 0x64, 0x22, 0x7c, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, - 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, - 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, - 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x30, - 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, - 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, - 0x22, 0xfe, 0x05, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, - 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x4f, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x71, 0x75, - 0x69, 0x72, 0x65, 0x73, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x50, 0x61, 0x73, - 0x73, 0x4b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, - 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x30, - 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, - 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, - 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x65, - 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x70, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x4d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, - 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x61, 0x6e, 0x5f, 0x68, 0x6f, 0x73, - 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x48, 0x6f, 0x73, 0x74, 0x50, 0x69, - 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x69, - 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x15, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, - 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x10, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x1a, 0x4e, 0x0a, 0x0c, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, - 0x65, 0x22, 0x63, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, - 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x42, 0x0a, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, - 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6c, - 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x22, 0x66, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x09, - 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x4c, 0x65, 0x61, 0x76, 0x65, 0x22, 0x40, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, + 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, + 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x37, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x41, + 0x70, 0x70, 0x6c, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x6f, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, + 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, + 0x22, 0x7c, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, + 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, + 0x73, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x09, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, + 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0xfe, + 0x05, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x4f, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x73, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x50, 0x61, 0x73, 0x73, 0x4b, + 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, + 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x30, 0x0a, 0x09, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, - 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x5b, - 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x25, + 0x0a, 0x0e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, + 0x65, 0x73, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, + 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x4d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, + 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x61, 0x6e, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, + 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x48, 0x6f, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, + 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x5f, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x15, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x5f, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x70, + 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, + 0x4e, 0x0a, 0x0c, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, + 0x63, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x42, 0x0a, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, + 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6c, 0x6f, 0x62, + 0x62, 0x69, 0x65, 0x73, 0x22, 0x66, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, + 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x09, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, + 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x5b, 0x0a, 0x15, + 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x22, 0xd0, 0x01, 0x0a, 0x15, 0x43, 0x4d, + 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4a, + 0x6f, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x25, + 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, + 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, + 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, + 0x63, 0x72, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, + 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x52, 0x0a, 0x1d, + 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, 0x6e, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x22, 0x3e, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, + 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, + 0x22, 0x69, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, + 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x22, 0xd0, 0x01, 0x0a, 0x15, - 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, - 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x5f, - 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x4b, - 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x63, 0x72, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x52, - 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x31, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, 0x6e, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x22, 0x3e, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x73, 0x22, 0x69, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x07, 0x6c, 0x6f, 0x62, - 0x62, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x22, 0x49, 0x0a, - 0x22, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, - 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, - 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, - 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, - 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, - 0x74, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, - 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, - 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, - 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x24, - 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x49, 0x64, 0x22, 0xa9, 0x05, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, - 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, - 0x65, 0x61, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, + 0x72, 0x79, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x22, 0x49, 0x0a, 0x22, 0x43, + 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, - 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x68, 0x61, 0x73, 0x5f, 0x70, 0x61, - 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, - 0x73, 0x50, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x61, 0x6e, 0x5f, - 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x48, 0x6f, 0x73, - 0x74, 0x50, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, - 0x13, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x6f, 0x62, 0x62, - 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, - 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, - 0x5f, 0x63, 0x72, 0x63, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x69, 0x6e, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, - 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, - 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x22, 0x6b, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x22, 0x98, 0x04, - 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x4a, 0x6f, 0x69, 0x6e, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, - 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, + 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x4a, + 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, + 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x74, 0x0a, + 0x23, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, + 0x64, 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, - 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x14, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x53, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x12, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x22, - 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x61, 0x6e, 0x79, 0x5f, 0x6d, 0x61, 0x70, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x6e, 0x79, 0x4d, - 0x61, 0x70, 0x12, 0x5f, 0x0a, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x72, 0x65, 0x67, - 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x75, 0x69, 0x63, 0x6b, - 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, - 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, - 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x50, 0x69, - 0x6e, 0x67, 0x73, 0x12, 0x35, 0x0a, 0x09, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x08, 0x70, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x6c, 0x0a, 0x10, 0x4c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x23, - 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, - 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, - 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x72, 0x65, - 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x55, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, - 0x51, 0x75, 0x69, 0x63, 0x6b, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, 0x6e, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0xa8, 0x02, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x4b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x12, 0x64, - 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, - 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, - 0x52, 0x11, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, - 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x67, - 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x40, 0x0a, 0x0f, 0x64, 0x69, 0x66, 0x66, - 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, - 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x0e, 0x64, 0x69, 0x66, 0x66, - 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x44, 0x69, 0x72, 0x65, 0x22, 0x3e, 0x0a, 0x1b, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x61, 0x6e, - 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, - 0x77, 0x61, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x22, 0x46, 0x0a, 0x16, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x5f, 0x6c, 0x65, 0x61, 0x64, - 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, - 0x52, 0x10, 0x6e, 0x65, 0x77, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x69, 0x64, 0x22, 0x72, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x61, - 0x6e, 0x63, 0x65, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, - 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x64, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x69, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x69, 0x64, 0x73, 0x22, 0x30, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x6e, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x22, 0x40, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x49, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, 0x6f, 0x74, - 0x68, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x62, 0x0a, 0x1a, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x72, 0x67, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, - 0x69, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x06, 0x52, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x22, 0x4e, - 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, - 0x65, 0x72, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x33, 0x0a, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x72, 0x67, 0x65, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8c, - 0x04, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, - 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, - 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x72, 0x6c, 0x12, 0x1f, - 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, - 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x4b, - 0x0a, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, - 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x0b, - 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x45, 0x0a, 0x09, 0x64, - 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, - 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x08, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, - 0x61, 0x6d, 0x1a, 0x59, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, - 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x22, 0xbb, 0x01, - 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, - 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x19, - 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, - 0x62, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, - 0x6f, 0x62, 0x62, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, - 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, - 0x4b, 0x65, 0x79, 0x12, 0x46, 0x0a, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, - 0x67, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x7f, 0x0a, 0x18, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, - 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3c, - 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x53, 0x70, - 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x18, 0x0a, 0x16, + 0x49, 0x64, 0x22, 0xa9, 0x05, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x19, 0x0a, + 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, + 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1d, + 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, + 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, + 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x61, + 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x6d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x68, 0x61, 0x73, 0x5f, 0x70, 0x61, 0x73, 0x73, + 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x50, + 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x61, 0x6e, 0x5f, 0x68, 0x6f, + 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x48, 0x6f, 0x73, 0x74, 0x50, + 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x6c, + 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, + 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, + 0x72, 0x63, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x5f, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x5f, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x70, 0x65, + 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x6b, + 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, + 0x62, 0x62, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x22, 0x98, 0x04, 0x0a, 0x18, + 0x43, 0x4d, 0x73, 0x67, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x65, 0x67, 0x61, + 0x63, 0x79, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, + 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x5f, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, + 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x12, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0d, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x61, 0x6e, 0x79, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x6e, 0x79, 0x4d, 0x61, 0x70, + 0x12, 0x5f, 0x0a, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, + 0x6e, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x4a, 0x6f, + 0x69, 0x6e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x4c, 0x65, + 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x11, + 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, + 0x73, 0x12, 0x35, 0x0a, 0x09, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, + 0x70, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x6c, 0x0a, 0x10, 0x4c, 0x65, 0x67, 0x61, + 0x63, 0x79, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, + 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x04, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, + 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x69, + 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x55, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x75, + 0x69, 0x63, 0x6b, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xa8, 0x02, + 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, + 0x65, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x12, 0x64, 0x69, 0x66, + 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, + 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x11, + 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, + 0x74, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, + 0x45, 0x41, 0x4d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, + 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, + 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x40, 0x0a, 0x0f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, + 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, + 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x0e, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, + 0x75, 0x6c, 0x74, 0x79, 0x44, 0x69, 0x72, 0x65, 0x22, 0x3e, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x53, + 0x65, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x61, 0x6e, 0x74, 0x73, + 0x5f, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x77, 0x61, + 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x22, 0x46, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x5f, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x10, + 0x6e, 0x65, 0x77, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, + 0x22, 0x72, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x61, 0x6e, 0x63, + 0x65, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x29, + 0x0a, 0x10, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, + 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, + 0x64, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x64, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x06, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x69, 0x64, 0x73, 0x22, 0x30, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x22, 0x40, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x49, 0x6e, 0x76, 0x69, + 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, 0x6f, 0x74, 0x68, 0x65, + 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x62, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x74, 0x6f, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x22, 0x4e, 0x0a, 0x17, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x72, + 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x33, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, + 0x44, 0x4f, 0x54, 0x41, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8c, 0x04, 0x0a, + 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1a, + 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a, + 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x72, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, + 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x0c, + 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, + 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x0b, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x45, 0x0a, 0x09, 0x64, 0x69, 0x72, + 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, + 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x08, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x1a, 0x59, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, + 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, + 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x06, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x22, 0xbb, 0x01, 0x0a, 0x1c, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x19, 0x0a, 0x08, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, + 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x4b, 0x65, + 0x79, 0x12, 0x46, 0x0a, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x67, 0x61, + 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x7f, 0x0a, 0x18, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x07, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x53, 0x70, 0x65, 0x63, + 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x18, 0x0a, 0x16, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x4c, 0x69, 0x73, 0x74, 0x22, 0xfd, 0x02, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, + 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x22, 0xfd, 0x02, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x07, 0x6c, 0x6f, 0x62, - 0x62, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, - 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x1a, 0x8b, 0x02, 0x0a, 0x0e, 0x53, 0x70, 0x65, - 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6c, - 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, - 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, - 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, - 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x50, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, - 0x2a, 0x0a, 0x11, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x65, 0x61, 0x64, - 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x46, - 0x0a, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, - 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x52, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x54, 0x69, 0x63, 0x6b, - 0x65, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x79, 0x0a, 0x30, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, - 0x0a, 0x11, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x10, 0x73, 0x65, 0x72, 0x69, 0x61, - 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xef, 0x03, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x6c, - 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x54, - 0x69, 0x6d, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x3b, 0x0a, 0x1a, 0x6c, 0x65, 0x67, - 0x61, 0x63, 0x79, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x17, 0x6c, - 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x1b, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, - 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x70, 0x75, 0x62, 0x6c, - 0x69, 0x63, 0x5f, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x18, 0x6c, 0x65, 0x67, - 0x61, 0x63, 0x79, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x63, 0x49, 0x70, 0x12, 0x3b, 0x0a, 0x1a, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, - 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x17, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x49, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x06, 0x52, 0x15, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x6c, - 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x53, 0x69, 0x67, - 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, - 0x5f, 0x61, 0x70, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, - 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, 0x70, 0x70, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x6c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, - 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x45, - 0x78, 0x74, 0x72, 0x61, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, - 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, - 0x10, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x10, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, - 0x64, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x24, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x94, 0x01, - 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x14, - 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, - 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x34, - 0x0a, 0x16, 0x68, 0x69, 0x67, 0x68, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, - 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, - 0x68, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x44, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x22, 0x1d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x4d, 0x49, - 0x6e, 0x66, 0x6f, 0x22, 0x7e, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x4d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x14, 0x6c, - 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, - 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x34, 0x0a, - 0x16, 0x68, 0x69, 0x67, 0x68, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x68, - 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x2a, 0xbc, 0x10, 0x0a, 0x18, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, - 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, - 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, - 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x2a, 0x0a, 0x26, - 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x10, 0x64, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x49, 0x67, 0x6e, - 0x6f, 0x72, 0x65, 0x10, 0x65, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x44, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x66, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, + 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, + 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x07, 0x6c, + 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x1a, 0x8b, 0x02, 0x0a, 0x0e, 0x53, 0x70, 0x65, 0x63, 0x74, + 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x70, 0x61, + 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x50, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x2a, 0x0a, + 0x11, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x46, 0x0a, 0x0c, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, + 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x22, 0x52, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, + 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x79, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x54, 0x69, + 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x11, + 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x10, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, + 0x7a, 0x65, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x22, 0xef, 0x03, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, + 0x72, 0x61, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x6c, 0x65, 0x67, + 0x61, 0x63, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x54, 0x69, 0x6d, + 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x3b, 0x0a, 0x1a, 0x6c, 0x65, 0x67, 0x61, 0x63, + 0x79, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x17, 0x6c, 0x65, 0x67, + 0x61, 0x63, 0x79, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x1b, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, + 0x5f, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x18, 0x6c, 0x65, 0x67, 0x61, 0x63, + 0x79, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x63, 0x49, 0x70, 0x12, 0x3b, 0x0a, 0x1a, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x17, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, + 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, + 0x12, 0x37, 0x0a, 0x18, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x15, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x6c, 0x65, 0x67, + 0x61, 0x63, 0x79, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, + 0x70, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x65, 0x67, + 0x61, 0x63, 0x79, 0x41, 0x70, 0x70, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x6c, 0x65, 0x67, 0x61, + 0x63, 0x79, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, + 0x08, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x45, 0x78, 0x74, + 0x72, 0x61, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x72, 0x69, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x10, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x54, + 0x69, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x24, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, + 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x2a, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, + 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, + 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x34, 0x0a, 0x16, + 0x68, 0x69, 0x67, 0x68, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x68, 0x69, + 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x22, 0x1d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x4d, 0x49, 0x6e, 0x66, + 0x6f, 0x22, 0x7e, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x4d, 0x4d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x6e, + 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x68, + 0x69, 0x67, 0x68, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x68, 0x69, 0x67, + 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x2a, 0xf2, 0x10, 0x0a, 0x18, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x26, + 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, + 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x6e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4f, 0x66, - 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x10, 0x67, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, - 0x67, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x10, 0x68, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, - 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x61, 0x74, 0x65, 0x10, 0x69, 0x12, 0x37, 0x0a, 0x33, 0x6b, - 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x74, - 0x69, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, 0x4c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, - 0x74, 0x79, 0x10, 0x6a, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x74, 0x69, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, - 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x6b, 0x12, 0x32, 0x0a, 0x2e, 0x6b, - 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, - 0x64, 0x65, 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x6c, 0x12, - 0x3b, 0x0a, 0x37, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, - 0x6d, 0x70, 0x65, 0x74, 0x69, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, - 0x67, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x10, 0x6d, 0x12, 0x32, 0x0a, 0x2e, - 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x10, 0x6e, - 0x12, 0x3c, 0x0a, 0x38, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, - 0x6f, 0x6d, 0x70, 0x65, 0x74, 0x69, 0x74, 0x69, 0x76, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x70, - 0x72, 0x65, 0x61, 0x64, 0x54, 0x6f, 0x6f, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x10, 0x6f, 0x12, 0x33, - 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x49, 0x6e, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x10, 0x70, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, + 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x53, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, + 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x69, 0x63, 0x10, 0x64, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x49, 0x67, 0x6e, 0x6f, 0x72, + 0x65, 0x10, 0x65, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x56, 0x41, 0x43, 0x56, 0x65, - 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x71, 0x12, 0x39, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, - 0x75, 0x72, 0x6e, 0x65, 0x79, 0x42, 0x61, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x69, 0x7a, - 0x65, 0x10, 0x72, 0x12, 0x3e, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, - 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, - 0x54, 0x65, 0x61, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x6e, 0x54, 0x6f, 0x6f, 0x53, 0x6d, 0x61, 0x6c, - 0x6c, 0x10, 0x73, 0x12, 0x44, 0x0a, 0x40, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, - 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, - 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x42, 0x75, 0x79, 0x49, 0x6e, 0x54, - 0x6f, 0x6f, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x10, 0x74, 0x12, 0x3e, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, + 0x74, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x66, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4f, 0x66, 0x66, 0x6c, + 0x69, 0x6e, 0x65, 0x10, 0x67, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x43, + 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x10, 0x68, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, - 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x6e, 0x54, - 0x6f, 0x6f, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x10, 0x75, 0x12, 0x3a, 0x0a, 0x36, 0x6b, 0x5f, 0x45, + 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x75, + 0x74, 0x4f, 0x66, 0x44, 0x61, 0x74, 0x65, 0x10, 0x69, 0x12, 0x37, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x69, - 0x73, 0x73, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, - 0x68, 0x69, 0x70, 0x10, 0x76, 0x12, 0x38, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, - 0x65, 0x79, 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x77, 0x12, - 0x40, 0x0a, 0x3c, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x57, 0x65, - 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x65, 0x63, 0x65, - 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, - 0x78, 0x12, 0x3f, 0x0a, 0x3b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, - 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x63, - 0x68, 0x6f, 0x72, 0x65, 0x64, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x10, 0x79, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, + 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x74, 0x69, 0x74, + 0x69, 0x76, 0x65, 0x4e, 0x6f, 0x4c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, + 0x10, 0x6a, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x5f, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x43, 0x6c, 0x61, 0x6e, - 0x10, 0x7a, 0x12, 0x3b, 0x0a, 0x37, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x5f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x42, 0x61, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x10, 0x7b, 0x12, - 0x41, 0x0a, 0x3d, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, - 0x61, 0x63, 0x68, 0x65, 0x73, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x74, - 0x10, 0x7c, 0x12, 0x34, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x7d, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x72, 0x65, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x10, 0x7e, 0x12, - 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, - 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x7f, 0x12, 0x39, 0x0a, - 0x34, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x47, 0x61, 0x75, 0x6e, 0x74, 0x6c, 0x65, - 0x74, 0x46, 0x6c, 0x61, 0x67, 0x10, 0x80, 0x01, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x47, 0x61, 0x75, - 0x6e, 0x74, 0x6c, 0x65, 0x74, 0x54, 0x6f, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x10, 0x81, - 0x01, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, + 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x74, 0x69, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, 0x74, 0x55, + 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x6b, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, + 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x6c, 0x12, 0x3b, 0x0a, + 0x37, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x70, + 0x65, 0x74, 0x69, 0x74, 0x69, 0x76, 0x65, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, + 0x50, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x10, 0x6d, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, + 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, + 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x10, 0x6e, 0x12, 0x3c, + 0x0a, 0x38, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, + 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, 0x6d, + 0x70, 0x65, 0x74, 0x69, 0x74, 0x69, 0x76, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x70, 0x72, 0x65, + 0x61, 0x64, 0x54, 0x6f, 0x6f, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x10, 0x6f, 0x12, 0x33, 0x0a, 0x2f, + 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x49, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, + 0x70, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, - 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, - 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x82, 0x01, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, 0x4e, 0x6f, - 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x49, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, - 0x83, 0x01, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x73, 0x79, - 0x10, 0x84, 0x01, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x56, 0x41, 0x43, 0x56, 0x65, 0x72, 0x69, + 0x66, 0x69, 0x65, 0x64, 0x10, 0x71, 0x12, 0x39, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, + 0x6e, 0x65, 0x79, 0x42, 0x61, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x10, + 0x72, 0x12, 0x3e, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, + 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x54, 0x65, + 0x61, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x6e, 0x54, 0x6f, 0x6f, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x10, + 0x73, 0x12, 0x44, 0x0a, 0x40, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, + 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x49, 0x6e, + 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x42, 0x75, 0x79, 0x49, 0x6e, 0x54, 0x6f, 0x6f, + 0x4c, 0x61, 0x72, 0x67, 0x65, 0x10, 0x74, 0x12, 0x3e, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, + 0x72, 0x6e, 0x65, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x6e, 0x54, 0x6f, 0x6f, + 0x4c, 0x61, 0x72, 0x67, 0x65, 0x10, 0x75, 0x12, 0x3a, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, + 0x70, 0x10, 0x76, 0x12, 0x38, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x42, 0x61, 0x6e, 0x6e, - 0x65, 0x64, 0x10, 0x85, 0x01, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x49, 0x6e, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, - 0x86, 0x01, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, - 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, + 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x77, 0x12, 0x40, 0x0a, + 0x3c, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x57, 0x65, 0x65, 0x6b, + 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x78, 0x12, + 0x3f, 0x0a, 0x3b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x63, 0x68, 0x6f, + 0x72, 0x65, 0x64, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x79, + 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, + 0x6f, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0x7a, + 0x12, 0x3b, 0x0a, 0x37, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, + 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x42, + 0x61, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x10, 0x7b, 0x12, 0x41, 0x0a, + 0x3d, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, 0x61, 0x63, + 0x68, 0x65, 0x73, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4e, 0x6f, 0x74, 0x4d, 0x65, 0x74, 0x10, 0x7c, + 0x12, 0x34, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x7d, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x44, 0x69, 0x73, 0x63, 0x72, 0x65, 0x70, 0x61, 0x6e, 0x63, 0x79, 0x10, 0x7e, 0x12, 0x2c, 0x0a, + 0x28, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, 0x51, 0x75, + 0x65, 0x75, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x7f, 0x12, 0x39, 0x0a, 0x34, 0x6b, + 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x47, 0x61, 0x75, 0x6e, 0x74, 0x6c, 0x65, 0x74, 0x46, + 0x6c, 0x61, 0x67, 0x10, 0x80, 0x01, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x47, 0x61, 0x75, 0x6e, 0x74, + 0x6c, 0x65, 0x74, 0x54, 0x6f, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x10, 0x81, 0x01, 0x12, + 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x44, 0x69, + 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, + 0x6b, 0x65, 0x64, 0x10, 0x82, 0x01, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, 0x4e, 0x6f, 0x74, 0x41, + 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x49, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0x83, 0x01, + 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x73, 0x79, 0x10, 0x84, + 0x01, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, + 0x10, 0x85, 0x01, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, + 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x5f, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0x86, 0x01, + 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x52, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x61, 0x6e, + 0x6b, 0x65, 0x64, 0x10, 0x87, 0x01, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, + 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -5499,50 +5539,51 @@ var file_dota_gcmessages_client_match_management_proto_depIdxs = []int32{ 65, // 5: dota.CMsgPartyBuilderOptions.language:type_name -> dota.MatchLanguages 67, // 6: dota.CMsgReadyUp.state:type_name -> dota.DOTALobbyReadyState 68, // 7: dota.CMsgReadyUp.hardware_specs:type_name -> dota.CDOTAClientHardwareSpecs - 69, // 8: dota.CMsgPracticeLobbySetDetails.team_details:type_name -> dota.CLobbyTeamDetails - 70, // 9: dota.CMsgPracticeLobbySetDetails.cm_pick:type_name -> dota.DOTA_CM_PICK - 71, // 10: dota.CMsgPracticeLobbySetDetails.bot_difficulty_radiant:type_name -> dota.DOTABotDifficulty - 72, // 11: dota.CMsgPracticeLobbySetDetails.dota_tv_delay:type_name -> dota.LobbyDotaTVDelay - 73, // 12: dota.CMsgPracticeLobbySetDetails.visibility:type_name -> dota.DOTALobbyVisibility - 74, // 13: dota.CMsgPracticeLobbySetDetails.pause_setting:type_name -> dota.LobbyDotaPauseSetting - 71, // 14: dota.CMsgPracticeLobbySetDetails.bot_difficulty_dire:type_name -> dota.DOTABotDifficulty - 75, // 15: dota.CMsgPracticeLobbySetDetails.selection_priority_rules:type_name -> dota.DOTASelectionPriorityRules - 8, // 16: dota.CMsgPracticeLobbySetDetails.scenario_save:type_name -> dota.CMsgLobbyScenarioSave - 58, // 17: dota.CMsgPracticeLobbySetDetails.ability_draft_specific_details:type_name -> dota.CMsgPracticeLobbySetDetails.AbilityDraftSpecificDetails - 9, // 18: dota.CMsgPracticeLobbyCreate.lobby_details:type_name -> dota.CMsgPracticeLobbySetDetails - 59, // 19: dota.CMsgPracticeLobbyCreate.save_game:type_name -> dota.CMsgPracticeLobbyCreate.SaveGame - 76, // 20: dota.CMsgPracticeLobbySetTeamSlot.team:type_name -> dota.DOTA_GC_TEAM - 71, // 21: dota.CMsgPracticeLobbySetTeamSlot.bot_difficulty:type_name -> dota.DOTABotDifficulty - 76, // 22: dota.CMsgPracticeLobbySetCoach.team:type_name -> dota.DOTA_GC_TEAM - 77, // 23: dota.CMsgPracticeLobbyList.game_mode:type_name -> dota.DOTA_GameMode - 60, // 24: dota.CMsgPracticeLobbyListResponseEntry.members:type_name -> dota.CMsgPracticeLobbyListResponseEntry.CLobbyMember - 77, // 25: dota.CMsgPracticeLobbyListResponseEntry.game_mode:type_name -> dota.DOTA_GameMode - 22, // 26: dota.CMsgPracticeLobbyListResponse.lobbies:type_name -> dota.CMsgPracticeLobbyListResponseEntry - 77, // 27: dota.CMsgLobbyList.game_mode:type_name -> dota.DOTA_GameMode - 22, // 28: dota.CMsgLobbyListResponse.lobbies:type_name -> dota.CMsgPracticeLobbyListResponseEntry - 78, // 29: dota.CMsgPracticeLobbyJoinResponse.result:type_name -> dota.DOTAJoinLobbyResult - 22, // 30: dota.CMsgFriendPracticeLobbyListResponse.lobbies:type_name -> dota.CMsgPracticeLobbyListResponseEntry - 31, // 31: dota.CMsgJoinableCustomGameModesResponse.game_modes:type_name -> dota.CMsgJoinableCustomGameModesResponseEntry - 34, // 32: dota.CMsgJoinableCustomLobbiesResponse.lobbies:type_name -> dota.CMsgJoinableCustomLobbiesResponseEntry - 9, // 33: dota.CMsgQuickJoinCustomLobby.create_lobby_details:type_name -> dota.CMsgPracticeLobbySetDetails - 61, // 34: dota.CMsgQuickJoinCustomLobby.legacy_region_pings:type_name -> dota.CMsgQuickJoinCustomLobby.LegacyRegionPing - 66, // 35: dota.CMsgQuickJoinCustomLobby.ping_data:type_name -> dota.CMsgClientPingData - 78, // 36: dota.CMsgQuickJoinCustomLobbyResponse.result:type_name -> dota.DOTAJoinLobbyResult - 71, // 37: dota.CMsgBotGameCreate.difficulty_radiant:type_name -> dota.DOTABotDifficulty - 76, // 38: dota.CMsgBotGameCreate.team:type_name -> dota.DOTA_GC_TEAM - 71, // 39: dota.CMsgBotGameCreate.difficulty_dire:type_name -> dota.DOTABotDifficulty - 79, // 40: dota.CMsgDOTAGroupMergeReply.result:type_name -> dota.EDOTAGroupMergeResult - 62, // 41: dota.CMsgSpectatorLobbyGameDetails.radiant_team:type_name -> dota.CMsgSpectatorLobbyGameDetails.Team - 62, // 42: dota.CMsgSpectatorLobbyGameDetails.dire_team:type_name -> dota.CMsgSpectatorLobbyGameDetails.Team - 46, // 43: dota.CMsgSetSpectatorLobbyDetails.game_details:type_name -> dota.CMsgSpectatorLobbyGameDetails - 47, // 44: dota.CMsgCreateSpectatorLobby.details:type_name -> dota.CMsgSetSpectatorLobbyDetails - 63, // 45: dota.CMsgSpectatorLobbyListResponse.lobbies:type_name -> dota.CMsgSpectatorLobbyListResponse.SpectatorLobby - 46, // 46: dota.CMsgSpectatorLobbyListResponse.SpectatorLobby.game_details:type_name -> dota.CMsgSpectatorLobbyGameDetails - 47, // [47:47] is the sub-list for method output_type - 47, // [47:47] is the sub-list for method input_type - 47, // [47:47] is the sub-list for extension type_name - 47, // [47:47] is the sub-list for extension extendee - 0, // [0:47] is the sub-list for field type_name + 67, // 8: dota.CMsgReadyUpStatus.local_ready_state:type_name -> dota.DOTALobbyReadyState + 69, // 9: dota.CMsgPracticeLobbySetDetails.team_details:type_name -> dota.CLobbyTeamDetails + 70, // 10: dota.CMsgPracticeLobbySetDetails.cm_pick:type_name -> dota.DOTA_CM_PICK + 71, // 11: dota.CMsgPracticeLobbySetDetails.bot_difficulty_radiant:type_name -> dota.DOTABotDifficulty + 72, // 12: dota.CMsgPracticeLobbySetDetails.dota_tv_delay:type_name -> dota.LobbyDotaTVDelay + 73, // 13: dota.CMsgPracticeLobbySetDetails.visibility:type_name -> dota.DOTALobbyVisibility + 74, // 14: dota.CMsgPracticeLobbySetDetails.pause_setting:type_name -> dota.LobbyDotaPauseSetting + 71, // 15: dota.CMsgPracticeLobbySetDetails.bot_difficulty_dire:type_name -> dota.DOTABotDifficulty + 75, // 16: dota.CMsgPracticeLobbySetDetails.selection_priority_rules:type_name -> dota.DOTASelectionPriorityRules + 8, // 17: dota.CMsgPracticeLobbySetDetails.scenario_save:type_name -> dota.CMsgLobbyScenarioSave + 58, // 18: dota.CMsgPracticeLobbySetDetails.ability_draft_specific_details:type_name -> dota.CMsgPracticeLobbySetDetails.AbilityDraftSpecificDetails + 9, // 19: dota.CMsgPracticeLobbyCreate.lobby_details:type_name -> dota.CMsgPracticeLobbySetDetails + 59, // 20: dota.CMsgPracticeLobbyCreate.save_game:type_name -> dota.CMsgPracticeLobbyCreate.SaveGame + 76, // 21: dota.CMsgPracticeLobbySetTeamSlot.team:type_name -> dota.DOTA_GC_TEAM + 71, // 22: dota.CMsgPracticeLobbySetTeamSlot.bot_difficulty:type_name -> dota.DOTABotDifficulty + 76, // 23: dota.CMsgPracticeLobbySetCoach.team:type_name -> dota.DOTA_GC_TEAM + 77, // 24: dota.CMsgPracticeLobbyList.game_mode:type_name -> dota.DOTA_GameMode + 60, // 25: dota.CMsgPracticeLobbyListResponseEntry.members:type_name -> dota.CMsgPracticeLobbyListResponseEntry.CLobbyMember + 77, // 26: dota.CMsgPracticeLobbyListResponseEntry.game_mode:type_name -> dota.DOTA_GameMode + 22, // 27: dota.CMsgPracticeLobbyListResponse.lobbies:type_name -> dota.CMsgPracticeLobbyListResponseEntry + 77, // 28: dota.CMsgLobbyList.game_mode:type_name -> dota.DOTA_GameMode + 22, // 29: dota.CMsgLobbyListResponse.lobbies:type_name -> dota.CMsgPracticeLobbyListResponseEntry + 78, // 30: dota.CMsgPracticeLobbyJoinResponse.result:type_name -> dota.DOTAJoinLobbyResult + 22, // 31: dota.CMsgFriendPracticeLobbyListResponse.lobbies:type_name -> dota.CMsgPracticeLobbyListResponseEntry + 31, // 32: dota.CMsgJoinableCustomGameModesResponse.game_modes:type_name -> dota.CMsgJoinableCustomGameModesResponseEntry + 34, // 33: dota.CMsgJoinableCustomLobbiesResponse.lobbies:type_name -> dota.CMsgJoinableCustomLobbiesResponseEntry + 9, // 34: dota.CMsgQuickJoinCustomLobby.create_lobby_details:type_name -> dota.CMsgPracticeLobbySetDetails + 61, // 35: dota.CMsgQuickJoinCustomLobby.legacy_region_pings:type_name -> dota.CMsgQuickJoinCustomLobby.LegacyRegionPing + 66, // 36: dota.CMsgQuickJoinCustomLobby.ping_data:type_name -> dota.CMsgClientPingData + 78, // 37: dota.CMsgQuickJoinCustomLobbyResponse.result:type_name -> dota.DOTAJoinLobbyResult + 71, // 38: dota.CMsgBotGameCreate.difficulty_radiant:type_name -> dota.DOTABotDifficulty + 76, // 39: dota.CMsgBotGameCreate.team:type_name -> dota.DOTA_GC_TEAM + 71, // 40: dota.CMsgBotGameCreate.difficulty_dire:type_name -> dota.DOTABotDifficulty + 79, // 41: dota.CMsgDOTAGroupMergeReply.result:type_name -> dota.EDOTAGroupMergeResult + 62, // 42: dota.CMsgSpectatorLobbyGameDetails.radiant_team:type_name -> dota.CMsgSpectatorLobbyGameDetails.Team + 62, // 43: dota.CMsgSpectatorLobbyGameDetails.dire_team:type_name -> dota.CMsgSpectatorLobbyGameDetails.Team + 46, // 44: dota.CMsgSetSpectatorLobbyDetails.game_details:type_name -> dota.CMsgSpectatorLobbyGameDetails + 47, // 45: dota.CMsgCreateSpectatorLobby.details:type_name -> dota.CMsgSetSpectatorLobbyDetails + 63, // 46: dota.CMsgSpectatorLobbyListResponse.lobbies:type_name -> dota.CMsgSpectatorLobbyListResponse.SpectatorLobby + 46, // 47: dota.CMsgSpectatorLobbyListResponse.SpectatorLobby.game_details:type_name -> dota.CMsgSpectatorLobbyGameDetails + 48, // [48:48] is the sub-list for method output_type + 48, // [48:48] is the sub-list for method input_type + 48, // [48:48] is the sub-list for extension type_name + 48, // [48:48] is the sub-list for extension extendee + 0, // [0:48] is the sub-list for field type_name } func init() { file_dota_gcmessages_client_match_management_proto_init() } diff --git a/dota/dota_gcmessages_client_match_management.proto b/dota/dota_gcmessages_client_match_management.proto index e6fb68a6..e9f7407e 100644 --- a/dota/dota_gcmessages_client_match_management.proto +++ b/dota/dota_gcmessages_client_match_management.proto @@ -48,6 +48,7 @@ enum EStartFindingMatchResult { k_EStartFindingMatchResult_MatchmakingBusy = 132; k_EStartFindingMatchResult_SteamChinaBanned = 133; k_EStartFindingMatchResult_SteamChinaInvalidMixedParty = 134; + k_EStartFindingMatchResult_RestrictedFromRanked = 135; } message CMsgStartFindingMatch { @@ -104,6 +105,9 @@ message CMsgReadyUpStatus { optional fixed64 lobby_id = 1; repeated uint32 accepted_ids = 2; repeated uint32 declined_ids = 3; + repeated uint32 accepted_indices = 4; + repeated uint32 declined_indices = 5; + optional DOTALobbyReadyState local_ready_state = 6; } message CMsgAbandonCurrentGame { diff --git a/dota/dota_gcmessages_client_showcase.pb.go b/dota/dota_gcmessages_client_showcase.pb.go new file mode 100644 index 00000000..27e2d05a --- /dev/null +++ b/dota/dota_gcmessages_client_showcase.pb.go @@ -0,0 +1,6936 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.30.0 +// protoc v3.21.5 +// source: dota_gcmessages_client_showcase.proto + +package dota + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type EShowcaseHeroPlusFlag int32 + +const ( + EShowcaseHeroPlusFlag_k_eShowcaseHeroPlusFlag_None EShowcaseHeroPlusFlag = 0 + EShowcaseHeroPlusFlag_k_eShowcaseHeroPlusFlag_BadgePosTop EShowcaseHeroPlusFlag = 1 + EShowcaseHeroPlusFlag_k_eShowcaseHeroPlusFlag_BadgePosBottom EShowcaseHeroPlusFlag = 2 + EShowcaseHeroPlusFlag_k_eShowcaseHeroPlusFlag_BadgePosLeft EShowcaseHeroPlusFlag = 4 + EShowcaseHeroPlusFlag_k_eShowcaseHeroPlusFlag_BadgePosRight EShowcaseHeroPlusFlag = 8 + EShowcaseHeroPlusFlag_k_eShowcaseHeroPlusFlag_ShowRelics EShowcaseHeroPlusFlag = 16 +) + +// Enum value maps for EShowcaseHeroPlusFlag. +var ( + EShowcaseHeroPlusFlag_name = map[int32]string{ + 0: "k_eShowcaseHeroPlusFlag_None", + 1: "k_eShowcaseHeroPlusFlag_BadgePosTop", + 2: "k_eShowcaseHeroPlusFlag_BadgePosBottom", + 4: "k_eShowcaseHeroPlusFlag_BadgePosLeft", + 8: "k_eShowcaseHeroPlusFlag_BadgePosRight", + 16: "k_eShowcaseHeroPlusFlag_ShowRelics", + } + EShowcaseHeroPlusFlag_value = map[string]int32{ + "k_eShowcaseHeroPlusFlag_None": 0, + "k_eShowcaseHeroPlusFlag_BadgePosTop": 1, + "k_eShowcaseHeroPlusFlag_BadgePosBottom": 2, + "k_eShowcaseHeroPlusFlag_BadgePosLeft": 4, + "k_eShowcaseHeroPlusFlag_BadgePosRight": 8, + "k_eShowcaseHeroPlusFlag_ShowRelics": 16, + } +) + +func (x EShowcaseHeroPlusFlag) Enum() *EShowcaseHeroPlusFlag { + p := new(EShowcaseHeroPlusFlag) + *p = x + return p +} + +func (x EShowcaseHeroPlusFlag) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EShowcaseHeroPlusFlag) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[0].Descriptor() +} + +func (EShowcaseHeroPlusFlag) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[0] +} + +func (x EShowcaseHeroPlusFlag) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *EShowcaseHeroPlusFlag) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = EShowcaseHeroPlusFlag(num) + return nil +} + +// Deprecated: Use EShowcaseHeroPlusFlag.Descriptor instead. +func (EShowcaseHeroPlusFlag) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{0} +} + +type EShowcaseType int32 + +const ( + EShowcaseType_k_eShowcaseType_Invalid EShowcaseType = 0 + EShowcaseType_k_eShowcaseType_Profile EShowcaseType = 1 + EShowcaseType_k_eShowcaseType_MiniProfile EShowcaseType = 2 + EShowcaseType_k_eShowcaseType_DefaultProfile EShowcaseType = 3 + EShowcaseType_k_eShowcaseType_DefaultMiniProfile EShowcaseType = 4 +) + +// Enum value maps for EShowcaseType. +var ( + EShowcaseType_name = map[int32]string{ + 0: "k_eShowcaseType_Invalid", + 1: "k_eShowcaseType_Profile", + 2: "k_eShowcaseType_MiniProfile", + 3: "k_eShowcaseType_DefaultProfile", + 4: "k_eShowcaseType_DefaultMiniProfile", + } + EShowcaseType_value = map[string]int32{ + "k_eShowcaseType_Invalid": 0, + "k_eShowcaseType_Profile": 1, + "k_eShowcaseType_MiniProfile": 2, + "k_eShowcaseType_DefaultProfile": 3, + "k_eShowcaseType_DefaultMiniProfile": 4, + } +) + +func (x EShowcaseType) Enum() *EShowcaseType { + p := new(EShowcaseType) + *p = x + return p +} + +func (x EShowcaseType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EShowcaseType) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[1].Descriptor() +} + +func (EShowcaseType) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[1] +} + +func (x EShowcaseType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *EShowcaseType) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = EShowcaseType(num) + return nil +} + +// Deprecated: Use EShowcaseType.Descriptor instead. +func (EShowcaseType) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{1} +} + +type EShowcaseItemState int32 + +const ( + EShowcaseItemState_k_eShowcaseItemState_Ok EShowcaseItemState = 0 + EShowcaseItemState_k_eShowcaseItemState_MinorModifications EShowcaseItemState = 1 + EShowcaseItemState_k_eShowcaseItemState_ValidityUnknown EShowcaseItemState = 2 + EShowcaseItemState_k_eShowcaseItemState_PartiallyInvalid EShowcaseItemState = 3 + EShowcaseItemState_k_eShowcaseItemState_Invalid EShowcaseItemState = 4 + EShowcaseItemState_k_eShowcaseItemState_Failure EShowcaseItemState = 5 +) + +// Enum value maps for EShowcaseItemState. +var ( + EShowcaseItemState_name = map[int32]string{ + 0: "k_eShowcaseItemState_Ok", + 1: "k_eShowcaseItemState_MinorModifications", + 2: "k_eShowcaseItemState_ValidityUnknown", + 3: "k_eShowcaseItemState_PartiallyInvalid", + 4: "k_eShowcaseItemState_Invalid", + 5: "k_eShowcaseItemState_Failure", + } + EShowcaseItemState_value = map[string]int32{ + "k_eShowcaseItemState_Ok": 0, + "k_eShowcaseItemState_MinorModifications": 1, + "k_eShowcaseItemState_ValidityUnknown": 2, + "k_eShowcaseItemState_PartiallyInvalid": 3, + "k_eShowcaseItemState_Invalid": 4, + "k_eShowcaseItemState_Failure": 5, + } +) + +func (x EShowcaseItemState) Enum() *EShowcaseItemState { + p := new(EShowcaseItemState) + *p = x + return p +} + +func (x EShowcaseItemState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EShowcaseItemState) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[2].Descriptor() +} + +func (EShowcaseItemState) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[2] +} + +func (x EShowcaseItemState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *EShowcaseItemState) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = EShowcaseItemState(num) + return nil +} + +// Deprecated: Use EShowcaseItemState.Descriptor instead. +func (EShowcaseItemState) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{2} +} + +type EShowcaseAuditAction int32 + +const ( + EShowcaseAuditAction_k_eShowcaseAuditAction_Invalid EShowcaseAuditAction = 0 + EShowcaseAuditAction_k_eShowcaseAuditAction_ShowcaseChanged EShowcaseAuditAction = 1 + EShowcaseAuditAction_k_eShowcaseAuditAction_AdminShowcaseReset EShowcaseAuditAction = 2 + EShowcaseAuditAction_k_eShowcaseAuditAction_AdminShowcaseAccountLocked EShowcaseAuditAction = 3 + EShowcaseAuditAction_k_eShowcaseAuditAction_AdminShowcaseExonerated EShowcaseAuditAction = 4 + EShowcaseAuditAction_k_eShowcaseAuditAction_AdminShowcaseConvicted EShowcaseAuditAction = 5 + EShowcaseAuditAction_k_eShowcaseAuditAction_AdminModerationApproved EShowcaseAuditAction = 6 + EShowcaseAuditAction_k_eShowcaseAuditAction_AdminModerationRejected EShowcaseAuditAction = 7 +) + +// Enum value maps for EShowcaseAuditAction. +var ( + EShowcaseAuditAction_name = map[int32]string{ + 0: "k_eShowcaseAuditAction_Invalid", + 1: "k_eShowcaseAuditAction_ShowcaseChanged", + 2: "k_eShowcaseAuditAction_AdminShowcaseReset", + 3: "k_eShowcaseAuditAction_AdminShowcaseAccountLocked", + 4: "k_eShowcaseAuditAction_AdminShowcaseExonerated", + 5: "k_eShowcaseAuditAction_AdminShowcaseConvicted", + 6: "k_eShowcaseAuditAction_AdminModerationApproved", + 7: "k_eShowcaseAuditAction_AdminModerationRejected", + } + EShowcaseAuditAction_value = map[string]int32{ + "k_eShowcaseAuditAction_Invalid": 0, + "k_eShowcaseAuditAction_ShowcaseChanged": 1, + "k_eShowcaseAuditAction_AdminShowcaseReset": 2, + "k_eShowcaseAuditAction_AdminShowcaseAccountLocked": 3, + "k_eShowcaseAuditAction_AdminShowcaseExonerated": 4, + "k_eShowcaseAuditAction_AdminShowcaseConvicted": 5, + "k_eShowcaseAuditAction_AdminModerationApproved": 6, + "k_eShowcaseAuditAction_AdminModerationRejected": 7, + } +) + +func (x EShowcaseAuditAction) Enum() *EShowcaseAuditAction { + p := new(EShowcaseAuditAction) + *p = x + return p +} + +func (x EShowcaseAuditAction) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EShowcaseAuditAction) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[3].Descriptor() +} + +func (EShowcaseAuditAction) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[3] +} + +func (x EShowcaseAuditAction) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *EShowcaseAuditAction) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = EShowcaseAuditAction(num) + return nil +} + +// Deprecated: Use EShowcaseAuditAction.Descriptor instead. +func (EShowcaseAuditAction) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{3} +} + +type EShowcaseItemFlag int32 + +const ( + EShowcaseItemFlag_k_eShowcaseItemFlag_None EShowcaseItemFlag = 0 + EShowcaseItemFlag_k_eShowcaseItemFlag_FlipHorizontally EShowcaseItemFlag = 1 +) + +// Enum value maps for EShowcaseItemFlag. +var ( + EShowcaseItemFlag_name = map[int32]string{ + 0: "k_eShowcaseItemFlag_None", + 1: "k_eShowcaseItemFlag_FlipHorizontally", + } + EShowcaseItemFlag_value = map[string]int32{ + "k_eShowcaseItemFlag_None": 0, + "k_eShowcaseItemFlag_FlipHorizontally": 1, + } +) + +func (x EShowcaseItemFlag) Enum() *EShowcaseItemFlag { + p := new(EShowcaseItemFlag) + *p = x + return p +} + +func (x EShowcaseItemFlag) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EShowcaseItemFlag) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[4].Descriptor() +} + +func (EShowcaseItemFlag) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[4] +} + +func (x EShowcaseItemFlag) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *EShowcaseItemFlag) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = EShowcaseItemFlag(num) + return nil +} + +// Deprecated: Use EShowcaseItemFlag.Descriptor instead. +func (EShowcaseItemFlag) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{4} +} + +type EShowcaseItemFlag_Hero int32 + +const ( + EShowcaseItemFlag_Hero_k_eShowcaseItemFlag_Hero_None EShowcaseItemFlag_Hero = 0 + EShowcaseItemFlag_Hero_k_eShowcaseItemFlag_Hero_ShowPedestal EShowcaseItemFlag_Hero = 1 + EShowcaseItemFlag_Hero_k_eShowcaseItemFlag_Hero_UseCurrentLoadout EShowcaseItemFlag_Hero = 2 + EShowcaseItemFlag_Hero_k_eShowcaseItemFlag_Hero_ShowHeroCard EShowcaseItemFlag_Hero = 4 + EShowcaseItemFlag_Hero_k_eShowcaseItemFlag_Hero_HeroCardHideName EShowcaseItemFlag_Hero = 8 + EShowcaseItemFlag_Hero_k_eShowcaseItemFlag_Hero_HeroCardUseMovie EShowcaseItemFlag_Hero = 16 +) + +// Enum value maps for EShowcaseItemFlag_Hero. +var ( + EShowcaseItemFlag_Hero_name = map[int32]string{ + 0: "k_eShowcaseItemFlag_Hero_None", + 1: "k_eShowcaseItemFlag_Hero_ShowPedestal", + 2: "k_eShowcaseItemFlag_Hero_UseCurrentLoadout", + 4: "k_eShowcaseItemFlag_Hero_ShowHeroCard", + 8: "k_eShowcaseItemFlag_Hero_HeroCardHideName", + 16: "k_eShowcaseItemFlag_Hero_HeroCardUseMovie", + } + EShowcaseItemFlag_Hero_value = map[string]int32{ + "k_eShowcaseItemFlag_Hero_None": 0, + "k_eShowcaseItemFlag_Hero_ShowPedestal": 1, + "k_eShowcaseItemFlag_Hero_UseCurrentLoadout": 2, + "k_eShowcaseItemFlag_Hero_ShowHeroCard": 4, + "k_eShowcaseItemFlag_Hero_HeroCardHideName": 8, + "k_eShowcaseItemFlag_Hero_HeroCardUseMovie": 16, + } +) + +func (x EShowcaseItemFlag_Hero) Enum() *EShowcaseItemFlag_Hero { + p := new(EShowcaseItemFlag_Hero) + *p = x + return p +} + +func (x EShowcaseItemFlag_Hero) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EShowcaseItemFlag_Hero) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[5].Descriptor() +} + +func (EShowcaseItemFlag_Hero) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[5] +} + +func (x EShowcaseItemFlag_Hero) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *EShowcaseItemFlag_Hero) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = EShowcaseItemFlag_Hero(num) + return nil +} + +// Deprecated: Use EShowcaseItemFlag_Hero.Descriptor instead. +func (EShowcaseItemFlag_Hero) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{5} +} + +type CMsgShowcaseItem_PlayerMatch_EPlayerOutcome int32 + +const ( + CMsgShowcaseItem_PlayerMatch_k_eInvalid CMsgShowcaseItem_PlayerMatch_EPlayerOutcome = 0 + CMsgShowcaseItem_PlayerMatch_k_eWin CMsgShowcaseItem_PlayerMatch_EPlayerOutcome = 1 + CMsgShowcaseItem_PlayerMatch_k_eLoss CMsgShowcaseItem_PlayerMatch_EPlayerOutcome = 2 + CMsgShowcaseItem_PlayerMatch_k_eNotScored CMsgShowcaseItem_PlayerMatch_EPlayerOutcome = 3 +) + +// Enum value maps for CMsgShowcaseItem_PlayerMatch_EPlayerOutcome. +var ( + CMsgShowcaseItem_PlayerMatch_EPlayerOutcome_name = map[int32]string{ + 0: "k_eInvalid", + 1: "k_eWin", + 2: "k_eLoss", + 3: "k_eNotScored", + } + CMsgShowcaseItem_PlayerMatch_EPlayerOutcome_value = map[string]int32{ + "k_eInvalid": 0, + "k_eWin": 1, + "k_eLoss": 2, + "k_eNotScored": 3, + } +) + +func (x CMsgShowcaseItem_PlayerMatch_EPlayerOutcome) Enum() *CMsgShowcaseItem_PlayerMatch_EPlayerOutcome { + p := new(CMsgShowcaseItem_PlayerMatch_EPlayerOutcome) + *p = x + return p +} + +func (x CMsgShowcaseItem_PlayerMatch_EPlayerOutcome) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgShowcaseItem_PlayerMatch_EPlayerOutcome) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[6].Descriptor() +} + +func (CMsgShowcaseItem_PlayerMatch_EPlayerOutcome) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[6] +} + +func (x CMsgShowcaseItem_PlayerMatch_EPlayerOutcome) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgShowcaseItem_PlayerMatch_EPlayerOutcome) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgShowcaseItem_PlayerMatch_EPlayerOutcome(num) + return nil +} + +// Deprecated: Use CMsgShowcaseItem_PlayerMatch_EPlayerOutcome.Descriptor instead. +func (CMsgShowcaseItem_PlayerMatch_EPlayerOutcome) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{6, 0} +} + +type CMsgShowcase_EModerationState int32 + +const ( + CMsgShowcase_k_eModerationState_Ok CMsgShowcase_EModerationState = 0 + CMsgShowcase_k_eModerationState_PendingApproval CMsgShowcase_EModerationState = 1 +) + +// Enum value maps for CMsgShowcase_EModerationState. +var ( + CMsgShowcase_EModerationState_name = map[int32]string{ + 0: "k_eModerationState_Ok", + 1: "k_eModerationState_PendingApproval", + } + CMsgShowcase_EModerationState_value = map[string]int32{ + "k_eModerationState_Ok": 0, + "k_eModerationState_PendingApproval": 1, + } +) + +func (x CMsgShowcase_EModerationState) Enum() *CMsgShowcase_EModerationState { + p := new(CMsgShowcase_EModerationState) + *p = x + return p +} + +func (x CMsgShowcase_EModerationState) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgShowcase_EModerationState) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[7].Descriptor() +} + +func (CMsgShowcase_EModerationState) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[7] +} + +func (x CMsgShowcase_EModerationState) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgShowcase_EModerationState) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgShowcase_EModerationState(num) + return nil +} + +// Deprecated: Use CMsgShowcase_EModerationState.Descriptor instead. +func (CMsgShowcase_EModerationState) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{16, 0} +} + +type CMsgClientToGCShowcaseGetUserDataResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseGetUserDataResponse_k_eInternalError CMsgClientToGCShowcaseGetUserDataResponse_EResponse = 0 + CMsgClientToGCShowcaseGetUserDataResponse_k_eSuccess CMsgClientToGCShowcaseGetUserDataResponse_EResponse = 1 + CMsgClientToGCShowcaseGetUserDataResponse_k_eTooBusy CMsgClientToGCShowcaseGetUserDataResponse_EResponse = 2 + CMsgClientToGCShowcaseGetUserDataResponse_k_eDisabled CMsgClientToGCShowcaseGetUserDataResponse_EResponse = 3 + CMsgClientToGCShowcaseGetUserDataResponse_k_eTimeout CMsgClientToGCShowcaseGetUserDataResponse_EResponse = 4 + CMsgClientToGCShowcaseGetUserDataResponse_k_eUnknownShowcase CMsgClientToGCShowcaseGetUserDataResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCShowcaseGetUserDataResponse_EResponse. +var ( + CMsgClientToGCShowcaseGetUserDataResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eUnknownShowcase", + } + CMsgClientToGCShowcaseGetUserDataResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eUnknownShowcase": 5, + } +) + +func (x CMsgClientToGCShowcaseGetUserDataResponse_EResponse) Enum() *CMsgClientToGCShowcaseGetUserDataResponse_EResponse { + p := new(CMsgClientToGCShowcaseGetUserDataResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseGetUserDataResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseGetUserDataResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[8].Descriptor() +} + +func (CMsgClientToGCShowcaseGetUserDataResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[8] +} + +func (x CMsgClientToGCShowcaseGetUserDataResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseGetUserDataResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseGetUserDataResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseGetUserDataResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseGetUserDataResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{18, 0} +} + +type CMsgClientToGCShowcaseSetUserDataResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseSetUserDataResponse_k_eInternalError CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 0 + CMsgClientToGCShowcaseSetUserDataResponse_k_eSuccess CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 1 + CMsgClientToGCShowcaseSetUserDataResponse_k_eTooBusy CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 2 + CMsgClientToGCShowcaseSetUserDataResponse_k_eDisabled CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 3 + CMsgClientToGCShowcaseSetUserDataResponse_k_eTimeout CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 4 + CMsgClientToGCShowcaseSetUserDataResponse_k_eInvalid CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 5 + CMsgClientToGCShowcaseSetUserDataResponse_k_eLockedFromEditing CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 6 + CMsgClientToGCShowcaseSetUserDataResponse_k_eBudgetExceeded CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 7 + CMsgClientToGCShowcaseSetUserDataResponse_k_eCommunicationScoreTooLow CMsgClientToGCShowcaseSetUserDataResponse_EResponse = 8 +) + +// Enum value maps for CMsgClientToGCShowcaseSetUserDataResponse_EResponse. +var ( + CMsgClientToGCShowcaseSetUserDataResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eInvalid", + 6: "k_eLockedFromEditing", + 7: "k_eBudgetExceeded", + 8: "k_eCommunicationScoreTooLow", + } + CMsgClientToGCShowcaseSetUserDataResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eInvalid": 5, + "k_eLockedFromEditing": 6, + "k_eBudgetExceeded": 7, + "k_eCommunicationScoreTooLow": 8, + } +) + +func (x CMsgClientToGCShowcaseSetUserDataResponse_EResponse) Enum() *CMsgClientToGCShowcaseSetUserDataResponse_EResponse { + p := new(CMsgClientToGCShowcaseSetUserDataResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseSetUserDataResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseSetUserDataResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[9].Descriptor() +} + +func (CMsgClientToGCShowcaseSetUserDataResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[9] +} + +func (x CMsgClientToGCShowcaseSetUserDataResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseSetUserDataResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseSetUserDataResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseSetUserDataResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseSetUserDataResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{20, 0} +} + +type CMsgClientToGCShowcaseSubmitReportResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseSubmitReportResponse_k_eInternalError CMsgClientToGCShowcaseSubmitReportResponse_EResponse = 0 + CMsgClientToGCShowcaseSubmitReportResponse_k_eSuccess CMsgClientToGCShowcaseSubmitReportResponse_EResponse = 1 + CMsgClientToGCShowcaseSubmitReportResponse_k_eTooBusy CMsgClientToGCShowcaseSubmitReportResponse_EResponse = 2 + CMsgClientToGCShowcaseSubmitReportResponse_k_eDisabled CMsgClientToGCShowcaseSubmitReportResponse_EResponse = 3 + CMsgClientToGCShowcaseSubmitReportResponse_k_eTimeout CMsgClientToGCShowcaseSubmitReportResponse_EResponse = 4 + CMsgClientToGCShowcaseSubmitReportResponse_k_eAlreadyReported CMsgClientToGCShowcaseSubmitReportResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCShowcaseSubmitReportResponse_EResponse. +var ( + CMsgClientToGCShowcaseSubmitReportResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eAlreadyReported", + } + CMsgClientToGCShowcaseSubmitReportResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eAlreadyReported": 5, + } +) + +func (x CMsgClientToGCShowcaseSubmitReportResponse_EResponse) Enum() *CMsgClientToGCShowcaseSubmitReportResponse_EResponse { + p := new(CMsgClientToGCShowcaseSubmitReportResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseSubmitReportResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseSubmitReportResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[10].Descriptor() +} + +func (CMsgClientToGCShowcaseSubmitReportResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[10] +} + +func (x CMsgClientToGCShowcaseSubmitReportResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseSubmitReportResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseSubmitReportResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseSubmitReportResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseSubmitReportResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{22, 0} +} + +type CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_k_eInternalError CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse = 0 + CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_k_eSuccess CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse = 1 + CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_k_eTooBusy CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse = 2 + CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_k_eDisabled CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse = 3 + CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_k_eTimeout CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse = 4 + CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_k_eNoPermission CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse. +var ( + CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + } + CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + } +) + +func (x CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse) Enum() *CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse { + p := new(CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[11].Descriptor() +} + +func (CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[11] +} + +func (x CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{28, 0} +} + +type CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_k_eInternalError CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse = 0 + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_k_eSuccess CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse = 1 + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_k_eTooBusy CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse = 2 + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_k_eDisabled CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse = 3 + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_k_eTimeout CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse = 4 + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_k_eNoPermission CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse = 5 + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_k_eNotFound CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse. +var ( + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + 6: "k_eNotFound", + } + CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + "k_eNotFound": 6, + } +) + +func (x CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse) Enum() *CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse { + p := new(CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[12].Descriptor() +} + +func (CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[12] +} + +func (x CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{30, 0} +} + +type CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseAdminGetUserDetailsResponse_k_eInternalError CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse = 0 + CMsgClientToGCShowcaseAdminGetUserDetailsResponse_k_eSuccess CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse = 1 + CMsgClientToGCShowcaseAdminGetUserDetailsResponse_k_eTooBusy CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse = 2 + CMsgClientToGCShowcaseAdminGetUserDetailsResponse_k_eDisabled CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse = 3 + CMsgClientToGCShowcaseAdminGetUserDetailsResponse_k_eTimeout CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse = 4 + CMsgClientToGCShowcaseAdminGetUserDetailsResponse_k_eNoPermission CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse. +var ( + CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + } + CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + } +) + +func (x CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse) Enum() *CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse { + p := new(CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[13].Descriptor() +} + +func (CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[13] +} + +func (x CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{35, 0} +} + +type CMsgClientToGCShowcaseAdminResetResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseAdminResetResponse_k_eInternalError CMsgClientToGCShowcaseAdminResetResponse_EResponse = 0 + CMsgClientToGCShowcaseAdminResetResponse_k_eSuccess CMsgClientToGCShowcaseAdminResetResponse_EResponse = 1 + CMsgClientToGCShowcaseAdminResetResponse_k_eTooBusy CMsgClientToGCShowcaseAdminResetResponse_EResponse = 2 + CMsgClientToGCShowcaseAdminResetResponse_k_eDisabled CMsgClientToGCShowcaseAdminResetResponse_EResponse = 3 + CMsgClientToGCShowcaseAdminResetResponse_k_eTimeout CMsgClientToGCShowcaseAdminResetResponse_EResponse = 4 + CMsgClientToGCShowcaseAdminResetResponse_k_eNoPermission CMsgClientToGCShowcaseAdminResetResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCShowcaseAdminResetResponse_EResponse. +var ( + CMsgClientToGCShowcaseAdminResetResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + } + CMsgClientToGCShowcaseAdminResetResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + } +) + +func (x CMsgClientToGCShowcaseAdminResetResponse_EResponse) Enum() *CMsgClientToGCShowcaseAdminResetResponse_EResponse { + p := new(CMsgClientToGCShowcaseAdminResetResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseAdminResetResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseAdminResetResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[14].Descriptor() +} + +func (CMsgClientToGCShowcaseAdminResetResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[14] +} + +func (x CMsgClientToGCShowcaseAdminResetResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseAdminResetResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseAdminResetResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminResetResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseAdminResetResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{37, 0} +} + +type CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseAdminLockAccountResponse_k_eInternalError CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse = 0 + CMsgClientToGCShowcaseAdminLockAccountResponse_k_eSuccess CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse = 1 + CMsgClientToGCShowcaseAdminLockAccountResponse_k_eTooBusy CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse = 2 + CMsgClientToGCShowcaseAdminLockAccountResponse_k_eDisabled CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse = 3 + CMsgClientToGCShowcaseAdminLockAccountResponse_k_eTimeout CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse = 4 + CMsgClientToGCShowcaseAdminLockAccountResponse_k_eNoPermission CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse. +var ( + CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + } + CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + } +) + +func (x CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse) Enum() *CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse { + p := new(CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[15].Descriptor() +} + +func (CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[15] +} + +func (x CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{39, 0} +} + +type CMsgClientToGCShowcaseAdminConvictResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseAdminConvictResponse_k_eInternalError CMsgClientToGCShowcaseAdminConvictResponse_EResponse = 0 + CMsgClientToGCShowcaseAdminConvictResponse_k_eSuccess CMsgClientToGCShowcaseAdminConvictResponse_EResponse = 1 + CMsgClientToGCShowcaseAdminConvictResponse_k_eTooBusy CMsgClientToGCShowcaseAdminConvictResponse_EResponse = 2 + CMsgClientToGCShowcaseAdminConvictResponse_k_eDisabled CMsgClientToGCShowcaseAdminConvictResponse_EResponse = 3 + CMsgClientToGCShowcaseAdminConvictResponse_k_eTimeout CMsgClientToGCShowcaseAdminConvictResponse_EResponse = 4 + CMsgClientToGCShowcaseAdminConvictResponse_k_eNoPermission CMsgClientToGCShowcaseAdminConvictResponse_EResponse = 5 + CMsgClientToGCShowcaseAdminConvictResponse_k_eAlreadyConvicted CMsgClientToGCShowcaseAdminConvictResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCShowcaseAdminConvictResponse_EResponse. +var ( + CMsgClientToGCShowcaseAdminConvictResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + 6: "k_eAlreadyConvicted", + } + CMsgClientToGCShowcaseAdminConvictResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + "k_eAlreadyConvicted": 6, + } +) + +func (x CMsgClientToGCShowcaseAdminConvictResponse_EResponse) Enum() *CMsgClientToGCShowcaseAdminConvictResponse_EResponse { + p := new(CMsgClientToGCShowcaseAdminConvictResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseAdminConvictResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseAdminConvictResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[16].Descriptor() +} + +func (CMsgClientToGCShowcaseAdminConvictResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[16] +} + +func (x CMsgClientToGCShowcaseAdminConvictResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseAdminConvictResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseAdminConvictResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminConvictResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseAdminConvictResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{41, 0} +} + +type CMsgClientToGCShowcaseAdminExonerateResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseAdminExonerateResponse_k_eInternalError CMsgClientToGCShowcaseAdminExonerateResponse_EResponse = 0 + CMsgClientToGCShowcaseAdminExonerateResponse_k_eSuccess CMsgClientToGCShowcaseAdminExonerateResponse_EResponse = 1 + CMsgClientToGCShowcaseAdminExonerateResponse_k_eTooBusy CMsgClientToGCShowcaseAdminExonerateResponse_EResponse = 2 + CMsgClientToGCShowcaseAdminExonerateResponse_k_eDisabled CMsgClientToGCShowcaseAdminExonerateResponse_EResponse = 3 + CMsgClientToGCShowcaseAdminExonerateResponse_k_eTimeout CMsgClientToGCShowcaseAdminExonerateResponse_EResponse = 4 + CMsgClientToGCShowcaseAdminExonerateResponse_k_eNoPermission CMsgClientToGCShowcaseAdminExonerateResponse_EResponse = 5 + CMsgClientToGCShowcaseAdminExonerateResponse_k_eAlreadyExonerated CMsgClientToGCShowcaseAdminExonerateResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCShowcaseAdminExonerateResponse_EResponse. +var ( + CMsgClientToGCShowcaseAdminExonerateResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + 6: "k_eAlreadyExonerated", + } + CMsgClientToGCShowcaseAdminExonerateResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + "k_eAlreadyExonerated": 6, + } +) + +func (x CMsgClientToGCShowcaseAdminExonerateResponse_EResponse) Enum() *CMsgClientToGCShowcaseAdminExonerateResponse_EResponse { + p := new(CMsgClientToGCShowcaseAdminExonerateResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseAdminExonerateResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseAdminExonerateResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[17].Descriptor() +} + +func (CMsgClientToGCShowcaseAdminExonerateResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[17] +} + +func (x CMsgClientToGCShowcaseAdminExonerateResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseAdminExonerateResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseAdminExonerateResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminExonerateResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseAdminExonerateResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{43, 0} +} + +type CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseModerationGetQueueResponse_k_eInternalError CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse = 0 + CMsgClientToGCShowcaseModerationGetQueueResponse_k_eSuccess CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse = 1 + CMsgClientToGCShowcaseModerationGetQueueResponse_k_eTooBusy CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse = 2 + CMsgClientToGCShowcaseModerationGetQueueResponse_k_eDisabled CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse = 3 + CMsgClientToGCShowcaseModerationGetQueueResponse_k_eTimeout CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse = 4 + CMsgClientToGCShowcaseModerationGetQueueResponse_k_eNoPermission CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse = 5 +) + +// Enum value maps for CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse. +var ( + CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + } + CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + } +) + +func (x CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse) Enum() *CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse { + p := new(CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[18].Descriptor() +} + +func (CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[18] +} + +func (x CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{46, 0} +} + +type CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse int32 + +const ( + CMsgClientToGCShowcaseModerationApplyModerationResponse_k_eInternalError CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse = 0 + CMsgClientToGCShowcaseModerationApplyModerationResponse_k_eSuccess CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse = 1 + CMsgClientToGCShowcaseModerationApplyModerationResponse_k_eTooBusy CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse = 2 + CMsgClientToGCShowcaseModerationApplyModerationResponse_k_eDisabled CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse = 3 + CMsgClientToGCShowcaseModerationApplyModerationResponse_k_eTimeout CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse = 4 + CMsgClientToGCShowcaseModerationApplyModerationResponse_k_eNoPermission CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse = 5 + CMsgClientToGCShowcaseModerationApplyModerationResponse_k_eGone CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse = 6 +) + +// Enum value maps for CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse. +var ( + CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse_name = map[int32]string{ + 0: "k_eInternalError", + 1: "k_eSuccess", + 2: "k_eTooBusy", + 3: "k_eDisabled", + 4: "k_eTimeout", + 5: "k_eNoPermission", + 6: "k_eGone", + } + CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse_value = map[string]int32{ + "k_eInternalError": 0, + "k_eSuccess": 1, + "k_eTooBusy": 2, + "k_eDisabled": 3, + "k_eTimeout": 4, + "k_eNoPermission": 5, + "k_eGone": 6, + } +) + +func (x CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse) Enum() *CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse { + p := new(CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse) + *p = x + return p +} + +func (x CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_client_showcase_proto_enumTypes[19].Descriptor() +} + +func (CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_client_showcase_proto_enumTypes[19] +} + +func (x CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse(num) + return nil +} + +// Deprecated: Use CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse.Descriptor instead. +func (CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{48, 0} +} + +type CMsgShowcaseEconItemReference struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id *uint64 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"` + OriginalId *uint64 `protobuf:"varint,2,opt,name=original_id,json=originalId" json:"original_id,omitempty"` + DefinitionIndex *uint32 `protobuf:"varint,3,opt,name=definition_index,json=definitionIndex" json:"definition_index,omitempty"` + EquipmentSlotIndex *int32 `protobuf:"varint,4,opt,name=equipment_slot_index,json=equipmentSlotIndex" json:"equipment_slot_index,omitempty"` +} + +func (x *CMsgShowcaseEconItemReference) Reset() { + *x = CMsgShowcaseEconItemReference{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseEconItemReference) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseEconItemReference) ProtoMessage() {} + +func (x *CMsgShowcaseEconItemReference) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseEconItemReference.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseEconItemReference) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{0} +} + +func (x *CMsgShowcaseEconItemReference) GetId() uint64 { + if x != nil && x.Id != nil { + return *x.Id + } + return 0 +} + +func (x *CMsgShowcaseEconItemReference) GetOriginalId() uint64 { + if x != nil && x.OriginalId != nil { + return *x.OriginalId + } + return 0 +} + +func (x *CMsgShowcaseEconItemReference) GetDefinitionIndex() uint32 { + if x != nil && x.DefinitionIndex != nil { + return *x.DefinitionIndex + } + return 0 +} + +func (x *CMsgShowcaseEconItemReference) GetEquipmentSlotIndex() int32 { + if x != nil && x.EquipmentSlotIndex != nil { + return *x.EquipmentSlotIndex + } + return 0 +} + +type CMsgHeroPlusInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Flags *uint32 `protobuf:"varint,1,opt,name=flags" json:"flags,omitempty"` +} + +func (x *CMsgHeroPlusInfo) Reset() { + *x = CMsgHeroPlusInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgHeroPlusInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgHeroPlusInfo) ProtoMessage() {} + +func (x *CMsgHeroPlusInfo) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgHeroPlusInfo.ProtoReflect.Descriptor instead. +func (*CMsgHeroPlusInfo) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{1} +} + +func (x *CMsgHeroPlusInfo) GetFlags() uint32 { + if x != nil && x.Flags != nil { + return *x.Flags + } + return 0 +} + +type CMsgShowcaseItem_Trophy struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_Trophy_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + TrophyId *uint32 `protobuf:"varint,2,opt,name=trophy_id,json=trophyId" json:"trophy_id,omitempty"` +} + +func (x *CMsgShowcaseItem_Trophy) Reset() { + *x = CMsgShowcaseItem_Trophy{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_Trophy) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_Trophy) ProtoMessage() {} + +func (x *CMsgShowcaseItem_Trophy) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_Trophy.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_Trophy) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{2} +} + +func (x *CMsgShowcaseItem_Trophy) GetData() *CMsgShowcaseItem_Trophy_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseItem_Trophy) GetTrophyId() uint32 { + if x != nil && x.TrophyId != nil { + return *x.TrophyId + } + return 0 +} + +type CMsgShowcaseItem_EconItem struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_EconItem_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + Ref *CMsgShowcaseEconItemReference `protobuf:"bytes,2,opt,name=ref" json:"ref,omitempty"` +} + +func (x *CMsgShowcaseItem_EconItem) Reset() { + *x = CMsgShowcaseItem_EconItem{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_EconItem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_EconItem) ProtoMessage() {} + +func (x *CMsgShowcaseItem_EconItem) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_EconItem.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_EconItem) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{3} +} + +func (x *CMsgShowcaseItem_EconItem) GetData() *CMsgShowcaseItem_EconItem_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseItem_EconItem) GetRef() *CMsgShowcaseEconItemReference { + if x != nil { + return x.Ref + } + return nil +} + +type CMsgShowcaseItem_Hero struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_Hero_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + HeroId *uint32 `protobuf:"varint,2,opt,name=hero_id,json=heroId" json:"hero_id,omitempty"` + EconItemRefs []*CMsgShowcaseEconItemReference `protobuf:"bytes,3,rep,name=econ_item_refs,json=econItemRefs" json:"econ_item_refs,omitempty"` + Rotation *uint32 `protobuf:"varint,4,opt,name=rotation" json:"rotation,omitempty"` + Flags *uint32 `protobuf:"varint,5,opt,name=flags" json:"flags,omitempty"` + PlusInfo *CMsgHeroPlusInfo `protobuf:"bytes,6,opt,name=plus_info,json=plusInfo" json:"plus_info,omitempty"` + AnimationName *string `protobuf:"bytes,7,opt,name=animation_name,json=animationName" json:"animation_name,omitempty"` + AnimationPlaybackSpeed *uint32 `protobuf:"varint,8,opt,name=animation_playback_speed,json=animationPlaybackSpeed" json:"animation_playback_speed,omitempty"` + AnimationOffset *uint32 `protobuf:"varint,9,opt,name=animation_offset,json=animationOffset" json:"animation_offset,omitempty"` + Zoom *uint32 `protobuf:"varint,10,opt,name=zoom" json:"zoom,omitempty"` + SlotIndex *uint32 `protobuf:"varint,11,opt,name=slot_index,json=slotIndex" json:"slot_index,omitempty"` + ModelIndex *uint32 `protobuf:"varint,12,opt,name=model_index,json=modelIndex" json:"model_index,omitempty"` +} + +func (x *CMsgShowcaseItem_Hero) Reset() { + *x = CMsgShowcaseItem_Hero{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_Hero) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_Hero) ProtoMessage() {} + +func (x *CMsgShowcaseItem_Hero) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_Hero.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_Hero) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{4} +} + +func (x *CMsgShowcaseItem_Hero) GetData() *CMsgShowcaseItem_Hero_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseItem_Hero) GetHeroId() uint32 { + if x != nil && x.HeroId != nil { + return *x.HeroId + } + return 0 +} + +func (x *CMsgShowcaseItem_Hero) GetEconItemRefs() []*CMsgShowcaseEconItemReference { + if x != nil { + return x.EconItemRefs + } + return nil +} + +func (x *CMsgShowcaseItem_Hero) GetRotation() uint32 { + if x != nil && x.Rotation != nil { + return *x.Rotation + } + return 0 +} + +func (x *CMsgShowcaseItem_Hero) GetFlags() uint32 { + if x != nil && x.Flags != nil { + return *x.Flags + } + return 0 +} + +func (x *CMsgShowcaseItem_Hero) GetPlusInfo() *CMsgHeroPlusInfo { + if x != nil { + return x.PlusInfo + } + return nil +} + +func (x *CMsgShowcaseItem_Hero) GetAnimationName() string { + if x != nil && x.AnimationName != nil { + return *x.AnimationName + } + return "" +} + +func (x *CMsgShowcaseItem_Hero) GetAnimationPlaybackSpeed() uint32 { + if x != nil && x.AnimationPlaybackSpeed != nil { + return *x.AnimationPlaybackSpeed + } + return 0 +} + +func (x *CMsgShowcaseItem_Hero) GetAnimationOffset() uint32 { + if x != nil && x.AnimationOffset != nil { + return *x.AnimationOffset + } + return 0 +} + +func (x *CMsgShowcaseItem_Hero) GetZoom() uint32 { + if x != nil && x.Zoom != nil { + return *x.Zoom + } + return 0 +} + +func (x *CMsgShowcaseItem_Hero) GetSlotIndex() uint32 { + if x != nil && x.SlotIndex != nil { + return *x.SlotIndex + } + return 0 +} + +func (x *CMsgShowcaseItem_Hero) GetModelIndex() uint32 { + if x != nil && x.ModelIndex != nil { + return *x.ModelIndex + } + return 0 +} + +type CMsgShowcaseItem_HeroIcon struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_HeroIcon_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + HeroId *uint32 `protobuf:"varint,2,opt,name=hero_id,json=heroId" json:"hero_id,omitempty"` + EconItemRef *CMsgShowcaseEconItemReference `protobuf:"bytes,3,opt,name=econ_item_ref,json=econItemRef" json:"econ_item_ref,omitempty"` +} + +func (x *CMsgShowcaseItem_HeroIcon) Reset() { + *x = CMsgShowcaseItem_HeroIcon{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_HeroIcon) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_HeroIcon) ProtoMessage() {} + +func (x *CMsgShowcaseItem_HeroIcon) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_HeroIcon.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_HeroIcon) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{5} +} + +func (x *CMsgShowcaseItem_HeroIcon) GetData() *CMsgShowcaseItem_HeroIcon_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseItem_HeroIcon) GetHeroId() uint32 { + if x != nil && x.HeroId != nil { + return *x.HeroId + } + return 0 +} + +func (x *CMsgShowcaseItem_HeroIcon) GetEconItemRef() *CMsgShowcaseEconItemReference { + if x != nil { + return x.EconItemRef + } + return nil +} + +type CMsgShowcaseItem_PlayerMatch struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_PlayerMatch_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + MatchId *uint64 `protobuf:"varint,2,opt,name=match_id,json=matchId" json:"match_id,omitempty"` + PlayerSlot *uint32 `protobuf:"varint,3,opt,name=player_slot,json=playerSlot" json:"player_slot,omitempty"` +} + +func (x *CMsgShowcaseItem_PlayerMatch) Reset() { + *x = CMsgShowcaseItem_PlayerMatch{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_PlayerMatch) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_PlayerMatch) ProtoMessage() {} + +func (x *CMsgShowcaseItem_PlayerMatch) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_PlayerMatch.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_PlayerMatch) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{6} +} + +func (x *CMsgShowcaseItem_PlayerMatch) GetData() *CMsgShowcaseItem_PlayerMatch_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseItem_PlayerMatch) GetMatchId() uint64 { + if x != nil && x.MatchId != nil { + return *x.MatchId + } + return 0 +} + +func (x *CMsgShowcaseItem_PlayerMatch) GetPlayerSlot() uint32 { + if x != nil && x.PlayerSlot != nil { + return *x.PlayerSlot + } + return 0 +} + +type CMsgShowcaseItem_ChatWheel struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_ChatWheel_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + ChatWheelMessageId *uint32 `protobuf:"varint,2,opt,name=chat_wheel_message_id,json=chatWheelMessageId" json:"chat_wheel_message_id,omitempty"` +} + +func (x *CMsgShowcaseItem_ChatWheel) Reset() { + *x = CMsgShowcaseItem_ChatWheel{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_ChatWheel) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_ChatWheel) ProtoMessage() {} + +func (x *CMsgShowcaseItem_ChatWheel) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_ChatWheel.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_ChatWheel) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{7} +} + +func (x *CMsgShowcaseItem_ChatWheel) GetData() *CMsgShowcaseItem_ChatWheel_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseItem_ChatWheel) GetChatWheelMessageId() uint32 { + if x != nil && x.ChatWheelMessageId != nil { + return *x.ChatWheelMessageId + } + return 0 +} + +type CMsgShowcaseItem_Emoticon struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_Emoticon_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + EmoticonId *uint32 `protobuf:"varint,2,opt,name=emoticon_id,json=emoticonId" json:"emoticon_id,omitempty"` +} + +func (x *CMsgShowcaseItem_Emoticon) Reset() { + *x = CMsgShowcaseItem_Emoticon{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_Emoticon) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_Emoticon) ProtoMessage() {} + +func (x *CMsgShowcaseItem_Emoticon) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_Emoticon.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_Emoticon) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{8} +} + +func (x *CMsgShowcaseItem_Emoticon) GetData() *CMsgShowcaseItem_Emoticon_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseItem_Emoticon) GetEmoticonId() uint32 { + if x != nil && x.EmoticonId != nil { + return *x.EmoticonId + } + return 0 +} + +type CMsgShowcaseItem_SpiderGraph struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_SpiderGraph_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` +} + +func (x *CMsgShowcaseItem_SpiderGraph) Reset() { + *x = CMsgShowcaseItem_SpiderGraph{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_SpiderGraph) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_SpiderGraph) ProtoMessage() {} + +func (x *CMsgShowcaseItem_SpiderGraph) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_SpiderGraph.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_SpiderGraph) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{9} +} + +func (x *CMsgShowcaseItem_SpiderGraph) GetData() *CMsgShowcaseItem_SpiderGraph_Data { + if x != nil { + return x.Data + } + return nil +} + +type CMsgShowcaseItem_UserFeed struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_UserFeed_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` +} + +func (x *CMsgShowcaseItem_UserFeed) Reset() { + *x = CMsgShowcaseItem_UserFeed{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_UserFeed) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_UserFeed) ProtoMessage() {} + +func (x *CMsgShowcaseItem_UserFeed) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_UserFeed.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_UserFeed) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{10} +} + +func (x *CMsgShowcaseItem_UserFeed) GetData() *CMsgShowcaseItem_UserFeed_Data { + if x != nil { + return x.Data + } + return nil +} + +type CMsgShowcaseItem_Stat struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseItem_Stat_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + StatId *CMsgDOTAProfileCard_EStatID `protobuf:"varint,2,opt,name=stat_id,json=statId,enum=dota.CMsgDOTAProfileCard_EStatID" json:"stat_id,omitempty"` +} + +func (x *CMsgShowcaseItem_Stat) Reset() { + *x = CMsgShowcaseItem_Stat{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_Stat) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_Stat) ProtoMessage() {} + +func (x *CMsgShowcaseItem_Stat) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_Stat.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_Stat) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{11} +} + +func (x *CMsgShowcaseItem_Stat) GetData() *CMsgShowcaseItem_Stat_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseItem_Stat) GetStatId() CMsgDOTAProfileCard_EStatID { + if x != nil && x.StatId != nil { + return *x.StatId + } + return CMsgDOTAProfileCard_k_eStat_Wins +} + +type CMsgShowcaseBackground struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *CMsgShowcaseBackground_Data `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"` + LoadingScreenRef *CMsgShowcaseEconItemReference `protobuf:"bytes,2,opt,name=loading_screen_ref,json=loadingScreenRef" json:"loading_screen_ref,omitempty"` + Dim *uint32 `protobuf:"varint,3,opt,name=dim" json:"dim,omitempty"` + Blur *uint32 `protobuf:"varint,4,opt,name=blur" json:"blur,omitempty"` + BackgroundId *uint32 `protobuf:"varint,5,opt,name=background_id,json=backgroundId" json:"background_id,omitempty"` +} + +func (x *CMsgShowcaseBackground) Reset() { + *x = CMsgShowcaseBackground{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseBackground) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseBackground) ProtoMessage() {} + +func (x *CMsgShowcaseBackground) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseBackground.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseBackground) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{12} +} + +func (x *CMsgShowcaseBackground) GetData() *CMsgShowcaseBackground_Data { + if x != nil { + return x.Data + } + return nil +} + +func (x *CMsgShowcaseBackground) GetLoadingScreenRef() *CMsgShowcaseEconItemReference { + if x != nil { + return x.LoadingScreenRef + } + return nil +} + +func (x *CMsgShowcaseBackground) GetDim() uint32 { + if x != nil && x.Dim != nil { + return *x.Dim + } + return 0 +} + +func (x *CMsgShowcaseBackground) GetBlur() uint32 { + if x != nil && x.Blur != nil { + return *x.Blur + } + return 0 +} + +func (x *CMsgShowcaseBackground) GetBackgroundId() uint32 { + if x != nil && x.BackgroundId != nil { + return *x.BackgroundId + } + return 0 +} + +type CMsgShowcaseItemData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Item: + // + // *CMsgShowcaseItemData_Trophy + // *CMsgShowcaseItemData_EconItemIcon + // *CMsgShowcaseItemData_Sticker + // *CMsgShowcaseItemData_HeroModel + // *CMsgShowcaseItemData_PlayerMatch + // *CMsgShowcaseItemData_ChatWheel + // *CMsgShowcaseItemData_Spray + // *CMsgShowcaseItemData_Emoticon + // *CMsgShowcaseItemData_Courier + // *CMsgShowcaseItemData_Ward + // *CMsgShowcaseItemData_HeroIcon + // *CMsgShowcaseItemData_SpiderGraph + // *CMsgShowcaseItemData_UserFeed + // *CMsgShowcaseItemData_Stat + // *CMsgShowcaseItemData_Roshan + // *CMsgShowcaseItemData_Creep + // *CMsgShowcaseItemData_Tower + // *CMsgShowcaseItemData_Effigy + // *CMsgShowcaseItemData_Background + Item isCMsgShowcaseItemData_Item `protobuf_oneof:"item"` +} + +func (x *CMsgShowcaseItemData) Reset() { + *x = CMsgShowcaseItemData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItemData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItemData) ProtoMessage() {} + +func (x *CMsgShowcaseItemData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItemData.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItemData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{13} +} + +func (m *CMsgShowcaseItemData) GetItem() isCMsgShowcaseItemData_Item { + if m != nil { + return m.Item + } + return nil +} + +func (x *CMsgShowcaseItemData) GetTrophy() *CMsgShowcaseItem_Trophy { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Trophy); ok { + return x.Trophy + } + return nil +} + +func (x *CMsgShowcaseItemData) GetEconItemIcon() *CMsgShowcaseItem_EconItem { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_EconItemIcon); ok { + return x.EconItemIcon + } + return nil +} + +func (x *CMsgShowcaseItemData) GetSticker() *CMsgShowcaseItem_EconItem { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Sticker); ok { + return x.Sticker + } + return nil +} + +func (x *CMsgShowcaseItemData) GetHeroModel() *CMsgShowcaseItem_Hero { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_HeroModel); ok { + return x.HeroModel + } + return nil +} + +func (x *CMsgShowcaseItemData) GetPlayerMatch() *CMsgShowcaseItem_PlayerMatch { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_PlayerMatch); ok { + return x.PlayerMatch + } + return nil +} + +func (x *CMsgShowcaseItemData) GetChatWheel() *CMsgShowcaseItem_ChatWheel { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_ChatWheel); ok { + return x.ChatWheel + } + return nil +} + +func (x *CMsgShowcaseItemData) GetSpray() *CMsgShowcaseItem_ChatWheel { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Spray); ok { + return x.Spray + } + return nil +} + +func (x *CMsgShowcaseItemData) GetEmoticon() *CMsgShowcaseItem_Emoticon { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Emoticon); ok { + return x.Emoticon + } + return nil +} + +func (x *CMsgShowcaseItemData) GetCourier() *CMsgShowcaseItem_EconItem { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Courier); ok { + return x.Courier + } + return nil +} + +func (x *CMsgShowcaseItemData) GetWard() *CMsgShowcaseItem_EconItem { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Ward); ok { + return x.Ward + } + return nil +} + +func (x *CMsgShowcaseItemData) GetHeroIcon() *CMsgShowcaseItem_HeroIcon { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_HeroIcon); ok { + return x.HeroIcon + } + return nil +} + +func (x *CMsgShowcaseItemData) GetSpiderGraph() *CMsgShowcaseItem_SpiderGraph { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_SpiderGraph); ok { + return x.SpiderGraph + } + return nil +} + +func (x *CMsgShowcaseItemData) GetUserFeed() *CMsgShowcaseItem_UserFeed { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_UserFeed); ok { + return x.UserFeed + } + return nil +} + +func (x *CMsgShowcaseItemData) GetStat() *CMsgShowcaseItem_Stat { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Stat); ok { + return x.Stat + } + return nil +} + +func (x *CMsgShowcaseItemData) GetRoshan() *CMsgShowcaseItem_EconItem { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Roshan); ok { + return x.Roshan + } + return nil +} + +func (x *CMsgShowcaseItemData) GetCreep() *CMsgShowcaseItem_EconItem { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Creep); ok { + return x.Creep + } + return nil +} + +func (x *CMsgShowcaseItemData) GetTower() *CMsgShowcaseItem_EconItem { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Tower); ok { + return x.Tower + } + return nil +} + +func (x *CMsgShowcaseItemData) GetEffigy() *CMsgShowcaseItem_EconItem { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Effigy); ok { + return x.Effigy + } + return nil +} + +func (x *CMsgShowcaseItemData) GetBackground() *CMsgShowcaseBackground { + if x, ok := x.GetItem().(*CMsgShowcaseItemData_Background); ok { + return x.Background + } + return nil +} + +type isCMsgShowcaseItemData_Item interface { + isCMsgShowcaseItemData_Item() +} + +type CMsgShowcaseItemData_Trophy struct { + Trophy *CMsgShowcaseItem_Trophy `protobuf:"bytes,1,opt,name=trophy,oneof"` +} + +type CMsgShowcaseItemData_EconItemIcon struct { + EconItemIcon *CMsgShowcaseItem_EconItem `protobuf:"bytes,2,opt,name=econ_item_icon,json=econItemIcon,oneof"` +} + +type CMsgShowcaseItemData_Sticker struct { + Sticker *CMsgShowcaseItem_EconItem `protobuf:"bytes,3,opt,name=sticker,oneof"` +} + +type CMsgShowcaseItemData_HeroModel struct { + HeroModel *CMsgShowcaseItem_Hero `protobuf:"bytes,4,opt,name=hero_model,json=heroModel,oneof"` +} + +type CMsgShowcaseItemData_PlayerMatch struct { + PlayerMatch *CMsgShowcaseItem_PlayerMatch `protobuf:"bytes,5,opt,name=player_match,json=playerMatch,oneof"` +} + +type CMsgShowcaseItemData_ChatWheel struct { + ChatWheel *CMsgShowcaseItem_ChatWheel `protobuf:"bytes,6,opt,name=chat_wheel,json=chatWheel,oneof"` +} + +type CMsgShowcaseItemData_Spray struct { + Spray *CMsgShowcaseItem_ChatWheel `protobuf:"bytes,7,opt,name=spray,oneof"` +} + +type CMsgShowcaseItemData_Emoticon struct { + Emoticon *CMsgShowcaseItem_Emoticon `protobuf:"bytes,8,opt,name=emoticon,oneof"` +} + +type CMsgShowcaseItemData_Courier struct { + Courier *CMsgShowcaseItem_EconItem `protobuf:"bytes,10,opt,name=courier,oneof"` +} + +type CMsgShowcaseItemData_Ward struct { + Ward *CMsgShowcaseItem_EconItem `protobuf:"bytes,11,opt,name=ward,oneof"` +} + +type CMsgShowcaseItemData_HeroIcon struct { + HeroIcon *CMsgShowcaseItem_HeroIcon `protobuf:"bytes,12,opt,name=hero_icon,json=heroIcon,oneof"` +} + +type CMsgShowcaseItemData_SpiderGraph struct { + SpiderGraph *CMsgShowcaseItem_SpiderGraph `protobuf:"bytes,13,opt,name=spider_graph,json=spiderGraph,oneof"` +} + +type CMsgShowcaseItemData_UserFeed struct { + UserFeed *CMsgShowcaseItem_UserFeed `protobuf:"bytes,14,opt,name=user_feed,json=userFeed,oneof"` +} + +type CMsgShowcaseItemData_Stat struct { + Stat *CMsgShowcaseItem_Stat `protobuf:"bytes,15,opt,name=stat,oneof"` +} + +type CMsgShowcaseItemData_Roshan struct { + Roshan *CMsgShowcaseItem_EconItem `protobuf:"bytes,16,opt,name=roshan,oneof"` +} + +type CMsgShowcaseItemData_Creep struct { + Creep *CMsgShowcaseItem_EconItem `protobuf:"bytes,17,opt,name=creep,oneof"` +} + +type CMsgShowcaseItemData_Tower struct { + Tower *CMsgShowcaseItem_EconItem `protobuf:"bytes,18,opt,name=tower,oneof"` +} + +type CMsgShowcaseItemData_Effigy struct { + Effigy *CMsgShowcaseItem_EconItem `protobuf:"bytes,19,opt,name=effigy,oneof"` +} + +type CMsgShowcaseItemData_Background struct { + Background *CMsgShowcaseBackground `protobuf:"bytes,100,opt,name=background,oneof"` +} + +func (*CMsgShowcaseItemData_Trophy) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_EconItemIcon) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Sticker) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_HeroModel) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_PlayerMatch) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_ChatWheel) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Spray) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Emoticon) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Courier) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Ward) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_HeroIcon) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_SpiderGraph) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_UserFeed) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Stat) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Roshan) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Creep) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Tower) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Effigy) isCMsgShowcaseItemData_Item() {} + +func (*CMsgShowcaseItemData_Background) isCMsgShowcaseItemData_Item() {} + +type CMsgShowcaseItemPosition struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PositionX *int32 `protobuf:"varint,1,opt,name=position_x,json=positionX" json:"position_x,omitempty"` + PositionY *int32 `protobuf:"varint,2,opt,name=position_y,json=positionY" json:"position_y,omitempty"` + Scale *uint32 `protobuf:"varint,3,opt,name=scale" json:"scale,omitempty"` + Width *uint32 `protobuf:"varint,4,opt,name=width" json:"width,omitempty"` + Height *uint32 `protobuf:"varint,5,opt,name=height" json:"height,omitempty"` + Rotation *uint32 `protobuf:"varint,6,opt,name=rotation" json:"rotation,omitempty"` + ParentId *uint32 `protobuf:"varint,7,opt,name=parent_id,json=parentId" json:"parent_id,omitempty"` + ParentAttachmentPointId *uint32 `protobuf:"varint,8,opt,name=parent_attachment_point_id,json=parentAttachmentPointId" json:"parent_attachment_point_id,omitempty"` + AttachmentAnchorX *uint32 `protobuf:"varint,9,opt,name=attachment_anchor_x,json=attachmentAnchorX" json:"attachment_anchor_x,omitempty"` + AttachmentAnchorY *uint32 `protobuf:"varint,10,opt,name=attachment_anchor_y,json=attachmentAnchorY" json:"attachment_anchor_y,omitempty"` +} + +func (x *CMsgShowcaseItemPosition) Reset() { + *x = CMsgShowcaseItemPosition{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItemPosition) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItemPosition) ProtoMessage() {} + +func (x *CMsgShowcaseItemPosition) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItemPosition.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItemPosition) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{14} +} + +func (x *CMsgShowcaseItemPosition) GetPositionX() int32 { + if x != nil && x.PositionX != nil { + return *x.PositionX + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetPositionY() int32 { + if x != nil && x.PositionY != nil { + return *x.PositionY + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetScale() uint32 { + if x != nil && x.Scale != nil { + return *x.Scale + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetWidth() uint32 { + if x != nil && x.Width != nil { + return *x.Width + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetHeight() uint32 { + if x != nil && x.Height != nil { + return *x.Height + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetRotation() uint32 { + if x != nil && x.Rotation != nil { + return *x.Rotation + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetParentId() uint32 { + if x != nil && x.ParentId != nil { + return *x.ParentId + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetParentAttachmentPointId() uint32 { + if x != nil && x.ParentAttachmentPointId != nil { + return *x.ParentAttachmentPointId + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetAttachmentAnchorX() uint32 { + if x != nil && x.AttachmentAnchorX != nil { + return *x.AttachmentAnchorX + } + return 0 +} + +func (x *CMsgShowcaseItemPosition) GetAttachmentAnchorY() uint32 { + if x != nil && x.AttachmentAnchorY != nil { + return *x.AttachmentAnchorY + } + return 0 +} + +type CMsgShowcaseItem struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ShowcaseItemId *uint32 `protobuf:"varint,1,opt,name=showcase_item_id,json=showcaseItemId" json:"showcase_item_id,omitempty"` + ItemPosition *CMsgShowcaseItemPosition `protobuf:"bytes,2,opt,name=item_position,json=itemPosition" json:"item_position,omitempty"` + ItemData *CMsgShowcaseItemData `protobuf:"bytes,3,opt,name=item_data,json=itemData" json:"item_data,omitempty"` + State *EShowcaseItemState `protobuf:"varint,4,opt,name=state,enum=dota.EShowcaseItemState" json:"state,omitempty"` + Flags *uint32 `protobuf:"varint,5,opt,name=flags" json:"flags,omitempty"` +} + +func (x *CMsgShowcaseItem) Reset() { + *x = CMsgShowcaseItem{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem) ProtoMessage() {} + +func (x *CMsgShowcaseItem) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{15} +} + +func (x *CMsgShowcaseItem) GetShowcaseItemId() uint32 { + if x != nil && x.ShowcaseItemId != nil { + return *x.ShowcaseItemId + } + return 0 +} + +func (x *CMsgShowcaseItem) GetItemPosition() *CMsgShowcaseItemPosition { + if x != nil { + return x.ItemPosition + } + return nil +} + +func (x *CMsgShowcaseItem) GetItemData() *CMsgShowcaseItemData { + if x != nil { + return x.ItemData + } + return nil +} + +func (x *CMsgShowcaseItem) GetState() EShowcaseItemState { + if x != nil && x.State != nil { + return *x.State + } + return EShowcaseItemState_k_eShowcaseItemState_Ok +} + +func (x *CMsgShowcaseItem) GetFlags() uint32 { + if x != nil && x.Flags != nil { + return *x.Flags + } + return 0 +} + +type CMsgShowcase struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ShowcaseItems []*CMsgShowcaseItem `protobuf:"bytes,1,rep,name=showcase_items,json=showcaseItems" json:"showcase_items,omitempty"` + Background *CMsgShowcaseItem `protobuf:"bytes,3,opt,name=background" json:"background,omitempty"` + ModerationState *CMsgShowcase_EModerationState `protobuf:"varint,4,opt,name=moderation_state,json=moderationState,enum=dota.CMsgShowcase_EModerationState" json:"moderation_state,omitempty"` +} + +func (x *CMsgShowcase) Reset() { + *x = CMsgShowcase{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcase) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcase) ProtoMessage() {} + +func (x *CMsgShowcase) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcase.ProtoReflect.Descriptor instead. +func (*CMsgShowcase) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{16} +} + +func (x *CMsgShowcase) GetShowcaseItems() []*CMsgShowcaseItem { + if x != nil { + return x.ShowcaseItems + } + return nil +} + +func (x *CMsgShowcase) GetBackground() *CMsgShowcaseItem { + if x != nil { + return x.Background + } + return nil +} + +func (x *CMsgShowcase) GetModerationState() CMsgShowcase_EModerationState { + if x != nil && x.ModerationState != nil { + return *x.ModerationState + } + return CMsgShowcase_k_eModerationState_Ok +} + +type CMsgClientToGCShowcaseGetUserData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` +} + +func (x *CMsgClientToGCShowcaseGetUserData) Reset() { + *x = CMsgClientToGCShowcaseGetUserData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseGetUserData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseGetUserData) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseGetUserData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseGetUserData.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseGetUserData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{17} +} + +func (x *CMsgClientToGCShowcaseGetUserData) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId + } + return 0 +} + +func (x *CMsgClientToGCShowcaseGetUserData) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +type CMsgClientToGCShowcaseGetUserDataResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseGetUserDataResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseGetUserDataResponse_EResponse" json:"response,omitempty"` + Showcase *CMsgShowcase `protobuf:"bytes,2,opt,name=showcase" json:"showcase,omitempty"` +} + +func (x *CMsgClientToGCShowcaseGetUserDataResponse) Reset() { + *x = CMsgClientToGCShowcaseGetUserDataResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseGetUserDataResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseGetUserDataResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseGetUserDataResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseGetUserDataResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseGetUserDataResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{18} +} + +func (x *CMsgClientToGCShowcaseGetUserDataResponse) GetResponse() CMsgClientToGCShowcaseGetUserDataResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseGetUserDataResponse_k_eInternalError +} + +func (x *CMsgClientToGCShowcaseGetUserDataResponse) GetShowcase() *CMsgShowcase { + if x != nil { + return x.Showcase + } + return nil +} + +type CMsgClientToGCShowcaseSetUserData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ShowcaseType *EShowcaseType `protobuf:"varint,1,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` + Showcase *CMsgShowcase `protobuf:"bytes,2,opt,name=showcase" json:"showcase,omitempty"` + FormatVersion *uint32 `protobuf:"varint,3,opt,name=format_version,json=formatVersion" json:"format_version,omitempty"` +} + +func (x *CMsgClientToGCShowcaseSetUserData) Reset() { + *x = CMsgClientToGCShowcaseSetUserData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseSetUserData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseSetUserData) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseSetUserData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseSetUserData.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseSetUserData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{19} +} + +func (x *CMsgClientToGCShowcaseSetUserData) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +func (x *CMsgClientToGCShowcaseSetUserData) GetShowcase() *CMsgShowcase { + if x != nil { + return x.Showcase + } + return nil +} + +func (x *CMsgClientToGCShowcaseSetUserData) GetFormatVersion() uint32 { + if x != nil && x.FormatVersion != nil { + return *x.FormatVersion + } + return 0 +} + +type CMsgClientToGCShowcaseSetUserDataResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseSetUserDataResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseSetUserDataResponse_EResponse" json:"response,omitempty"` + ValidatedShowcase *CMsgShowcase `protobuf:"bytes,2,opt,name=validated_showcase,json=validatedShowcase" json:"validated_showcase,omitempty"` + LockedUntilTimestamp *uint32 `protobuf:"varint,3,opt,name=locked_until_timestamp,json=lockedUntilTimestamp" json:"locked_until_timestamp,omitempty"` +} + +func (x *CMsgClientToGCShowcaseSetUserDataResponse) Reset() { + *x = CMsgClientToGCShowcaseSetUserDataResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseSetUserDataResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseSetUserDataResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseSetUserDataResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseSetUserDataResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseSetUserDataResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{20} +} + +func (x *CMsgClientToGCShowcaseSetUserDataResponse) GetResponse() CMsgClientToGCShowcaseSetUserDataResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseSetUserDataResponse_k_eInternalError +} + +func (x *CMsgClientToGCShowcaseSetUserDataResponse) GetValidatedShowcase() *CMsgShowcase { + if x != nil { + return x.ValidatedShowcase + } + return nil +} + +func (x *CMsgClientToGCShowcaseSetUserDataResponse) GetLockedUntilTimestamp() uint32 { + if x != nil && x.LockedUntilTimestamp != nil { + return *x.LockedUntilTimestamp + } + return 0 +} + +type CMsgClientToGCShowcaseSubmitReport struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` + ReportComment *string `protobuf:"bytes,3,opt,name=report_comment,json=reportComment" json:"report_comment,omitempty"` +} + +func (x *CMsgClientToGCShowcaseSubmitReport) Reset() { + *x = CMsgClientToGCShowcaseSubmitReport{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseSubmitReport) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseSubmitReport) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseSubmitReport) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseSubmitReport.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseSubmitReport) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{21} +} + +func (x *CMsgClientToGCShowcaseSubmitReport) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgClientToGCShowcaseSubmitReport) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +func (x *CMsgClientToGCShowcaseSubmitReport) GetReportComment() string { + if x != nil && x.ReportComment != nil { + return *x.ReportComment + } + return "" +} + +type CMsgClientToGCShowcaseSubmitReportResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseSubmitReportResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseSubmitReportResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCShowcaseSubmitReportResponse) Reset() { + *x = CMsgClientToGCShowcaseSubmitReportResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseSubmitReportResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseSubmitReportResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseSubmitReportResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseSubmitReportResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseSubmitReportResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{22} +} + +func (x *CMsgClientToGCShowcaseSubmitReportResponse) GetResponse() CMsgClientToGCShowcaseSubmitReportResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseSubmitReportResponse_k_eInternalError +} + +type CMsgShowcaseReportsRollupInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RollupId *uint32 `protobuf:"varint,1,opt,name=rollup_id,json=rollupId" json:"rollup_id,omitempty"` + StartTimestamp *uint32 `protobuf:"varint,2,opt,name=start_timestamp,json=startTimestamp" json:"start_timestamp,omitempty"` + EndTimestamp *uint32 `protobuf:"varint,3,opt,name=end_timestamp,json=endTimestamp" json:"end_timestamp,omitempty"` +} + +func (x *CMsgShowcaseReportsRollupInfo) Reset() { + *x = CMsgShowcaseReportsRollupInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseReportsRollupInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseReportsRollupInfo) ProtoMessage() {} + +func (x *CMsgShowcaseReportsRollupInfo) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseReportsRollupInfo.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseReportsRollupInfo) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{23} +} + +func (x *CMsgShowcaseReportsRollupInfo) GetRollupId() uint32 { + if x != nil && x.RollupId != nil { + return *x.RollupId + } + return 0 +} + +func (x *CMsgShowcaseReportsRollupInfo) GetStartTimestamp() uint32 { + if x != nil && x.StartTimestamp != nil { + return *x.StartTimestamp + } + return 0 +} + +func (x *CMsgShowcaseReportsRollupInfo) GetEndTimestamp() uint32 { + if x != nil && x.EndTimestamp != nil { + return *x.EndTimestamp + } + return 0 +} + +type CMsgShowcaseReportsRollupList struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Rollups []*CMsgShowcaseReportsRollupInfo `protobuf:"bytes,1,rep,name=rollups" json:"rollups,omitempty"` +} + +func (x *CMsgShowcaseReportsRollupList) Reset() { + *x = CMsgShowcaseReportsRollupList{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseReportsRollupList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseReportsRollupList) ProtoMessage() {} + +func (x *CMsgShowcaseReportsRollupList) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseReportsRollupList.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseReportsRollupList) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{24} +} + +func (x *CMsgShowcaseReportsRollupList) GetRollups() []*CMsgShowcaseReportsRollupInfo { + if x != nil { + return x.Rollups + } + return nil +} + +type CMsgShowcaseReportsRollupEntry struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` + ReportCount *uint32 `protobuf:"varint,3,opt,name=report_count,json=reportCount" json:"report_count,omitempty"` +} + +func (x *CMsgShowcaseReportsRollupEntry) Reset() { + *x = CMsgShowcaseReportsRollupEntry{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseReportsRollupEntry) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseReportsRollupEntry) ProtoMessage() {} + +func (x *CMsgShowcaseReportsRollupEntry) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseReportsRollupEntry.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseReportsRollupEntry) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{25} +} + +func (x *CMsgShowcaseReportsRollupEntry) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId + } + return 0 +} + +func (x *CMsgShowcaseReportsRollupEntry) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +func (x *CMsgShowcaseReportsRollupEntry) GetReportCount() uint32 { + if x != nil && x.ReportCount != nil { + return *x.ReportCount + } + return 0 +} + +type CMsgShowcaseReportsRollup struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RollupInfo *CMsgShowcaseReportsRollupInfo `protobuf:"bytes,1,opt,name=rollup_info,json=rollupInfo" json:"rollup_info,omitempty"` + RollupEntries []*CMsgShowcaseReportsRollupEntry `protobuf:"bytes,2,rep,name=rollup_entries,json=rollupEntries" json:"rollup_entries,omitempty"` +} + +func (x *CMsgShowcaseReportsRollup) Reset() { + *x = CMsgShowcaseReportsRollup{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseReportsRollup) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseReportsRollup) ProtoMessage() {} + +func (x *CMsgShowcaseReportsRollup) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseReportsRollup.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseReportsRollup) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{26} +} + +func (x *CMsgShowcaseReportsRollup) GetRollupInfo() *CMsgShowcaseReportsRollupInfo { + if x != nil { + return x.RollupInfo + } + return nil +} + +func (x *CMsgShowcaseReportsRollup) GetRollupEntries() []*CMsgShowcaseReportsRollupEntry { + if x != nil { + return x.RollupEntries + } + return nil +} + +type CMsgClientToGCShowcaseAdminGetReportsRollupList struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupList) Reset() { + *x = CMsgClientToGCShowcaseAdminGetReportsRollupList{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminGetReportsRollupList) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupList) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetReportsRollupList.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminGetReportsRollupList) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{27} +} + +type CMsgClientToGCShowcaseAdminGetReportsRollupListResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse" json:"response,omitempty"` + RollupList *CMsgShowcaseReportsRollupList `protobuf:"bytes,2,opt,name=rollup_list,json=rollupList" json:"rollup_list,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupListResponse) Reset() { + *x = CMsgClientToGCShowcaseAdminGetReportsRollupListResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupListResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminGetReportsRollupListResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupListResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetReportsRollupListResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminGetReportsRollupListResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{28} +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupListResponse) GetResponse() CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_k_eInternalError +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupListResponse) GetRollupList() *CMsgShowcaseReportsRollupList { + if x != nil { + return x.RollupList + } + return nil +} + +type CMsgClientToGCShowcaseAdminGetReportsRollup struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RollupId *uint32 `protobuf:"varint,1,opt,name=rollup_id,json=rollupId" json:"rollup_id,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollup) Reset() { + *x = CMsgClientToGCShowcaseAdminGetReportsRollup{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollup) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminGetReportsRollup) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollup) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetReportsRollup.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminGetReportsRollup) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{29} +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollup) GetRollupId() uint32 { + if x != nil && x.RollupId != nil { + return *x.RollupId + } + return 0 +} + +type CMsgClientToGCShowcaseAdminGetReportsRollupResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse" json:"response,omitempty"` + Rollup *CMsgShowcaseReportsRollup `protobuf:"bytes,2,opt,name=rollup" json:"rollup,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupResponse) Reset() { + *x = CMsgClientToGCShowcaseAdminGetReportsRollupResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminGetReportsRollupResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetReportsRollupResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminGetReportsRollupResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{30} +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupResponse) GetResponse() CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseAdminGetReportsRollupResponse_k_eInternalError +} + +func (x *CMsgClientToGCShowcaseAdminGetReportsRollupResponse) GetRollup() *CMsgShowcaseReportsRollup { + if x != nil { + return x.Rollup + } + return nil +} + +type CMsgShowcaseAuditEntry struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ShowcaseType *EShowcaseType `protobuf:"varint,1,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` + AuditAction *EShowcaseAuditAction `protobuf:"varint,2,opt,name=audit_action,json=auditAction,enum=dota.EShowcaseAuditAction" json:"audit_action,omitempty"` + AuditData *uint64 `protobuf:"varint,3,opt,name=audit_data,json=auditData" json:"audit_data,omitempty"` + Timestamp *uint32 `protobuf:"varint,4,opt,name=timestamp" json:"timestamp,omitempty"` +} + +func (x *CMsgShowcaseAuditEntry) Reset() { + *x = CMsgShowcaseAuditEntry{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseAuditEntry) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseAuditEntry) ProtoMessage() {} + +func (x *CMsgShowcaseAuditEntry) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseAuditEntry.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseAuditEntry) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{31} +} + +func (x *CMsgShowcaseAuditEntry) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +func (x *CMsgShowcaseAuditEntry) GetAuditAction() EShowcaseAuditAction { + if x != nil && x.AuditAction != nil { + return *x.AuditAction + } + return EShowcaseAuditAction_k_eShowcaseAuditAction_Invalid +} + +func (x *CMsgShowcaseAuditEntry) GetAuditData() uint64 { + if x != nil && x.AuditData != nil { + return *x.AuditData + } + return 0 +} + +func (x *CMsgShowcaseAuditEntry) GetTimestamp() uint32 { + if x != nil && x.Timestamp != nil { + return *x.Timestamp + } + return 0 +} + +type CMsgShowcaseReport struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ReporterAccountId *uint32 `protobuf:"varint,1,opt,name=reporter_account_id,json=reporterAccountId" json:"reporter_account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` + ReportTimestamp *uint32 `protobuf:"varint,3,opt,name=report_timestamp,json=reportTimestamp" json:"report_timestamp,omitempty"` + ReportComment *string `protobuf:"bytes,4,opt,name=report_comment,json=reportComment" json:"report_comment,omitempty"` +} + +func (x *CMsgShowcaseReport) Reset() { + *x = CMsgShowcaseReport{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseReport) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseReport) ProtoMessage() {} + +func (x *CMsgShowcaseReport) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseReport.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseReport) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{32} +} + +func (x *CMsgShowcaseReport) GetReporterAccountId() uint32 { + if x != nil && x.ReporterAccountId != nil { + return *x.ReporterAccountId + } + return 0 +} + +func (x *CMsgShowcaseReport) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +func (x *CMsgShowcaseReport) GetReportTimestamp() uint32 { + if x != nil && x.ReportTimestamp != nil { + return *x.ReportTimestamp + } + return 0 +} + +func (x *CMsgShowcaseReport) GetReportComment() string { + if x != nil && x.ReportComment != nil { + return *x.ReportComment + } + return "" +} + +type CMsgShowcaseAdminUserDetails struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LockedUntilTimestamp *uint32 `protobuf:"varint,1,opt,name=locked_until_timestamp,json=lockedUntilTimestamp" json:"locked_until_timestamp,omitempty"` + AuditEntries []*CMsgShowcaseAuditEntry `protobuf:"bytes,2,rep,name=audit_entries,json=auditEntries" json:"audit_entries,omitempty"` + Reports []*CMsgShowcaseReport `protobuf:"bytes,3,rep,name=reports" json:"reports,omitempty"` +} + +func (x *CMsgShowcaseAdminUserDetails) Reset() { + *x = CMsgShowcaseAdminUserDetails{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseAdminUserDetails) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseAdminUserDetails) ProtoMessage() {} + +func (x *CMsgShowcaseAdminUserDetails) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseAdminUserDetails.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseAdminUserDetails) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{33} +} + +func (x *CMsgShowcaseAdminUserDetails) GetLockedUntilTimestamp() uint32 { + if x != nil && x.LockedUntilTimestamp != nil { + return *x.LockedUntilTimestamp + } + return 0 +} + +func (x *CMsgShowcaseAdminUserDetails) GetAuditEntries() []*CMsgShowcaseAuditEntry { + if x != nil { + return x.AuditEntries + } + return nil +} + +func (x *CMsgShowcaseAdminUserDetails) GetReports() []*CMsgShowcaseReport { + if x != nil { + return x.Reports + } + return nil +} + +type CMsgClientToGCShowcaseAdminGetUserDetails struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetails) Reset() { + *x = CMsgClientToGCShowcaseAdminGetUserDetails{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetails) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminGetUserDetails) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetails) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetUserDetails.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminGetUserDetails) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{34} +} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetails) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId + } + return 0 +} + +type CMsgClientToGCShowcaseAdminGetUserDetailsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse" json:"response,omitempty"` + UserDetails *CMsgShowcaseAdminUserDetails `protobuf:"bytes,2,opt,name=user_details,json=userDetails" json:"user_details,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetailsResponse) Reset() { + *x = CMsgClientToGCShowcaseAdminGetUserDetailsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetailsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminGetUserDetailsResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetailsResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminGetUserDetailsResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminGetUserDetailsResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{35} +} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetailsResponse) GetResponse() CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseAdminGetUserDetailsResponse_k_eInternalError +} + +func (x *CMsgClientToGCShowcaseAdminGetUserDetailsResponse) GetUserDetails() *CMsgShowcaseAdminUserDetails { + if x != nil { + return x.UserDetails + } + return nil +} + +type CMsgClientToGCShowcaseAdminReset struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminReset) Reset() { + *x = CMsgClientToGCShowcaseAdminReset{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminReset) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminReset) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminReset) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminReset.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminReset) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{36} +} + +func (x *CMsgClientToGCShowcaseAdminReset) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgClientToGCShowcaseAdminReset) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +type CMsgClientToGCShowcaseAdminResetResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseAdminResetResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseAdminResetResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminResetResponse) Reset() { + *x = CMsgClientToGCShowcaseAdminResetResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminResetResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminResetResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminResetResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminResetResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminResetResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{37} +} + +func (x *CMsgClientToGCShowcaseAdminResetResponse) GetResponse() CMsgClientToGCShowcaseAdminResetResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseAdminResetResponse_k_eInternalError +} + +type CMsgClientToGCShowcaseAdminLockAccount struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + LockedUntilTimestamp *uint32 `protobuf:"varint,2,opt,name=locked_until_timestamp,json=lockedUntilTimestamp" json:"locked_until_timestamp,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminLockAccount) Reset() { + *x = CMsgClientToGCShowcaseAdminLockAccount{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminLockAccount) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminLockAccount) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminLockAccount) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[38] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminLockAccount.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminLockAccount) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{38} +} + +func (x *CMsgClientToGCShowcaseAdminLockAccount) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgClientToGCShowcaseAdminLockAccount) GetLockedUntilTimestamp() uint32 { + if x != nil && x.LockedUntilTimestamp != nil { + return *x.LockedUntilTimestamp + } + return 0 +} + +type CMsgClientToGCShowcaseAdminLockAccountResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminLockAccountResponse) Reset() { + *x = CMsgClientToGCShowcaseAdminLockAccountResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminLockAccountResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminLockAccountResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminLockAccountResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[39] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminLockAccountResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminLockAccountResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{39} +} + +func (x *CMsgClientToGCShowcaseAdminLockAccountResponse) GetResponse() CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseAdminLockAccountResponse_k_eInternalError +} + +type CMsgClientToGCShowcaseAdminConvict struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminConvict) Reset() { + *x = CMsgClientToGCShowcaseAdminConvict{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminConvict) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminConvict) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminConvict) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[40] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminConvict.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminConvict) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{40} +} + +func (x *CMsgClientToGCShowcaseAdminConvict) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgClientToGCShowcaseAdminConvict) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +type CMsgClientToGCShowcaseAdminConvictResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseAdminConvictResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseAdminConvictResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminConvictResponse) Reset() { + *x = CMsgClientToGCShowcaseAdminConvictResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminConvictResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminConvictResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminConvictResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[41] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminConvictResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminConvictResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{41} +} + +func (x *CMsgClientToGCShowcaseAdminConvictResponse) GetResponse() CMsgClientToGCShowcaseAdminConvictResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseAdminConvictResponse_k_eInternalError +} + +type CMsgClientToGCShowcaseAdminExonerate struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminExonerate) Reset() { + *x = CMsgClientToGCShowcaseAdminExonerate{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminExonerate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminExonerate) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminExonerate) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[42] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminExonerate.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminExonerate) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{42} +} + +func (x *CMsgClientToGCShowcaseAdminExonerate) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgClientToGCShowcaseAdminExonerate) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +type CMsgClientToGCShowcaseAdminExonerateResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseAdminExonerateResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseAdminExonerateResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCShowcaseAdminExonerateResponse) Reset() { + *x = CMsgClientToGCShowcaseAdminExonerateResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseAdminExonerateResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseAdminExonerateResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseAdminExonerateResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[43] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseAdminExonerateResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseAdminExonerateResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{43} +} + +func (x *CMsgClientToGCShowcaseAdminExonerateResponse) GetResponse() CMsgClientToGCShowcaseAdminExonerateResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseAdminExonerateResponse_k_eInternalError +} + +type CMsgShowcaseModerationInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` + ShowcaseTimestamp *uint32 `protobuf:"varint,3,opt,name=showcase_timestamp,json=showcaseTimestamp" json:"showcase_timestamp,omitempty"` +} + +func (x *CMsgShowcaseModerationInfo) Reset() { + *x = CMsgShowcaseModerationInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseModerationInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseModerationInfo) ProtoMessage() {} + +func (x *CMsgShowcaseModerationInfo) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[44] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseModerationInfo.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseModerationInfo) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{44} +} + +func (x *CMsgShowcaseModerationInfo) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId + } + return 0 +} + +func (x *CMsgShowcaseModerationInfo) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +func (x *CMsgShowcaseModerationInfo) GetShowcaseTimestamp() uint32 { + if x != nil && x.ShowcaseTimestamp != nil { + return *x.ShowcaseTimestamp + } + return 0 +} + +type CMsgClientToGCShowcaseModerationGetQueue struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + StartTimestamp *uint32 `protobuf:"varint,1,opt,name=start_timestamp,json=startTimestamp" json:"start_timestamp,omitempty"` + ResultCount *uint32 `protobuf:"varint,2,opt,name=result_count,json=resultCount" json:"result_count,omitempty"` +} + +func (x *CMsgClientToGCShowcaseModerationGetQueue) Reset() { + *x = CMsgClientToGCShowcaseModerationGetQueue{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseModerationGetQueue) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseModerationGetQueue) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseModerationGetQueue) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[45] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseModerationGetQueue.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseModerationGetQueue) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{45} +} + +func (x *CMsgClientToGCShowcaseModerationGetQueue) GetStartTimestamp() uint32 { + if x != nil && x.StartTimestamp != nil { + return *x.StartTimestamp + } + return 0 +} + +func (x *CMsgClientToGCShowcaseModerationGetQueue) GetResultCount() uint32 { + if x != nil && x.ResultCount != nil { + return *x.ResultCount + } + return 0 +} + +type CMsgClientToGCShowcaseModerationGetQueueResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse" json:"response,omitempty"` + Showcases []*CMsgShowcaseModerationInfo `protobuf:"bytes,2,rep,name=showcases" json:"showcases,omitempty"` +} + +func (x *CMsgClientToGCShowcaseModerationGetQueueResponse) Reset() { + *x = CMsgClientToGCShowcaseModerationGetQueueResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseModerationGetQueueResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseModerationGetQueueResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseModerationGetQueueResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[46] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseModerationGetQueueResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseModerationGetQueueResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{46} +} + +func (x *CMsgClientToGCShowcaseModerationGetQueueResponse) GetResponse() CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseModerationGetQueueResponse_k_eInternalError +} + +func (x *CMsgClientToGCShowcaseModerationGetQueueResponse) GetShowcases() []*CMsgShowcaseModerationInfo { + if x != nil { + return x.Showcases + } + return nil +} + +type CMsgClientToGCShowcaseModerationApplyModeration struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + ShowcaseType *EShowcaseType `protobuf:"varint,2,opt,name=showcase_type,json=showcaseType,enum=dota.EShowcaseType" json:"showcase_type,omitempty"` + ShowcaseTimestamp *uint32 `protobuf:"varint,3,opt,name=showcase_timestamp,json=showcaseTimestamp" json:"showcase_timestamp,omitempty"` + Approve *bool `protobuf:"varint,4,opt,name=approve" json:"approve,omitempty"` +} + +func (x *CMsgClientToGCShowcaseModerationApplyModeration) Reset() { + *x = CMsgClientToGCShowcaseModerationApplyModeration{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[47] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseModerationApplyModeration) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseModerationApplyModeration) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseModerationApplyModeration) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[47] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseModerationApplyModeration.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseModerationApplyModeration) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{47} +} + +func (x *CMsgClientToGCShowcaseModerationApplyModeration) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId + } + return 0 +} + +func (x *CMsgClientToGCShowcaseModerationApplyModeration) GetShowcaseType() EShowcaseType { + if x != nil && x.ShowcaseType != nil { + return *x.ShowcaseType + } + return EShowcaseType_k_eShowcaseType_Invalid +} + +func (x *CMsgClientToGCShowcaseModerationApplyModeration) GetShowcaseTimestamp() uint32 { + if x != nil && x.ShowcaseTimestamp != nil { + return *x.ShowcaseTimestamp + } + return 0 +} + +func (x *CMsgClientToGCShowcaseModerationApplyModeration) GetApprove() bool { + if x != nil && x.Approve != nil { + return *x.Approve + } + return false +} + +type CMsgClientToGCShowcaseModerationApplyModerationResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response *CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse `protobuf:"varint,1,opt,name=response,enum=dota.CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse" json:"response,omitempty"` +} + +func (x *CMsgClientToGCShowcaseModerationApplyModerationResponse) Reset() { + *x = CMsgClientToGCShowcaseModerationApplyModerationResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[48] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCShowcaseModerationApplyModerationResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCShowcaseModerationApplyModerationResponse) ProtoMessage() {} + +func (x *CMsgClientToGCShowcaseModerationApplyModerationResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[48] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCShowcaseModerationApplyModerationResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCShowcaseModerationApplyModerationResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{48} +} + +func (x *CMsgClientToGCShowcaseModerationApplyModerationResponse) GetResponse() CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCShowcaseModerationApplyModerationResponse_k_eInternalError +} + +type CMsgShowcaseItem_Trophy_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TrophyScore *uint32 `protobuf:"varint,1,opt,name=trophy_score,json=trophyScore" json:"trophy_score,omitempty"` +} + +func (x *CMsgShowcaseItem_Trophy_Data) Reset() { + *x = CMsgShowcaseItem_Trophy_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_Trophy_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_Trophy_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_Trophy_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[49] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_Trophy_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_Trophy_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{2, 0} +} + +func (x *CMsgShowcaseItem_Trophy_Data) GetTrophyScore() uint32 { + if x != nil && x.TrophyScore != nil { + return *x.TrophyScore + } + return 0 +} + +type CMsgShowcaseItem_EconItem_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EconItem *CSOEconItem `protobuf:"bytes,1,opt,name=econ_item,json=econItem" json:"econ_item,omitempty"` +} + +func (x *CMsgShowcaseItem_EconItem_Data) Reset() { + *x = CMsgShowcaseItem_EconItem_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_EconItem_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_EconItem_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_EconItem_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[50] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_EconItem_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_EconItem_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{3, 0} +} + +func (x *CMsgShowcaseItem_EconItem_Data) GetEconItem() *CSOEconItem { + if x != nil { + return x.EconItem + } + return nil +} + +type CMsgShowcaseItem_Hero_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EconItems []*CSOEconItem `protobuf:"bytes,1,rep,name=econ_items,json=econItems" json:"econ_items,omitempty"` + ActualHeroId *uint32 `protobuf:"varint,2,opt,name=actual_hero_id,json=actualHeroId" json:"actual_hero_id,omitempty"` + PlusHeroXp *uint32 `protobuf:"varint,3,opt,name=plus_hero_xp,json=plusHeroXp" json:"plus_hero_xp,omitempty"` +} + +func (x *CMsgShowcaseItem_Hero_Data) Reset() { + *x = CMsgShowcaseItem_Hero_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[51] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_Hero_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_Hero_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_Hero_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[51] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_Hero_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_Hero_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{4, 0} +} + +func (x *CMsgShowcaseItem_Hero_Data) GetEconItems() []*CSOEconItem { + if x != nil { + return x.EconItems + } + return nil +} + +func (x *CMsgShowcaseItem_Hero_Data) GetActualHeroId() uint32 { + if x != nil && x.ActualHeroId != nil { + return *x.ActualHeroId + } + return 0 +} + +func (x *CMsgShowcaseItem_Hero_Data) GetPlusHeroXp() uint32 { + if x != nil && x.PlusHeroXp != nil { + return *x.PlusHeroXp + } + return 0 +} + +type CMsgShowcaseItem_HeroIcon_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EconItem *CSOEconItem `protobuf:"bytes,1,opt,name=econ_item,json=econItem" json:"econ_item,omitempty"` +} + +func (x *CMsgShowcaseItem_HeroIcon_Data) Reset() { + *x = CMsgShowcaseItem_HeroIcon_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_HeroIcon_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_HeroIcon_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_HeroIcon_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[52] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_HeroIcon_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_HeroIcon_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{5, 0} +} + +func (x *CMsgShowcaseItem_HeroIcon_Data) GetEconItem() *CSOEconItem { + if x != nil { + return x.EconItem + } + return nil +} + +type CMsgShowcaseItem_PlayerMatch_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + HeroId *uint32 `protobuf:"varint,1,opt,name=hero_id,json=heroId" json:"hero_id,omitempty"` + Timestamp *uint32 `protobuf:"varint,2,opt,name=timestamp" json:"timestamp,omitempty"` + Duration *uint32 `protobuf:"varint,3,opt,name=duration" json:"duration,omitempty"` + GameMode *DOTA_GameMode `protobuf:"varint,4,opt,name=game_mode,json=gameMode,enum=dota.DOTA_GameMode" json:"game_mode,omitempty"` + Outcome *CMsgShowcaseItem_PlayerMatch_EPlayerOutcome `protobuf:"varint,5,opt,name=outcome,enum=dota.CMsgShowcaseItem_PlayerMatch_EPlayerOutcome" json:"outcome,omitempty"` + Kills *uint32 `protobuf:"varint,6,opt,name=kills" json:"kills,omitempty"` + Deaths *uint32 `protobuf:"varint,7,opt,name=deaths" json:"deaths,omitempty"` + Assists *uint32 `protobuf:"varint,8,opt,name=assists" json:"assists,omitempty"` +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) Reset() { + *x = CMsgShowcaseItem_PlayerMatch_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[53] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_PlayerMatch_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[53] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_PlayerMatch_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_PlayerMatch_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{6, 0} +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) GetHeroId() uint32 { + if x != nil && x.HeroId != nil { + return *x.HeroId + } + return 0 +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) GetTimestamp() uint32 { + if x != nil && x.Timestamp != nil { + return *x.Timestamp + } + return 0 +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) GetDuration() uint32 { + if x != nil && x.Duration != nil { + return *x.Duration + } + return 0 +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) GetGameMode() DOTA_GameMode { + if x != nil && x.GameMode != nil { + return *x.GameMode + } + return DOTA_GameMode_DOTA_GAMEMODE_NONE +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) GetOutcome() CMsgShowcaseItem_PlayerMatch_EPlayerOutcome { + if x != nil && x.Outcome != nil { + return *x.Outcome + } + return CMsgShowcaseItem_PlayerMatch_k_eInvalid +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) GetKills() uint32 { + if x != nil && x.Kills != nil { + return *x.Kills + } + return 0 +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) GetDeaths() uint32 { + if x != nil && x.Deaths != nil { + return *x.Deaths + } + return 0 +} + +func (x *CMsgShowcaseItem_PlayerMatch_Data) GetAssists() uint32 { + if x != nil && x.Assists != nil { + return *x.Assists + } + return 0 +} + +type CMsgShowcaseItem_ChatWheel_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CMsgShowcaseItem_ChatWheel_Data) Reset() { + *x = CMsgShowcaseItem_ChatWheel_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[54] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_ChatWheel_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_ChatWheel_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_ChatWheel_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[54] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_ChatWheel_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_ChatWheel_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{7, 0} +} + +type CMsgShowcaseItem_Emoticon_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CMsgShowcaseItem_Emoticon_Data) Reset() { + *x = CMsgShowcaseItem_Emoticon_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[55] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_Emoticon_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_Emoticon_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_Emoticon_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[55] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_Emoticon_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_Emoticon_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{8, 0} +} + +type CMsgShowcaseItem_SpiderGraph_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CMsgShowcaseItem_SpiderGraph_Data) Reset() { + *x = CMsgShowcaseItem_SpiderGraph_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[56] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_SpiderGraph_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_SpiderGraph_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_SpiderGraph_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[56] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_SpiderGraph_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_SpiderGraph_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{9, 0} +} + +type CMsgShowcaseItem_UserFeed_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CMsgShowcaseItem_UserFeed_Data) Reset() { + *x = CMsgShowcaseItem_UserFeed_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[57] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_UserFeed_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_UserFeed_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_UserFeed_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[57] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_UserFeed_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_UserFeed_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{10, 0} +} + +type CMsgShowcaseItem_Stat_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + StatScore *uint32 `protobuf:"varint,1,opt,name=stat_score,json=statScore" json:"stat_score,omitempty"` +} + +func (x *CMsgShowcaseItem_Stat_Data) Reset() { + *x = CMsgShowcaseItem_Stat_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[58] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseItem_Stat_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseItem_Stat_Data) ProtoMessage() {} + +func (x *CMsgShowcaseItem_Stat_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[58] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseItem_Stat_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseItem_Stat_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{11, 0} +} + +func (x *CMsgShowcaseItem_Stat_Data) GetStatScore() uint32 { + if x != nil && x.StatScore != nil { + return *x.StatScore + } + return 0 +} + +type CMsgShowcaseBackground_Data struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LoadingScreen *CSOEconItem `protobuf:"bytes,1,opt,name=loading_screen,json=loadingScreen" json:"loading_screen,omitempty"` +} + +func (x *CMsgShowcaseBackground_Data) Reset() { + *x = CMsgShowcaseBackground_Data{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[59] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgShowcaseBackground_Data) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgShowcaseBackground_Data) ProtoMessage() {} + +func (x *CMsgShowcaseBackground_Data) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_showcase_proto_msgTypes[59] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgShowcaseBackground_Data.ProtoReflect.Descriptor instead. +func (*CMsgShowcaseBackground_Data) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_showcase_proto_rawDescGZIP(), []int{12, 0} +} + +func (x *CMsgShowcaseBackground_Data) GetLoadingScreen() *CSOEconItem { + if x != nil { + return x.LoadingScreen + } + return nil +} + +var File_dota_gcmessages_client_showcase_proto protoreflect.FileDescriptor + +var file_dota_gcmessages_client_showcase_proto_rawDesc = []byte{ + 0x0a, 0x25, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x73, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0x13, 0x73, + 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x1a, 0x17, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, + 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x64, 0x6f, 0x74, + 0x61, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x64, 0x6f, 0x74, 0x61, 0x5f, + 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x77, 0x65, 0x62, 0x61, 0x70, + 0x69, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x63, 0x73, 0x64, 0x6b, 0x5f, 0x67, + 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, + 0x15, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x65, 0x63, 0x6f, 0x6e, 0x5f, 0x67, 0x63, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x64, + 0x6f, 0x74, 0x61, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x76, 0x61, 0x6c, + 0x76, 0x65, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x22, 0xad, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x66, 0x65, 0x72, + 0x65, 0x6e, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6f, 0x72, 0x69, 0x67, 0x69, + 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x12, 0x30, 0x0a, 0x14, 0x65, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x6c, + 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, + 0x65, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x74, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x22, 0x28, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6c, + 0x75, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x99, 0x01, 0x0a, + 0x17, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x5f, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x12, 0x36, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x54, + 0x72, 0x6f, 0x70, 0x68, 0x79, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x49, 0x64, 0x1a, 0x29, 0x0a, + 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, + 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x6f, + 0x70, 0x68, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xc4, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, + 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x38, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, 0x6f, + 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x35, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x52, 0x03, 0x72, 0x65, 0x66, 0x1a, 0x36, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x2e, 0x0a, 0x09, 0x65, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, + 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x65, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x22, + 0xfb, 0x04, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x34, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, + 0x48, 0x65, 0x72, 0x6f, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x0e, 0x65, 0x63, 0x6f, 0x6e, + 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x72, 0x65, 0x66, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0c, 0x65, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, + 0x65, 0x66, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x69, 0x6e, + 0x66, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x75, 0x73, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x08, 0x70, 0x6c, 0x75, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, + 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x16, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, + 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x61, + 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x7a, 0x6f, 0x6f, 0x6d, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x7a, 0x6f, 0x6f, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6c, + 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x6f, 0x64, + 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x1a, 0x80, 0x01, 0x0a, 0x04, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x30, 0x0a, 0x0a, 0x65, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x09, 0x65, 0x63, 0x6f, 0x6e, + 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, + 0x63, 0x74, 0x75, 0x61, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, + 0x6c, 0x75, 0x73, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x78, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x75, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x58, 0x70, 0x22, 0xef, 0x01, + 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x63, 0x6f, 0x6e, 0x12, 0x38, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x63, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x47, + 0x0a, 0x0d, 0x65, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x72, 0x65, 0x66, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, + 0x6d, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0b, 0x65, 0x63, 0x6f, 0x6e, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x66, 0x1a, 0x36, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x2e, 0x0a, 0x09, 0x65, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, + 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x65, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x22, + 0x87, 0x04, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x12, 0x3b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, + 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x1a, 0xa0, 0x02, 0x0a, 0x04, 0x44, 0x61, + 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, + 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, + 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x4b, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x63, 0x6f, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, + 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x45, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x07, 0x6f, 0x75, 0x74, + 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, + 0x61, 0x74, 0x68, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, + 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x22, 0x4b, 0x0a, 0x0e, + 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x0a, + 0x0a, 0x06, 0x6b, 0x5f, 0x65, 0x57, 0x69, 0x6e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x6b, 0x5f, + 0x65, 0x4c, 0x6f, 0x73, 0x73, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, + 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x10, 0x03, 0x22, 0x92, 0x01, 0x0a, 0x1a, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x43, + 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x39, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x43, + 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x15, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, + 0x6c, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x1a, 0x06, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x7e, + 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x5f, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x38, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x5f, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x6d, 0x6f, 0x74, + 0x69, 0x63, 0x6f, 0x6e, 0x49, 0x64, 0x1a, 0x06, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x63, + 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x5f, 0x53, 0x70, 0x69, 0x64, 0x65, 0x72, 0x47, 0x72, 0x61, 0x70, 0x68, 0x12, 0x3b, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x53, 0x70, 0x69, 0x64, 0x65, 0x72, 0x47, 0x72, 0x61, 0x70, 0x68, + 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x06, 0x0a, 0x04, 0x44, + 0x61, 0x74, 0x61, 0x22, 0x5d, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x65, 0x64, + 0x12, 0x38, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x46, 0x65, 0x65, 0x64, 0x2e, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x06, 0x0a, 0x04, 0x44, 0x61, + 0x74, 0x61, 0x22, 0xb0, 0x01, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x12, 0x3a, 0x0a, 0x07, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x45, + 0x53, 0x74, 0x61, 0x74, 0x49, 0x44, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x49, 0x64, 0x1a, 0x25, + 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xaf, 0x02, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, + 0x12, 0x35, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2e, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x51, 0x0a, 0x12, 0x6c, 0x6f, 0x61, 0x64, 0x69, + 0x6e, 0x67, 0x5f, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x10, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x69, + 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x64, 0x69, 0x6d, 0x12, 0x12, 0x0a, 0x04, + 0x62, 0x6c, 0x75, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x6c, 0x75, 0x72, + 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x69, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, + 0x75, 0x6e, 0x64, 0x49, 0x64, 0x1a, 0x40, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, 0x38, 0x0a, + 0x0e, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, + 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x22, 0xb8, 0x09, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x37, 0x0a, 0x06, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x48, + 0x00, 0x52, 0x06, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x12, 0x47, 0x0a, 0x0e, 0x65, 0x63, 0x6f, + 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, + 0x65, 0x6d, 0x48, 0x00, 0x52, 0x0c, 0x65, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x63, + 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x07, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, 0x6f, 0x6e, + 0x49, 0x74, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x07, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x12, + 0x3c, 0x0a, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x48, 0x65, 0x72, 0x6f, + 0x48, 0x00, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x47, 0x0a, + 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x00, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x41, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, + 0x68, 0x65, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x48, 0x00, 0x52, 0x09, + 0x63, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x38, 0x0a, 0x05, 0x73, 0x70, 0x72, + 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, + 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x48, 0x00, 0x52, 0x05, 0x73, 0x70, + 0x72, 0x61, 0x79, 0x12, 0x3d, 0x0a, 0x08, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x6d, + 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, + 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x07, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, 0x6f, 0x6e, + 0x49, 0x74, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x07, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x12, + 0x35, 0x0a, 0x04, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x00, + 0x52, 0x04, 0x77, 0x61, 0x72, 0x64, 0x12, 0x3e, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, + 0x63, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x63, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x63, 0x6f, 0x6e, 0x12, 0x47, 0x0a, 0x0c, 0x73, 0x70, 0x69, 0x64, 0x65, 0x72, + 0x5f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x53, 0x70, 0x69, 0x64, 0x65, 0x72, 0x47, 0x72, 0x61, 0x70, 0x68, + 0x48, 0x00, 0x52, 0x0b, 0x73, 0x70, 0x69, 0x64, 0x65, 0x72, 0x47, 0x72, 0x61, 0x70, 0x68, 0x12, + 0x3e, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x66, 0x65, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x46, + 0x65, 0x65, 0x64, 0x48, 0x00, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x46, 0x65, 0x65, 0x64, 0x12, + 0x31, 0x0a, 0x04, 0x73, 0x74, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x48, 0x00, 0x52, 0x04, 0x73, 0x74, + 0x61, 0x74, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, 0x6f, 0x6e, 0x49, + 0x74, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x12, 0x37, 0x0a, + 0x05, 0x63, 0x72, 0x65, 0x65, 0x70, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x00, 0x52, + 0x05, 0x63, 0x72, 0x65, 0x65, 0x70, 0x12, 0x37, 0x0a, 0x05, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x18, + 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, + 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x00, 0x52, 0x05, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x12, + 0x39, 0x0a, 0x06, 0x65, 0x66, 0x66, 0x69, 0x67, 0x79, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, + 0x48, 0x00, 0x52, 0x06, 0x65, 0x66, 0x66, 0x69, 0x67, 0x79, 0x12, 0x3e, 0x0a, 0x0a, 0x62, 0x61, + 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x0a, + 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x42, 0x06, 0x0a, 0x04, 0x69, 0x74, + 0x65, 0x6d, 0x22, 0xf2, 0x02, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, 0x1d, + 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x12, 0x14, 0x0a, + 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, + 0x61, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, + 0x09, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x70, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, + 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x78, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, + 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x58, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x79, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, + 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x59, 0x22, 0x80, 0x02, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x28, 0x0a, 0x10, + 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x69, + 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x09, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x2e, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0xac, 0x02, 0x0a, 0x0c, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0e, 0x73, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0d, 0x73, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x36, 0x0a, 0x0a, 0x62, 0x61, + 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x12, 0x4e, 0x0a, 0x10, 0x6d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x2e, 0x45, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x52, 0x0f, 0x6d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x22, 0x55, 0x0a, 0x10, 0x45, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x4d, 0x6f, 0x64, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4f, 0x6b, 0x10, + 0x00, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, + 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x10, 0x01, 0x22, 0x7c, 0x0a, 0x21, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, + 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0xae, 0x02, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x08, + 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x22, 0x7a, 0x0a, 0x09, + 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, + 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, + 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, + 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, + 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, + 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x10, 0x05, 0x22, 0xb4, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x38, + 0x0a, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x73, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x08, + 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, + 0xc2, 0x03, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, + 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x12, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x52, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x6c, 0x6f, 0x63, 0x6b, 0x65, + 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x55, + 0x6e, 0x74, 0x69, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xc4, 0x01, + 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, + 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, + 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, + 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x10, 0x05, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x46, + 0x72, 0x6f, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, + 0x6b, 0x5f, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x45, 0x78, 0x63, 0x65, 0x65, 0x64, 0x65, + 0x64, 0x10, 0x07, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x54, 0x6f, 0x6f, 0x4c, + 0x6f, 0x77, 0x10, 0x08, 0x22, 0xb1, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x53, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x80, 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x7a, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, + 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, + 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, + 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x10, 0x05, 0x22, 0x8a, 0x01, 0x0a, 0x1d, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, + 0x09, 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x64, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x5e, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, + 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x07, 0x72, 0x6f, 0x6c, + 0x6c, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, + 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0d, 0x73, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xae, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, + 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x12, 0x44, 0x0a, 0x0b, 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, + 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x0a, 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4b, 0x0a, 0x0e, 0x72, + 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, + 0x6c, 0x6c, 0x75, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x72, 0x6f, 0x6c, 0x6c, 0x75, + 0x70, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x22, 0x31, 0x0a, 0x2f, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x22, 0xdd, 0x02, 0x0a, 0x37, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, + 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, + 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x0a, 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, + 0x73, 0x74, 0x22, 0x77, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, + 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, + 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x05, 0x22, 0x4a, 0x0a, 0x2b, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, + 0x6c, 0x6c, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, + 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x49, 0x64, 0x22, 0xda, 0x02, 0x0a, 0x33, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x5f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x43, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, + 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, + 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x37, 0x0a, 0x06, 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, + 0x70, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x22, 0x88, 0x01, 0x0a, 0x09, 0x45, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, + 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, + 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, + 0x6e, 0x64, 0x10, 0x06, 0x22, 0xce, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x38, 0x0a, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x0c, 0x61, 0x75, 0x64, + 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x61, 0x75, 0x64, + 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, + 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, + 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xd0, 0x01, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x2e, 0x0a, 0x13, + 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0d, + 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xcb, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x73, + 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x6c, 0x6f, 0x63, + 0x6b, 0x65, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6c, 0x6f, 0x63, 0x6b, 0x65, + 0x64, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, + 0x41, 0x0a, 0x0d, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x32, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x07, 0x72, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x22, 0x4a, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x22, 0xd2, 0x02, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, + 0x69, 0x6e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, + 0x55, 0x73, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x5f, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x77, + 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, + 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, + 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, + 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, + 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x05, 0x22, 0x88, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x12, 0x2a, 0x0a, 0x11, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0d, 0x73, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x22, 0xf9, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, + 0x69, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x54, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, + 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x77, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, + 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x05, 0x22, 0x8a, + 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, + 0x63, 0x6b, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, + 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x55, 0x6e, 0x74, + 0x69, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x85, 0x02, 0x0a, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, + 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, + 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x77, 0x0a, 0x09, 0x45, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, + 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, + 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x10, 0x05, 0x22, 0x8a, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, + 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x22, 0x97, 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, + 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x56, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, + 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x90, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, + 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, + 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, + 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, + 0x05, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x43, + 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x65, 0x64, 0x10, 0x06, 0x22, 0x8c, 0x01, 0x0a, 0x24, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x6f, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x38, 0x0a, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x9c, 0x02, 0x0a, 0x2c, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x6f, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x08, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, + 0x78, 0x6f, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x91, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, + 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, + 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x05, 0x12, 0x18, + 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x45, 0x78, 0x6f, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x10, 0x06, 0x22, 0xa4, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x2d, 0x0a, 0x12, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, + 0x76, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xc9, 0x02, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x51, + 0x75, 0x65, 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x08, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x09, 0x73, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x09, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x73, 0x22, 0x77, 0x0a, 0x09, 0x45, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, + 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, + 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x13, + 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x10, 0x05, 0x22, 0xd3, 0x01, 0x0a, 0x2f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, + 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x6f, 0x64, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x2d, 0x0a, 0x12, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, + 0x18, 0x0a, 0x07, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x22, 0xa5, 0x02, 0x0a, 0x37, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, + 0x70, 0x6c, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, + 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x84, 0x01, 0x0a, 0x09, 0x45, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, + 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, + 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, + 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, + 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x6b, 0x5f, 0x65, 0x47, 0x6f, 0x6e, 0x65, 0x10, + 0x06, 0x2a, 0x8b, 0x02, 0x0a, 0x15, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x48, + 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x75, 0x73, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x20, 0x0a, 0x1c, 0x6b, + 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6c, + 0x75, 0x73, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x27, 0x0a, + 0x23, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, + 0x50, 0x6c, 0x75, 0x73, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x50, 0x6f, + 0x73, 0x54, 0x6f, 0x70, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x75, 0x73, 0x46, 0x6c, 0x61, + 0x67, 0x5f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x42, 0x6f, 0x74, 0x74, 0x6f, 0x6d, + 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x75, 0x73, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x42, 0x61, + 0x64, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, + 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x50, + 0x6c, 0x75, 0x73, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x50, 0x6f, 0x73, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x10, 0x08, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x65, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x75, 0x73, 0x46, 0x6c, + 0x61, 0x67, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x73, 0x10, 0x10, 0x2a, + 0xb6, 0x01, 0x0a, 0x0d, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x1b, + 0x0a, 0x17, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x5f, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, + 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4d, + 0x69, 0x6e, 0x69, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x10, 0x02, 0x12, 0x22, 0x0a, 0x1e, + 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, + 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x10, 0x03, + 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x5f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4d, 0x69, 0x6e, 0x69, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x10, 0x04, 0x2a, 0xf7, 0x01, 0x0a, 0x12, 0x45, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, + 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4f, 0x6b, 0x10, 0x00, 0x12, 0x2b, 0x0a, 0x27, + 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4d, 0x69, 0x6e, 0x6f, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x01, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x65, + 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x5f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, + 0x6e, 0x10, 0x02, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x03, 0x12, 0x20, + 0x0a, 0x1c, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x04, + 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, + 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, + 0x10, 0x05, 0x2a, 0x9b, 0x03, 0x0a, 0x14, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x1e, 0x6b, + 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, + 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, + 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2d, 0x0a, 0x29, 0x6b, + 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x10, 0x02, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, + 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, + 0x03, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, + 0x6e, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x45, 0x78, 0x6f, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x65, 0x64, 0x10, 0x04, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, + 0x76, 0x69, 0x63, 0x74, 0x65, 0x64, 0x10, 0x05, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x65, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x10, 0x06, 0x12, 0x32, 0x0a, 0x2e, + 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0x07, + 0x2a, 0x5b, 0x0a, 0x11, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, + 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x4e, 0x6f, 0x6e, + 0x65, 0x10, 0x00, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x46, 0x6c, 0x69, 0x70, 0x48, + 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x79, 0x10, 0x01, 0x2a, 0x9f, 0x02, + 0x0a, 0x16, 0x45, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, + 0x6c, 0x61, 0x67, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x65, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x5f, + 0x48, 0x65, 0x72, 0x6f, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x29, 0x0a, 0x25, 0x6b, + 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6c, + 0x61, 0x67, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x50, 0x65, 0x64, 0x65, + 0x73, 0x74, 0x61, 0x6c, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x48, 0x65, + 0x72, 0x6f, 0x5f, 0x55, 0x73, 0x65, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x61, + 0x64, 0x6f, 0x75, 0x74, 0x10, 0x02, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x48, 0x65, + 0x72, 0x6f, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x48, 0x65, 0x72, 0x6f, 0x43, 0x61, 0x72, 0x64, 0x10, + 0x04, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x5f, 0x48, 0x65, + 0x72, 0x6f, 0x43, 0x61, 0x72, 0x64, 0x48, 0x69, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x08, + 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x49, + 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x5f, 0x48, 0x65, 0x72, + 0x6f, 0x43, 0x61, 0x72, 0x64, 0x55, 0x73, 0x65, 0x4d, 0x6f, 0x76, 0x69, 0x65, 0x10, 0x10, 0x42, + 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, + 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, + 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, +} + +var ( + file_dota_gcmessages_client_showcase_proto_rawDescOnce sync.Once + file_dota_gcmessages_client_showcase_proto_rawDescData = file_dota_gcmessages_client_showcase_proto_rawDesc +) + +func file_dota_gcmessages_client_showcase_proto_rawDescGZIP() []byte { + file_dota_gcmessages_client_showcase_proto_rawDescOnce.Do(func() { + file_dota_gcmessages_client_showcase_proto_rawDescData = protoimpl.X.CompressGZIP(file_dota_gcmessages_client_showcase_proto_rawDescData) + }) + return file_dota_gcmessages_client_showcase_proto_rawDescData +} + +var file_dota_gcmessages_client_showcase_proto_enumTypes = make([]protoimpl.EnumInfo, 20) +var file_dota_gcmessages_client_showcase_proto_msgTypes = make([]protoimpl.MessageInfo, 60) +var file_dota_gcmessages_client_showcase_proto_goTypes = []interface{}{ + (EShowcaseHeroPlusFlag)(0), // 0: dota.EShowcaseHeroPlusFlag + (EShowcaseType)(0), // 1: dota.EShowcaseType + (EShowcaseItemState)(0), // 2: dota.EShowcaseItemState + (EShowcaseAuditAction)(0), // 3: dota.EShowcaseAuditAction + (EShowcaseItemFlag)(0), // 4: dota.EShowcaseItemFlag + (EShowcaseItemFlag_Hero)(0), // 5: dota.EShowcaseItemFlag_Hero + (CMsgShowcaseItem_PlayerMatch_EPlayerOutcome)(0), // 6: dota.CMsgShowcaseItem_PlayerMatch.EPlayerOutcome + (CMsgShowcase_EModerationState)(0), // 7: dota.CMsgShowcase.EModerationState + (CMsgClientToGCShowcaseGetUserDataResponse_EResponse)(0), // 8: dota.CMsgClientToGCShowcaseGetUserDataResponse.EResponse + (CMsgClientToGCShowcaseSetUserDataResponse_EResponse)(0), // 9: dota.CMsgClientToGCShowcaseSetUserDataResponse.EResponse + (CMsgClientToGCShowcaseSubmitReportResponse_EResponse)(0), // 10: dota.CMsgClientToGCShowcaseSubmitReportResponse.EResponse + (CMsgClientToGCShowcaseAdminGetReportsRollupListResponse_EResponse)(0), // 11: dota.CMsgClientToGCShowcaseAdminGetReportsRollupListResponse.EResponse + (CMsgClientToGCShowcaseAdminGetReportsRollupResponse_EResponse)(0), // 12: dota.CMsgClientToGCShowcaseAdminGetReportsRollupResponse.EResponse + (CMsgClientToGCShowcaseAdminGetUserDetailsResponse_EResponse)(0), // 13: dota.CMsgClientToGCShowcaseAdminGetUserDetailsResponse.EResponse + (CMsgClientToGCShowcaseAdminResetResponse_EResponse)(0), // 14: dota.CMsgClientToGCShowcaseAdminResetResponse.EResponse + (CMsgClientToGCShowcaseAdminLockAccountResponse_EResponse)(0), // 15: dota.CMsgClientToGCShowcaseAdminLockAccountResponse.EResponse + (CMsgClientToGCShowcaseAdminConvictResponse_EResponse)(0), // 16: dota.CMsgClientToGCShowcaseAdminConvictResponse.EResponse + (CMsgClientToGCShowcaseAdminExonerateResponse_EResponse)(0), // 17: dota.CMsgClientToGCShowcaseAdminExonerateResponse.EResponse + (CMsgClientToGCShowcaseModerationGetQueueResponse_EResponse)(0), // 18: dota.CMsgClientToGCShowcaseModerationGetQueueResponse.EResponse + (CMsgClientToGCShowcaseModerationApplyModerationResponse_EResponse)(0), // 19: dota.CMsgClientToGCShowcaseModerationApplyModerationResponse.EResponse + (*CMsgShowcaseEconItemReference)(nil), // 20: dota.CMsgShowcaseEconItemReference + (*CMsgHeroPlusInfo)(nil), // 21: dota.CMsgHeroPlusInfo + (*CMsgShowcaseItem_Trophy)(nil), // 22: dota.CMsgShowcaseItem_Trophy + (*CMsgShowcaseItem_EconItem)(nil), // 23: dota.CMsgShowcaseItem_EconItem + (*CMsgShowcaseItem_Hero)(nil), // 24: dota.CMsgShowcaseItem_Hero + (*CMsgShowcaseItem_HeroIcon)(nil), // 25: dota.CMsgShowcaseItem_HeroIcon + (*CMsgShowcaseItem_PlayerMatch)(nil), // 26: dota.CMsgShowcaseItem_PlayerMatch + (*CMsgShowcaseItem_ChatWheel)(nil), // 27: dota.CMsgShowcaseItem_ChatWheel + (*CMsgShowcaseItem_Emoticon)(nil), // 28: dota.CMsgShowcaseItem_Emoticon + (*CMsgShowcaseItem_SpiderGraph)(nil), // 29: dota.CMsgShowcaseItem_SpiderGraph + (*CMsgShowcaseItem_UserFeed)(nil), // 30: dota.CMsgShowcaseItem_UserFeed + (*CMsgShowcaseItem_Stat)(nil), // 31: dota.CMsgShowcaseItem_Stat + (*CMsgShowcaseBackground)(nil), // 32: dota.CMsgShowcaseBackground + (*CMsgShowcaseItemData)(nil), // 33: dota.CMsgShowcaseItemData + (*CMsgShowcaseItemPosition)(nil), // 34: dota.CMsgShowcaseItemPosition + (*CMsgShowcaseItem)(nil), // 35: dota.CMsgShowcaseItem + (*CMsgShowcase)(nil), // 36: dota.CMsgShowcase + (*CMsgClientToGCShowcaseGetUserData)(nil), // 37: dota.CMsgClientToGCShowcaseGetUserData + (*CMsgClientToGCShowcaseGetUserDataResponse)(nil), // 38: dota.CMsgClientToGCShowcaseGetUserDataResponse + (*CMsgClientToGCShowcaseSetUserData)(nil), // 39: dota.CMsgClientToGCShowcaseSetUserData + (*CMsgClientToGCShowcaseSetUserDataResponse)(nil), // 40: dota.CMsgClientToGCShowcaseSetUserDataResponse + (*CMsgClientToGCShowcaseSubmitReport)(nil), // 41: dota.CMsgClientToGCShowcaseSubmitReport + (*CMsgClientToGCShowcaseSubmitReportResponse)(nil), // 42: dota.CMsgClientToGCShowcaseSubmitReportResponse + (*CMsgShowcaseReportsRollupInfo)(nil), // 43: dota.CMsgShowcaseReportsRollupInfo + (*CMsgShowcaseReportsRollupList)(nil), // 44: dota.CMsgShowcaseReportsRollupList + (*CMsgShowcaseReportsRollupEntry)(nil), // 45: dota.CMsgShowcaseReportsRollupEntry + (*CMsgShowcaseReportsRollup)(nil), // 46: dota.CMsgShowcaseReportsRollup + (*CMsgClientToGCShowcaseAdminGetReportsRollupList)(nil), // 47: dota.CMsgClientToGCShowcaseAdminGetReportsRollupList + (*CMsgClientToGCShowcaseAdminGetReportsRollupListResponse)(nil), // 48: dota.CMsgClientToGCShowcaseAdminGetReportsRollupListResponse + (*CMsgClientToGCShowcaseAdminGetReportsRollup)(nil), // 49: dota.CMsgClientToGCShowcaseAdminGetReportsRollup + (*CMsgClientToGCShowcaseAdminGetReportsRollupResponse)(nil), // 50: dota.CMsgClientToGCShowcaseAdminGetReportsRollupResponse + (*CMsgShowcaseAuditEntry)(nil), // 51: dota.CMsgShowcaseAuditEntry + (*CMsgShowcaseReport)(nil), // 52: dota.CMsgShowcaseReport + (*CMsgShowcaseAdminUserDetails)(nil), // 53: dota.CMsgShowcaseAdminUserDetails + (*CMsgClientToGCShowcaseAdminGetUserDetails)(nil), // 54: dota.CMsgClientToGCShowcaseAdminGetUserDetails + (*CMsgClientToGCShowcaseAdminGetUserDetailsResponse)(nil), // 55: dota.CMsgClientToGCShowcaseAdminGetUserDetailsResponse + (*CMsgClientToGCShowcaseAdminReset)(nil), // 56: dota.CMsgClientToGCShowcaseAdminReset + (*CMsgClientToGCShowcaseAdminResetResponse)(nil), // 57: dota.CMsgClientToGCShowcaseAdminResetResponse + (*CMsgClientToGCShowcaseAdminLockAccount)(nil), // 58: dota.CMsgClientToGCShowcaseAdminLockAccount + (*CMsgClientToGCShowcaseAdminLockAccountResponse)(nil), // 59: dota.CMsgClientToGCShowcaseAdminLockAccountResponse + (*CMsgClientToGCShowcaseAdminConvict)(nil), // 60: dota.CMsgClientToGCShowcaseAdminConvict + (*CMsgClientToGCShowcaseAdminConvictResponse)(nil), // 61: dota.CMsgClientToGCShowcaseAdminConvictResponse + (*CMsgClientToGCShowcaseAdminExonerate)(nil), // 62: dota.CMsgClientToGCShowcaseAdminExonerate + (*CMsgClientToGCShowcaseAdminExonerateResponse)(nil), // 63: dota.CMsgClientToGCShowcaseAdminExonerateResponse + (*CMsgShowcaseModerationInfo)(nil), // 64: dota.CMsgShowcaseModerationInfo + (*CMsgClientToGCShowcaseModerationGetQueue)(nil), // 65: dota.CMsgClientToGCShowcaseModerationGetQueue + (*CMsgClientToGCShowcaseModerationGetQueueResponse)(nil), // 66: dota.CMsgClientToGCShowcaseModerationGetQueueResponse + (*CMsgClientToGCShowcaseModerationApplyModeration)(nil), // 67: dota.CMsgClientToGCShowcaseModerationApplyModeration + (*CMsgClientToGCShowcaseModerationApplyModerationResponse)(nil), // 68: dota.CMsgClientToGCShowcaseModerationApplyModerationResponse + (*CMsgShowcaseItem_Trophy_Data)(nil), // 69: dota.CMsgShowcaseItem_Trophy.Data + (*CMsgShowcaseItem_EconItem_Data)(nil), // 70: dota.CMsgShowcaseItem_EconItem.Data + (*CMsgShowcaseItem_Hero_Data)(nil), // 71: dota.CMsgShowcaseItem_Hero.Data + (*CMsgShowcaseItem_HeroIcon_Data)(nil), // 72: dota.CMsgShowcaseItem_HeroIcon.Data + (*CMsgShowcaseItem_PlayerMatch_Data)(nil), // 73: dota.CMsgShowcaseItem_PlayerMatch.Data + (*CMsgShowcaseItem_ChatWheel_Data)(nil), // 74: dota.CMsgShowcaseItem_ChatWheel.Data + (*CMsgShowcaseItem_Emoticon_Data)(nil), // 75: dota.CMsgShowcaseItem_Emoticon.Data + (*CMsgShowcaseItem_SpiderGraph_Data)(nil), // 76: dota.CMsgShowcaseItem_SpiderGraph.Data + (*CMsgShowcaseItem_UserFeed_Data)(nil), // 77: dota.CMsgShowcaseItem_UserFeed.Data + (*CMsgShowcaseItem_Stat_Data)(nil), // 78: dota.CMsgShowcaseItem_Stat.Data + (*CMsgShowcaseBackground_Data)(nil), // 79: dota.CMsgShowcaseBackground.Data + (CMsgDOTAProfileCard_EStatID)(0), // 80: dota.CMsgDOTAProfileCard.EStatID + (*CSOEconItem)(nil), // 81: dota.CSOEconItem + (DOTA_GameMode)(0), // 82: dota.DOTA_GameMode +} +var file_dota_gcmessages_client_showcase_proto_depIdxs = []int32{ + 69, // 0: dota.CMsgShowcaseItem_Trophy.data:type_name -> dota.CMsgShowcaseItem_Trophy.Data + 70, // 1: dota.CMsgShowcaseItem_EconItem.data:type_name -> dota.CMsgShowcaseItem_EconItem.Data + 20, // 2: dota.CMsgShowcaseItem_EconItem.ref:type_name -> dota.CMsgShowcaseEconItemReference + 71, // 3: dota.CMsgShowcaseItem_Hero.data:type_name -> dota.CMsgShowcaseItem_Hero.Data + 20, // 4: dota.CMsgShowcaseItem_Hero.econ_item_refs:type_name -> dota.CMsgShowcaseEconItemReference + 21, // 5: dota.CMsgShowcaseItem_Hero.plus_info:type_name -> dota.CMsgHeroPlusInfo + 72, // 6: dota.CMsgShowcaseItem_HeroIcon.data:type_name -> dota.CMsgShowcaseItem_HeroIcon.Data + 20, // 7: dota.CMsgShowcaseItem_HeroIcon.econ_item_ref:type_name -> dota.CMsgShowcaseEconItemReference + 73, // 8: dota.CMsgShowcaseItem_PlayerMatch.data:type_name -> dota.CMsgShowcaseItem_PlayerMatch.Data + 74, // 9: dota.CMsgShowcaseItem_ChatWheel.data:type_name -> dota.CMsgShowcaseItem_ChatWheel.Data + 75, // 10: dota.CMsgShowcaseItem_Emoticon.data:type_name -> dota.CMsgShowcaseItem_Emoticon.Data + 76, // 11: dota.CMsgShowcaseItem_SpiderGraph.data:type_name -> dota.CMsgShowcaseItem_SpiderGraph.Data + 77, // 12: dota.CMsgShowcaseItem_UserFeed.data:type_name -> dota.CMsgShowcaseItem_UserFeed.Data + 78, // 13: dota.CMsgShowcaseItem_Stat.data:type_name -> dota.CMsgShowcaseItem_Stat.Data + 80, // 14: dota.CMsgShowcaseItem_Stat.stat_id:type_name -> dota.CMsgDOTAProfileCard.EStatID + 79, // 15: dota.CMsgShowcaseBackground.data:type_name -> dota.CMsgShowcaseBackground.Data + 20, // 16: dota.CMsgShowcaseBackground.loading_screen_ref:type_name -> dota.CMsgShowcaseEconItemReference + 22, // 17: dota.CMsgShowcaseItemData.trophy:type_name -> dota.CMsgShowcaseItem_Trophy + 23, // 18: dota.CMsgShowcaseItemData.econ_item_icon:type_name -> dota.CMsgShowcaseItem_EconItem + 23, // 19: dota.CMsgShowcaseItemData.sticker:type_name -> dota.CMsgShowcaseItem_EconItem + 24, // 20: dota.CMsgShowcaseItemData.hero_model:type_name -> dota.CMsgShowcaseItem_Hero + 26, // 21: dota.CMsgShowcaseItemData.player_match:type_name -> dota.CMsgShowcaseItem_PlayerMatch + 27, // 22: dota.CMsgShowcaseItemData.chat_wheel:type_name -> dota.CMsgShowcaseItem_ChatWheel + 27, // 23: dota.CMsgShowcaseItemData.spray:type_name -> dota.CMsgShowcaseItem_ChatWheel + 28, // 24: dota.CMsgShowcaseItemData.emoticon:type_name -> dota.CMsgShowcaseItem_Emoticon + 23, // 25: dota.CMsgShowcaseItemData.courier:type_name -> dota.CMsgShowcaseItem_EconItem + 23, // 26: dota.CMsgShowcaseItemData.ward:type_name -> dota.CMsgShowcaseItem_EconItem + 25, // 27: dota.CMsgShowcaseItemData.hero_icon:type_name -> dota.CMsgShowcaseItem_HeroIcon + 29, // 28: dota.CMsgShowcaseItemData.spider_graph:type_name -> dota.CMsgShowcaseItem_SpiderGraph + 30, // 29: dota.CMsgShowcaseItemData.user_feed:type_name -> dota.CMsgShowcaseItem_UserFeed + 31, // 30: dota.CMsgShowcaseItemData.stat:type_name -> dota.CMsgShowcaseItem_Stat + 23, // 31: dota.CMsgShowcaseItemData.roshan:type_name -> dota.CMsgShowcaseItem_EconItem + 23, // 32: dota.CMsgShowcaseItemData.creep:type_name -> dota.CMsgShowcaseItem_EconItem + 23, // 33: dota.CMsgShowcaseItemData.tower:type_name -> dota.CMsgShowcaseItem_EconItem + 23, // 34: dota.CMsgShowcaseItemData.effigy:type_name -> dota.CMsgShowcaseItem_EconItem + 32, // 35: dota.CMsgShowcaseItemData.background:type_name -> dota.CMsgShowcaseBackground + 34, // 36: dota.CMsgShowcaseItem.item_position:type_name -> dota.CMsgShowcaseItemPosition + 33, // 37: dota.CMsgShowcaseItem.item_data:type_name -> dota.CMsgShowcaseItemData + 2, // 38: dota.CMsgShowcaseItem.state:type_name -> dota.EShowcaseItemState + 35, // 39: dota.CMsgShowcase.showcase_items:type_name -> dota.CMsgShowcaseItem + 35, // 40: dota.CMsgShowcase.background:type_name -> dota.CMsgShowcaseItem + 7, // 41: dota.CMsgShowcase.moderation_state:type_name -> dota.CMsgShowcase.EModerationState + 1, // 42: dota.CMsgClientToGCShowcaseGetUserData.showcase_type:type_name -> dota.EShowcaseType + 8, // 43: dota.CMsgClientToGCShowcaseGetUserDataResponse.response:type_name -> dota.CMsgClientToGCShowcaseGetUserDataResponse.EResponse + 36, // 44: dota.CMsgClientToGCShowcaseGetUserDataResponse.showcase:type_name -> dota.CMsgShowcase + 1, // 45: dota.CMsgClientToGCShowcaseSetUserData.showcase_type:type_name -> dota.EShowcaseType + 36, // 46: dota.CMsgClientToGCShowcaseSetUserData.showcase:type_name -> dota.CMsgShowcase + 9, // 47: dota.CMsgClientToGCShowcaseSetUserDataResponse.response:type_name -> dota.CMsgClientToGCShowcaseSetUserDataResponse.EResponse + 36, // 48: dota.CMsgClientToGCShowcaseSetUserDataResponse.validated_showcase:type_name -> dota.CMsgShowcase + 1, // 49: dota.CMsgClientToGCShowcaseSubmitReport.showcase_type:type_name -> dota.EShowcaseType + 10, // 50: dota.CMsgClientToGCShowcaseSubmitReportResponse.response:type_name -> dota.CMsgClientToGCShowcaseSubmitReportResponse.EResponse + 43, // 51: dota.CMsgShowcaseReportsRollupList.rollups:type_name -> dota.CMsgShowcaseReportsRollupInfo + 1, // 52: dota.CMsgShowcaseReportsRollupEntry.showcase_type:type_name -> dota.EShowcaseType + 43, // 53: dota.CMsgShowcaseReportsRollup.rollup_info:type_name -> dota.CMsgShowcaseReportsRollupInfo + 45, // 54: dota.CMsgShowcaseReportsRollup.rollup_entries:type_name -> dota.CMsgShowcaseReportsRollupEntry + 11, // 55: dota.CMsgClientToGCShowcaseAdminGetReportsRollupListResponse.response:type_name -> dota.CMsgClientToGCShowcaseAdminGetReportsRollupListResponse.EResponse + 44, // 56: dota.CMsgClientToGCShowcaseAdminGetReportsRollupListResponse.rollup_list:type_name -> dota.CMsgShowcaseReportsRollupList + 12, // 57: dota.CMsgClientToGCShowcaseAdminGetReportsRollupResponse.response:type_name -> dota.CMsgClientToGCShowcaseAdminGetReportsRollupResponse.EResponse + 46, // 58: dota.CMsgClientToGCShowcaseAdminGetReportsRollupResponse.rollup:type_name -> dota.CMsgShowcaseReportsRollup + 1, // 59: dota.CMsgShowcaseAuditEntry.showcase_type:type_name -> dota.EShowcaseType + 3, // 60: dota.CMsgShowcaseAuditEntry.audit_action:type_name -> dota.EShowcaseAuditAction + 1, // 61: dota.CMsgShowcaseReport.showcase_type:type_name -> dota.EShowcaseType + 51, // 62: dota.CMsgShowcaseAdminUserDetails.audit_entries:type_name -> dota.CMsgShowcaseAuditEntry + 52, // 63: dota.CMsgShowcaseAdminUserDetails.reports:type_name -> dota.CMsgShowcaseReport + 13, // 64: dota.CMsgClientToGCShowcaseAdminGetUserDetailsResponse.response:type_name -> dota.CMsgClientToGCShowcaseAdminGetUserDetailsResponse.EResponse + 53, // 65: dota.CMsgClientToGCShowcaseAdminGetUserDetailsResponse.user_details:type_name -> dota.CMsgShowcaseAdminUserDetails + 1, // 66: dota.CMsgClientToGCShowcaseAdminReset.showcase_type:type_name -> dota.EShowcaseType + 14, // 67: dota.CMsgClientToGCShowcaseAdminResetResponse.response:type_name -> dota.CMsgClientToGCShowcaseAdminResetResponse.EResponse + 15, // 68: dota.CMsgClientToGCShowcaseAdminLockAccountResponse.response:type_name -> dota.CMsgClientToGCShowcaseAdminLockAccountResponse.EResponse + 1, // 69: dota.CMsgClientToGCShowcaseAdminConvict.showcase_type:type_name -> dota.EShowcaseType + 16, // 70: dota.CMsgClientToGCShowcaseAdminConvictResponse.response:type_name -> dota.CMsgClientToGCShowcaseAdminConvictResponse.EResponse + 1, // 71: dota.CMsgClientToGCShowcaseAdminExonerate.showcase_type:type_name -> dota.EShowcaseType + 17, // 72: dota.CMsgClientToGCShowcaseAdminExonerateResponse.response:type_name -> dota.CMsgClientToGCShowcaseAdminExonerateResponse.EResponse + 1, // 73: dota.CMsgShowcaseModerationInfo.showcase_type:type_name -> dota.EShowcaseType + 18, // 74: dota.CMsgClientToGCShowcaseModerationGetQueueResponse.response:type_name -> dota.CMsgClientToGCShowcaseModerationGetQueueResponse.EResponse + 64, // 75: dota.CMsgClientToGCShowcaseModerationGetQueueResponse.showcases:type_name -> dota.CMsgShowcaseModerationInfo + 1, // 76: dota.CMsgClientToGCShowcaseModerationApplyModeration.showcase_type:type_name -> dota.EShowcaseType + 19, // 77: dota.CMsgClientToGCShowcaseModerationApplyModerationResponse.response:type_name -> dota.CMsgClientToGCShowcaseModerationApplyModerationResponse.EResponse + 81, // 78: dota.CMsgShowcaseItem_EconItem.Data.econ_item:type_name -> dota.CSOEconItem + 81, // 79: dota.CMsgShowcaseItem_Hero.Data.econ_items:type_name -> dota.CSOEconItem + 81, // 80: dota.CMsgShowcaseItem_HeroIcon.Data.econ_item:type_name -> dota.CSOEconItem + 82, // 81: dota.CMsgShowcaseItem_PlayerMatch.Data.game_mode:type_name -> dota.DOTA_GameMode + 6, // 82: dota.CMsgShowcaseItem_PlayerMatch.Data.outcome:type_name -> dota.CMsgShowcaseItem_PlayerMatch.EPlayerOutcome + 81, // 83: dota.CMsgShowcaseBackground.Data.loading_screen:type_name -> dota.CSOEconItem + 84, // [84:84] is the sub-list for method output_type + 84, // [84:84] is the sub-list for method input_type + 84, // [84:84] is the sub-list for extension type_name + 84, // [84:84] is the sub-list for extension extendee + 0, // [0:84] is the sub-list for field type_name +} + +func init() { file_dota_gcmessages_client_showcase_proto_init() } +func file_dota_gcmessages_client_showcase_proto_init() { + if File_dota_gcmessages_client_showcase_proto != nil { + return + } + file_steammessages_proto_init() + file_dota_shared_enums_proto_init() + file_dota_gcmessages_common_proto_init() + file_dota_gcmessages_webapi_proto_init() + file_gcsdk_gcmessages_proto_init() + file_base_gcmessages_proto_init() + file_econ_gcmessages_proto_init() + file_dota_gcmessages_client_proto_init() + file_valveextensions_proto_init() + if !protoimpl.UnsafeEnabled { + file_dota_gcmessages_client_showcase_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseEconItemReference); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgHeroPlusInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_Trophy); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_EconItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_Hero); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_HeroIcon); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_PlayerMatch); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_ChatWheel); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_Emoticon); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_SpiderGraph); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_UserFeed); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_Stat); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseBackground); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItemData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItemPosition); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcase); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseGetUserData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseGetUserDataResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseSetUserData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseSetUserDataResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseSubmitReport); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseSubmitReportResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseReportsRollupInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseReportsRollupList); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseReportsRollupEntry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseReportsRollup); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminGetReportsRollupList); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminGetReportsRollupListResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminGetReportsRollup); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminGetReportsRollupResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseAuditEntry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseReport); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseAdminUserDetails); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminGetUserDetails); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminGetUserDetailsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminReset); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminResetResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminLockAccount); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminLockAccountResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminConvict); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminConvictResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminExonerate); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseAdminExonerateResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseModerationInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseModerationGetQueue); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseModerationGetQueueResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseModerationApplyModeration); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgClientToGCShowcaseModerationApplyModerationResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_Trophy_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_EconItem_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_Hero_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_HeroIcon_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_PlayerMatch_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_ChatWheel_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_Emoticon_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_SpiderGraph_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_UserFeed_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseItem_Stat_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgShowcaseBackground_Data); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_dota_gcmessages_client_showcase_proto_msgTypes[13].OneofWrappers = []interface{}{ + (*CMsgShowcaseItemData_Trophy)(nil), + (*CMsgShowcaseItemData_EconItemIcon)(nil), + (*CMsgShowcaseItemData_Sticker)(nil), + (*CMsgShowcaseItemData_HeroModel)(nil), + (*CMsgShowcaseItemData_PlayerMatch)(nil), + (*CMsgShowcaseItemData_ChatWheel)(nil), + (*CMsgShowcaseItemData_Spray)(nil), + (*CMsgShowcaseItemData_Emoticon)(nil), + (*CMsgShowcaseItemData_Courier)(nil), + (*CMsgShowcaseItemData_Ward)(nil), + (*CMsgShowcaseItemData_HeroIcon)(nil), + (*CMsgShowcaseItemData_SpiderGraph)(nil), + (*CMsgShowcaseItemData_UserFeed)(nil), + (*CMsgShowcaseItemData_Stat)(nil), + (*CMsgShowcaseItemData_Roshan)(nil), + (*CMsgShowcaseItemData_Creep)(nil), + (*CMsgShowcaseItemData_Tower)(nil), + (*CMsgShowcaseItemData_Effigy)(nil), + (*CMsgShowcaseItemData_Background)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_dota_gcmessages_client_showcase_proto_rawDesc, + NumEnums: 20, + NumMessages: 60, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_dota_gcmessages_client_showcase_proto_goTypes, + DependencyIndexes: file_dota_gcmessages_client_showcase_proto_depIdxs, + EnumInfos: file_dota_gcmessages_client_showcase_proto_enumTypes, + MessageInfos: file_dota_gcmessages_client_showcase_proto_msgTypes, + }.Build() + File_dota_gcmessages_client_showcase_proto = out.File + file_dota_gcmessages_client_showcase_proto_rawDesc = nil + file_dota_gcmessages_client_showcase_proto_goTypes = nil + file_dota_gcmessages_client_showcase_proto_depIdxs = nil +} diff --git a/dota/dota_gcmessages_client_showcase.proto b/dota/dota_gcmessages_client_showcase.proto new file mode 100644 index 00000000..9f4608f5 --- /dev/null +++ b/dota/dota_gcmessages_client_showcase.proto @@ -0,0 +1,533 @@ +syntax = "proto2"; + +package dota; +option go_package = "github.com/dotabuff/manta/dota;dota"; + +import "steammessages.proto"; +import "dota_shared_enums.proto"; +import "dota_gcmessages_common.proto"; +import "dota_gcmessages_webapi.proto"; +import "gcsdk_gcmessages.proto"; +import "base_gcmessages.proto"; +import "econ_gcmessages.proto"; +import "dota_gcmessages_client.proto"; +import "valveextensions.proto"; + +enum EShowcaseHeroPlusFlag { + k_eShowcaseHeroPlusFlag_None = 0; + k_eShowcaseHeroPlusFlag_BadgePosTop = 1; + k_eShowcaseHeroPlusFlag_BadgePosBottom = 2; + k_eShowcaseHeroPlusFlag_BadgePosLeft = 4; + k_eShowcaseHeroPlusFlag_BadgePosRight = 8; + k_eShowcaseHeroPlusFlag_ShowRelics = 16; +} + +enum EShowcaseType { + k_eShowcaseType_Invalid = 0; + k_eShowcaseType_Profile = 1; + k_eShowcaseType_MiniProfile = 2; + k_eShowcaseType_DefaultProfile = 3; + k_eShowcaseType_DefaultMiniProfile = 4; +} + +enum EShowcaseItemState { + k_eShowcaseItemState_Ok = 0; + k_eShowcaseItemState_MinorModifications = 1; + k_eShowcaseItemState_ValidityUnknown = 2; + k_eShowcaseItemState_PartiallyInvalid = 3; + k_eShowcaseItemState_Invalid = 4; + k_eShowcaseItemState_Failure = 5; +} + +enum EShowcaseAuditAction { + k_eShowcaseAuditAction_Invalid = 0; + k_eShowcaseAuditAction_ShowcaseChanged = 1; + k_eShowcaseAuditAction_AdminShowcaseReset = 2; + k_eShowcaseAuditAction_AdminShowcaseAccountLocked = 3; + k_eShowcaseAuditAction_AdminShowcaseExonerated = 4; + k_eShowcaseAuditAction_AdminShowcaseConvicted = 5; + k_eShowcaseAuditAction_AdminModerationApproved = 6; + k_eShowcaseAuditAction_AdminModerationRejected = 7; +} + +enum EShowcaseItemFlag { + k_eShowcaseItemFlag_None = 0; + k_eShowcaseItemFlag_FlipHorizontally = 1; +} + +enum EShowcaseItemFlag_Hero { + k_eShowcaseItemFlag_Hero_None = 0; + k_eShowcaseItemFlag_Hero_ShowPedestal = 1; + k_eShowcaseItemFlag_Hero_UseCurrentLoadout = 2; + k_eShowcaseItemFlag_Hero_ShowHeroCard = 4; + k_eShowcaseItemFlag_Hero_HeroCardHideName = 8; + k_eShowcaseItemFlag_Hero_HeroCardUseMovie = 16; +} + +message CMsgShowcaseEconItemReference { + optional uint64 id = 1; + optional uint64 original_id = 2; + optional uint32 definition_index = 3; + optional int32 equipment_slot_index = 4; +} + +message CMsgHeroPlusInfo { + optional uint32 flags = 1; +} + +message CMsgShowcaseItem_Trophy { + message Data { + optional uint32 trophy_score = 1; + } + + optional CMsgShowcaseItem_Trophy.Data data = 1; + optional uint32 trophy_id = 2; +} + +message CMsgShowcaseItem_EconItem { + message Data { + optional CSOEconItem econ_item = 1; + } + + optional CMsgShowcaseItem_EconItem.Data data = 1; + optional CMsgShowcaseEconItemReference ref = 2; +} + +message CMsgShowcaseItem_Hero { + message Data { + repeated CSOEconItem econ_items = 1; + optional uint32 actual_hero_id = 2; + optional uint32 plus_hero_xp = 3; + } + + optional CMsgShowcaseItem_Hero.Data data = 1; + optional uint32 hero_id = 2; + repeated CMsgShowcaseEconItemReference econ_item_refs = 3; + optional uint32 rotation = 4; + optional uint32 flags = 5; + optional CMsgHeroPlusInfo plus_info = 6; + optional string animation_name = 7; + optional uint32 animation_playback_speed = 8; + optional uint32 animation_offset = 9; + optional uint32 zoom = 10; + optional uint32 slot_index = 11; + optional uint32 model_index = 12; +} + +message CMsgShowcaseItem_HeroIcon { + message Data { + optional CSOEconItem econ_item = 1; + } + + optional CMsgShowcaseItem_HeroIcon.Data data = 1; + optional uint32 hero_id = 2; + optional CMsgShowcaseEconItemReference econ_item_ref = 3; +} + +message CMsgShowcaseItem_PlayerMatch { + message Data { + optional uint32 hero_id = 1; + optional uint32 timestamp = 2; + optional uint32 duration = 3; + optional DOTA_GameMode game_mode = 4; + optional CMsgShowcaseItem_PlayerMatch.EPlayerOutcome outcome = 5; + optional uint32 kills = 6; + optional uint32 deaths = 7; + optional uint32 assists = 8; + } + + enum EPlayerOutcome { + k_eInvalid = 0; + k_eWin = 1; + k_eLoss = 2; + k_eNotScored = 3; + } + + optional CMsgShowcaseItem_PlayerMatch.Data data = 1; + optional uint64 match_id = 2; + optional uint32 player_slot = 3; +} + +message CMsgShowcaseItem_ChatWheel { + message Data { + } + + optional CMsgShowcaseItem_ChatWheel.Data data = 1; + optional uint32 chat_wheel_message_id = 2; +} + +message CMsgShowcaseItem_Emoticon { + message Data { + } + + optional CMsgShowcaseItem_Emoticon.Data data = 1; + optional uint32 emoticon_id = 2; +} + +message CMsgShowcaseItem_SpiderGraph { + message Data { + } + + optional CMsgShowcaseItem_SpiderGraph.Data data = 1; +} + +message CMsgShowcaseItem_UserFeed { + message Data { + } + + optional CMsgShowcaseItem_UserFeed.Data data = 1; +} + +message CMsgShowcaseItem_Stat { + message Data { + optional uint32 stat_score = 1; + } + + optional CMsgShowcaseItem_Stat.Data data = 1; + optional CMsgDOTAProfileCard.EStatID stat_id = 2; +} + +message CMsgShowcaseBackground { + message Data { + optional CSOEconItem loading_screen = 1; + } + + optional CMsgShowcaseBackground.Data data = 1; + optional CMsgShowcaseEconItemReference loading_screen_ref = 2; + optional uint32 dim = 3; + optional uint32 blur = 4; + optional uint32 background_id = 5; +} + +message CMsgShowcaseItemData { + oneof item { + CMsgShowcaseItem_Trophy trophy = 1; + CMsgShowcaseItem_EconItem econ_item_icon = 2; + CMsgShowcaseItem_EconItem sticker = 3; + CMsgShowcaseItem_Hero hero_model = 4; + CMsgShowcaseItem_PlayerMatch player_match = 5; + CMsgShowcaseItem_ChatWheel chat_wheel = 6; + CMsgShowcaseItem_ChatWheel spray = 7; + CMsgShowcaseItem_Emoticon emoticon = 8; + CMsgShowcaseItem_EconItem courier = 10; + CMsgShowcaseItem_EconItem ward = 11; + CMsgShowcaseItem_HeroIcon hero_icon = 12; + CMsgShowcaseItem_SpiderGraph spider_graph = 13; + CMsgShowcaseItem_UserFeed user_feed = 14; + CMsgShowcaseItem_Stat stat = 15; + CMsgShowcaseItem_EconItem roshan = 16; + CMsgShowcaseItem_EconItem creep = 17; + CMsgShowcaseItem_EconItem tower = 18; + CMsgShowcaseItem_EconItem effigy = 19; + CMsgShowcaseBackground background = 100; + } +} + +message CMsgShowcaseItemPosition { + optional int32 position_x = 1; + optional int32 position_y = 2; + optional uint32 scale = 3; + optional uint32 width = 4; + optional uint32 height = 5; + optional uint32 rotation = 6; + optional uint32 parent_id = 7; + optional uint32 parent_attachment_point_id = 8; + optional uint32 attachment_anchor_x = 9; + optional uint32 attachment_anchor_y = 10; +} + +message CMsgShowcaseItem { + optional uint32 showcase_item_id = 1; + optional CMsgShowcaseItemPosition item_position = 2; + optional CMsgShowcaseItemData item_data = 3; + optional EShowcaseItemState state = 4; + optional uint32 flags = 5; +} + +message CMsgShowcase { + enum EModerationState { + k_eModerationState_Ok = 0; + k_eModerationState_PendingApproval = 1; + } + + repeated CMsgShowcaseItem showcase_items = 1; + optional CMsgShowcaseItem background = 3; + optional CMsgShowcase.EModerationState moderation_state = 4; +} + +message CMsgClientToGCShowcaseGetUserData { + optional uint32 account_id = 1; + optional EShowcaseType showcase_type = 2; +} + +message CMsgClientToGCShowcaseGetUserDataResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eUnknownShowcase = 5; + } + + optional CMsgClientToGCShowcaseGetUserDataResponse.EResponse response = 1; + optional CMsgShowcase showcase = 2; +} + +message CMsgClientToGCShowcaseSetUserData { + optional EShowcaseType showcase_type = 1; + optional CMsgShowcase showcase = 2; + optional uint32 format_version = 3; +} + +message CMsgClientToGCShowcaseSetUserDataResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eInvalid = 5; + k_eLockedFromEditing = 6; + k_eBudgetExceeded = 7; + k_eCommunicationScoreTooLow = 8; + } + + optional CMsgClientToGCShowcaseSetUserDataResponse.EResponse response = 1; + optional CMsgShowcase validated_showcase = 2; + optional uint32 locked_until_timestamp = 3; +} + +message CMsgClientToGCShowcaseSubmitReport { + optional uint32 target_account_id = 1; + optional EShowcaseType showcase_type = 2; + optional string report_comment = 3; +} + +message CMsgClientToGCShowcaseSubmitReportResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eAlreadyReported = 5; + } + + optional CMsgClientToGCShowcaseSubmitReportResponse.EResponse response = 1; +} + +message CMsgShowcaseReportsRollupInfo { + optional uint32 rollup_id = 1; + optional uint32 start_timestamp = 2; + optional uint32 end_timestamp = 3; +} + +message CMsgShowcaseReportsRollupList { + repeated CMsgShowcaseReportsRollupInfo rollups = 1; +} + +message CMsgShowcaseReportsRollupEntry { + optional uint32 account_id = 1; + optional EShowcaseType showcase_type = 2; + optional uint32 report_count = 3; +} + +message CMsgShowcaseReportsRollup { + optional CMsgShowcaseReportsRollupInfo rollup_info = 1; + repeated CMsgShowcaseReportsRollupEntry rollup_entries = 2; +} + +message CMsgClientToGCShowcaseAdminGetReportsRollupList { +} + +message CMsgClientToGCShowcaseAdminGetReportsRollupListResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + } + + optional CMsgClientToGCShowcaseAdminGetReportsRollupListResponse.EResponse response = 1; + optional CMsgShowcaseReportsRollupList rollup_list = 2; +} + +message CMsgClientToGCShowcaseAdminGetReportsRollup { + optional uint32 rollup_id = 1; +} + +message CMsgClientToGCShowcaseAdminGetReportsRollupResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + k_eNotFound = 6; + } + + optional CMsgClientToGCShowcaseAdminGetReportsRollupResponse.EResponse response = 1; + optional CMsgShowcaseReportsRollup rollup = 2; +} + +message CMsgShowcaseAuditEntry { + optional EShowcaseType showcase_type = 1; + optional EShowcaseAuditAction audit_action = 2; + optional uint64 audit_data = 3; + optional uint32 timestamp = 4; +} + +message CMsgShowcaseReport { + optional uint32 reporter_account_id = 1; + optional EShowcaseType showcase_type = 2; + optional uint32 report_timestamp = 3; + optional string report_comment = 4; +} + +message CMsgShowcaseAdminUserDetails { + optional uint32 locked_until_timestamp = 1; + repeated CMsgShowcaseAuditEntry audit_entries = 2; + repeated CMsgShowcaseReport reports = 3; +} + +message CMsgClientToGCShowcaseAdminGetUserDetails { + optional uint32 account_id = 1; +} + +message CMsgClientToGCShowcaseAdminGetUserDetailsResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + } + + optional CMsgClientToGCShowcaseAdminGetUserDetailsResponse.EResponse response = 1; + optional CMsgShowcaseAdminUserDetails user_details = 2; +} + +message CMsgClientToGCShowcaseAdminReset { + optional uint32 target_account_id = 1; + optional EShowcaseType showcase_type = 2; +} + +message CMsgClientToGCShowcaseAdminResetResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + } + + optional CMsgClientToGCShowcaseAdminResetResponse.EResponse response = 1; +} + +message CMsgClientToGCShowcaseAdminLockAccount { + optional uint32 target_account_id = 1; + optional uint32 locked_until_timestamp = 2; +} + +message CMsgClientToGCShowcaseAdminLockAccountResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + } + + optional CMsgClientToGCShowcaseAdminLockAccountResponse.EResponse response = 1; +} + +message CMsgClientToGCShowcaseAdminConvict { + optional uint32 target_account_id = 1; + optional EShowcaseType showcase_type = 2; +} + +message CMsgClientToGCShowcaseAdminConvictResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + k_eAlreadyConvicted = 6; + } + + optional CMsgClientToGCShowcaseAdminConvictResponse.EResponse response = 1; +} + +message CMsgClientToGCShowcaseAdminExonerate { + optional uint32 target_account_id = 1; + optional EShowcaseType showcase_type = 2; +} + +message CMsgClientToGCShowcaseAdminExonerateResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + k_eAlreadyExonerated = 6; + } + + optional CMsgClientToGCShowcaseAdminExonerateResponse.EResponse response = 1; +} + +message CMsgShowcaseModerationInfo { + optional uint32 account_id = 1; + optional EShowcaseType showcase_type = 2; + optional uint32 showcase_timestamp = 3; +} + +message CMsgClientToGCShowcaseModerationGetQueue { + optional uint32 start_timestamp = 1; + optional uint32 result_count = 2; +} + +message CMsgClientToGCShowcaseModerationGetQueueResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + } + + optional CMsgClientToGCShowcaseModerationGetQueueResponse.EResponse response = 1; + repeated CMsgShowcaseModerationInfo showcases = 2; +} + +message CMsgClientToGCShowcaseModerationApplyModeration { + optional uint32 account_id = 1; + optional EShowcaseType showcase_type = 2; + optional uint32 showcase_timestamp = 3; + optional bool approve = 4; +} + +message CMsgClientToGCShowcaseModerationApplyModerationResponse { + enum EResponse { + k_eInternalError = 0; + k_eSuccess = 1; + k_eTooBusy = 2; + k_eDisabled = 3; + k_eTimeout = 4; + k_eNoPermission = 5; + k_eGone = 6; + } + + optional CMsgClientToGCShowcaseModerationApplyModerationResponse.EResponse response = 1; +} diff --git a/dota/dota_gcmessages_client_team.pb.go b/dota/dota_gcmessages_client_team.pb.go index d2a04624..6510b575 100644 --- a/dota/dota_gcmessages_client_team.pb.go +++ b/dota/dota_gcmessages_client_team.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_team.proto @@ -216,7 +216,7 @@ func (x *CMsgDOTACreateTeamResponse_Result) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTACreateTeamResponse_Result.Descriptor instead. func (CMsgDOTACreateTeamResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{5, 0} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{6, 0} } type CMsgDOTAEditTeamDetailsResponse_Result int32 @@ -281,7 +281,7 @@ func (x *CMsgDOTAEditTeamDetailsResponse_Result) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTAEditTeamDetailsResponse_Result.Descriptor instead. func (CMsgDOTAEditTeamDetailsResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{7, 0} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{8, 0} } type CMsgDOTAKickTeamMemberResponse_Result int32 @@ -349,7 +349,7 @@ func (x *CMsgDOTAKickTeamMemberResponse_Result) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTAKickTeamMemberResponse_Result.Descriptor instead. func (CMsgDOTAKickTeamMemberResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{15, 0} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{16, 0} } type CMsgDOTATransferTeamAdminResponse_Result int32 @@ -417,7 +417,7 @@ func (x *CMsgDOTATransferTeamAdminResponse_Result) UnmarshalJSON(b []byte) error // Deprecated: Use CMsgDOTATransferTeamAdminResponse_Result.Descriptor instead. func (CMsgDOTATransferTeamAdminResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{17, 0} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{18, 0} } type CMsgDOTALeaveTeamResponse_Result int32 @@ -479,7 +479,7 @@ func (x *CMsgDOTALeaveTeamResponse_Result) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTALeaveTeamResponse_Result.Descriptor instead. func (CMsgDOTALeaveTeamResponse_Result) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{19, 0} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{20, 0} } type CMsgDOTATeamInfo struct { @@ -855,6 +855,61 @@ func (x *CMsgDOTATeamInfoList) GetTeams() []*CMsgDOTATeamInfo { return nil } +type CMsgDOTATeamInfoCache struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CacheTimestamp *uint32 `protobuf:"varint,1,opt,name=cache_timestamp,json=cacheTimestamp" json:"cache_timestamp,omitempty"` + TeamList *CMsgDOTATeamInfoList `protobuf:"bytes,2,opt,name=team_list,json=teamList" json:"team_list,omitempty"` +} + +func (x *CMsgDOTATeamInfoCache) Reset() { + *x = CMsgDOTATeamInfoCache{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_client_team_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgDOTATeamInfoCache) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgDOTATeamInfoCache) ProtoMessage() {} + +func (x *CMsgDOTATeamInfoCache) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_client_team_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgDOTATeamInfoCache.ProtoReflect.Descriptor instead. +func (*CMsgDOTATeamInfoCache) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{3} +} + +func (x *CMsgDOTATeamInfoCache) GetCacheTimestamp() uint32 { + if x != nil && x.CacheTimestamp != nil { + return *x.CacheTimestamp + } + return 0 +} + +func (x *CMsgDOTATeamInfoCache) GetTeamList() *CMsgDOTATeamInfoList { + if x != nil { + return x.TeamList + } + return nil +} + type CMsgDOTAMyTeamInfoRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -864,7 +919,7 @@ type CMsgDOTAMyTeamInfoRequest struct { func (x *CMsgDOTAMyTeamInfoRequest) Reset() { *x = CMsgDOTAMyTeamInfoRequest{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[3] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -877,7 +932,7 @@ func (x *CMsgDOTAMyTeamInfoRequest) String() string { func (*CMsgDOTAMyTeamInfoRequest) ProtoMessage() {} func (x *CMsgDOTAMyTeamInfoRequest) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[3] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -890,7 +945,7 @@ func (x *CMsgDOTAMyTeamInfoRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMyTeamInfoRequest.ProtoReflect.Descriptor instead. func (*CMsgDOTAMyTeamInfoRequest) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{3} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{4} } type CMsgDOTACreateTeam struct { @@ -913,7 +968,7 @@ type CMsgDOTACreateTeam struct { func (x *CMsgDOTACreateTeam) Reset() { *x = CMsgDOTACreateTeam{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[4] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -926,7 +981,7 @@ func (x *CMsgDOTACreateTeam) String() string { func (*CMsgDOTACreateTeam) ProtoMessage() {} func (x *CMsgDOTACreateTeam) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[4] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -939,7 +994,7 @@ func (x *CMsgDOTACreateTeam) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTACreateTeam.ProtoReflect.Descriptor instead. func (*CMsgDOTACreateTeam) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{4} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{5} } func (x *CMsgDOTACreateTeam) GetName() string { @@ -1024,7 +1079,7 @@ type CMsgDOTACreateTeamResponse struct { func (x *CMsgDOTACreateTeamResponse) Reset() { *x = CMsgDOTACreateTeamResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[5] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1037,7 +1092,7 @@ func (x *CMsgDOTACreateTeamResponse) String() string { func (*CMsgDOTACreateTeamResponse) ProtoMessage() {} func (x *CMsgDOTACreateTeamResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[5] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1050,7 +1105,7 @@ func (x *CMsgDOTACreateTeamResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTACreateTeamResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTACreateTeamResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{5} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{6} } func (x *CMsgDOTACreateTeamResponse) GetResult() CMsgDOTACreateTeamResponse_Result { @@ -1088,7 +1143,7 @@ type CMsgDOTAEditTeamDetails struct { func (x *CMsgDOTAEditTeamDetails) Reset() { *x = CMsgDOTAEditTeamDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[6] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1101,7 +1156,7 @@ func (x *CMsgDOTAEditTeamDetails) String() string { func (*CMsgDOTAEditTeamDetails) ProtoMessage() {} func (x *CMsgDOTAEditTeamDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[6] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1114,7 +1169,7 @@ func (x *CMsgDOTAEditTeamDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAEditTeamDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTAEditTeamDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{6} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{7} } func (x *CMsgDOTAEditTeamDetails) GetTeamId() uint32 { @@ -1205,7 +1260,7 @@ type CMsgDOTAEditTeamDetailsResponse struct { func (x *CMsgDOTAEditTeamDetailsResponse) Reset() { *x = CMsgDOTAEditTeamDetailsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[7] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1218,7 +1273,7 @@ func (x *CMsgDOTAEditTeamDetailsResponse) String() string { func (*CMsgDOTAEditTeamDetailsResponse) ProtoMessage() {} func (x *CMsgDOTAEditTeamDetailsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[7] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1231,7 +1286,7 @@ func (x *CMsgDOTAEditTeamDetailsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAEditTeamDetailsResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAEditTeamDetailsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{7} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{8} } func (x *CMsgDOTAEditTeamDetailsResponse) GetResult() CMsgDOTAEditTeamDetailsResponse_Result { @@ -1253,7 +1308,7 @@ type CMsgDOTATeamInvite_InviterToGC struct { func (x *CMsgDOTATeamInvite_InviterToGC) Reset() { *x = CMsgDOTATeamInvite_InviterToGC{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[8] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1266,7 +1321,7 @@ func (x *CMsgDOTATeamInvite_InviterToGC) String() string { func (*CMsgDOTATeamInvite_InviterToGC) ProtoMessage() {} func (x *CMsgDOTATeamInvite_InviterToGC) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[8] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1279,7 +1334,7 @@ func (x *CMsgDOTATeamInvite_InviterToGC) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTATeamInvite_InviterToGC.ProtoReflect.Descriptor instead. func (*CMsgDOTATeamInvite_InviterToGC) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{8} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{9} } func (x *CMsgDOTATeamInvite_InviterToGC) GetAccountId() uint32 { @@ -1309,7 +1364,7 @@ type CMsgDOTATeamInvite_GCImmediateResponseToInviter struct { func (x *CMsgDOTATeamInvite_GCImmediateResponseToInviter) Reset() { *x = CMsgDOTATeamInvite_GCImmediateResponseToInviter{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[9] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1322,7 +1377,7 @@ func (x *CMsgDOTATeamInvite_GCImmediateResponseToInviter) String() string { func (*CMsgDOTATeamInvite_GCImmediateResponseToInviter) ProtoMessage() {} func (x *CMsgDOTATeamInvite_GCImmediateResponseToInviter) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[9] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1335,7 +1390,7 @@ func (x *CMsgDOTATeamInvite_GCImmediateResponseToInviter) ProtoReflect() protore // Deprecated: Use CMsgDOTATeamInvite_GCImmediateResponseToInviter.ProtoReflect.Descriptor instead. func (*CMsgDOTATeamInvite_GCImmediateResponseToInviter) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{9} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{10} } func (x *CMsgDOTATeamInvite_GCImmediateResponseToInviter) GetResult() ETeamInviteResult { @@ -1373,7 +1428,7 @@ type CMsgDOTATeamInvite_GCRequestToInvitee struct { func (x *CMsgDOTATeamInvite_GCRequestToInvitee) Reset() { *x = CMsgDOTATeamInvite_GCRequestToInvitee{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[10] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1386,7 +1441,7 @@ func (x *CMsgDOTATeamInvite_GCRequestToInvitee) String() string { func (*CMsgDOTATeamInvite_GCRequestToInvitee) ProtoMessage() {} func (x *CMsgDOTATeamInvite_GCRequestToInvitee) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[10] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1399,7 +1454,7 @@ func (x *CMsgDOTATeamInvite_GCRequestToInvitee) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTATeamInvite_GCRequestToInvitee.ProtoReflect.Descriptor instead. func (*CMsgDOTATeamInvite_GCRequestToInvitee) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{10} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{11} } func (x *CMsgDOTATeamInvite_GCRequestToInvitee) GetInviterAccountId() uint32 { @@ -1441,7 +1496,7 @@ type CMsgDOTATeamInvite_InviteeResponseToGC struct { func (x *CMsgDOTATeamInvite_InviteeResponseToGC) Reset() { *x = CMsgDOTATeamInvite_InviteeResponseToGC{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[11] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1454,7 +1509,7 @@ func (x *CMsgDOTATeamInvite_InviteeResponseToGC) String() string { func (*CMsgDOTATeamInvite_InviteeResponseToGC) ProtoMessage() {} func (x *CMsgDOTATeamInvite_InviteeResponseToGC) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[11] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1467,7 +1522,7 @@ func (x *CMsgDOTATeamInvite_InviteeResponseToGC) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgDOTATeamInvite_InviteeResponseToGC.ProtoReflect.Descriptor instead. func (*CMsgDOTATeamInvite_InviteeResponseToGC) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{11} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{12} } func (x *CMsgDOTATeamInvite_InviteeResponseToGC) GetResult() ETeamInviteResult { @@ -1489,7 +1544,7 @@ type CMsgDOTATeamInvite_GCResponseToInviter struct { func (x *CMsgDOTATeamInvite_GCResponseToInviter) Reset() { *x = CMsgDOTATeamInvite_GCResponseToInviter{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[12] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1502,7 +1557,7 @@ func (x *CMsgDOTATeamInvite_GCResponseToInviter) String() string { func (*CMsgDOTATeamInvite_GCResponseToInviter) ProtoMessage() {} func (x *CMsgDOTATeamInvite_GCResponseToInviter) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[12] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1515,7 +1570,7 @@ func (x *CMsgDOTATeamInvite_GCResponseToInviter) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgDOTATeamInvite_GCResponseToInviter.ProtoReflect.Descriptor instead. func (*CMsgDOTATeamInvite_GCResponseToInviter) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{12} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{13} } func (x *CMsgDOTATeamInvite_GCResponseToInviter) GetResult() ETeamInviteResult { @@ -1544,7 +1599,7 @@ type CMsgDOTATeamInvite_GCResponseToInvitee struct { func (x *CMsgDOTATeamInvite_GCResponseToInvitee) Reset() { *x = CMsgDOTATeamInvite_GCResponseToInvitee{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[13] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1557,7 +1612,7 @@ func (x *CMsgDOTATeamInvite_GCResponseToInvitee) String() string { func (*CMsgDOTATeamInvite_GCResponseToInvitee) ProtoMessage() {} func (x *CMsgDOTATeamInvite_GCResponseToInvitee) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[13] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1570,7 +1625,7 @@ func (x *CMsgDOTATeamInvite_GCResponseToInvitee) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgDOTATeamInvite_GCResponseToInvitee.ProtoReflect.Descriptor instead. func (*CMsgDOTATeamInvite_GCResponseToInvitee) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{13} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{14} } func (x *CMsgDOTATeamInvite_GCResponseToInvitee) GetResult() ETeamInviteResult { @@ -1599,7 +1654,7 @@ type CMsgDOTAKickTeamMember struct { func (x *CMsgDOTAKickTeamMember) Reset() { *x = CMsgDOTAKickTeamMember{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[14] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1612,7 +1667,7 @@ func (x *CMsgDOTAKickTeamMember) String() string { func (*CMsgDOTAKickTeamMember) ProtoMessage() {} func (x *CMsgDOTAKickTeamMember) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[14] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1625,7 +1680,7 @@ func (x *CMsgDOTAKickTeamMember) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAKickTeamMember.ProtoReflect.Descriptor instead. func (*CMsgDOTAKickTeamMember) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{14} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{15} } func (x *CMsgDOTAKickTeamMember) GetAccountId() uint32 { @@ -1653,7 +1708,7 @@ type CMsgDOTAKickTeamMemberResponse struct { func (x *CMsgDOTAKickTeamMemberResponse) Reset() { *x = CMsgDOTAKickTeamMemberResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[15] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1666,7 +1721,7 @@ func (x *CMsgDOTAKickTeamMemberResponse) String() string { func (*CMsgDOTAKickTeamMemberResponse) ProtoMessage() {} func (x *CMsgDOTAKickTeamMemberResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[15] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1679,7 +1734,7 @@ func (x *CMsgDOTAKickTeamMemberResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAKickTeamMemberResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAKickTeamMemberResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{15} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{16} } func (x *CMsgDOTAKickTeamMemberResponse) GetResult() CMsgDOTAKickTeamMemberResponse_Result { @@ -1701,7 +1756,7 @@ type CMsgDOTATransferTeamAdmin struct { func (x *CMsgDOTATransferTeamAdmin) Reset() { *x = CMsgDOTATransferTeamAdmin{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[16] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1714,7 +1769,7 @@ func (x *CMsgDOTATransferTeamAdmin) String() string { func (*CMsgDOTATransferTeamAdmin) ProtoMessage() {} func (x *CMsgDOTATransferTeamAdmin) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[16] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1727,7 +1782,7 @@ func (x *CMsgDOTATransferTeamAdmin) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTATransferTeamAdmin.ProtoReflect.Descriptor instead. func (*CMsgDOTATransferTeamAdmin) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{16} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{17} } func (x *CMsgDOTATransferTeamAdmin) GetNewAdminAccountId() uint32 { @@ -1755,7 +1810,7 @@ type CMsgDOTATransferTeamAdminResponse struct { func (x *CMsgDOTATransferTeamAdminResponse) Reset() { *x = CMsgDOTATransferTeamAdminResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[17] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1768,7 +1823,7 @@ func (x *CMsgDOTATransferTeamAdminResponse) String() string { func (*CMsgDOTATransferTeamAdminResponse) ProtoMessage() {} func (x *CMsgDOTATransferTeamAdminResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[17] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1781,7 +1836,7 @@ func (x *CMsgDOTATransferTeamAdminResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTATransferTeamAdminResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTATransferTeamAdminResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{17} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{18} } func (x *CMsgDOTATransferTeamAdminResponse) GetResult() CMsgDOTATransferTeamAdminResponse_Result { @@ -1802,7 +1857,7 @@ type CMsgDOTALeaveTeam struct { func (x *CMsgDOTALeaveTeam) Reset() { *x = CMsgDOTALeaveTeam{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[18] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1815,7 +1870,7 @@ func (x *CMsgDOTALeaveTeam) String() string { func (*CMsgDOTALeaveTeam) ProtoMessage() {} func (x *CMsgDOTALeaveTeam) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[18] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1828,7 +1883,7 @@ func (x *CMsgDOTALeaveTeam) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTALeaveTeam.ProtoReflect.Descriptor instead. func (*CMsgDOTALeaveTeam) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{18} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{19} } func (x *CMsgDOTALeaveTeam) GetTeamId() uint32 { @@ -1849,7 +1904,7 @@ type CMsgDOTALeaveTeamResponse struct { func (x *CMsgDOTALeaveTeamResponse) Reset() { *x = CMsgDOTALeaveTeamResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[19] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1862,7 +1917,7 @@ func (x *CMsgDOTALeaveTeamResponse) String() string { func (*CMsgDOTALeaveTeamResponse) ProtoMessage() {} func (x *CMsgDOTALeaveTeamResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[19] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1875,7 +1930,7 @@ func (x *CMsgDOTALeaveTeamResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTALeaveTeamResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTALeaveTeamResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{19} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{20} } func (x *CMsgDOTALeaveTeamResponse) GetResult() CMsgDOTALeaveTeamResponse_Result { @@ -1896,7 +1951,7 @@ type CMsgDOTABetaParticipation struct { func (x *CMsgDOTABetaParticipation) Reset() { *x = CMsgDOTABetaParticipation{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[20] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1909,7 +1964,7 @@ func (x *CMsgDOTABetaParticipation) String() string { func (*CMsgDOTABetaParticipation) ProtoMessage() {} func (x *CMsgDOTABetaParticipation) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[20] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1922,7 +1977,7 @@ func (x *CMsgDOTABetaParticipation) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTABetaParticipation.ProtoReflect.Descriptor instead. func (*CMsgDOTABetaParticipation) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{20} + return file_dota_gcmessages_client_team_proto_rawDescGZIP(), []int{21} } func (x *CMsgDOTABetaParticipation) GetAccessRights() uint32 { @@ -1951,7 +2006,7 @@ type CMsgDOTATeamInfo_HeroStats struct { func (x *CMsgDOTATeamInfo_HeroStats) Reset() { *x = CMsgDOTATeamInfo_HeroStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[21] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1964,7 +2019,7 @@ func (x *CMsgDOTATeamInfo_HeroStats) String() string { func (*CMsgDOTATeamInfo_HeroStats) ProtoMessage() {} func (x *CMsgDOTATeamInfo_HeroStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[21] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2060,7 +2115,7 @@ type CMsgDOTATeamInfo_MemberStats struct { func (x *CMsgDOTATeamInfo_MemberStats) Reset() { *x = CMsgDOTATeamInfo_MemberStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[22] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2073,7 +2128,7 @@ func (x *CMsgDOTATeamInfo_MemberStats) String() string { func (*CMsgDOTATeamInfo_MemberStats) ProtoMessage() {} func (x *CMsgDOTATeamInfo_MemberStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[22] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2155,7 +2210,7 @@ type CMsgDOTATeamInfo_TeamStats struct { func (x *CMsgDOTATeamInfo_TeamStats) Reset() { *x = CMsgDOTATeamInfo_TeamStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[23] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2168,7 +2223,7 @@ func (x *CMsgDOTATeamInfo_TeamStats) String() string { func (*CMsgDOTATeamInfo_TeamStats) ProtoMessage() {} func (x *CMsgDOTATeamInfo_TeamStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[23] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2248,7 +2303,7 @@ type CMsgDOTATeamInfo_DPCResult struct { func (x *CMsgDOTATeamInfo_DPCResult) Reset() { *x = CMsgDOTATeamInfo_DPCResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[24] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2261,7 +2316,7 @@ func (x *CMsgDOTATeamInfo_DPCResult) String() string { func (*CMsgDOTATeamInfo_DPCResult) ProtoMessage() {} func (x *CMsgDOTATeamInfo_DPCResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[24] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2328,7 +2383,7 @@ type CMsgDOTATeamInfo_Member struct { func (x *CMsgDOTATeamInfo_Member) Reset() { *x = CMsgDOTATeamInfo_Member{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[25] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2341,7 +2396,7 @@ func (x *CMsgDOTATeamInfo_Member) String() string { func (*CMsgDOTATeamInfo_Member) ProtoMessage() {} func (x *CMsgDOTATeamInfo_Member) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[25] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2412,7 +2467,7 @@ type CMsgDOTATeamInfo_AuditEntry struct { func (x *CMsgDOTATeamInfo_AuditEntry) Reset() { *x = CMsgDOTATeamInfo_AuditEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[26] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2425,7 +2480,7 @@ func (x *CMsgDOTATeamInfo_AuditEntry) String() string { func (*CMsgDOTATeamInfo_AuditEntry) ProtoMessage() {} func (x *CMsgDOTATeamInfo_AuditEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_client_team_proto_msgTypes[26] + mi := &file_dota_gcmessages_client_team_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2631,252 +2686,260 @@ var file_dota_gcmessages_client_team_proto_rawDesc = []byte{ 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x22, 0x1b, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa9, 0x02, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, - 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6c, - 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x4c, - 0x6f, 0x67, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6c, 0x6f, - 0x67, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, - 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x5f, - 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x6f, 0x72, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, - 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, - 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x22, 0x0a, - 0x0c, 0x61, 0x62, 0x62, 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x62, 0x62, 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0xa3, 0x04, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x3f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0xaa, 0x03, 0x0a, 0x06, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x07, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, - 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x53, - 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x41, 0x4d, 0x45, - 0x5f, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x41, 0x4d, 0x45, - 0x5f, 0x42, 0x41, 0x44, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x53, 0x10, - 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x54, 0x41, 0x4b, 0x45, 0x4e, 0x10, - 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, - 0x4e, 0x47, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x41, 0x47, 0x5f, 0x45, 0x4d, 0x50, 0x54, - 0x59, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x54, 0x41, 0x47, 0x5f, 0x42, 0x41, 0x44, 0x5f, 0x43, - 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x53, 0x10, 0x06, 0x12, 0x0d, 0x0a, 0x09, 0x54, - 0x41, 0x47, 0x5f, 0x54, 0x41, 0x4b, 0x45, 0x4e, 0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x41, - 0x47, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x08, 0x12, 0x10, 0x0a, 0x0c, - 0x43, 0x52, 0x45, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x42, 0x55, 0x53, 0x59, 0x10, 0x09, 0x12, 0x15, - 0x0a, 0x11, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x45, 0x52, - 0x52, 0x4f, 0x52, 0x10, 0x0a, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x4f, 0x52, - 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x41, 0x43, - 0x48, 0x45, 0x44, 0x10, 0x0b, 0x12, 0x0b, 0x0a, 0x07, 0x4e, 0x4f, 0x5f, 0x4c, 0x4f, 0x47, 0x4f, - 0x10, 0x0c, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x52, 0x45, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x54, 0x45, - 0x41, 0x4d, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4f, 0x4c, - 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x0d, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x4f, 0x47, 0x4f, 0x5f, 0x55, - 0x50, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x0e, 0x12, 0x1d, - 0x0a, 0x19, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x5f, 0x54, - 0x4f, 0x4f, 0x5f, 0x52, 0x45, 0x43, 0x45, 0x4e, 0x54, 0x4c, 0x59, 0x10, 0x0f, 0x12, 0x1e, 0x0a, - 0x1a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, - 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x10, 0x10, 0x12, 0x18, 0x0a, - 0x14, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x11, 0x22, 0xcd, 0x02, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x45, 0x64, 0x69, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, - 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6c, - 0x6f, 0x67, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x4c, - 0x6f, 0x67, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6c, 0x6f, - 0x67, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, - 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x5f, - 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x6f, 0x72, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, - 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x25, 0x0a, 0x0f, - 0x69, 0x6e, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x42, 0x79, 0x50, 0x61, - 0x72, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x62, 0x62, 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x62, 0x62, 0x72, 0x65, - 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf1, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x45, 0x64, 0x69, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x45, 0x64, 0x69, 0x74, 0x54, - 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x22, 0x87, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, - 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x49, - 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, - 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x46, - 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, - 0x52, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x54, - 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, - 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, - 0x49, 0x45, 0x44, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x22, 0x58, 0x0a, 0x1e, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, + 0x6f, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x22, 0x79, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x37, 0x0a, 0x09, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, + 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x69, 0x73, 0x74, 0x22, 0x1b, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x79, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x22, 0xa9, 0x02, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, + 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x12, 0x0a, + 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x6c, 0x6f, 0x67, + 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x1f, + 0x0a, 0x0b, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x6f, 0x12, + 0x21, 0x0a, 0x0c, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x4c, 0x6f, + 0x67, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, + 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, + 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x69, 0x63, 0x6b, 0x75, + 0x70, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x69, + 0x63, 0x6b, 0x75, 0x70, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x62, 0x62, 0x72, + 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x61, 0x62, 0x62, 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa3, 0x04, 0x0a, + 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, + 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, - 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0xb3, 0x01, 0x0a, 0x2f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x49, - 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, - 0x12, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xa1, 0x01, 0x0a, 0x25, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x5f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x49, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, - 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6c, - 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x22, - 0x59, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x47, 0x43, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x7c, 0x0a, 0x26, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x5f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, 0x6e, 0x76, + 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0xaa, 0x03, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x14, 0x0a, 0x07, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, + 0x53, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x45, 0x4d, 0x50, 0x54, + 0x59, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x42, 0x41, 0x44, 0x5f, + 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x53, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, + 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x54, 0x41, 0x4b, 0x45, 0x4e, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, + 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x04, 0x12, + 0x0d, 0x0a, 0x09, 0x54, 0x41, 0x47, 0x5f, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x10, 0x05, 0x12, 0x16, + 0x0a, 0x12, 0x54, 0x41, 0x47, 0x5f, 0x42, 0x41, 0x44, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, + 0x54, 0x45, 0x52, 0x53, 0x10, 0x06, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x41, 0x47, 0x5f, 0x54, 0x41, + 0x4b, 0x45, 0x4e, 0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x41, 0x47, 0x5f, 0x54, 0x4f, 0x4f, + 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x08, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x52, 0x45, 0x41, 0x54, + 0x4f, 0x52, 0x5f, 0x42, 0x55, 0x53, 0x59, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x55, 0x4e, 0x53, + 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x0a, + 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x52, 0x45, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x54, 0x45, 0x41, 0x4d, + 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x41, 0x43, 0x48, 0x45, 0x44, 0x10, 0x0b, + 0x12, 0x0b, 0x0a, 0x07, 0x4e, 0x4f, 0x5f, 0x4c, 0x4f, 0x47, 0x4f, 0x10, 0x0c, 0x12, 0x22, 0x0a, + 0x1e, 0x43, 0x52, 0x45, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x52, + 0x45, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4f, 0x4c, 0x44, 0x4f, 0x57, 0x4e, 0x10, + 0x0d, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x4f, 0x47, 0x4f, 0x5f, 0x55, 0x50, 0x4c, 0x4f, 0x41, 0x44, + 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x0e, 0x12, 0x1d, 0x0a, 0x19, 0x4e, 0x41, 0x4d, + 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x52, 0x45, + 0x43, 0x45, 0x4e, 0x54, 0x4c, 0x59, 0x10, 0x0f, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x52, 0x45, 0x41, + 0x54, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, + 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x10, 0x10, 0x12, 0x18, 0x0a, 0x14, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x10, 0x11, 0x22, 0xcd, 0x02, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x45, + 0x64, 0x69, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x17, + 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, + 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x12, 0x0a, + 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x6c, 0x6f, 0x67, + 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x1f, + 0x0a, 0x0b, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x6f, 0x12, + 0x21, 0x0a, 0x0c, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x4c, 0x6f, + 0x67, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, + 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, + 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x25, 0x0a, 0x0f, 0x69, 0x6e, 0x5f, 0x75, 0x73, + 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0c, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x42, 0x79, 0x50, 0x61, 0x72, 0x74, 0x79, 0x12, 0x22, + 0x0a, 0x0c, 0x61, 0x62, 0x62, 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x62, 0x62, 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0xf1, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x45, + 0x64, 0x69, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x45, 0x64, 0x69, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x87, 0x01, 0x0a, + 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, + 0x53, 0x53, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, + 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, + 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x02, 0x12, 0x17, + 0x0a, 0x13, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x4c, + 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x49, 0x4c, 0x55, + 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x45, + 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x22, 0x58, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, + 0x22, 0xb3, 0x01, 0x0a, 0x2f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, + 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x76, - 0x69, 0x74, 0x65, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x76, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, - 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, - 0x22, 0x50, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4b, 0x69, 0x63, 0x6b, - 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, - 0x49, 0x64, 0x22, 0x94, 0x02, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4b, - 0x69, 0x63, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4b, 0x69, 0x63, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xac, 0x01, 0x0a, 0x06, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, - 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x49, 0x4e, - 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, - 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, - 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x4b, 0x49, - 0x43, 0x4b, 0x45, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, - 0x03, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x54, 0x45, 0x41, - 0x4d, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x41, - 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, - 0x44, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x22, 0x65, 0x0a, 0x19, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x65, 0x61, - 0x6d, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x2f, 0x0a, 0x14, 0x6e, 0x65, 0x77, 0x5f, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6e, 0x65, 0x77, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, - 0x22, 0x8d, 0x02, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x65, - 0x61, 0x6d, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x9f, - 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, - 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, - 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, - 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x41, 0x49, 0x4c, - 0x55, 0x52, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x10, 0x02, 0x12, - 0x18, 0x0a, 0x14, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x53, 0x41, 0x4d, 0x45, 0x5f, - 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x41, 0x49, - 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, - 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, - 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, - 0x22, 0x2c, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, - 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0xc2, - 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, 0x65, - 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, - 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x65, 0x0a, 0x06, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, - 0x53, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x4e, - 0x4f, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x46, - 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, - 0x45, 0x44, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, - 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x10, 0x03, 0x22, 0x40, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, - 0x65, 0x74, 0x61, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x69, 0x67, 0x68, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, - 0x69, 0x67, 0x68, 0x74, 0x73, 0x2a, 0xde, 0x04, 0x0a, 0x11, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x17, 0x0a, 0x13, 0x54, - 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, - 0x53, 0x53, 0x10, 0x00, 0x12, 0x27, 0x0a, 0x23, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, - 0x49, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x49, - 0x54, 0x45, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x26, 0x0a, - 0x22, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, - 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x54, 0x49, 0x4d, 0x45, - 0x4f, 0x55, 0x54, 0x10, 0x02, 0x12, 0x2a, 0x0a, 0x26, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, - 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, - 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, - 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, - 0x45, 0x44, 0x10, 0x04, 0x12, 0x2b, 0x0a, 0x27, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, - 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, - 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, - 0x05, 0x12, 0x22, 0x0a, 0x1e, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x45, 0x5f, 0x42, - 0x55, 0x53, 0x59, 0x10, 0x06, 0x12, 0x2c, 0x0a, 0x28, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, + 0x69, 0x74, 0x65, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, + 0x69, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x50, 0x6c, + 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xa1, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, + 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x69, 0x6e, + 0x76, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, + 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x6f, 0x22, 0x59, 0x0a, 0x26, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, + 0x5f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x54, 0x6f, 0x47, 0x43, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x54, 0x65, 0x61, + 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x7c, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x12, + 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, + 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0x76, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, + 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x12, 0x2f, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1b, + 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x50, 0x0a, 0x16, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4b, 0x69, 0x63, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x94, 0x02, + 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4b, 0x69, 0x63, 0x6b, 0x54, 0x65, + 0x61, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x43, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x4b, 0x69, 0x63, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xac, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x20, 0x0a, + 0x1c, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, + 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x01, 0x12, + 0x1c, 0x0a, 0x18, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, + 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x1d, 0x0a, + 0x19, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x45, 0x5f, + 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, + 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x4f, 0x43, + 0x4b, 0x45, 0x44, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, + 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x10, 0x05, 0x22, 0x65, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x41, 0x64, 0x6d, 0x69, + 0x6e, 0x12, 0x2f, 0x0a, 0x14, 0x6e, 0x65, 0x77, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x11, 0x6e, 0x65, 0x77, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x8d, 0x02, 0x0a, 0x21, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, + 0x54, 0x65, 0x61, 0x6d, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x46, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x41, 0x64, 0x6d, + 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x9f, 0x01, 0x0a, 0x06, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, + 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x49, 0x4e, 0x56, + 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x4e, + 0x4f, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x41, + 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x53, 0x41, 0x4d, 0x45, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, + 0x4e, 0x54, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, + 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, + 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, + 0x49, 0x45, 0x44, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x22, 0x2c, 0x0a, 0x11, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0xc2, 0x01, 0x0a, 0x19, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x65, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x16, + 0x0a, 0x12, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x4d, 0x45, + 0x4d, 0x42, 0x45, 0x52, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, + 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x02, 0x12, + 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, + 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x40, + 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x65, 0x74, 0x61, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x61, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, + 0x2a, 0xde, 0x04, 0x0a, 0x11, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x17, 0x0a, 0x13, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, + 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, + 0x27, 0x0a, 0x23, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x46, + 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x52, 0x45, + 0x4a, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x26, 0x0a, 0x22, 0x54, 0x45, 0x41, 0x4d, + 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, + 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x02, + 0x12, 0x2a, 0x0a, 0x26, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, + 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x04, 0x12, + 0x2b, 0x0a, 0x27, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, + 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x45, 0x5f, 0x4e, 0x4f, 0x54, + 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x05, 0x12, 0x22, 0x0a, 0x1e, + 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x45, 0x5f, 0x42, 0x55, 0x53, 0x59, 0x10, 0x06, + 0x12, 0x2c, 0x0a, 0x28, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x45, 0x5f, 0x41, 0x4c, + 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x07, 0x12, 0x2b, + 0x0a, 0x27, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x45, 0x5f, 0x41, 0x54, 0x5f, 0x54, + 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, 0x08, 0x12, 0x34, 0x0a, 0x30, 0x54, + 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x45, 0x5f, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, + 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, + 0x09, 0x12, 0x32, 0x0a, 0x2e, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x52, 0x5f, 0x49, + 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x10, 0x0a, 0x12, 0x27, 0x0a, 0x23, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, - 0x45, 0x45, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, - 0x52, 0x10, 0x07, 0x12, 0x2b, 0x0a, 0x27, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, - 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x45, - 0x5f, 0x41, 0x54, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, 0x08, - 0x12, 0x34, 0x0a, 0x30, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x45, 0x5f, 0x49, 0x4e, - 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x5f, - 0x54, 0x49, 0x4d, 0x45, 0x10, 0x09, 0x12, 0x32, 0x0a, 0x2e, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, - 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x49, - 0x54, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x41, 0x43, 0x43, 0x4f, - 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x0a, 0x12, 0x27, 0x0a, 0x23, 0x54, 0x45, - 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, - 0x4e, 0x10, 0x0b, 0x12, 0x2e, 0x0a, 0x2a, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, - 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, - 0x43, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x44, 0x45, - 0x44, 0x10, 0x0c, 0x12, 0x21, 0x0a, 0x1d, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, - 0x54, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, - 0x46, 0x49, 0x45, 0x44, 0x10, 0x0d, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, - 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x10, 0x0b, 0x12, 0x2e, + 0x0a, 0x2a, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x55, 0x53, + 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x21, + 0x0a, 0x1d, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x5f, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x0d, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, + 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -2892,7 +2955,7 @@ func file_dota_gcmessages_client_team_proto_rawDescGZIP() []byte { } var file_dota_gcmessages_client_team_proto_enumTypes = make([]protoimpl.EnumInfo, 6) -var file_dota_gcmessages_client_team_proto_msgTypes = make([]protoimpl.MessageInfo, 27) +var file_dota_gcmessages_client_team_proto_msgTypes = make([]protoimpl.MessageInfo, 28) var file_dota_gcmessages_client_team_proto_goTypes = []interface{}{ (ETeamInviteResult)(0), // 0: dota.ETeamInviteResult (CMsgDOTACreateTeamResponse_Result)(0), // 1: dota.CMsgDOTACreateTeamResponse.Result @@ -2903,59 +2966,61 @@ var file_dota_gcmessages_client_team_proto_goTypes = []interface{}{ (*CMsgDOTATeamInfo)(nil), // 6: dota.CMsgDOTATeamInfo (*CMsgDOTATeamsInfo)(nil), // 7: dota.CMsgDOTATeamsInfo (*CMsgDOTATeamInfoList)(nil), // 8: dota.CMsgDOTATeamInfoList - (*CMsgDOTAMyTeamInfoRequest)(nil), // 9: dota.CMsgDOTAMyTeamInfoRequest - (*CMsgDOTACreateTeam)(nil), // 10: dota.CMsgDOTACreateTeam - (*CMsgDOTACreateTeamResponse)(nil), // 11: dota.CMsgDOTACreateTeamResponse - (*CMsgDOTAEditTeamDetails)(nil), // 12: dota.CMsgDOTAEditTeamDetails - (*CMsgDOTAEditTeamDetailsResponse)(nil), // 13: dota.CMsgDOTAEditTeamDetailsResponse - (*CMsgDOTATeamInvite_InviterToGC)(nil), // 14: dota.CMsgDOTATeamInvite_InviterToGC - (*CMsgDOTATeamInvite_GCImmediateResponseToInviter)(nil), // 15: dota.CMsgDOTATeamInvite_GCImmediateResponseToInviter - (*CMsgDOTATeamInvite_GCRequestToInvitee)(nil), // 16: dota.CMsgDOTATeamInvite_GCRequestToInvitee - (*CMsgDOTATeamInvite_InviteeResponseToGC)(nil), // 17: dota.CMsgDOTATeamInvite_InviteeResponseToGC - (*CMsgDOTATeamInvite_GCResponseToInviter)(nil), // 18: dota.CMsgDOTATeamInvite_GCResponseToInviter - (*CMsgDOTATeamInvite_GCResponseToInvitee)(nil), // 19: dota.CMsgDOTATeamInvite_GCResponseToInvitee - (*CMsgDOTAKickTeamMember)(nil), // 20: dota.CMsgDOTAKickTeamMember - (*CMsgDOTAKickTeamMemberResponse)(nil), // 21: dota.CMsgDOTAKickTeamMemberResponse - (*CMsgDOTATransferTeamAdmin)(nil), // 22: dota.CMsgDOTATransferTeamAdmin - (*CMsgDOTATransferTeamAdminResponse)(nil), // 23: dota.CMsgDOTATransferTeamAdminResponse - (*CMsgDOTALeaveTeam)(nil), // 24: dota.CMsgDOTALeaveTeam - (*CMsgDOTALeaveTeamResponse)(nil), // 25: dota.CMsgDOTALeaveTeamResponse - (*CMsgDOTABetaParticipation)(nil), // 26: dota.CMsgDOTABetaParticipation - (*CMsgDOTATeamInfo_HeroStats)(nil), // 27: dota.CMsgDOTATeamInfo.HeroStats - (*CMsgDOTATeamInfo_MemberStats)(nil), // 28: dota.CMsgDOTATeamInfo.MemberStats - (*CMsgDOTATeamInfo_TeamStats)(nil), // 29: dota.CMsgDOTATeamInfo.TeamStats - (*CMsgDOTATeamInfo_DPCResult)(nil), // 30: dota.CMsgDOTATeamInfo.DPCResult - (*CMsgDOTATeamInfo_Member)(nil), // 31: dota.CMsgDOTATeamInfo.Member - (*CMsgDOTATeamInfo_AuditEntry)(nil), // 32: dota.CMsgDOTATeamInfo.AuditEntry - (ELeagueRegion)(0), // 33: dota.ELeagueRegion - (Fantasy_Roles)(0), // 34: dota.Fantasy_Roles + (*CMsgDOTATeamInfoCache)(nil), // 9: dota.CMsgDOTATeamInfoCache + (*CMsgDOTAMyTeamInfoRequest)(nil), // 10: dota.CMsgDOTAMyTeamInfoRequest + (*CMsgDOTACreateTeam)(nil), // 11: dota.CMsgDOTACreateTeam + (*CMsgDOTACreateTeamResponse)(nil), // 12: dota.CMsgDOTACreateTeamResponse + (*CMsgDOTAEditTeamDetails)(nil), // 13: dota.CMsgDOTAEditTeamDetails + (*CMsgDOTAEditTeamDetailsResponse)(nil), // 14: dota.CMsgDOTAEditTeamDetailsResponse + (*CMsgDOTATeamInvite_InviterToGC)(nil), // 15: dota.CMsgDOTATeamInvite_InviterToGC + (*CMsgDOTATeamInvite_GCImmediateResponseToInviter)(nil), // 16: dota.CMsgDOTATeamInvite_GCImmediateResponseToInviter + (*CMsgDOTATeamInvite_GCRequestToInvitee)(nil), // 17: dota.CMsgDOTATeamInvite_GCRequestToInvitee + (*CMsgDOTATeamInvite_InviteeResponseToGC)(nil), // 18: dota.CMsgDOTATeamInvite_InviteeResponseToGC + (*CMsgDOTATeamInvite_GCResponseToInviter)(nil), // 19: dota.CMsgDOTATeamInvite_GCResponseToInviter + (*CMsgDOTATeamInvite_GCResponseToInvitee)(nil), // 20: dota.CMsgDOTATeamInvite_GCResponseToInvitee + (*CMsgDOTAKickTeamMember)(nil), // 21: dota.CMsgDOTAKickTeamMember + (*CMsgDOTAKickTeamMemberResponse)(nil), // 22: dota.CMsgDOTAKickTeamMemberResponse + (*CMsgDOTATransferTeamAdmin)(nil), // 23: dota.CMsgDOTATransferTeamAdmin + (*CMsgDOTATransferTeamAdminResponse)(nil), // 24: dota.CMsgDOTATransferTeamAdminResponse + (*CMsgDOTALeaveTeam)(nil), // 25: dota.CMsgDOTALeaveTeam + (*CMsgDOTALeaveTeamResponse)(nil), // 26: dota.CMsgDOTALeaveTeamResponse + (*CMsgDOTABetaParticipation)(nil), // 27: dota.CMsgDOTABetaParticipation + (*CMsgDOTATeamInfo_HeroStats)(nil), // 28: dota.CMsgDOTATeamInfo.HeroStats + (*CMsgDOTATeamInfo_MemberStats)(nil), // 29: dota.CMsgDOTATeamInfo.MemberStats + (*CMsgDOTATeamInfo_TeamStats)(nil), // 30: dota.CMsgDOTATeamInfo.TeamStats + (*CMsgDOTATeamInfo_DPCResult)(nil), // 31: dota.CMsgDOTATeamInfo.DPCResult + (*CMsgDOTATeamInfo_Member)(nil), // 32: dota.CMsgDOTATeamInfo.Member + (*CMsgDOTATeamInfo_AuditEntry)(nil), // 33: dota.CMsgDOTATeamInfo.AuditEntry + (ELeagueRegion)(0), // 34: dota.ELeagueRegion + (Fantasy_Roles)(0), // 35: dota.Fantasy_Roles } var file_dota_gcmessages_client_team_proto_depIdxs = []int32{ - 31, // 0: dota.CMsgDOTATeamInfo.members:type_name -> dota.CMsgDOTATeamInfo.Member - 32, // 1: dota.CMsgDOTATeamInfo.audit_entries:type_name -> dota.CMsgDOTATeamInfo.AuditEntry - 33, // 2: dota.CMsgDOTATeamInfo.region:type_name -> dota.ELeagueRegion - 28, // 3: dota.CMsgDOTATeamInfo.member_stats:type_name -> dota.CMsgDOTATeamInfo.MemberStats - 29, // 4: dota.CMsgDOTATeamInfo.team_stats:type_name -> dota.CMsgDOTATeamInfo.TeamStats - 30, // 5: dota.CMsgDOTATeamInfo.dpc_results:type_name -> dota.CMsgDOTATeamInfo.DPCResult + 32, // 0: dota.CMsgDOTATeamInfo.members:type_name -> dota.CMsgDOTATeamInfo.Member + 33, // 1: dota.CMsgDOTATeamInfo.audit_entries:type_name -> dota.CMsgDOTATeamInfo.AuditEntry + 34, // 2: dota.CMsgDOTATeamInfo.region:type_name -> dota.ELeagueRegion + 29, // 3: dota.CMsgDOTATeamInfo.member_stats:type_name -> dota.CMsgDOTATeamInfo.MemberStats + 30, // 4: dota.CMsgDOTATeamInfo.team_stats:type_name -> dota.CMsgDOTATeamInfo.TeamStats + 31, // 5: dota.CMsgDOTATeamInfo.dpc_results:type_name -> dota.CMsgDOTATeamInfo.DPCResult 6, // 6: dota.CMsgDOTATeamsInfo.teams:type_name -> dota.CMsgDOTATeamInfo 6, // 7: dota.CMsgDOTATeamInfoList.teams:type_name -> dota.CMsgDOTATeamInfo - 1, // 8: dota.CMsgDOTACreateTeamResponse.result:type_name -> dota.CMsgDOTACreateTeamResponse.Result - 2, // 9: dota.CMsgDOTAEditTeamDetailsResponse.result:type_name -> dota.CMsgDOTAEditTeamDetailsResponse.Result - 0, // 10: dota.CMsgDOTATeamInvite_GCImmediateResponseToInviter.result:type_name -> dota.ETeamInviteResult - 0, // 11: dota.CMsgDOTATeamInvite_InviteeResponseToGC.result:type_name -> dota.ETeamInviteResult - 0, // 12: dota.CMsgDOTATeamInvite_GCResponseToInviter.result:type_name -> dota.ETeamInviteResult - 0, // 13: dota.CMsgDOTATeamInvite_GCResponseToInvitee.result:type_name -> dota.ETeamInviteResult - 3, // 14: dota.CMsgDOTAKickTeamMemberResponse.result:type_name -> dota.CMsgDOTAKickTeamMemberResponse.Result - 4, // 15: dota.CMsgDOTATransferTeamAdminResponse.result:type_name -> dota.CMsgDOTATransferTeamAdminResponse.Result - 5, // 16: dota.CMsgDOTALeaveTeamResponse.result:type_name -> dota.CMsgDOTALeaveTeamResponse.Result - 27, // 17: dota.CMsgDOTATeamInfo.MemberStats.top_heroes:type_name -> dota.CMsgDOTATeamInfo.HeroStats - 27, // 18: dota.CMsgDOTATeamInfo.TeamStats.played_heroes:type_name -> dota.CMsgDOTATeamInfo.HeroStats - 34, // 19: dota.CMsgDOTATeamInfo.Member.role:type_name -> dota.Fantasy_Roles - 20, // [20:20] is the sub-list for method output_type - 20, // [20:20] is the sub-list for method input_type - 20, // [20:20] is the sub-list for extension type_name - 20, // [20:20] is the sub-list for extension extendee - 0, // [0:20] is the sub-list for field type_name + 8, // 8: dota.CMsgDOTATeamInfoCache.team_list:type_name -> dota.CMsgDOTATeamInfoList + 1, // 9: dota.CMsgDOTACreateTeamResponse.result:type_name -> dota.CMsgDOTACreateTeamResponse.Result + 2, // 10: dota.CMsgDOTAEditTeamDetailsResponse.result:type_name -> dota.CMsgDOTAEditTeamDetailsResponse.Result + 0, // 11: dota.CMsgDOTATeamInvite_GCImmediateResponseToInviter.result:type_name -> dota.ETeamInviteResult + 0, // 12: dota.CMsgDOTATeamInvite_InviteeResponseToGC.result:type_name -> dota.ETeamInviteResult + 0, // 13: dota.CMsgDOTATeamInvite_GCResponseToInviter.result:type_name -> dota.ETeamInviteResult + 0, // 14: dota.CMsgDOTATeamInvite_GCResponseToInvitee.result:type_name -> dota.ETeamInviteResult + 3, // 15: dota.CMsgDOTAKickTeamMemberResponse.result:type_name -> dota.CMsgDOTAKickTeamMemberResponse.Result + 4, // 16: dota.CMsgDOTATransferTeamAdminResponse.result:type_name -> dota.CMsgDOTATransferTeamAdminResponse.Result + 5, // 17: dota.CMsgDOTALeaveTeamResponse.result:type_name -> dota.CMsgDOTALeaveTeamResponse.Result + 28, // 18: dota.CMsgDOTATeamInfo.MemberStats.top_heroes:type_name -> dota.CMsgDOTATeamInfo.HeroStats + 28, // 19: dota.CMsgDOTATeamInfo.TeamStats.played_heroes:type_name -> dota.CMsgDOTATeamInfo.HeroStats + 35, // 20: dota.CMsgDOTATeamInfo.Member.role:type_name -> dota.Fantasy_Roles + 21, // [21:21] is the sub-list for method output_type + 21, // [21:21] is the sub-list for method input_type + 21, // [21:21] is the sub-list for extension type_name + 21, // [21:21] is the sub-list for extension extendee + 0, // [0:21] is the sub-list for field type_name } func init() { file_dota_gcmessages_client_team_proto_init() } @@ -3002,7 +3067,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMyTeamInfoRequest); i { + switch v := v.(*CMsgDOTATeamInfoCache); i { case 0: return &v.state case 1: @@ -3014,7 +3079,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTACreateTeam); i { + switch v := v.(*CMsgDOTAMyTeamInfoRequest); i { case 0: return &v.state case 1: @@ -3026,7 +3091,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTACreateTeamResponse); i { + switch v := v.(*CMsgDOTACreateTeam); i { case 0: return &v.state case 1: @@ -3038,7 +3103,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAEditTeamDetails); i { + switch v := v.(*CMsgDOTACreateTeamResponse); i { case 0: return &v.state case 1: @@ -3050,7 +3115,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAEditTeamDetailsResponse); i { + switch v := v.(*CMsgDOTAEditTeamDetails); i { case 0: return &v.state case 1: @@ -3062,7 +3127,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInvite_InviterToGC); i { + switch v := v.(*CMsgDOTAEditTeamDetailsResponse); i { case 0: return &v.state case 1: @@ -3074,7 +3139,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInvite_GCImmediateResponseToInviter); i { + switch v := v.(*CMsgDOTATeamInvite_InviterToGC); i { case 0: return &v.state case 1: @@ -3086,7 +3151,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInvite_GCRequestToInvitee); i { + switch v := v.(*CMsgDOTATeamInvite_GCImmediateResponseToInviter); i { case 0: return &v.state case 1: @@ -3098,7 +3163,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInvite_InviteeResponseToGC); i { + switch v := v.(*CMsgDOTATeamInvite_GCRequestToInvitee); i { case 0: return &v.state case 1: @@ -3110,7 +3175,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInvite_GCResponseToInviter); i { + switch v := v.(*CMsgDOTATeamInvite_InviteeResponseToGC); i { case 0: return &v.state case 1: @@ -3122,7 +3187,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInvite_GCResponseToInvitee); i { + switch v := v.(*CMsgDOTATeamInvite_GCResponseToInviter); i { case 0: return &v.state case 1: @@ -3134,7 +3199,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAKickTeamMember); i { + switch v := v.(*CMsgDOTATeamInvite_GCResponseToInvitee); i { case 0: return &v.state case 1: @@ -3146,7 +3211,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAKickTeamMemberResponse); i { + switch v := v.(*CMsgDOTAKickTeamMember); i { case 0: return &v.state case 1: @@ -3158,7 +3223,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATransferTeamAdmin); i { + switch v := v.(*CMsgDOTAKickTeamMemberResponse); i { case 0: return &v.state case 1: @@ -3170,7 +3235,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATransferTeamAdminResponse); i { + switch v := v.(*CMsgDOTATransferTeamAdmin); i { case 0: return &v.state case 1: @@ -3182,7 +3247,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTALeaveTeam); i { + switch v := v.(*CMsgDOTATransferTeamAdminResponse); i { case 0: return &v.state case 1: @@ -3194,7 +3259,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTALeaveTeamResponse); i { + switch v := v.(*CMsgDOTALeaveTeam); i { case 0: return &v.state case 1: @@ -3206,7 +3271,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTABetaParticipation); i { + switch v := v.(*CMsgDOTALeaveTeamResponse); i { case 0: return &v.state case 1: @@ -3218,7 +3283,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInfo_HeroStats); i { + switch v := v.(*CMsgDOTABetaParticipation); i { case 0: return &v.state case 1: @@ -3230,7 +3295,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInfo_MemberStats); i { + switch v := v.(*CMsgDOTATeamInfo_HeroStats); i { case 0: return &v.state case 1: @@ -3242,7 +3307,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInfo_TeamStats); i { + switch v := v.(*CMsgDOTATeamInfo_MemberStats); i { case 0: return &v.state case 1: @@ -3254,7 +3319,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInfo_DPCResult); i { + switch v := v.(*CMsgDOTATeamInfo_TeamStats); i { case 0: return &v.state case 1: @@ -3266,7 +3331,7 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATeamInfo_Member); i { + switch v := v.(*CMsgDOTATeamInfo_DPCResult); i { case 0: return &v.state case 1: @@ -3278,6 +3343,18 @@ func file_dota_gcmessages_client_team_proto_init() { } } file_dota_gcmessages_client_team_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTATeamInfo_Member); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_client_team_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgDOTATeamInfo_AuditEntry); i { case 0: return &v.state @@ -3296,7 +3373,7 @@ func file_dota_gcmessages_client_team_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_gcmessages_client_team_proto_rawDesc, NumEnums: 6, - NumMessages: 27, + NumMessages: 28, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_gcmessages_client_team.proto b/dota/dota_gcmessages_client_team.proto index 54c2203b..d8d23db1 100644 --- a/dota/dota_gcmessages_client_team.proto +++ b/dota/dota_gcmessages_client_team.proto @@ -118,6 +118,11 @@ message CMsgDOTATeamInfoList { repeated CMsgDOTATeamInfo teams = 1; } +message CMsgDOTATeamInfoCache { + optional uint32 cache_timestamp = 1; + optional CMsgDOTATeamInfoList team_list = 2; +} + message CMsgDOTAMyTeamInfoRequest { } diff --git a/dota/dota_gcmessages_client_tournament.pb.go b/dota/dota_gcmessages_client_tournament.pb.go index b73f73b3..a84765a6 100644 --- a/dota/dota_gcmessages_client_tournament.pb.go +++ b/dota/dota_gcmessages_client_tournament.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_tournament.proto diff --git a/dota/dota_gcmessages_client_watch.pb.go b/dota/dota_gcmessages_client_watch.pb.go index c0a7b8f7..c311126a 100644 --- a/dota/dota_gcmessages_client_watch.pb.go +++ b/dota/dota_gcmessages_client_watch.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_client_watch.proto @@ -1662,6 +1662,8 @@ type CSourceTVGameSmall_Player struct { AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` HeroId *uint32 `protobuf:"varint,2,opt,name=hero_id,json=heroId" json:"hero_id,omitempty"` + TeamSlot *uint32 `protobuf:"varint,3,opt,name=team_slot,json=teamSlot" json:"team_slot,omitempty"` + Team *uint32 `protobuf:"varint,4,opt,name=team" json:"team,omitempty"` } func (x *CSourceTVGameSmall_Player) Reset() { @@ -1710,6 +1712,20 @@ func (x *CSourceTVGameSmall_Player) GetHeroId() uint32 { return 0 } +func (x *CSourceTVGameSmall_Player) GetTeamSlot() uint32 { + if x != nil && x.TeamSlot != nil { + return *x.TeamSlot + } + return 0 +} + +func (x *CSourceTVGameSmall_Player) GetTeam() uint32 { + if x != nil && x.Team != nil { + return *x.Team + } + return 0 +} + type CDOTAReplayDownloadInfo_Highlight struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1922,7 +1938,7 @@ var file_dota_gcmessages_client_watch_proto_rawDesc = []byte{ 0x73, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0x1c, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa1, 0x0a, 0x0a, 0x12, 0x43, 0x53, 0x6f, + 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd2, 0x0a, 0x0a, 0x12, 0x43, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, @@ -2000,272 +2016,275 @@ var file_dota_gcmessages_client_watch_proto_rawDesc = []byte{ 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, - 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x1a, 0x40, 0x0a, 0x06, 0x50, 0x6c, + 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x1a, 0x71, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xdd, 0x01, 0x0a, - 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, - 0x69, 0x6e, 0x64, 0x54, 0x6f, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, - 0x6d, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, - 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, - 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x5f, - 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x67, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, - 0x28, 0x04, 0x52, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x73, 0x22, 0xf8, 0x02, 0x0a, - 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, - 0x69, 0x6e, 0x64, 0x54, 0x6f, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, - 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, - 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x12, - 0x1b, 0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, - 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x49, - 0x6e, 0x64, 0x65, 0x78, 0x12, 0x35, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x69, 0x73, - 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x6d, 0x61, 0x6c, - 0x6c, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, - 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x47, 0x61, 0x6d, - 0x65, 0x73, 0x12, 0x33, 0x0a, 0x08, 0x62, 0x6f, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x52, 0x07, - 0x62, 0x6f, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x22, 0x5f, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x70, 0x57, 0x65, 0x65, 0x6b, - 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, - 0x37, 0x0a, 0x0a, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x52, 0x09, 0x6c, - 0x69, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x27, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x6f, 0x70, 0x4c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x22, 0x27, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x54, 0x6f, 0x70, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x42, 0x0a, 0x23, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x73, 0x22, 0x7b, - 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x65, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, + 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, + 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x22, 0xdd, 0x01, + 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x46, 0x69, 0x6e, 0x64, 0x54, 0x6f, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, + 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x4b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, + 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x67, 0x61, 0x6d, 0x65, + 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0d, 0x67, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x04, 0x52, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x73, 0x22, 0xf8, 0x02, + 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x46, 0x69, 0x6e, 0x64, 0x54, 0x6f, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, + 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x47, 0x61, 0x6d, 0x65, + 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x26, 0x0a, + 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x35, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x69, + 0x73, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x6d, 0x61, + 0x6c, 0x6c, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, + 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x08, 0x62, 0x6f, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x52, + 0x07, 0x62, 0x6f, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x22, 0x5f, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x70, 0x57, 0x65, 0x65, + 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x37, 0x0a, 0x0a, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x52, 0x09, + 0x6c, 0x69, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x27, 0x0a, 0x25, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x6f, 0x70, 0x4c, 0x65, + 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x22, 0x27, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x54, 0x6f, 0x70, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x42, 0x0a, 0x23, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x73, 0x22, + 0x7b, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, + 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, + 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x22, 0x5e, 0x0a, 0x26, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x70, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, + 0x6d, 0x61, 0x6c, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, 0x5e, 0x0a, 0x26, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x70, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, - 0x6d, 0x61, 0x6c, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, - 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x22, 0x5e, 0x0a, 0x26, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x70, - 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, - 0x61, 0x6c, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, 0x5e, 0x0a, 0x26, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x70, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, - 0x61, 0x6c, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, 0x47, 0x0a, 0x16, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, - 0x6c, 0x69, 0x76, 0x65, 0x22, 0xd4, 0x04, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, - 0x63, 0x74, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, - 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x61, - 0x0a, 0x11, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x45, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x52, 0x0f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x22, 0xa7, 0x03, 0x0a, 0x10, 0x45, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x69, 0x76, 0x65, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, - 0x53, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x47, 0x45, 0x4e, - 0x45, 0x52, 0x49, 0x43, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x4e, 0x4f, 0x5f, 0x50, 0x4c, 0x55, 0x53, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x52, 0x52, - 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, 0x44, 0x53, 0x10, 0x03, - 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, - 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x49, - 0x4e, 0x5f, 0x41, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, 0x49, 0x53, 0x5f, 0x4c, 0x41, - 0x4e, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x57, 0x52, 0x4f, - 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x07, 0x12, - 0x1b, 0x0a, 0x17, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x57, 0x52, 0x4f, 0x4e, 0x47, 0x5f, 0x4c, - 0x4f, 0x42, 0x42, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0x08, 0x12, 0x1b, 0x0a, 0x17, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x54, - 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x52, 0x52, - 0x4f, 0x52, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4d, 0x41, 0x4e, 0x59, 0x5f, 0x53, 0x50, 0x45, 0x43, - 0x54, 0x41, 0x54, 0x4f, 0x52, 0x53, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x53, 0x57, 0x49, 0x54, - 0x43, 0x48, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x53, 0x10, 0x0b, 0x12, 0x1f, 0x0a, 0x1b, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, 0x44, 0x53, 0x5f, 0x4f, 0x4e, - 0x5f, 0x42, 0x4f, 0x54, 0x48, 0x5f, 0x53, 0x49, 0x44, 0x45, 0x53, 0x10, 0x0c, 0x12, 0x21, 0x0a, - 0x1d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, - 0x5f, 0x49, 0x4e, 0x5f, 0x54, 0x48, 0x49, 0x53, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, 0x0d, - 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, - 0x49, 0x53, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x10, 0x0e, 0x22, 0x9e, 0x02, 0x0a, 0x17, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x44, 0x6f, 0x77, 0x6e, 0x6c, - 0x6f, 0x61, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, - 0x61, 0x6c, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, - 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x78, 0x69, - 0x73, 0x74, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0c, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x4f, 0x6e, 0x44, 0x69, 0x73, 0x6b, 0x1a, - 0x4b, 0x0a, 0x09, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc4, 0x01, 0x0a, - 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x25, - 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, - 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, - 0x61, 0x6d, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x12, 0x77, 0x61, 0x74, 0x63, - 0x68, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x19, - 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x67, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x67, 0x69, - 0x6f, 0x6e, 0x73, 0x22, 0x15, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x61, 0x6e, 0x63, 0x65, - 0x6c, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x22, 0xcd, 0x04, 0x0a, 0x15, 0x43, - 0x4d, 0x73, 0x67, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x11, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x67, 0x61, - 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x57, 0x61, 0x74, 0x63, 0x68, - 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61, 0x74, - 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0f, 0x77, 0x61, - 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x31, 0x0a, - 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x76, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, - 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x41, 0x64, 0x64, 0x72, - 0x12, 0x33, 0x0a, 0x16, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x76, 0x5f, 0x70, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x13, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x65, 0x41, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, - 0x74, 0x76, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x67, - 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, - 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x77, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x12, 0x77, 0x61, 0x74, 0x63, 0x68, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x3c, 0x0a, - 0x1b, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x76, 0x5f, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, - 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x06, 0x52, 0x17, 0x77, 0x61, 0x74, 0x63, 0x68, 0x54, 0x76, 0x55, 0x6e, 0x69, 0x71, 0x75, - 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0xac, 0x01, 0x0a, 0x0f, - 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, - 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x47, 0x41, 0x4d, 0x45, 0x53, - 0x45, 0x52, 0x56, 0x45, 0x52, 0x4e, 0x4f, 0x54, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x02, 0x12, - 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x03, - 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x12, - 0x17, 0x0a, 0x13, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, 0x45, 0x56, - 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x4d, 0x49, 0x53, 0x53, - 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, - 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x4f, 0x42, 0x42, 0x59, - 0x4e, 0x4f, 0x54, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x07, 0x22, 0x50, 0x0a, 0x1e, 0x43, 0x4d, - 0x73, 0x67, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x57, 0x61, 0x74, - 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x13, + 0x6d, 0x61, 0x6c, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, 0x47, 0x0a, 0x16, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x04, 0x6c, 0x69, 0x76, 0x65, 0x22, 0xd4, 0x04, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, + 0x65, 0x63, 0x74, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x47, 0x61, 0x6d, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, + 0x61, 0x0a, 0x11, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x65, 0x46, 0x72, + 0x69, 0x65, 0x6e, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x45, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x52, 0x0f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x22, 0xa7, 0x03, 0x0a, 0x10, 0x45, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x69, 0x76, + 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, + 0x53, 0x53, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x47, 0x45, + 0x4e, 0x45, 0x52, 0x49, 0x43, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x4c, 0x55, 0x53, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, 0x44, 0x53, 0x10, + 0x03, 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, + 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, 0x5f, + 0x49, 0x4e, 0x5f, 0x41, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, 0x49, 0x53, 0x5f, 0x4c, + 0x41, 0x4e, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x57, 0x52, + 0x4f, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x07, + 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x57, 0x52, 0x4f, 0x4e, 0x47, 0x5f, + 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0x08, 0x12, 0x1b, 0x0a, + 0x17, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4e, 0x4f, + 0x54, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4d, 0x41, 0x4e, 0x59, 0x5f, 0x53, 0x50, 0x45, + 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, 0x53, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x53, 0x57, 0x49, + 0x54, 0x43, 0x48, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x53, 0x10, 0x0b, 0x12, 0x1f, 0x0a, + 0x1b, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, 0x44, 0x53, 0x5f, 0x4f, + 0x4e, 0x5f, 0x42, 0x4f, 0x54, 0x48, 0x5f, 0x53, 0x49, 0x44, 0x45, 0x53, 0x10, 0x0c, 0x12, 0x21, + 0x0a, 0x1d, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, + 0x52, 0x5f, 0x49, 0x4e, 0x5f, 0x54, 0x48, 0x49, 0x53, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, + 0x0d, 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, + 0x5f, 0x49, 0x53, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x10, 0x0e, 0x22, 0x9e, 0x02, 0x0a, + 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x44, 0x6f, 0x77, 0x6e, + 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, + 0x6d, 0x61, 0x6c, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x78, + 0x69, 0x73, 0x74, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x6b, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0c, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x4f, 0x6e, 0x44, 0x69, 0x73, 0x6b, + 0x1a, 0x4b, 0x0a, 0x09, 0x48, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc4, 0x01, + 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x12, + 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, + 0x14, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x12, 0x77, 0x61, 0x74, + 0x63, 0x68, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, + 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x67, + 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x15, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x61, 0x6e, 0x63, + 0x65, 0x6c, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x22, 0xcd, 0x04, 0x0a, 0x15, + 0x43, 0x4d, 0x73, 0x67, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x11, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x57, 0x61, 0x74, 0x63, + 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61, + 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0f, 0x77, + 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x31, + 0x0a, 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x76, 0x5f, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x41, 0x64, 0x64, + 0x72, 0x12, 0x33, 0x0a, 0x16, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x76, 0x5f, 0x70, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x13, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x5f, 0x74, 0x76, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x67, 0x61, 0x6d, 0x65, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x22, 0x8a, 0x03, 0x0a, - 0x14, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, - 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x6c, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6c, 0x69, 0x76, 0x65, - 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x61, - 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x65, 0x61, - 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0e, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x44, 0x69, - 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x47, - 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x1c, 0x75, 0x70, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x5f, - 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x75, 0x70, 0x63, 0x6f, 0x6d, - 0x69, 0x6e, 0x67, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6c, - 0x69, 0x76, 0x65, 0x5f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4c, 0x69, 0x76, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x12, - 0x1b, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xc8, 0x05, 0x0a, 0x0e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, - 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, - 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x06, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, - 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x31, - 0x12, 0x34, 0x0a, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x05, 0x74, 0x65, 0x61, 0x6d, 0x32, 0x12, 0x3f, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, - 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x12, 0x3a, 0x0a, 0x09, 0x6c, 0x69, 0x76, 0x65, 0x5f, - 0x67, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, - 0x2e, 0x4c, 0x69, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x6c, 0x69, 0x76, 0x65, 0x47, - 0x61, 0x6d, 0x65, 0x1a, 0x85, 0x01, 0x0a, 0x08, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, - 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, - 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, - 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x61, - 0x67, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x77, 0x61, 0x67, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x86, 0x02, 0x0a, 0x08, - 0x4c, 0x69, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, - 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x14, + 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x12, 0x77, 0x61, 0x74, 0x63, + 0x68, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x3c, + 0x0a, 0x1b, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x76, 0x5f, 0x75, 0x6e, 0x69, 0x71, 0x75, + 0x65, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x06, 0x52, 0x17, 0x77, 0x61, 0x74, 0x63, 0x68, 0x54, 0x76, 0x55, 0x6e, 0x69, 0x71, + 0x75, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0xac, 0x01, 0x0a, + 0x0f, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x09, 0x0a, + 0x05, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x47, 0x41, 0x4d, 0x45, + 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x4e, 0x4f, 0x54, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x02, + 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, + 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x04, + 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, 0x45, + 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x4d, 0x49, 0x53, + 0x53, 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, + 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x4f, 0x42, 0x42, + 0x59, 0x4e, 0x4f, 0x54, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x07, 0x22, 0x50, 0x0a, 0x1e, 0x43, + 0x4d, 0x73, 0x67, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x57, 0x61, + 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, + 0x13, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x67, 0x61, 0x6d, 0x65, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x22, 0x8a, 0x03, + 0x0a, 0x14, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, + 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x6c, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6c, 0x69, 0x76, + 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x72, + 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x65, + 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x24, 0x0a, + 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x44, + 0x69, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x47, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x1c, 0x75, 0x70, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, + 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x75, 0x70, 0x63, 0x6f, + 0x6d, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, + 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4c, 0x69, 0x76, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xc8, 0x05, 0x0a, 0x0e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1b, 0x0a, + 0x09, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x06, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, + 0x31, 0x12, 0x34, 0x0a, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x32, 0x12, 0x3f, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x12, 0x3a, 0x0a, 0x09, 0x6c, 0x69, 0x76, 0x65, + 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x2e, 0x4c, 0x69, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x6c, 0x69, 0x76, 0x65, + 0x47, 0x61, 0x6d, 0x65, 0x1a, 0x85, 0x01, 0x0a, 0x08, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, + 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x77, + 0x61, 0x67, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x77, 0x61, 0x67, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x86, 0x02, 0x0a, + 0x08, 0x4c, 0x69, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, + 0x64, 0x12, 0x40, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x65, + 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x61, 0x64, 0x69, + 0x61, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x64, 0x69, 0x72, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x65, 0x61, - 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x61, 0x64, 0x69, 0x61, - 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72, 0x65, 0x12, 0x2c, - 0x0a, 0x12, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x65, 0x61, 0x6d, - 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x26, 0x0a, 0x0f, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72, 0x65, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, - 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72, 0x65, 0x12, + 0x2c, 0x0a, 0x12, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, + 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x65, 0x61, + 0x6d, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x26, 0x0a, + 0x0f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x69, 0x72, 0x65, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, + 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/dota_gcmessages_client_watch.proto b/dota/dota_gcmessages_client_watch.proto index 1c8cae84..f92d2337 100644 --- a/dota/dota_gcmessages_client_watch.proto +++ b/dota/dota_gcmessages_client_watch.proto @@ -9,6 +9,8 @@ message CSourceTVGameSmall { message Player { optional uint32 account_id = 1; optional uint32 hero_id = 2; + optional uint32 team_slot = 3; + optional uint32 team = 4; } optional uint32 activate_time = 1; diff --git a/dota/dota_gcmessages_common.pb.go b/dota/dota_gcmessages_common.pb.go index 730a8ebe..b329c919 100644 --- a/dota/dota_gcmessages_common.pb.go +++ b/dota/dota_gcmessages_common.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_common.proto @@ -798,6 +798,95 @@ func (EStickerbookPageType) EnumDescriptor() ([]byte, []int) { return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{10} } +type ENewBloomGiftingResponse int32 + +const ( + ENewBloomGiftingResponse_kENewBloomGifting_Success ENewBloomGiftingResponse = 0 + ENewBloomGiftingResponse_kENewBloomGifting_UnknownFailure ENewBloomGiftingResponse = 1 + ENewBloomGiftingResponse_kENewBloomGifting_MalformedRequest ENewBloomGiftingResponse = 2 + ENewBloomGiftingResponse_kENewBloomGifting_FeatureDisabled ENewBloomGiftingResponse = 3 + ENewBloomGiftingResponse_kENewBloomGifting_ItemNotFound ENewBloomGiftingResponse = 4 + ENewBloomGiftingResponse_kENewBloomGifting_PlayerNotAllowedToGiveGifts ENewBloomGiftingResponse = 5 + ENewBloomGiftingResponse_kENewBloomGifting_TargetNotAllowedToReceiveGifts ENewBloomGiftingResponse = 6 + ENewBloomGiftingResponse_kENewBloomGifting_ServerNotAuthorized ENewBloomGiftingResponse = 100 + ENewBloomGiftingResponse_kENewBloomGifting_PlayerNotInLobby ENewBloomGiftingResponse = 101 + ENewBloomGiftingResponse_kENewBloomGifting_TargetNotInLobby ENewBloomGiftingResponse = 102 + ENewBloomGiftingResponse_kENewBloomGifting_LobbyNotEligible ENewBloomGiftingResponse = 103 + ENewBloomGiftingResponse_kENewBloomGifting_TargetNotFriend ENewBloomGiftingResponse = 200 + ENewBloomGiftingResponse_kENewBloomGifting_TargetFriendDurationTooShort ENewBloomGiftingResponse = 201 +) + +// Enum value maps for ENewBloomGiftingResponse. +var ( + ENewBloomGiftingResponse_name = map[int32]string{ + 0: "kENewBloomGifting_Success", + 1: "kENewBloomGifting_UnknownFailure", + 2: "kENewBloomGifting_MalformedRequest", + 3: "kENewBloomGifting_FeatureDisabled", + 4: "kENewBloomGifting_ItemNotFound", + 5: "kENewBloomGifting_PlayerNotAllowedToGiveGifts", + 6: "kENewBloomGifting_TargetNotAllowedToReceiveGifts", + 100: "kENewBloomGifting_ServerNotAuthorized", + 101: "kENewBloomGifting_PlayerNotInLobby", + 102: "kENewBloomGifting_TargetNotInLobby", + 103: "kENewBloomGifting_LobbyNotEligible", + 200: "kENewBloomGifting_TargetNotFriend", + 201: "kENewBloomGifting_TargetFriendDurationTooShort", + } + ENewBloomGiftingResponse_value = map[string]int32{ + "kENewBloomGifting_Success": 0, + "kENewBloomGifting_UnknownFailure": 1, + "kENewBloomGifting_MalformedRequest": 2, + "kENewBloomGifting_FeatureDisabled": 3, + "kENewBloomGifting_ItemNotFound": 4, + "kENewBloomGifting_PlayerNotAllowedToGiveGifts": 5, + "kENewBloomGifting_TargetNotAllowedToReceiveGifts": 6, + "kENewBloomGifting_ServerNotAuthorized": 100, + "kENewBloomGifting_PlayerNotInLobby": 101, + "kENewBloomGifting_TargetNotInLobby": 102, + "kENewBloomGifting_LobbyNotEligible": 103, + "kENewBloomGifting_TargetNotFriend": 200, + "kENewBloomGifting_TargetFriendDurationTooShort": 201, + } +) + +func (x ENewBloomGiftingResponse) Enum() *ENewBloomGiftingResponse { + p := new(ENewBloomGiftingResponse) + *p = x + return p +} + +func (x ENewBloomGiftingResponse) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ENewBloomGiftingResponse) Descriptor() protoreflect.EnumDescriptor { + return file_dota_gcmessages_common_proto_enumTypes[11].Descriptor() +} + +func (ENewBloomGiftingResponse) Type() protoreflect.EnumType { + return &file_dota_gcmessages_common_proto_enumTypes[11] +} + +func (x ENewBloomGiftingResponse) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *ENewBloomGiftingResponse) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = ENewBloomGiftingResponse(num) + return nil +} + +// Deprecated: Use ENewBloomGiftingResponse.Descriptor instead. +func (ENewBloomGiftingResponse) EnumDescriptor() ([]byte, []int) { + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{11} +} + type CMsgDOTAProfileCard_EStatID int32 const ( @@ -840,11 +929,11 @@ func (x CMsgDOTAProfileCard_EStatID) String() string { } func (CMsgDOTAProfileCard_EStatID) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[11].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[12].Descriptor() } func (CMsgDOTAProfileCard_EStatID) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[11] + return &file_dota_gcmessages_common_proto_enumTypes[12] } func (x CMsgDOTAProfileCard_EStatID) Number() protoreflect.EnumNumber { @@ -863,7 +952,7 @@ func (x *CMsgDOTAProfileCard_EStatID) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTAProfileCard_EStatID.Descriptor instead. func (CMsgDOTAProfileCard_EStatID) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23, 0} } type CMsgGCRerollPlayerChallengeResponse_EResult int32 @@ -905,11 +994,11 @@ func (x CMsgGCRerollPlayerChallengeResponse_EResult) String() string { } func (CMsgGCRerollPlayerChallengeResponse_EResult) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[12].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[13].Descriptor() } func (CMsgGCRerollPlayerChallengeResponse_EResult) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[12] + return &file_dota_gcmessages_common_proto_enumTypes[13] } func (x CMsgGCRerollPlayerChallengeResponse_EResult) Number() protoreflect.EnumNumber { @@ -928,7 +1017,7 @@ func (x *CMsgGCRerollPlayerChallengeResponse_EResult) UnmarshalJSON(b []byte) er // Deprecated: Use CMsgGCRerollPlayerChallengeResponse_EResult.Descriptor instead. func (CMsgGCRerollPlayerChallengeResponse_EResult) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{25, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{26, 0} } type CMsgDOTARealtimeGameStats_GraphDataEStat int32 @@ -967,11 +1056,11 @@ func (x CMsgDOTARealtimeGameStats_GraphDataEStat) String() string { } func (CMsgDOTARealtimeGameStats_GraphDataEStat) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[13].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[14].Descriptor() } func (CMsgDOTARealtimeGameStats_GraphDataEStat) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[13] + return &file_dota_gcmessages_common_proto_enumTypes[14] } func (x CMsgDOTARealtimeGameStats_GraphDataEStat) Number() protoreflect.EnumNumber { @@ -990,7 +1079,7 @@ func (x *CMsgDOTARealtimeGameStats_GraphDataEStat) UnmarshalJSON(b []byte) error // Deprecated: Use CMsgDOTARealtimeGameStats_GraphDataEStat.Descriptor instead. func (CMsgDOTARealtimeGameStats_GraphDataEStat) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 11, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 11, 0} } type CMsgDOTARealtimeGameStats_GraphDataELocation int32 @@ -1035,11 +1124,11 @@ func (x CMsgDOTARealtimeGameStats_GraphDataELocation) String() string { } func (CMsgDOTARealtimeGameStats_GraphDataELocation) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[14].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[15].Descriptor() } func (CMsgDOTARealtimeGameStats_GraphDataELocation) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[14] + return &file_dota_gcmessages_common_proto_enumTypes[15] } func (x CMsgDOTARealtimeGameStats_GraphDataELocation) Number() protoreflect.EnumNumber { @@ -1058,7 +1147,7 @@ func (x *CMsgDOTARealtimeGameStats_GraphDataELocation) UnmarshalJSON(b []byte) e // Deprecated: Use CMsgDOTARealtimeGameStats_GraphDataELocation.Descriptor instead. func (CMsgDOTARealtimeGameStats_GraphDataELocation) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 11, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 11, 1} } type CMsgInGamePrediction_ERawValueTypeT int32 @@ -1091,11 +1180,11 @@ func (x CMsgInGamePrediction_ERawValueTypeT) String() string { } func (CMsgInGamePrediction_ERawValueTypeT) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[15].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[16].Descriptor() } func (CMsgInGamePrediction_ERawValueTypeT) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[15] + return &file_dota_gcmessages_common_proto_enumTypes[16] } func (x CMsgInGamePrediction_ERawValueTypeT) Number() protoreflect.EnumNumber { @@ -1114,7 +1203,7 @@ func (x *CMsgInGamePrediction_ERawValueTypeT) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgInGamePrediction_ERawValueTypeT.Descriptor instead. func (CMsgInGamePrediction_ERawValueTypeT) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{33, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 0} } type CMsgInGamePrediction_EPredictionType int32 @@ -1162,11 +1251,11 @@ func (x CMsgInGamePrediction_EPredictionType) String() string { } func (CMsgInGamePrediction_EPredictionType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[16].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[17].Descriptor() } func (CMsgInGamePrediction_EPredictionType) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[16] + return &file_dota_gcmessages_common_proto_enumTypes[17] } func (x CMsgInGamePrediction_EPredictionType) Number() protoreflect.EnumNumber { @@ -1185,7 +1274,7 @@ func (x *CMsgInGamePrediction_EPredictionType) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgInGamePrediction_EPredictionType.Descriptor instead. func (CMsgInGamePrediction_EPredictionType) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{33, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 1} } type CMsgInGamePrediction_EResolutionTypeT int32 @@ -1239,11 +1328,11 @@ func (x CMsgInGamePrediction_EResolutionTypeT) String() string { } func (CMsgInGamePrediction_EResolutionTypeT) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[17].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[18].Descriptor() } func (CMsgInGamePrediction_EResolutionTypeT) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[17] + return &file_dota_gcmessages_common_proto_enumTypes[18] } func (x CMsgInGamePrediction_EResolutionTypeT) Number() protoreflect.EnumNumber { @@ -1262,7 +1351,7 @@ func (x *CMsgInGamePrediction_EResolutionTypeT) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgInGamePrediction_EResolutionTypeT.Descriptor instead. func (CMsgInGamePrediction_EResolutionTypeT) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{33, 2} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 2} } type CMsgInGamePrediction_ERandomSelectionGroupT int32 @@ -1301,11 +1390,11 @@ func (x CMsgInGamePrediction_ERandomSelectionGroupT) String() string { } func (CMsgInGamePrediction_ERandomSelectionGroupT) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[18].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[19].Descriptor() } func (CMsgInGamePrediction_ERandomSelectionGroupT) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[18] + return &file_dota_gcmessages_common_proto_enumTypes[19] } func (x CMsgInGamePrediction_ERandomSelectionGroupT) Number() protoreflect.EnumNumber { @@ -1324,7 +1413,7 @@ func (x *CMsgInGamePrediction_ERandomSelectionGroupT) UnmarshalJSON(b []byte) er // Deprecated: Use CMsgInGamePrediction_ERandomSelectionGroupT.Descriptor instead. func (CMsgInGamePrediction_ERandomSelectionGroupT) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{33, 3} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 3} } type CMsgDOTASeasonPredictions_Prediction_EPredictionType int32 @@ -1375,11 +1464,11 @@ func (x CMsgDOTASeasonPredictions_Prediction_EPredictionType) String() string { } func (CMsgDOTASeasonPredictions_Prediction_EPredictionType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[19].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[20].Descriptor() } func (CMsgDOTASeasonPredictions_Prediction_EPredictionType) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[19] + return &file_dota_gcmessages_common_proto_enumTypes[20] } func (x CMsgDOTASeasonPredictions_Prediction_EPredictionType) Number() protoreflect.EnumNumber { @@ -1398,7 +1487,7 @@ func (x *CMsgDOTASeasonPredictions_Prediction_EPredictionType) UnmarshalJSON(b [ // Deprecated: Use CMsgDOTASeasonPredictions_Prediction_EPredictionType.Descriptor instead. func (CMsgDOTASeasonPredictions_Prediction_EPredictionType) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 0, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{35, 0, 0} } type CMsgDOTASeasonPredictions_Prediction_EAnswerType int32 @@ -1449,11 +1538,11 @@ func (x CMsgDOTASeasonPredictions_Prediction_EAnswerType) String() string { } func (CMsgDOTASeasonPredictions_Prediction_EAnswerType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[20].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[21].Descriptor() } func (CMsgDOTASeasonPredictions_Prediction_EAnswerType) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[20] + return &file_dota_gcmessages_common_proto_enumTypes[21] } func (x CMsgDOTASeasonPredictions_Prediction_EAnswerType) Number() protoreflect.EnumNumber { @@ -1472,7 +1561,7 @@ func (x *CMsgDOTASeasonPredictions_Prediction_EAnswerType) UnmarshalJSON(b []byt // Deprecated: Use CMsgDOTASeasonPredictions_Prediction_EAnswerType.Descriptor instead. func (CMsgDOTASeasonPredictions_Prediction_EAnswerType) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 0, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{35, 0, 1} } type CMsgDOTAMatch_ReplayState int32 @@ -1508,11 +1597,11 @@ func (x CMsgDOTAMatch_ReplayState) String() string { } func (CMsgDOTAMatch_ReplayState) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[21].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[22].Descriptor() } func (CMsgDOTAMatch_ReplayState) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[21] + return &file_dota_gcmessages_common_proto_enumTypes[22] } func (x CMsgDOTAMatch_ReplayState) Number() protoreflect.EnumNumber { @@ -1531,7 +1620,7 @@ func (x *CMsgDOTAMatch_ReplayState) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTAMatch_ReplayState.Descriptor instead. func (CMsgDOTAMatch_ReplayState) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 0} } type CMsgDOTAMatch_Player_HeroDamageType int32 @@ -1567,11 +1656,11 @@ func (x CMsgDOTAMatch_Player_HeroDamageType) String() string { } func (CMsgDOTAMatch_Player_HeroDamageType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[22].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[23].Descriptor() } func (CMsgDOTAMatch_Player_HeroDamageType) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[22] + return &file_dota_gcmessages_common_proto_enumTypes[23] } func (x CMsgDOTAMatch_Player_HeroDamageType) Number() protoreflect.EnumNumber { @@ -1590,7 +1679,7 @@ func (x *CMsgDOTAMatch_Player_HeroDamageType) UnmarshalJSON(b []byte) error { // Deprecated: Use CMsgDOTAMatch_Player_HeroDamageType.Descriptor instead. func (CMsgDOTAMatch_Player_HeroDamageType) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 0, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 0, 0} } type CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse int32 @@ -1629,11 +1718,11 @@ func (x CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Stri } func (CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_dota_gcmessages_common_proto_enumTypes[23].Descriptor() + return file_dota_gcmessages_common_proto_enumTypes[24].Descriptor() } func (CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Type() protoreflect.EnumType { - return &file_dota_gcmessages_common_proto_enumTypes[23] + return &file_dota_gcmessages_common_proto_enumTypes[24] } func (x CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Number() protoreflect.EnumNumber { @@ -1652,7 +1741,7 @@ func (x *CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) Unm // Deprecated: Use CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse.Descriptor instead. func (CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{59, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{60, 0} } type CSODOTAGameAccountClient struct { @@ -1715,6 +1804,7 @@ type CSODOTAGameAccountClient struct { RoleHandicaps []*CSODOTAGameAccountClient_RoleHandicap `protobuf:"bytes,115,rep,name=role_handicaps,json=roleHandicaps" json:"role_handicaps,omitempty"` EventModeRecentTime *uint32 `protobuf:"varint,120,opt,name=event_mode_recent_time,json=eventModeRecentTime" json:"event_mode_recent_time,omitempty"` MmrRecalibrationTime *uint32 `protobuf:"varint,121,opt,name=mmr_recalibration_time,json=mmrRecalibrationTime" json:"mmr_recalibration_time,omitempty"` + BannedHeroIds []uint32 `protobuf:"varint,123,rep,name=banned_hero_ids,json=bannedHeroIds" json:"banned_hero_ids,omitempty"` } func (x *CSODOTAGameAccountClient) Reset() { @@ -2134,6 +2224,13 @@ func (x *CSODOTAGameAccountClient) GetMmrRecalibrationTime() uint32 { return 0 } +func (x *CSODOTAGameAccountClient) GetBannedHeroIds() []uint32 { + if x != nil { + return x.BannedHeroIds + } + return nil +} + type CSODOTAGameAccountPlus struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2237,6 +2334,53 @@ func (x *CSODOTAGameAccountPlus) GetSteamAgreementId() uint64 { return 0 } +type CSODOTAChatWheel struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MessageId *uint32 `protobuf:"varint,1,opt,name=message_id,json=messageId" json:"message_id,omitempty"` +} + +func (x *CSODOTAChatWheel) Reset() { + *x = CSODOTAChatWheel{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_common_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CSODOTAChatWheel) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CSODOTAChatWheel) ProtoMessage() {} + +func (x *CSODOTAChatWheel) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_common_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CSODOTAChatWheel.ProtoReflect.Descriptor instead. +func (*CSODOTAChatWheel) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{2} +} + +func (x *CSODOTAChatWheel) GetMessageId() uint32 { + if x != nil && x.MessageId != nil { + return *x.MessageId + } + return 0 +} + type CMsgLobbyFeaturedGamemodeProgress struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2248,7 +2392,7 @@ type CMsgLobbyFeaturedGamemodeProgress struct { func (x *CMsgLobbyFeaturedGamemodeProgress) Reset() { *x = CMsgLobbyFeaturedGamemodeProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[2] + mi := &file_dota_gcmessages_common_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2261,7 +2405,7 @@ func (x *CMsgLobbyFeaturedGamemodeProgress) String() string { func (*CMsgLobbyFeaturedGamemodeProgress) ProtoMessage() {} func (x *CMsgLobbyFeaturedGamemodeProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[2] + mi := &file_dota_gcmessages_common_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2274,7 +2418,7 @@ func (x *CMsgLobbyFeaturedGamemodeProgress) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgLobbyFeaturedGamemodeProgress.ProtoReflect.Descriptor instead. func (*CMsgLobbyFeaturedGamemodeProgress) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{2} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{3} } func (x *CMsgLobbyFeaturedGamemodeProgress) GetAccounts() []*CMsgLobbyFeaturedGamemodeProgress_AccountProgress { @@ -2303,7 +2447,7 @@ type CMsgBattleCupVictory struct { func (x *CMsgBattleCupVictory) Reset() { *x = CMsgBattleCupVictory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[3] + mi := &file_dota_gcmessages_common_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2316,7 +2460,7 @@ func (x *CMsgBattleCupVictory) String() string { func (*CMsgBattleCupVictory) ProtoMessage() {} func (x *CMsgBattleCupVictory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[3] + mi := &file_dota_gcmessages_common_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2329,7 +2473,7 @@ func (x *CMsgBattleCupVictory) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgBattleCupVictory.ProtoReflect.Descriptor instead. func (*CMsgBattleCupVictory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{3} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{4} } func (x *CMsgBattleCupVictory) GetAccountId() uint32 { @@ -2406,7 +2550,7 @@ type CMsgLobbyBattleCupVictoryList struct { func (x *CMsgLobbyBattleCupVictoryList) Reset() { *x = CMsgLobbyBattleCupVictoryList{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[4] + mi := &file_dota_gcmessages_common_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2419,7 +2563,7 @@ func (x *CMsgLobbyBattleCupVictoryList) String() string { func (*CMsgLobbyBattleCupVictoryList) ProtoMessage() {} func (x *CMsgLobbyBattleCupVictoryList) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[4] + mi := &file_dota_gcmessages_common_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2432,7 +2576,7 @@ func (x *CMsgLobbyBattleCupVictoryList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLobbyBattleCupVictoryList.ProtoReflect.Descriptor instead. func (*CMsgLobbyBattleCupVictoryList) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{4} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{5} } func (x *CMsgLobbyBattleCupVictoryList) GetWinners() []*CMsgBattleCupVictory { @@ -2453,7 +2597,7 @@ type CMsgDOTABroadcastNotification struct { func (x *CMsgDOTABroadcastNotification) Reset() { *x = CMsgDOTABroadcastNotification{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[5] + mi := &file_dota_gcmessages_common_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2466,7 +2610,7 @@ func (x *CMsgDOTABroadcastNotification) String() string { func (*CMsgDOTABroadcastNotification) ProtoMessage() {} func (x *CMsgDOTABroadcastNotification) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[5] + mi := &file_dota_gcmessages_common_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2479,7 +2623,7 @@ func (x *CMsgDOTABroadcastNotification) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTABroadcastNotification.ProtoReflect.Descriptor instead. func (*CMsgDOTABroadcastNotification) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{5} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{6} } func (x *CMsgDOTABroadcastNotification) GetMessage() string { @@ -2507,7 +2651,7 @@ type CProtoItemHeroStatue struct { func (x *CProtoItemHeroStatue) Reset() { *x = CProtoItemHeroStatue{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[6] + mi := &file_dota_gcmessages_common_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2520,7 +2664,7 @@ func (x *CProtoItemHeroStatue) String() string { func (*CProtoItemHeroStatue) ProtoMessage() {} func (x *CProtoItemHeroStatue) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[6] + mi := &file_dota_gcmessages_common_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2533,7 +2677,7 @@ func (x *CProtoItemHeroStatue) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemHeroStatue.ProtoReflect.Descriptor instead. func (*CProtoItemHeroStatue) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{6} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{7} } func (x *CProtoItemHeroStatue) GetHeroId() uint32 { @@ -2604,7 +2748,7 @@ type CMatchPlayerAbilityUpgrade struct { func (x *CMatchPlayerAbilityUpgrade) Reset() { *x = CMatchPlayerAbilityUpgrade{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[7] + mi := &file_dota_gcmessages_common_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2617,7 +2761,7 @@ func (x *CMatchPlayerAbilityUpgrade) String() string { func (*CMatchPlayerAbilityUpgrade) ProtoMessage() {} func (x *CMatchPlayerAbilityUpgrade) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[7] + mi := &file_dota_gcmessages_common_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2630,7 +2774,7 @@ func (x *CMatchPlayerAbilityUpgrade) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchPlayerAbilityUpgrade.ProtoReflect.Descriptor instead. func (*CMatchPlayerAbilityUpgrade) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{7} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{8} } func (x *CMatchPlayerAbilityUpgrade) GetAbility() int32 { @@ -2659,7 +2803,7 @@ type CMatchPlayerTimedCustomStat struct { func (x *CMatchPlayerTimedCustomStat) Reset() { *x = CMatchPlayerTimedCustomStat{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[8] + mi := &file_dota_gcmessages_common_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2672,7 +2816,7 @@ func (x *CMatchPlayerTimedCustomStat) String() string { func (*CMatchPlayerTimedCustomStat) ProtoMessage() {} func (x *CMatchPlayerTimedCustomStat) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[8] + mi := &file_dota_gcmessages_common_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2685,7 +2829,7 @@ func (x *CMatchPlayerTimedCustomStat) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchPlayerTimedCustomStat.ProtoReflect.Descriptor instead. func (*CMatchPlayerTimedCustomStat) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{8} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{9} } func (x *CMatchPlayerTimedCustomStat) GetStat() EDOTAMatchPlayerTimeCustomStat { @@ -2749,7 +2893,7 @@ type CMatchPlayerTimedStats struct { func (x *CMatchPlayerTimedStats) Reset() { *x = CMatchPlayerTimedStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[9] + mi := &file_dota_gcmessages_common_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2762,7 +2906,7 @@ func (x *CMatchPlayerTimedStats) String() string { func (*CMatchPlayerTimedStats) ProtoMessage() {} func (x *CMatchPlayerTimedStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[9] + mi := &file_dota_gcmessages_common_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2775,7 +2919,7 @@ func (x *CMatchPlayerTimedStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchPlayerTimedStats.ProtoReflect.Descriptor instead. func (*CMatchPlayerTimedStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{9} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{10} } func (x *CMatchPlayerTimedStats) GetTime() uint32 { @@ -3052,7 +3196,7 @@ type CMatchTeamTimedStats struct { func (x *CMatchTeamTimedStats) Reset() { *x = CMatchTeamTimedStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[10] + mi := &file_dota_gcmessages_common_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3065,7 +3209,7 @@ func (x *CMatchTeamTimedStats) String() string { func (*CMatchTeamTimedStats) ProtoMessage() {} func (x *CMatchTeamTimedStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[10] + mi := &file_dota_gcmessages_common_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3078,7 +3222,7 @@ func (x *CMatchTeamTimedStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchTeamTimedStats.ProtoReflect.Descriptor instead. func (*CMatchTeamTimedStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{10} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{11} } func (x *CMatchTeamTimedStats) GetTime() uint32 { @@ -3128,7 +3272,7 @@ type CMatchAdditionalUnitInventory struct { func (x *CMatchAdditionalUnitInventory) Reset() { *x = CMatchAdditionalUnitInventory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[11] + mi := &file_dota_gcmessages_common_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3141,7 +3285,7 @@ func (x *CMatchAdditionalUnitInventory) String() string { func (*CMatchAdditionalUnitInventory) ProtoMessage() {} func (x *CMatchAdditionalUnitInventory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[11] + mi := &file_dota_gcmessages_common_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3154,7 +3298,7 @@ func (x *CMatchAdditionalUnitInventory) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchAdditionalUnitInventory.ProtoReflect.Descriptor instead. func (*CMatchAdditionalUnitInventory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{11} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{12} } func (x *CMatchAdditionalUnitInventory) GetUnitName() string { @@ -3184,7 +3328,7 @@ type CMatchPlayerPermanentBuff struct { func (x *CMatchPlayerPermanentBuff) Reset() { *x = CMatchPlayerPermanentBuff{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[12] + mi := &file_dota_gcmessages_common_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3197,7 +3341,7 @@ func (x *CMatchPlayerPermanentBuff) String() string { func (*CMatchPlayerPermanentBuff) ProtoMessage() {} func (x *CMatchPlayerPermanentBuff) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[12] + mi := &file_dota_gcmessages_common_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3210,7 +3354,7 @@ func (x *CMatchPlayerPermanentBuff) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchPlayerPermanentBuff.ProtoReflect.Descriptor instead. func (*CMatchPlayerPermanentBuff) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{12} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{13} } func (x *CMatchPlayerPermanentBuff) GetPermanentBuff() uint32 { @@ -3247,7 +3391,7 @@ type CMatchHeroSelectEvent struct { func (x *CMatchHeroSelectEvent) Reset() { *x = CMatchHeroSelectEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[13] + mi := &file_dota_gcmessages_common_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3260,7 +3404,7 @@ func (x *CMatchHeroSelectEvent) String() string { func (*CMatchHeroSelectEvent) ProtoMessage() {} func (x *CMatchHeroSelectEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[13] + mi := &file_dota_gcmessages_common_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3273,7 +3417,7 @@ func (x *CMatchHeroSelectEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchHeroSelectEvent.ProtoReflect.Descriptor instead. func (*CMatchHeroSelectEvent) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{13} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{14} } func (x *CMatchHeroSelectEvent) GetIsPick() bool { @@ -3316,7 +3460,7 @@ type CMatchClip struct { func (x *CMatchClip) Reset() { *x = CMatchClip{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[14] + mi := &file_dota_gcmessages_common_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3329,7 +3473,7 @@ func (x *CMatchClip) String() string { func (*CMatchClip) ProtoMessage() {} func (x *CMatchClip) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[14] + mi := &file_dota_gcmessages_common_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3342,7 +3486,7 @@ func (x *CMatchClip) ProtoReflect() protoreflect.Message { // Deprecated: Use CMatchClip.ProtoReflect.Descriptor instead. func (*CMatchClip) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{14} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{15} } func (x *CMatchClip) GetMatchId() uint64 { @@ -3421,7 +3565,7 @@ type CPartySearchClientParty struct { func (x *CPartySearchClientParty) Reset() { *x = CPartySearchClientParty{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[15] + mi := &file_dota_gcmessages_common_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3434,7 +3578,7 @@ func (x *CPartySearchClientParty) String() string { func (*CPartySearchClientParty) ProtoMessage() {} func (x *CPartySearchClientParty) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[15] + mi := &file_dota_gcmessages_common_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3447,7 +3591,7 @@ func (x *CPartySearchClientParty) ProtoReflect() protoreflect.Message { // Deprecated: Use CPartySearchClientParty.ProtoReflect.Descriptor instead. func (*CPartySearchClientParty) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{15} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{16} } func (x *CPartySearchClientParty) GetPartyId() uint64 { @@ -3483,7 +3627,7 @@ type CMsgDOTAHasItemQuery struct { func (x *CMsgDOTAHasItemQuery) Reset() { *x = CMsgDOTAHasItemQuery{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[16] + mi := &file_dota_gcmessages_common_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3496,7 +3640,7 @@ func (x *CMsgDOTAHasItemQuery) String() string { func (*CMsgDOTAHasItemQuery) ProtoMessage() {} func (x *CMsgDOTAHasItemQuery) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[16] + mi := &file_dota_gcmessages_common_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3509,7 +3653,7 @@ func (x *CMsgDOTAHasItemQuery) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAHasItemQuery.ProtoReflect.Descriptor instead. func (*CMsgDOTAHasItemQuery) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{16} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{17} } func (x *CMsgDOTAHasItemQuery) GetAccountId() uint32 { @@ -3537,7 +3681,7 @@ type CMsgDOTAHasItemResponse struct { func (x *CMsgDOTAHasItemResponse) Reset() { *x = CMsgDOTAHasItemResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[17] + mi := &file_dota_gcmessages_common_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3550,7 +3694,7 @@ func (x *CMsgDOTAHasItemResponse) String() string { func (*CMsgDOTAHasItemResponse) ProtoMessage() {} func (x *CMsgDOTAHasItemResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[17] + mi := &file_dota_gcmessages_common_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3563,7 +3707,7 @@ func (x *CMsgDOTAHasItemResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAHasItemResponse.ProtoReflect.Descriptor instead. func (*CMsgDOTAHasItemResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{17} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{18} } func (x *CMsgDOTAHasItemResponse) GetHasItem() bool { @@ -3586,7 +3730,7 @@ type CMsgGCGetPlayerCardItemInfo struct { func (x *CMsgGCGetPlayerCardItemInfo) Reset() { *x = CMsgGCGetPlayerCardItemInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[18] + mi := &file_dota_gcmessages_common_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3599,7 +3743,7 @@ func (x *CMsgGCGetPlayerCardItemInfo) String() string { func (*CMsgGCGetPlayerCardItemInfo) ProtoMessage() {} func (x *CMsgGCGetPlayerCardItemInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[18] + mi := &file_dota_gcmessages_common_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3612,7 +3756,7 @@ func (x *CMsgGCGetPlayerCardItemInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCGetPlayerCardItemInfo.ProtoReflect.Descriptor instead. func (*CMsgGCGetPlayerCardItemInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{18} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{19} } func (x *CMsgGCGetPlayerCardItemInfo) GetAccountId() uint32 { @@ -3647,7 +3791,7 @@ type CMsgGCGetPlayerCardItemInfoResponse struct { func (x *CMsgGCGetPlayerCardItemInfoResponse) Reset() { *x = CMsgGCGetPlayerCardItemInfoResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[19] + mi := &file_dota_gcmessages_common_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3660,7 +3804,7 @@ func (x *CMsgGCGetPlayerCardItemInfoResponse) String() string { func (*CMsgGCGetPlayerCardItemInfoResponse) ProtoMessage() {} func (x *CMsgGCGetPlayerCardItemInfoResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[19] + mi := &file_dota_gcmessages_common_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3673,7 +3817,7 @@ func (x *CMsgGCGetPlayerCardItemInfoResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgGCGetPlayerCardItemInfoResponse.ProtoReflect.Descriptor instead. func (*CMsgGCGetPlayerCardItemInfoResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{19} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{20} } func (x *CMsgGCGetPlayerCardItemInfoResponse) GetPlayerCardInfos() []*CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo { @@ -3696,7 +3840,7 @@ type CSODOTAMapLocationState struct { func (x *CSODOTAMapLocationState) Reset() { *x = CSODOTAMapLocationState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[20] + mi := &file_dota_gcmessages_common_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3709,7 +3853,7 @@ func (x *CSODOTAMapLocationState) String() string { func (*CSODOTAMapLocationState) ProtoMessage() {} func (x *CSODOTAMapLocationState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[20] + mi := &file_dota_gcmessages_common_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3722,7 +3866,7 @@ func (x *CSODOTAMapLocationState) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAMapLocationState.ProtoReflect.Descriptor instead. func (*CSODOTAMapLocationState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{20} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{21} } func (x *CSODOTAMapLocationState) GetAccountId() uint32 { @@ -3757,7 +3901,7 @@ type CMsgLeagueAdminList struct { func (x *CMsgLeagueAdminList) Reset() { *x = CMsgLeagueAdminList{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[21] + mi := &file_dota_gcmessages_common_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3770,7 +3914,7 @@ func (x *CMsgLeagueAdminList) String() string { func (*CMsgLeagueAdminList) ProtoMessage() {} func (x *CMsgLeagueAdminList) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[21] + mi := &file_dota_gcmessages_common_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3783,7 +3927,7 @@ func (x *CMsgLeagueAdminList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLeagueAdminList.ProtoReflect.Descriptor instead. func (*CMsgLeagueAdminList) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{21} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22} } func (x *CMsgLeagueAdminList) GetAccountIds() []uint32 { @@ -3818,7 +3962,7 @@ type CMsgDOTAProfileCard struct { func (x *CMsgDOTAProfileCard) Reset() { *x = CMsgDOTAProfileCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[22] + mi := &file_dota_gcmessages_common_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3831,7 +3975,7 @@ func (x *CMsgDOTAProfileCard) String() string { func (*CMsgDOTAProfileCard) ProtoMessage() {} func (x *CMsgDOTAProfileCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[22] + mi := &file_dota_gcmessages_common_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3844,7 +3988,7 @@ func (x *CMsgDOTAProfileCard) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAProfileCard.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23} } func (x *CMsgDOTAProfileCard) GetAccountId() uint32 { @@ -3979,7 +4123,7 @@ type CSODOTAPlayerChallenge struct { func (x *CSODOTAPlayerChallenge) Reset() { *x = CSODOTAPlayerChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[23] + mi := &file_dota_gcmessages_common_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3992,7 +4136,7 @@ func (x *CSODOTAPlayerChallenge) String() string { func (*CSODOTAPlayerChallenge) ProtoMessage() {} func (x *CSODOTAPlayerChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[23] + mi := &file_dota_gcmessages_common_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4005,7 +4149,7 @@ func (x *CSODOTAPlayerChallenge) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAPlayerChallenge.ProtoReflect.Descriptor instead. func (*CSODOTAPlayerChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{24} } func (x *CSODOTAPlayerChallenge) GetAccountId() uint32 { @@ -4140,7 +4284,7 @@ type CMsgClientToGCRerollPlayerChallenge struct { func (x *CMsgClientToGCRerollPlayerChallenge) Reset() { *x = CMsgClientToGCRerollPlayerChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[24] + mi := &file_dota_gcmessages_common_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4153,7 +4297,7 @@ func (x *CMsgClientToGCRerollPlayerChallenge) String() string { func (*CMsgClientToGCRerollPlayerChallenge) ProtoMessage() {} func (x *CMsgClientToGCRerollPlayerChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[24] + mi := &file_dota_gcmessages_common_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4166,7 +4310,7 @@ func (x *CMsgClientToGCRerollPlayerChallenge) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgClientToGCRerollPlayerChallenge.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRerollPlayerChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{24} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{25} } func (x *CMsgClientToGCRerollPlayerChallenge) GetEventId() EEvent { @@ -4201,7 +4345,7 @@ type CMsgGCRerollPlayerChallengeResponse struct { func (x *CMsgGCRerollPlayerChallengeResponse) Reset() { *x = CMsgGCRerollPlayerChallengeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[25] + mi := &file_dota_gcmessages_common_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4214,7 +4358,7 @@ func (x *CMsgGCRerollPlayerChallengeResponse) String() string { func (*CMsgGCRerollPlayerChallengeResponse) ProtoMessage() {} func (x *CMsgGCRerollPlayerChallengeResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[25] + mi := &file_dota_gcmessages_common_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4227,7 +4371,7 @@ func (x *CMsgGCRerollPlayerChallengeResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgGCRerollPlayerChallengeResponse.ProtoReflect.Descriptor instead. func (*CMsgGCRerollPlayerChallengeResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{25} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{26} } func (x *CMsgGCRerollPlayerChallengeResponse) GetResult() CMsgGCRerollPlayerChallengeResponse_EResult { @@ -4249,7 +4393,7 @@ type CMsgGCTopCustomGamesList struct { func (x *CMsgGCTopCustomGamesList) Reset() { *x = CMsgGCTopCustomGamesList{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[26] + mi := &file_dota_gcmessages_common_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4262,7 +4406,7 @@ func (x *CMsgGCTopCustomGamesList) String() string { func (*CMsgGCTopCustomGamesList) ProtoMessage() {} func (x *CMsgGCTopCustomGamesList) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[26] + mi := &file_dota_gcmessages_common_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4275,7 +4419,7 @@ func (x *CMsgGCTopCustomGamesList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCTopCustomGamesList.ProtoReflect.Descriptor instead. func (*CMsgGCTopCustomGamesList) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{26} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27} } func (x *CMsgGCTopCustomGamesList) GetTopCustomGames() []uint64 { @@ -4307,7 +4451,7 @@ type CMsgDOTARealtimeGameStats struct { func (x *CMsgDOTARealtimeGameStats) Reset() { *x = CMsgDOTARealtimeGameStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[27] + mi := &file_dota_gcmessages_common_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4320,7 +4464,7 @@ func (x *CMsgDOTARealtimeGameStats) String() string { func (*CMsgDOTARealtimeGameStats) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[27] + mi := &file_dota_gcmessages_common_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4333,7 +4477,7 @@ func (x *CMsgDOTARealtimeGameStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTARealtimeGameStats.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28} } func (x *CMsgDOTARealtimeGameStats) GetMatch() *CMsgDOTARealtimeGameStats_MatchDetails { @@ -4386,7 +4530,7 @@ type CMsgDOTARealtimeGameStatsTerse struct { func (x *CMsgDOTARealtimeGameStatsTerse) Reset() { *x = CMsgDOTARealtimeGameStatsTerse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[28] + mi := &file_dota_gcmessages_common_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4399,7 +4543,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse) String() string { func (*CMsgDOTARealtimeGameStatsTerse) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStatsTerse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[28] + mi := &file_dota_gcmessages_common_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4412,7 +4556,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTARealtimeGameStatsTerse.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStatsTerse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{29} } func (x *CMsgDOTARealtimeGameStatsTerse) GetMatch() *CMsgDOTARealtimeGameStatsTerse_MatchDetails { @@ -4464,7 +4608,7 @@ type CMsgDOTABroadcastTimelineEvent struct { func (x *CMsgDOTABroadcastTimelineEvent) Reset() { *x = CMsgDOTABroadcastTimelineEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[29] + mi := &file_dota_gcmessages_common_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4477,7 +4621,7 @@ func (x *CMsgDOTABroadcastTimelineEvent) String() string { func (*CMsgDOTABroadcastTimelineEvent) ProtoMessage() {} func (x *CMsgDOTABroadcastTimelineEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[29] + mi := &file_dota_gcmessages_common_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4490,7 +4634,7 @@ func (x *CMsgDOTABroadcastTimelineEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTABroadcastTimelineEvent.ProtoReflect.Descriptor instead. func (*CMsgDOTABroadcastTimelineEvent) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{29} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{30} } func (x *CMsgDOTABroadcastTimelineEvent) GetEvent() EBroadcastTimelineEvent { @@ -4532,7 +4676,7 @@ type CMsgGCToClientMatchGroupsVersion struct { func (x *CMsgGCToClientMatchGroupsVersion) Reset() { *x = CMsgGCToClientMatchGroupsVersion{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[30] + mi := &file_dota_gcmessages_common_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4545,7 +4689,7 @@ func (x *CMsgGCToClientMatchGroupsVersion) String() string { func (*CMsgGCToClientMatchGroupsVersion) ProtoMessage() {} func (x *CMsgGCToClientMatchGroupsVersion) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[30] + mi := &file_dota_gcmessages_common_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4558,7 +4702,7 @@ func (x *CMsgGCToClientMatchGroupsVersion) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientMatchGroupsVersion.ProtoReflect.Descriptor instead. func (*CMsgGCToClientMatchGroupsVersion) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{30} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{31} } func (x *CMsgGCToClientMatchGroupsVersion) GetMatchgroupsVersion() uint32 { @@ -4588,7 +4732,7 @@ type CMsgDOTASDOHeroStatsHistory struct { func (x *CMsgDOTASDOHeroStatsHistory) Reset() { *x = CMsgDOTASDOHeroStatsHistory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[31] + mi := &file_dota_gcmessages_common_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4601,7 +4745,7 @@ func (x *CMsgDOTASDOHeroStatsHistory) String() string { func (*CMsgDOTASDOHeroStatsHistory) ProtoMessage() {} func (x *CMsgDOTASDOHeroStatsHistory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[31] + mi := &file_dota_gcmessages_common_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4614,7 +4758,7 @@ func (x *CMsgDOTASDOHeroStatsHistory) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTASDOHeroStatsHistory.ProtoReflect.Descriptor instead. func (*CMsgDOTASDOHeroStatsHistory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{31} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{32} } func (x *CMsgDOTASDOHeroStatsHistory) GetMatchId() uint64 { @@ -4701,7 +4845,7 @@ type CMsgPredictionChoice struct { func (x *CMsgPredictionChoice) Reset() { *x = CMsgPredictionChoice{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[32] + mi := &file_dota_gcmessages_common_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4714,7 +4858,7 @@ func (x *CMsgPredictionChoice) String() string { func (*CMsgPredictionChoice) ProtoMessage() {} func (x *CMsgPredictionChoice) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[32] + mi := &file_dota_gcmessages_common_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4727,7 +4871,7 @@ func (x *CMsgPredictionChoice) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPredictionChoice.ProtoReflect.Descriptor instead. func (*CMsgPredictionChoice) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{32} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{33} } func (x *CMsgPredictionChoice) GetValue() uint32 { @@ -4782,7 +4926,7 @@ type CMsgInGamePrediction struct { func (x *CMsgInGamePrediction) Reset() { *x = CMsgInGamePrediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[33] + mi := &file_dota_gcmessages_common_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4795,7 +4939,7 @@ func (x *CMsgInGamePrediction) String() string { func (*CMsgInGamePrediction) ProtoMessage() {} func (x *CMsgInGamePrediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[33] + mi := &file_dota_gcmessages_common_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4808,7 +4952,7 @@ func (x *CMsgInGamePrediction) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgInGamePrediction.ProtoReflect.Descriptor instead. func (*CMsgInGamePrediction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{33} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34} } func (x *CMsgInGamePrediction) GetId() uint32 { @@ -4923,7 +5067,7 @@ type CMsgDOTASeasonPredictions struct { func (x *CMsgDOTASeasonPredictions) Reset() { *x = CMsgDOTASeasonPredictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[34] + mi := &file_dota_gcmessages_common_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4936,7 +5080,7 @@ func (x *CMsgDOTASeasonPredictions) String() string { func (*CMsgDOTASeasonPredictions) ProtoMessage() {} func (x *CMsgDOTASeasonPredictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[34] + mi := &file_dota_gcmessages_common_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4949,7 +5093,7 @@ func (x *CMsgDOTASeasonPredictions) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTASeasonPredictions.ProtoReflect.Descriptor instead. func (*CMsgDOTASeasonPredictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{35} } func (x *CMsgDOTASeasonPredictions) GetPredictions() []*CMsgDOTASeasonPredictions_Prediction { @@ -4991,7 +5135,7 @@ type CMsgAvailablePredictions struct { func (x *CMsgAvailablePredictions) Reset() { *x = CMsgAvailablePredictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[35] + mi := &file_dota_gcmessages_common_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5004,7 +5148,7 @@ func (x *CMsgAvailablePredictions) String() string { func (*CMsgAvailablePredictions) ProtoMessage() {} func (x *CMsgAvailablePredictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[35] + mi := &file_dota_gcmessages_common_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5017,7 +5161,7 @@ func (x *CMsgAvailablePredictions) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgAvailablePredictions.ProtoReflect.Descriptor instead. func (*CMsgAvailablePredictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{35} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{36} } func (x *CMsgAvailablePredictions) GetMatchPredictions() []*CMsgAvailablePredictions_MatchPrediction { @@ -5038,7 +5182,7 @@ type CMsgLeagueWatchedGames struct { func (x *CMsgLeagueWatchedGames) Reset() { *x = CMsgLeagueWatchedGames{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[36] + mi := &file_dota_gcmessages_common_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5051,7 +5195,7 @@ func (x *CMsgLeagueWatchedGames) String() string { func (*CMsgLeagueWatchedGames) ProtoMessage() {} func (x *CMsgLeagueWatchedGames) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[36] + mi := &file_dota_gcmessages_common_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5064,7 +5208,7 @@ func (x *CMsgLeagueWatchedGames) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLeagueWatchedGames.ProtoReflect.Descriptor instead. func (*CMsgLeagueWatchedGames) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{36} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37} } func (x *CMsgLeagueWatchedGames) GetLeagues() []*CMsgLeagueWatchedGames_League { @@ -5105,8 +5249,6 @@ type CMsgDOTAMatch struct { DireTeamLogoUrl *string `protobuf:"bytes,55,opt,name=dire_team_logo_url,json=direTeamLogoUrl" json:"dire_team_logo_url,omitempty"` RadiantTeamComplete *uint32 `protobuf:"varint,27,opt,name=radiant_team_complete,json=radiantTeamComplete" json:"radiant_team_complete,omitempty"` DireTeamComplete *uint32 `protobuf:"varint,28,opt,name=dire_team_complete,json=direTeamComplete" json:"dire_team_complete,omitempty"` - PositiveVotes *uint32 `protobuf:"varint,29,opt,name=positive_votes,json=positiveVotes" json:"positive_votes,omitempty"` - NegativeVotes *uint32 `protobuf:"varint,30,opt,name=negative_votes,json=negativeVotes" json:"negative_votes,omitempty"` GameMode *DOTA_GameMode `protobuf:"varint,31,opt,name=game_mode,json=gameMode,enum=dota.DOTA_GameMode" json:"game_mode,omitempty"` PicksBans []*CMatchHeroSelectEvent `protobuf:"bytes,32,rep,name=picks_bans,json=picksBans" json:"picks_bans,omitempty"` MatchSeqNum *uint64 `protobuf:"varint,33,opt,name=match_seq_num,json=matchSeqNum" json:"match_seq_num,omitempty"` @@ -5134,7 +5276,7 @@ type CMsgDOTAMatch struct { func (x *CMsgDOTAMatch) Reset() { *x = CMsgDOTAMatch{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[37] + mi := &file_dota_gcmessages_common_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5147,7 +5289,7 @@ func (x *CMsgDOTAMatch) String() string { func (*CMsgDOTAMatch) ProtoMessage() {} func (x *CMsgDOTAMatch) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[37] + mi := &file_dota_gcmessages_common_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5160,7 +5302,7 @@ func (x *CMsgDOTAMatch) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatch.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatch) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38} } func (x *CMsgDOTAMatch) GetDuration() uint32 { @@ -5345,20 +5487,6 @@ func (x *CMsgDOTAMatch) GetDireTeamComplete() uint32 { return 0 } -func (x *CMsgDOTAMatch) GetPositiveVotes() uint32 { - if x != nil && x.PositiveVotes != nil { - return *x.PositiveVotes - } - return 0 -} - -func (x *CMsgDOTAMatch) GetNegativeVotes() uint32 { - if x != nil && x.NegativeVotes != nil { - return *x.NegativeVotes - } - return 0 -} - func (x *CMsgDOTAMatch) GetGameMode() DOTA_GameMode { if x != nil && x.GameMode != nil { return *x.GameMode @@ -5525,7 +5653,7 @@ type CMsgPlayerCard struct { func (x *CMsgPlayerCard) Reset() { *x = CMsgPlayerCard{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[38] + mi := &file_dota_gcmessages_common_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5538,7 +5666,7 @@ func (x *CMsgPlayerCard) String() string { func (*CMsgPlayerCard) ProtoMessage() {} func (x *CMsgPlayerCard) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[38] + mi := &file_dota_gcmessages_common_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5551,7 +5679,7 @@ func (x *CMsgPlayerCard) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerCard.ProtoReflect.Descriptor instead. func (*CMsgPlayerCard) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{39} } func (x *CMsgPlayerCard) GetAccountId() uint32 { @@ -5593,12 +5721,19 @@ type CMsgDOTAFantasyPlayerStats struct { RunesGrabbed *uint32 `protobuf:"varint,19,opt,name=runes_grabbed,json=runesGrabbed" json:"runes_grabbed,omitempty"` FirstBlood *uint32 `protobuf:"varint,20,opt,name=first_blood,json=firstBlood" json:"first_blood,omitempty"` Stuns *float32 `protobuf:"fixed32,21,opt,name=stuns" json:"stuns,omitempty"` + Smokes *uint32 `protobuf:"varint,22,opt,name=smokes" json:"smokes,omitempty"` + NeutralTokens *uint32 `protobuf:"varint,23,opt,name=neutral_tokens,json=neutralTokens" json:"neutral_tokens,omitempty"` + Watchers *uint32 `protobuf:"varint,24,opt,name=watchers" json:"watchers,omitempty"` + Lotuses *uint32 `protobuf:"varint,25,opt,name=lotuses" json:"lotuses,omitempty"` + Tormentors *uint32 `protobuf:"varint,26,opt,name=tormentors" json:"tormentors,omitempty"` + CourierKills *uint32 `protobuf:"varint,27,opt,name=courier_kills,json=courierKills" json:"courier_kills,omitempty"` + TitleStats *uint64 `protobuf:"fixed64,28,opt,name=title_stats,json=titleStats" json:"title_stats,omitempty"` } func (x *CMsgDOTAFantasyPlayerStats) Reset() { *x = CMsgDOTAFantasyPlayerStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[39] + mi := &file_dota_gcmessages_common_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5611,7 +5746,7 @@ func (x *CMsgDOTAFantasyPlayerStats) String() string { func (*CMsgDOTAFantasyPlayerStats) ProtoMessage() {} func (x *CMsgDOTAFantasyPlayerStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[39] + mi := &file_dota_gcmessages_common_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5624,7 +5759,7 @@ func (x *CMsgDOTAFantasyPlayerStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAFantasyPlayerStats.ProtoReflect.Descriptor instead. func (*CMsgDOTAFantasyPlayerStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{39} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{40} } func (x *CMsgDOTAFantasyPlayerStats) GetPlayerAccountId() uint32 { @@ -5767,6 +5902,55 @@ func (x *CMsgDOTAFantasyPlayerStats) GetStuns() float32 { return 0 } +func (x *CMsgDOTAFantasyPlayerStats) GetSmokes() uint32 { + if x != nil && x.Smokes != nil { + return *x.Smokes + } + return 0 +} + +func (x *CMsgDOTAFantasyPlayerStats) GetNeutralTokens() uint32 { + if x != nil && x.NeutralTokens != nil { + return *x.NeutralTokens + } + return 0 +} + +func (x *CMsgDOTAFantasyPlayerStats) GetWatchers() uint32 { + if x != nil && x.Watchers != nil { + return *x.Watchers + } + return 0 +} + +func (x *CMsgDOTAFantasyPlayerStats) GetLotuses() uint32 { + if x != nil && x.Lotuses != nil { + return *x.Lotuses + } + return 0 +} + +func (x *CMsgDOTAFantasyPlayerStats) GetTormentors() uint32 { + if x != nil && x.Tormentors != nil { + return *x.Tormentors + } + return 0 +} + +func (x *CMsgDOTAFantasyPlayerStats) GetCourierKills() uint32 { + if x != nil && x.CourierKills != nil { + return *x.CourierKills + } + return 0 +} + +func (x *CMsgDOTAFantasyPlayerStats) GetTitleStats() uint64 { + if x != nil && x.TitleStats != nil { + return *x.TitleStats + } + return 0 +} + type CMsgDOTAFantasyPlayerMatchStats struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5778,7 +5962,7 @@ type CMsgDOTAFantasyPlayerMatchStats struct { func (x *CMsgDOTAFantasyPlayerMatchStats) Reset() { *x = CMsgDOTAFantasyPlayerMatchStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[40] + mi := &file_dota_gcmessages_common_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5791,7 +5975,7 @@ func (x *CMsgDOTAFantasyPlayerMatchStats) String() string { func (*CMsgDOTAFantasyPlayerMatchStats) ProtoMessage() {} func (x *CMsgDOTAFantasyPlayerMatchStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[40] + mi := &file_dota_gcmessages_common_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5804,7 +5988,7 @@ func (x *CMsgDOTAFantasyPlayerMatchStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAFantasyPlayerMatchStats.ProtoReflect.Descriptor instead. func (*CMsgDOTAFantasyPlayerMatchStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{40} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{41} } func (x *CMsgDOTAFantasyPlayerMatchStats) GetMatches() []*CMsgDOTAFantasyPlayerStats { @@ -5837,7 +6021,7 @@ type CMsgDOTABotDebugInfo struct { func (x *CMsgDOTABotDebugInfo) Reset() { *x = CMsgDOTABotDebugInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[41] + mi := &file_dota_gcmessages_common_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5850,7 +6034,7 @@ func (x *CMsgDOTABotDebugInfo) String() string { func (*CMsgDOTABotDebugInfo) ProtoMessage() {} func (x *CMsgDOTABotDebugInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[41] + mi := &file_dota_gcmessages_common_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5863,7 +6047,7 @@ func (x *CMsgDOTABotDebugInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTABotDebugInfo.ProtoReflect.Descriptor instead. func (*CMsgDOTABotDebugInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{41} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{42} } func (x *CMsgDOTABotDebugInfo) GetBots() []*CMsgDOTABotDebugInfo_Bot { @@ -5970,7 +6154,7 @@ type CMsgSuccessfulHero struct { func (x *CMsgSuccessfulHero) Reset() { *x = CMsgSuccessfulHero{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[42] + mi := &file_dota_gcmessages_common_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5983,7 +6167,7 @@ func (x *CMsgSuccessfulHero) String() string { func (*CMsgSuccessfulHero) ProtoMessage() {} func (x *CMsgSuccessfulHero) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[42] + mi := &file_dota_gcmessages_common_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5996,7 +6180,7 @@ func (x *CMsgSuccessfulHero) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSuccessfulHero.ProtoReflect.Descriptor instead. func (*CMsgSuccessfulHero) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{42} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{43} } func (x *CMsgSuccessfulHero) GetHeroId() uint32 { @@ -6041,7 +6225,7 @@ type CMsgRecentMatchInfo struct { func (x *CMsgRecentMatchInfo) Reset() { *x = CMsgRecentMatchInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[43] + mi := &file_dota_gcmessages_common_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6054,7 +6238,7 @@ func (x *CMsgRecentMatchInfo) String() string { func (*CMsgRecentMatchInfo) ProtoMessage() {} func (x *CMsgRecentMatchInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[43] + mi := &file_dota_gcmessages_common_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6067,7 +6251,7 @@ func (x *CMsgRecentMatchInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgRecentMatchInfo.ProtoReflect.Descriptor instead. func (*CMsgRecentMatchInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{43} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{44} } func (x *CMsgRecentMatchInfo) GetMatchId() uint64 { @@ -6158,7 +6342,7 @@ type CMsgMatchTips struct { func (x *CMsgMatchTips) Reset() { *x = CMsgMatchTips{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[44] + mi := &file_dota_gcmessages_common_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6171,7 +6355,7 @@ func (x *CMsgMatchTips) String() string { func (*CMsgMatchTips) ProtoMessage() {} func (x *CMsgMatchTips) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[44] + mi := &file_dota_gcmessages_common_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6184,7 +6368,7 @@ func (x *CMsgMatchTips) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgMatchTips.ProtoReflect.Descriptor instead. func (*CMsgMatchTips) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{44} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{45} } func (x *CMsgMatchTips) GetTips() []*CMsgMatchTips_SingleTip { @@ -6214,7 +6398,7 @@ type CMsgDOTAMatchMinimal struct { func (x *CMsgDOTAMatchMinimal) Reset() { *x = CMsgDOTAMatchMinimal{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[45] + mi := &file_dota_gcmessages_common_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6227,7 +6411,7 @@ func (x *CMsgDOTAMatchMinimal) String() string { func (*CMsgDOTAMatchMinimal) ProtoMessage() {} func (x *CMsgDOTAMatchMinimal) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[45] + mi := &file_dota_gcmessages_common_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6240,7 +6424,7 @@ func (x *CMsgDOTAMatchMinimal) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatchMinimal.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatchMinimal) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{45} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{46} } func (x *CMsgDOTAMatchMinimal) GetMatchId() uint64 { @@ -6325,7 +6509,7 @@ type CMsgConsumableUsage struct { func (x *CMsgConsumableUsage) Reset() { *x = CMsgConsumableUsage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[46] + mi := &file_dota_gcmessages_common_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6338,7 +6522,7 @@ func (x *CMsgConsumableUsage) String() string { func (*CMsgConsumableUsage) ProtoMessage() {} func (x *CMsgConsumableUsage) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[46] + mi := &file_dota_gcmessages_common_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6351,7 +6535,7 @@ func (x *CMsgConsumableUsage) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgConsumableUsage.ProtoReflect.Descriptor instead. func (*CMsgConsumableUsage) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{46} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{47} } func (x *CMsgConsumableUsage) GetItemDef() uint32 { @@ -6379,7 +6563,7 @@ type CMsgMatchConsumableUsage struct { func (x *CMsgMatchConsumableUsage) Reset() { *x = CMsgMatchConsumableUsage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[47] + mi := &file_dota_gcmessages_common_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6392,7 +6576,7 @@ func (x *CMsgMatchConsumableUsage) String() string { func (*CMsgMatchConsumableUsage) ProtoMessage() {} func (x *CMsgMatchConsumableUsage) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[47] + mi := &file_dota_gcmessages_common_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6405,7 +6589,7 @@ func (x *CMsgMatchConsumableUsage) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgMatchConsumableUsage.ProtoReflect.Descriptor instead. func (*CMsgMatchConsumableUsage) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{47} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{48} } func (x *CMsgMatchConsumableUsage) GetPlayerConsumablesUsed() []*CMsgMatchConsumableUsage_PlayerUsage { @@ -6426,7 +6610,7 @@ type CMsgMatchEventActionGrants struct { func (x *CMsgMatchEventActionGrants) Reset() { *x = CMsgMatchEventActionGrants{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[48] + mi := &file_dota_gcmessages_common_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6439,7 +6623,7 @@ func (x *CMsgMatchEventActionGrants) String() string { func (*CMsgMatchEventActionGrants) ProtoMessage() {} func (x *CMsgMatchEventActionGrants) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[48] + mi := &file_dota_gcmessages_common_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6452,7 +6636,7 @@ func (x *CMsgMatchEventActionGrants) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgMatchEventActionGrants.ProtoReflect.Descriptor instead. func (*CMsgMatchEventActionGrants) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{48} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{49} } func (x *CMsgMatchEventActionGrants) GetPlayerGrants() []*CMsgMatchEventActionGrants_PlayerGrants { @@ -6475,7 +6659,7 @@ type CMsgCustomGameWhitelist struct { func (x *CMsgCustomGameWhitelist) Reset() { *x = CMsgCustomGameWhitelist{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[49] + mi := &file_dota_gcmessages_common_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6488,7 +6672,7 @@ func (x *CMsgCustomGameWhitelist) String() string { func (*CMsgCustomGameWhitelist) ProtoMessage() {} func (x *CMsgCustomGameWhitelist) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[49] + mi := &file_dota_gcmessages_common_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6501,7 +6685,7 @@ func (x *CMsgCustomGameWhitelist) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgCustomGameWhitelist.ProtoReflect.Descriptor instead. func (*CMsgCustomGameWhitelist) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{49} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{50} } func (x *CMsgCustomGameWhitelist) GetVersion() uint32 { @@ -6536,7 +6720,7 @@ type CMsgCustomGameWhitelistForEdit struct { func (x *CMsgCustomGameWhitelistForEdit) Reset() { *x = CMsgCustomGameWhitelistForEdit{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[50] + mi := &file_dota_gcmessages_common_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6549,7 +6733,7 @@ func (x *CMsgCustomGameWhitelistForEdit) String() string { func (*CMsgCustomGameWhitelistForEdit) ProtoMessage() {} func (x *CMsgCustomGameWhitelistForEdit) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[50] + mi := &file_dota_gcmessages_common_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6562,7 +6746,7 @@ func (x *CMsgCustomGameWhitelistForEdit) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgCustomGameWhitelistForEdit.ProtoReflect.Descriptor instead. func (*CMsgCustomGameWhitelistForEdit) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{50} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{51} } func (x *CMsgCustomGameWhitelistForEdit) GetWhitelistEntries() []*CMsgCustomGameWhitelistForEdit_WhitelistEntry { @@ -6590,7 +6774,7 @@ type CMsgPlayerRecentMatchInfo struct { func (x *CMsgPlayerRecentMatchInfo) Reset() { *x = CMsgPlayerRecentMatchInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[51] + mi := &file_dota_gcmessages_common_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6603,7 +6787,7 @@ func (x *CMsgPlayerRecentMatchInfo) String() string { func (*CMsgPlayerRecentMatchInfo) ProtoMessage() {} func (x *CMsgPlayerRecentMatchInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[51] + mi := &file_dota_gcmessages_common_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6616,7 +6800,7 @@ func (x *CMsgPlayerRecentMatchInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerRecentMatchInfo.ProtoReflect.Descriptor instead. func (*CMsgPlayerRecentMatchInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{51} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{52} } func (x *CMsgPlayerRecentMatchInfo) GetMatchId() uint64 { @@ -6687,7 +6871,7 @@ type CMsgPlayerMatchRecord struct { func (x *CMsgPlayerMatchRecord) Reset() { *x = CMsgPlayerMatchRecord{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[52] + mi := &file_dota_gcmessages_common_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6700,7 +6884,7 @@ func (x *CMsgPlayerMatchRecord) String() string { func (*CMsgPlayerMatchRecord) ProtoMessage() {} func (x *CMsgPlayerMatchRecord) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[52] + mi := &file_dota_gcmessages_common_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6713,7 +6897,7 @@ func (x *CMsgPlayerMatchRecord) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerMatchRecord.ProtoReflect.Descriptor instead. func (*CMsgPlayerMatchRecord) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{52} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{53} } func (x *CMsgPlayerMatchRecord) GetWins() uint32 { @@ -6742,7 +6926,7 @@ type CMsgPlayerRecentMatchOutcomes struct { func (x *CMsgPlayerRecentMatchOutcomes) Reset() { *x = CMsgPlayerRecentMatchOutcomes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[53] + mi := &file_dota_gcmessages_common_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6755,7 +6939,7 @@ func (x *CMsgPlayerRecentMatchOutcomes) String() string { func (*CMsgPlayerRecentMatchOutcomes) ProtoMessage() {} func (x *CMsgPlayerRecentMatchOutcomes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[53] + mi := &file_dota_gcmessages_common_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6768,7 +6952,7 @@ func (x *CMsgPlayerRecentMatchOutcomes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerRecentMatchOutcomes.ProtoReflect.Descriptor instead. func (*CMsgPlayerRecentMatchOutcomes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{53} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{54} } func (x *CMsgPlayerRecentMatchOutcomes) GetOutcomes() uint32 { @@ -6797,7 +6981,7 @@ type CMsgPlayerRecentCommends struct { func (x *CMsgPlayerRecentCommends) Reset() { *x = CMsgPlayerRecentCommends{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[54] + mi := &file_dota_gcmessages_common_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6810,7 +6994,7 @@ func (x *CMsgPlayerRecentCommends) String() string { func (*CMsgPlayerRecentCommends) ProtoMessage() {} func (x *CMsgPlayerRecentCommends) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[54] + mi := &file_dota_gcmessages_common_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6823,7 +7007,7 @@ func (x *CMsgPlayerRecentCommends) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerRecentCommends.ProtoReflect.Descriptor instead. func (*CMsgPlayerRecentCommends) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{54} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{55} } func (x *CMsgPlayerRecentCommends) GetCommends() uint32 { @@ -6858,7 +7042,7 @@ type CMsgPlayerRecentAccomplishments struct { func (x *CMsgPlayerRecentAccomplishments) Reset() { *x = CMsgPlayerRecentAccomplishments{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[55] + mi := &file_dota_gcmessages_common_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6871,7 +7055,7 @@ func (x *CMsgPlayerRecentAccomplishments) String() string { func (*CMsgPlayerRecentAccomplishments) ProtoMessage() {} func (x *CMsgPlayerRecentAccomplishments) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[55] + mi := &file_dota_gcmessages_common_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6884,7 +7068,7 @@ func (x *CMsgPlayerRecentAccomplishments) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerRecentAccomplishments.ProtoReflect.Descriptor instead. func (*CMsgPlayerRecentAccomplishments) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{55} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{56} } func (x *CMsgPlayerRecentAccomplishments) GetRecentOutcomes() *CMsgPlayerRecentMatchOutcomes { @@ -6956,7 +7140,7 @@ type CMsgPlayerHeroRecentAccomplishments struct { func (x *CMsgPlayerHeroRecentAccomplishments) Reset() { *x = CMsgPlayerHeroRecentAccomplishments{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[56] + mi := &file_dota_gcmessages_common_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6969,7 +7153,7 @@ func (x *CMsgPlayerHeroRecentAccomplishments) String() string { func (*CMsgPlayerHeroRecentAccomplishments) ProtoMessage() {} func (x *CMsgPlayerHeroRecentAccomplishments) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[56] + mi := &file_dota_gcmessages_common_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6982,7 +7166,7 @@ func (x *CMsgPlayerHeroRecentAccomplishments) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgPlayerHeroRecentAccomplishments.ProtoReflect.Descriptor instead. func (*CMsgPlayerHeroRecentAccomplishments) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{56} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{57} } func (x *CMsgPlayerHeroRecentAccomplishments) GetRecentOutcomes() *CMsgPlayerRecentMatchOutcomes { @@ -7018,7 +7202,7 @@ type CMsgRecentAccomplishments struct { func (x *CMsgRecentAccomplishments) Reset() { *x = CMsgRecentAccomplishments{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[57] + mi := &file_dota_gcmessages_common_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7031,7 +7215,7 @@ func (x *CMsgRecentAccomplishments) String() string { func (*CMsgRecentAccomplishments) ProtoMessage() {} func (x *CMsgRecentAccomplishments) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[57] + mi := &file_dota_gcmessages_common_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7044,7 +7228,7 @@ func (x *CMsgRecentAccomplishments) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgRecentAccomplishments.ProtoReflect.Descriptor instead. func (*CMsgRecentAccomplishments) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{57} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{58} } func (x *CMsgRecentAccomplishments) GetPlayerAccomplishments() *CMsgPlayerRecentAccomplishments { @@ -7073,7 +7257,7 @@ type CMsgServerToGCRequestPlayerRecentAccomplishments struct { func (x *CMsgServerToGCRequestPlayerRecentAccomplishments) Reset() { *x = CMsgServerToGCRequestPlayerRecentAccomplishments{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[58] + mi := &file_dota_gcmessages_common_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7086,7 +7270,7 @@ func (x *CMsgServerToGCRequestPlayerRecentAccomplishments) String() string { func (*CMsgServerToGCRequestPlayerRecentAccomplishments) ProtoMessage() {} func (x *CMsgServerToGCRequestPlayerRecentAccomplishments) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[58] + mi := &file_dota_gcmessages_common_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7099,7 +7283,7 @@ func (x *CMsgServerToGCRequestPlayerRecentAccomplishments) ProtoReflect() protor // Deprecated: Use CMsgServerToGCRequestPlayerRecentAccomplishments.ProtoReflect.Descriptor instead. func (*CMsgServerToGCRequestPlayerRecentAccomplishments) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{58} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{59} } func (x *CMsgServerToGCRequestPlayerRecentAccomplishments) GetAccountId() uint32 { @@ -7128,7 +7312,7 @@ type CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse struct { func (x *CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse) Reset() { *x = CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[59] + mi := &file_dota_gcmessages_common_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7141,7 +7325,7 @@ func (x *CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse) String() stri func (*CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse) ProtoMessage() {} func (x *CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[59] + mi := &file_dota_gcmessages_common_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7154,7 +7338,7 @@ func (x *CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse) ProtoReflect( // Deprecated: Use CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.ProtoReflect.Descriptor instead. func (*CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{59} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{60} } func (x *CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse) GetResult() CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse { @@ -7184,7 +7368,7 @@ type CMsgArcanaVoteMatchVotes struct { func (x *CMsgArcanaVoteMatchVotes) Reset() { *x = CMsgArcanaVoteMatchVotes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[60] + mi := &file_dota_gcmessages_common_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7197,7 +7381,7 @@ func (x *CMsgArcanaVoteMatchVotes) String() string { func (*CMsgArcanaVoteMatchVotes) ProtoMessage() {} func (x *CMsgArcanaVoteMatchVotes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[60] + mi := &file_dota_gcmessages_common_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7210,7 +7394,7 @@ func (x *CMsgArcanaVoteMatchVotes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgArcanaVoteMatchVotes.ProtoReflect.Descriptor instead. func (*CMsgArcanaVoteMatchVotes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{60} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{61} } func (x *CMsgArcanaVoteMatchVotes) GetMatchId() uint32 { @@ -7248,7 +7432,7 @@ type CMsgGCtoGCAssociatedExploiterAccountInfo struct { func (x *CMsgGCtoGCAssociatedExploiterAccountInfo) Reset() { *x = CMsgGCtoGCAssociatedExploiterAccountInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[61] + mi := &file_dota_gcmessages_common_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7261,7 +7445,7 @@ func (x *CMsgGCtoGCAssociatedExploiterAccountInfo) String() string { func (*CMsgGCtoGCAssociatedExploiterAccountInfo) ProtoMessage() {} func (x *CMsgGCtoGCAssociatedExploiterAccountInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[61] + mi := &file_dota_gcmessages_common_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7274,7 +7458,7 @@ func (x *CMsgGCtoGCAssociatedExploiterAccountInfo) ProtoReflect() protoreflect.M // Deprecated: Use CMsgGCtoGCAssociatedExploiterAccountInfo.ProtoReflect.Descriptor instead. func (*CMsgGCtoGCAssociatedExploiterAccountInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{61} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{62} } func (x *CMsgGCtoGCAssociatedExploiterAccountInfo) GetAccountId() uint32 { @@ -7316,7 +7500,7 @@ type CMsgGCtoGCAssociatedExploiterAccountInfoResponse struct { func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse) Reset() { *x = CMsgGCtoGCAssociatedExploiterAccountInfoResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[62] + mi := &file_dota_gcmessages_common_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7329,7 +7513,7 @@ func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse) String() string { func (*CMsgGCtoGCAssociatedExploiterAccountInfoResponse) ProtoMessage() {} func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[62] + mi := &file_dota_gcmessages_common_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7342,7 +7526,7 @@ func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse) ProtoReflect() protor // Deprecated: Use CMsgGCtoGCAssociatedExploiterAccountInfoResponse.ProtoReflect.Descriptor instead. func (*CMsgGCtoGCAssociatedExploiterAccountInfoResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{62} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{63} } func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse) GetAccounts() []*CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account { @@ -7365,7 +7549,7 @@ type CMsgPullTabsData struct { func (x *CMsgPullTabsData) Reset() { *x = CMsgPullTabsData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[63] + mi := &file_dota_gcmessages_common_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7378,7 +7562,7 @@ func (x *CMsgPullTabsData) String() string { func (*CMsgPullTabsData) ProtoMessage() {} func (x *CMsgPullTabsData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[63] + mi := &file_dota_gcmessages_common_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7391,7 +7575,7 @@ func (x *CMsgPullTabsData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPullTabsData.ProtoReflect.Descriptor instead. func (*CMsgPullTabsData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{63} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{64} } func (x *CMsgPullTabsData) GetSlots() []*CMsgPullTabsData_Slot { @@ -7430,7 +7614,7 @@ type CMsgUnderDraftData struct { func (x *CMsgUnderDraftData) Reset() { *x = CMsgUnderDraftData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[64] + mi := &file_dota_gcmessages_common_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7443,7 +7627,7 @@ func (x *CMsgUnderDraftData) String() string { func (*CMsgUnderDraftData) ProtoMessage() {} func (x *CMsgUnderDraftData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[64] + mi := &file_dota_gcmessages_common_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7456,7 +7640,7 @@ func (x *CMsgUnderDraftData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgUnderDraftData.ProtoReflect.Descriptor instead. func (*CMsgUnderDraftData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{64} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{65} } func (x *CMsgUnderDraftData) GetBenchSlots() []*CMsgUnderDraftData_BenchSlot { @@ -7507,7 +7691,7 @@ type CMsgPlayerTitleData struct { func (x *CMsgPlayerTitleData) Reset() { *x = CMsgPlayerTitleData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[65] + mi := &file_dota_gcmessages_common_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7520,7 +7704,7 @@ func (x *CMsgPlayerTitleData) String() string { func (*CMsgPlayerTitleData) ProtoMessage() {} func (x *CMsgPlayerTitleData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[65] + mi := &file_dota_gcmessages_common_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7533,7 +7717,7 @@ func (x *CMsgPlayerTitleData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerTitleData.ProtoReflect.Descriptor instead. func (*CMsgPlayerTitleData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{65} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{66} } func (x *CMsgPlayerTitleData) GetTitle() []uint32 { @@ -7573,7 +7757,7 @@ type CMsgDOTATriviaQuestion struct { func (x *CMsgDOTATriviaQuestion) Reset() { *x = CMsgDOTATriviaQuestion{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[66] + mi := &file_dota_gcmessages_common_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7586,7 +7770,7 @@ func (x *CMsgDOTATriviaQuestion) String() string { func (*CMsgDOTATriviaQuestion) ProtoMessage() {} func (x *CMsgDOTATriviaQuestion) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[66] + mi := &file_dota_gcmessages_common_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7599,7 +7783,7 @@ func (x *CMsgDOTATriviaQuestion) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTATriviaQuestion.ProtoReflect.Descriptor instead. func (*CMsgDOTATriviaQuestion) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{66} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{67} } func (x *CMsgDOTATriviaQuestion) GetQuestionId() uint32 { @@ -7656,7 +7840,7 @@ type CMsgDOTATriviaQuestionAnswersSummary struct { func (x *CMsgDOTATriviaQuestionAnswersSummary) Reset() { *x = CMsgDOTATriviaQuestionAnswersSummary{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[67] + mi := &file_dota_gcmessages_common_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7669,7 +7853,7 @@ func (x *CMsgDOTATriviaQuestionAnswersSummary) String() string { func (*CMsgDOTATriviaQuestionAnswersSummary) ProtoMessage() {} func (x *CMsgDOTATriviaQuestionAnswersSummary) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[67] + mi := &file_dota_gcmessages_common_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7682,7 +7866,7 @@ func (x *CMsgDOTATriviaQuestionAnswersSummary) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgDOTATriviaQuestionAnswersSummary.ProtoReflect.Descriptor instead. func (*CMsgDOTATriviaQuestionAnswersSummary) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{67} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{68} } func (x *CMsgDOTATriviaQuestionAnswersSummary) GetSummaryAvailable() bool { @@ -7712,7 +7896,7 @@ type CMsgGameDataSpecialValueBonus struct { func (x *CMsgGameDataSpecialValueBonus) Reset() { *x = CMsgGameDataSpecialValueBonus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[68] + mi := &file_dota_gcmessages_common_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7725,7 +7909,7 @@ func (x *CMsgGameDataSpecialValueBonus) String() string { func (*CMsgGameDataSpecialValueBonus) ProtoMessage() {} func (x *CMsgGameDataSpecialValueBonus) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[68] + mi := &file_dota_gcmessages_common_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7738,7 +7922,7 @@ func (x *CMsgGameDataSpecialValueBonus) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataSpecialValueBonus.ProtoReflect.Descriptor instead. func (*CMsgGameDataSpecialValueBonus) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{68} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{69} } func (x *CMsgGameDataSpecialValueBonus) GetName() string { @@ -7767,17 +7951,19 @@ type CMsgGameDataSpecialValues struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` - ValuesFloat []float32 `protobuf:"fixed32,2,rep,name=values_float,json=valuesFloat" json:"values_float,omitempty"` - IsPercentage *bool `protobuf:"varint,4,opt,name=is_percentage,json=isPercentage" json:"is_percentage,omitempty"` - HeadingLoc *string `protobuf:"bytes,5,opt,name=heading_loc,json=headingLoc" json:"heading_loc,omitempty"` - Bonuses []*CMsgGameDataSpecialValueBonus `protobuf:"bytes,6,rep,name=bonuses" json:"bonuses,omitempty"` + Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + ValuesFloat []float32 `protobuf:"fixed32,2,rep,name=values_float,json=valuesFloat" json:"values_float,omitempty"` + IsPercentage *bool `protobuf:"varint,4,opt,name=is_percentage,json=isPercentage" json:"is_percentage,omitempty"` + HeadingLoc *string `protobuf:"bytes,5,opt,name=heading_loc,json=headingLoc" json:"heading_loc,omitempty"` + Bonuses []*CMsgGameDataSpecialValueBonus `protobuf:"bytes,6,rep,name=bonuses" json:"bonuses,omitempty"` + ValuesShard []float32 `protobuf:"fixed32,7,rep,name=values_shard,json=valuesShard" json:"values_shard,omitempty"` + ValuesScepter []float32 `protobuf:"fixed32,8,rep,name=values_scepter,json=valuesScepter" json:"values_scepter,omitempty"` } func (x *CMsgGameDataSpecialValues) Reset() { *x = CMsgGameDataSpecialValues{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[69] + mi := &file_dota_gcmessages_common_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7790,7 +7976,7 @@ func (x *CMsgGameDataSpecialValues) String() string { func (*CMsgGameDataSpecialValues) ProtoMessage() {} func (x *CMsgGameDataSpecialValues) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[69] + mi := &file_dota_gcmessages_common_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7803,7 +7989,7 @@ func (x *CMsgGameDataSpecialValues) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataSpecialValues.ProtoReflect.Descriptor instead. func (*CMsgGameDataSpecialValues) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{69} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{70} } func (x *CMsgGameDataSpecialValues) GetName() string { @@ -7841,6 +8027,20 @@ func (x *CMsgGameDataSpecialValues) GetBonuses() []*CMsgGameDataSpecialValueBonu return nil } +func (x *CMsgGameDataSpecialValues) GetValuesShard() []float32 { + if x != nil { + return x.ValuesShard + } + return nil +} + +func (x *CMsgGameDataSpecialValues) GetValuesScepter() []float32 { + if x != nil { + return x.ValuesScepter + } + return nil +} + type CMsgGameDataAbilityOrItem struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7889,7 +8089,7 @@ type CMsgGameDataAbilityOrItem struct { func (x *CMsgGameDataAbilityOrItem) Reset() { *x = CMsgGameDataAbilityOrItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[70] + mi := &file_dota_gcmessages_common_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7902,7 +8102,7 @@ func (x *CMsgGameDataAbilityOrItem) String() string { func (*CMsgGameDataAbilityOrItem) ProtoMessage() {} func (x *CMsgGameDataAbilityOrItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[70] + mi := &file_dota_gcmessages_common_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7915,7 +8115,7 @@ func (x *CMsgGameDataAbilityOrItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataAbilityOrItem.ProtoReflect.Descriptor instead. func (*CMsgGameDataAbilityOrItem) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{70} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{71} } func (x *CMsgGameDataAbilityOrItem) GetId() int32 { @@ -8206,8 +8406,8 @@ type CMsgGameDataHero struct { Complexity *uint32 `protobuf:"varint,21,opt,name=complexity" json:"complexity,omitempty"` AttackCapability *uint32 `protobuf:"varint,22,opt,name=attack_capability,json=attackCapability" json:"attack_capability,omitempty"` RoleLevels []uint32 `protobuf:"varint,23,rep,name=role_levels,json=roleLevels" json:"role_levels,omitempty"` - DamageMin *uint32 `protobuf:"varint,24,opt,name=damage_min,json=damageMin" json:"damage_min,omitempty"` - DamageMax *uint32 `protobuf:"varint,25,opt,name=damage_max,json=damageMax" json:"damage_max,omitempty"` + DamageMin *int32 `protobuf:"varint,24,opt,name=damage_min,json=damageMin" json:"damage_min,omitempty"` + DamageMax *int32 `protobuf:"varint,25,opt,name=damage_max,json=damageMax" json:"damage_max,omitempty"` AttackRate *float32 `protobuf:"fixed32,26,opt,name=attack_rate,json=attackRate" json:"attack_rate,omitempty"` AttackRange *uint32 `protobuf:"varint,27,opt,name=attack_range,json=attackRange" json:"attack_range,omitempty"` ProjectileSpeed *uint32 `protobuf:"varint,28,opt,name=projectile_speed,json=projectileSpeed" json:"projectile_speed,omitempty"` @@ -8228,7 +8428,7 @@ type CMsgGameDataHero struct { func (x *CMsgGameDataHero) Reset() { *x = CMsgGameDataHero{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[71] + mi := &file_dota_gcmessages_common_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8241,7 +8441,7 @@ func (x *CMsgGameDataHero) String() string { func (*CMsgGameDataHero) ProtoMessage() {} func (x *CMsgGameDataHero) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[71] + mi := &file_dota_gcmessages_common_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8254,7 +8454,7 @@ func (x *CMsgGameDataHero) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataHero.ProtoReflect.Descriptor instead. func (*CMsgGameDataHero) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{71} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{72} } func (x *CMsgGameDataHero) GetId() uint32 { @@ -8376,14 +8576,14 @@ func (x *CMsgGameDataHero) GetRoleLevels() []uint32 { return nil } -func (x *CMsgGameDataHero) GetDamageMin() uint32 { +func (x *CMsgGameDataHero) GetDamageMin() int32 { if x != nil && x.DamageMin != nil { return *x.DamageMin } return 0 } -func (x *CMsgGameDataHero) GetDamageMax() uint32 { +func (x *CMsgGameDataHero) GetDamageMax() int32 { if x != nil && x.DamageMax != nil { return *x.DamageMax } @@ -8506,7 +8706,7 @@ type CMsgGameDataAbilities struct { func (x *CMsgGameDataAbilities) Reset() { *x = CMsgGameDataAbilities{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[72] + mi := &file_dota_gcmessages_common_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8519,7 +8719,7 @@ func (x *CMsgGameDataAbilities) String() string { func (*CMsgGameDataAbilities) ProtoMessage() {} func (x *CMsgGameDataAbilities) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[72] + mi := &file_dota_gcmessages_common_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8532,7 +8732,7 @@ func (x *CMsgGameDataAbilities) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataAbilities.ProtoReflect.Descriptor instead. func (*CMsgGameDataAbilities) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{72} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{73} } func (x *CMsgGameDataAbilities) GetAbilities() []*CMsgGameDataAbilityOrItem { @@ -8553,7 +8753,7 @@ type CMsgGameDataItems struct { func (x *CMsgGameDataItems) Reset() { *x = CMsgGameDataItems{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[73] + mi := &file_dota_gcmessages_common_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8566,7 +8766,7 @@ func (x *CMsgGameDataItems) String() string { func (*CMsgGameDataItems) ProtoMessage() {} func (x *CMsgGameDataItems) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[73] + mi := &file_dota_gcmessages_common_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8579,7 +8779,7 @@ func (x *CMsgGameDataItems) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataItems.ProtoReflect.Descriptor instead. func (*CMsgGameDataItems) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{73} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{74} } func (x *CMsgGameDataItems) GetItems() []*CMsgGameDataAbilityOrItem { @@ -8600,7 +8800,7 @@ type CMsgGameDataHeroes struct { func (x *CMsgGameDataHeroes) Reset() { *x = CMsgGameDataHeroes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[74] + mi := &file_dota_gcmessages_common_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8613,7 +8813,7 @@ func (x *CMsgGameDataHeroes) String() string { func (*CMsgGameDataHeroes) ProtoMessage() {} func (x *CMsgGameDataHeroes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[74] + mi := &file_dota_gcmessages_common_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8626,7 +8826,7 @@ func (x *CMsgGameDataHeroes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataHeroes.ProtoReflect.Descriptor instead. func (*CMsgGameDataHeroes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{74} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{75} } func (x *CMsgGameDataHeroes) GetHeroes() []*CMsgGameDataHero { @@ -8647,7 +8847,7 @@ type CMsgGameDataHeroList struct { func (x *CMsgGameDataHeroList) Reset() { *x = CMsgGameDataHeroList{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[75] + mi := &file_dota_gcmessages_common_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8660,7 +8860,7 @@ func (x *CMsgGameDataHeroList) String() string { func (*CMsgGameDataHeroList) ProtoMessage() {} func (x *CMsgGameDataHeroList) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[75] + mi := &file_dota_gcmessages_common_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8673,7 +8873,7 @@ func (x *CMsgGameDataHeroList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataHeroList.ProtoReflect.Descriptor instead. func (*CMsgGameDataHeroList) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{75} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{76} } func (x *CMsgGameDataHeroList) GetHeroes() []*CMsgGameDataHeroList_HeroInfo { @@ -8694,7 +8894,7 @@ type CMsgGameDataItemAbilityList struct { func (x *CMsgGameDataItemAbilityList) Reset() { *x = CMsgGameDataItemAbilityList{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[76] + mi := &file_dota_gcmessages_common_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8707,7 +8907,7 @@ func (x *CMsgGameDataItemAbilityList) String() string { func (*CMsgGameDataItemAbilityList) ProtoMessage() {} func (x *CMsgGameDataItemAbilityList) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[76] + mi := &file_dota_gcmessages_common_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8720,7 +8920,7 @@ func (x *CMsgGameDataItemAbilityList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataItemAbilityList.ProtoReflect.Descriptor instead. func (*CMsgGameDataItemAbilityList) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{76} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{77} } func (x *CMsgGameDataItemAbilityList) GetItemabilities() []*CMsgGameDataItemAbilityList_ItemAbilityInfo { @@ -8741,7 +8941,7 @@ type CMsgLobbyAbilityDraftData struct { func (x *CMsgLobbyAbilityDraftData) Reset() { *x = CMsgLobbyAbilityDraftData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[77] + mi := &file_dota_gcmessages_common_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8754,7 +8954,7 @@ func (x *CMsgLobbyAbilityDraftData) String() string { func (*CMsgLobbyAbilityDraftData) ProtoMessage() {} func (x *CMsgLobbyAbilityDraftData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[77] + mi := &file_dota_gcmessages_common_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8767,7 +8967,7 @@ func (x *CMsgLobbyAbilityDraftData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLobbyAbilityDraftData.ProtoReflect.Descriptor instead. func (*CMsgLobbyAbilityDraftData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{77} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{78} } func (x *CMsgLobbyAbilityDraftData) GetShuffleDraftOrder() bool { @@ -8795,7 +8995,7 @@ type CSOEconItemDropRateBonus struct { func (x *CSOEconItemDropRateBonus) Reset() { *x = CSOEconItemDropRateBonus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[78] + mi := &file_dota_gcmessages_common_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8808,7 +9008,7 @@ func (x *CSOEconItemDropRateBonus) String() string { func (*CSOEconItemDropRateBonus) ProtoMessage() {} func (x *CSOEconItemDropRateBonus) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[78] + mi := &file_dota_gcmessages_common_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8821,7 +9021,7 @@ func (x *CSOEconItemDropRateBonus) ProtoReflect() protoreflect.Message { // Deprecated: Use CSOEconItemDropRateBonus.ProtoReflect.Descriptor instead. func (*CSOEconItemDropRateBonus) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{78} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{79} } func (x *CSOEconItemDropRateBonus) GetAccountId() uint32 { @@ -8898,7 +9098,7 @@ type CSOEconItemTournamentPassport struct { func (x *CSOEconItemTournamentPassport) Reset() { *x = CSOEconItemTournamentPassport{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[79] + mi := &file_dota_gcmessages_common_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8911,7 +9111,7 @@ func (x *CSOEconItemTournamentPassport) String() string { func (*CSOEconItemTournamentPassport) ProtoMessage() {} func (x *CSOEconItemTournamentPassport) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[79] + mi := &file_dota_gcmessages_common_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8924,7 +9124,7 @@ func (x *CSOEconItemTournamentPassport) ProtoReflect() protoreflect.Message { // Deprecated: Use CSOEconItemTournamentPassport.ProtoReflect.Descriptor instead. func (*CSOEconItemTournamentPassport) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{79} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{80} } func (x *CSOEconItemTournamentPassport) GetAccountId() uint32 { @@ -9003,7 +9203,7 @@ type CMsgStickerbookSticker struct { func (x *CMsgStickerbookSticker) Reset() { *x = CMsgStickerbookSticker{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[80] + mi := &file_dota_gcmessages_common_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9016,7 +9216,7 @@ func (x *CMsgStickerbookSticker) String() string { func (*CMsgStickerbookSticker) ProtoMessage() {} func (x *CMsgStickerbookSticker) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[80] + mi := &file_dota_gcmessages_common_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9029,7 +9229,7 @@ func (x *CMsgStickerbookSticker) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgStickerbookSticker.ProtoReflect.Descriptor instead. func (*CMsgStickerbookSticker) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{80} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{81} } func (x *CMsgStickerbookSticker) GetItemDefId() uint32 { @@ -9117,7 +9317,7 @@ type CMsgStickerbookPage struct { func (x *CMsgStickerbookPage) Reset() { *x = CMsgStickerbookPage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[81] + mi := &file_dota_gcmessages_common_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9130,7 +9330,7 @@ func (x *CMsgStickerbookPage) String() string { func (*CMsgStickerbookPage) ProtoMessage() {} func (x *CMsgStickerbookPage) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[81] + mi := &file_dota_gcmessages_common_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9143,7 +9343,7 @@ func (x *CMsgStickerbookPage) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgStickerbookPage.ProtoReflect.Descriptor instead. func (*CMsgStickerbookPage) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{81} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{82} } func (x *CMsgStickerbookPage) GetPageNum() uint32 { @@ -9192,7 +9392,7 @@ type CMsgStickerbookTeamPageOrderSequence struct { func (x *CMsgStickerbookTeamPageOrderSequence) Reset() { *x = CMsgStickerbookTeamPageOrderSequence{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[82] + mi := &file_dota_gcmessages_common_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9205,7 +9405,7 @@ func (x *CMsgStickerbookTeamPageOrderSequence) String() string { func (*CMsgStickerbookTeamPageOrderSequence) ProtoMessage() {} func (x *CMsgStickerbookTeamPageOrderSequence) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[82] + mi := &file_dota_gcmessages_common_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9218,7 +9418,7 @@ func (x *CMsgStickerbookTeamPageOrderSequence) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgStickerbookTeamPageOrderSequence.ProtoReflect.Descriptor instead. func (*CMsgStickerbookTeamPageOrderSequence) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{82} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{83} } func (x *CMsgStickerbookTeamPageOrderSequence) GetPageNumbers() []uint32 { @@ -9241,7 +9441,7 @@ type CMsgStickerbook struct { func (x *CMsgStickerbook) Reset() { *x = CMsgStickerbook{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[83] + mi := &file_dota_gcmessages_common_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9254,7 +9454,7 @@ func (x *CMsgStickerbook) String() string { func (*CMsgStickerbook) ProtoMessage() {} func (x *CMsgStickerbook) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[83] + mi := &file_dota_gcmessages_common_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9267,7 +9467,7 @@ func (x *CMsgStickerbook) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgStickerbook.ProtoReflect.Descriptor instead. func (*CMsgStickerbook) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{83} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{84} } func (x *CMsgStickerbook) GetPages() []*CMsgStickerbookPage { @@ -9305,7 +9505,7 @@ type CMsgStickerHero struct { func (x *CMsgStickerHero) Reset() { *x = CMsgStickerHero{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[84] + mi := &file_dota_gcmessages_common_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9318,7 +9518,7 @@ func (x *CMsgStickerHero) String() string { func (*CMsgStickerHero) ProtoMessage() {} func (x *CMsgStickerHero) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[84] + mi := &file_dota_gcmessages_common_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9331,7 +9531,7 @@ func (x *CMsgStickerHero) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgStickerHero.ProtoReflect.Descriptor instead. func (*CMsgStickerHero) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{84} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{85} } func (x *CMsgStickerHero) GetHeroId() uint32 { @@ -9373,7 +9573,7 @@ type CMsgStickerHeroes struct { func (x *CMsgStickerHeroes) Reset() { *x = CMsgStickerHeroes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[85] + mi := &file_dota_gcmessages_common_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9386,7 +9586,7 @@ func (x *CMsgStickerHeroes) String() string { func (*CMsgStickerHeroes) ProtoMessage() {} func (x *CMsgStickerHeroes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[85] + mi := &file_dota_gcmessages_common_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9399,7 +9599,7 @@ func (x *CMsgStickerHeroes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgStickerHeroes.ProtoReflect.Descriptor instead. func (*CMsgStickerHeroes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{85} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{86} } func (x *CMsgStickerHeroes) GetHeroes() []*CMsgStickerHero { @@ -9422,7 +9622,7 @@ type CMsgHeroRoleStats struct { func (x *CMsgHeroRoleStats) Reset() { *x = CMsgHeroRoleStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[86] + mi := &file_dota_gcmessages_common_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9435,7 +9635,7 @@ func (x *CMsgHeroRoleStats) String() string { func (*CMsgHeroRoleStats) ProtoMessage() {} func (x *CMsgHeroRoleStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[86] + mi := &file_dota_gcmessages_common_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9448,7 +9648,7 @@ func (x *CMsgHeroRoleStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgHeroRoleStats.ProtoReflect.Descriptor instead. func (*CMsgHeroRoleStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{86} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{87} } func (x *CMsgHeroRoleStats) GetLaneSelectionFlags() uint32 { @@ -9484,7 +9684,7 @@ type CMsgHeroRoleHeroStats struct { func (x *CMsgHeroRoleHeroStats) Reset() { *x = CMsgHeroRoleHeroStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[87] + mi := &file_dota_gcmessages_common_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9497,7 +9697,7 @@ func (x *CMsgHeroRoleHeroStats) String() string { func (*CMsgHeroRoleHeroStats) ProtoMessage() {} func (x *CMsgHeroRoleHeroStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[87] + mi := &file_dota_gcmessages_common_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9510,7 +9710,7 @@ func (x *CMsgHeroRoleHeroStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgHeroRoleHeroStats.ProtoReflect.Descriptor instead. func (*CMsgHeroRoleHeroStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{87} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{88} } func (x *CMsgHeroRoleHeroStats) GetHeroId() uint32 { @@ -9539,7 +9739,7 @@ type CMsgHeroRoleRankStats struct { func (x *CMsgHeroRoleRankStats) Reset() { *x = CMsgHeroRoleRankStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[88] + mi := &file_dota_gcmessages_common_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9552,7 +9752,7 @@ func (x *CMsgHeroRoleRankStats) String() string { func (*CMsgHeroRoleRankStats) ProtoMessage() {} func (x *CMsgHeroRoleRankStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[88] + mi := &file_dota_gcmessages_common_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9565,7 +9765,7 @@ func (x *CMsgHeroRoleRankStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgHeroRoleRankStats.ProtoReflect.Descriptor instead. func (*CMsgHeroRoleRankStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{88} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{89} } func (x *CMsgHeroRoleRankStats) GetRankTier() uint32 { @@ -9595,7 +9795,7 @@ type CMsgHeroRoleAllRanksStats struct { func (x *CMsgHeroRoleAllRanksStats) Reset() { *x = CMsgHeroRoleAllRanksStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[89] + mi := &file_dota_gcmessages_common_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9608,7 +9808,7 @@ func (x *CMsgHeroRoleAllRanksStats) String() string { func (*CMsgHeroRoleAllRanksStats) ProtoMessage() {} func (x *CMsgHeroRoleAllRanksStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[89] + mi := &file_dota_gcmessages_common_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9621,7 +9821,7 @@ func (x *CMsgHeroRoleAllRanksStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgHeroRoleAllRanksStats.ProtoReflect.Descriptor instead. func (*CMsgHeroRoleAllRanksStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{89} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{90} } func (x *CMsgHeroRoleAllRanksStats) GetStartTimestamp() uint32 { @@ -9651,13 +9851,13 @@ type CMsgMapStatsSnapshot struct { unknownFields protoimpl.UnknownFields Timestamp *uint32 `protobuf:"varint,1,opt,name=timestamp" json:"timestamp,omitempty"` - FamangosGained *uint64 `protobuf:"varint,2,opt,name=famangos_gained,json=famangosGained" json:"famangos_gained,omitempty"` + LotusesGained *uint64 `protobuf:"varint,2,opt,name=lotuses_gained,json=lotusesGained" json:"lotuses_gained,omitempty"` WisdomRunesGained *uint64 `protobuf:"varint,3,opt,name=wisdom_runes_gained,json=wisdomRunesGained" json:"wisdom_runes_gained,omitempty"` RoshanKillsDay *uint64 `protobuf:"varint,4,opt,name=roshan_kills_day,json=roshanKillsDay" json:"roshan_kills_day,omitempty"` RoshanKillsNight *uint64 `protobuf:"varint,5,opt,name=roshan_kills_night,json=roshanKillsNight" json:"roshan_kills_night,omitempty"` PortalsUsed *uint64 `protobuf:"varint,6,opt,name=portals_used,json=portalsUsed" json:"portals_used,omitempty"` - LanternsLit *uint64 `protobuf:"varint,7,opt,name=lanterns_lit,json=lanternsLit" json:"lanterns_lit,omitempty"` - MinibossKills *uint64 `protobuf:"varint,8,opt,name=miniboss_kills,json=minibossKills" json:"miniboss_kills,omitempty"` + WatchersTaken *uint64 `protobuf:"varint,7,opt,name=watchers_taken,json=watchersTaken" json:"watchers_taken,omitempty"` + TormentorKills *uint64 `protobuf:"varint,8,opt,name=tormentor_kills,json=tormentorKills" json:"tormentor_kills,omitempty"` OutpostsCaptured *uint64 `protobuf:"varint,9,opt,name=outposts_captured,json=outpostsCaptured" json:"outposts_captured,omitempty"` ShieldRunesGained *uint64 `protobuf:"varint,10,opt,name=shield_runes_gained,json=shieldRunesGained" json:"shield_runes_gained,omitempty"` } @@ -9665,7 +9865,7 @@ type CMsgMapStatsSnapshot struct { func (x *CMsgMapStatsSnapshot) Reset() { *x = CMsgMapStatsSnapshot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[90] + mi := &file_dota_gcmessages_common_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9678,7 +9878,7 @@ func (x *CMsgMapStatsSnapshot) String() string { func (*CMsgMapStatsSnapshot) ProtoMessage() {} func (x *CMsgMapStatsSnapshot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[90] + mi := &file_dota_gcmessages_common_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9691,7 +9891,7 @@ func (x *CMsgMapStatsSnapshot) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgMapStatsSnapshot.ProtoReflect.Descriptor instead. func (*CMsgMapStatsSnapshot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{90} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{91} } func (x *CMsgMapStatsSnapshot) GetTimestamp() uint32 { @@ -9701,9 +9901,9 @@ func (x *CMsgMapStatsSnapshot) GetTimestamp() uint32 { return 0 } -func (x *CMsgMapStatsSnapshot) GetFamangosGained() uint64 { - if x != nil && x.FamangosGained != nil { - return *x.FamangosGained +func (x *CMsgMapStatsSnapshot) GetLotusesGained() uint64 { + if x != nil && x.LotusesGained != nil { + return *x.LotusesGained } return 0 } @@ -9736,16 +9936,16 @@ func (x *CMsgMapStatsSnapshot) GetPortalsUsed() uint64 { return 0 } -func (x *CMsgMapStatsSnapshot) GetLanternsLit() uint64 { - if x != nil && x.LanternsLit != nil { - return *x.LanternsLit +func (x *CMsgMapStatsSnapshot) GetWatchersTaken() uint64 { + if x != nil && x.WatchersTaken != nil { + return *x.WatchersTaken } return 0 } -func (x *CMsgMapStatsSnapshot) GetMinibossKills() uint64 { - if x != nil && x.MinibossKills != nil { - return *x.MinibossKills +func (x *CMsgMapStatsSnapshot) GetTormentorKills() uint64 { + if x != nil && x.TormentorKills != nil { + return *x.TormentorKills } return 0 } @@ -9777,7 +9977,7 @@ type CMsgGlobalMapStats struct { func (x *CMsgGlobalMapStats) Reset() { *x = CMsgGlobalMapStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[91] + mi := &file_dota_gcmessages_common_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9790,7 +9990,7 @@ func (x *CMsgGlobalMapStats) String() string { func (*CMsgGlobalMapStats) ProtoMessage() {} func (x *CMsgGlobalMapStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[91] + mi := &file_dota_gcmessages_common_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9803,7 +10003,7 @@ func (x *CMsgGlobalMapStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGlobalMapStats.ProtoReflect.Descriptor instead. func (*CMsgGlobalMapStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{91} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{92} } func (x *CMsgGlobalMapStats) GetCurrent() *CMsgMapStatsSnapshot { @@ -9827,6 +10027,61 @@ func (x *CMsgGlobalMapStats) GetWindowEnd() *CMsgMapStatsSnapshot { return nil } +type CMsgTrackedStat struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TrackedStatId *uint32 `protobuf:"varint,1,opt,name=tracked_stat_id,json=trackedStatId" json:"tracked_stat_id,omitempty"` + TrackedStatValue *int32 `protobuf:"varint,2,opt,name=tracked_stat_value,json=trackedStatValue" json:"tracked_stat_value,omitempty"` +} + +func (x *CMsgTrackedStat) Reset() { + *x = CMsgTrackedStat{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_common_proto_msgTypes[93] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgTrackedStat) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgTrackedStat) ProtoMessage() {} + +func (x *CMsgTrackedStat) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_common_proto_msgTypes[93] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgTrackedStat.ProtoReflect.Descriptor instead. +func (*CMsgTrackedStat) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{93} +} + +func (x *CMsgTrackedStat) GetTrackedStatId() uint32 { + if x != nil && x.TrackedStatId != nil { + return *x.TrackedStatId + } + return 0 +} + +func (x *CMsgTrackedStat) GetTrackedStatValue() int32 { + if x != nil && x.TrackedStatValue != nil { + return *x.TrackedStatValue + } + return 0 +} + type CSODOTAGameAccountClient_RoleHandicap struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -9839,7 +10094,7 @@ type CSODOTAGameAccountClient_RoleHandicap struct { func (x *CSODOTAGameAccountClient_RoleHandicap) Reset() { *x = CSODOTAGameAccountClient_RoleHandicap{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[92] + mi := &file_dota_gcmessages_common_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9852,7 +10107,7 @@ func (x *CSODOTAGameAccountClient_RoleHandicap) String() string { func (*CSODOTAGameAccountClient_RoleHandicap) ProtoMessage() {} func (x *CSODOTAGameAccountClient_RoleHandicap) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[92] + mi := &file_dota_gcmessages_common_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9895,7 +10150,7 @@ type CMsgLobbyFeaturedGamemodeProgress_AccountProgress struct { func (x *CMsgLobbyFeaturedGamemodeProgress_AccountProgress) Reset() { *x = CMsgLobbyFeaturedGamemodeProgress_AccountProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[93] + mi := &file_dota_gcmessages_common_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9908,7 +10163,7 @@ func (x *CMsgLobbyFeaturedGamemodeProgress_AccountProgress) String() string { func (*CMsgLobbyFeaturedGamemodeProgress_AccountProgress) ProtoMessage() {} func (x *CMsgLobbyFeaturedGamemodeProgress_AccountProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[93] + mi := &file_dota_gcmessages_common_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9921,7 +10176,7 @@ func (x *CMsgLobbyFeaturedGamemodeProgress_AccountProgress) ProtoReflect() proto // Deprecated: Use CMsgLobbyFeaturedGamemodeProgress_AccountProgress.ProtoReflect.Descriptor instead. func (*CMsgLobbyFeaturedGamemodeProgress_AccountProgress) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{2, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{3, 0} } func (x *CMsgLobbyFeaturedGamemodeProgress_AccountProgress) GetAccountId() uint32 { @@ -9958,7 +10213,7 @@ type CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo struct { func (x *CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo) Reset() { *x = CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[94] + mi := &file_dota_gcmessages_common_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9971,7 +10226,7 @@ func (x *CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo) String() string { func (*CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo) ProtoMessage() {} func (x *CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[94] + mi := &file_dota_gcmessages_common_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9984,7 +10239,7 @@ func (x *CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo) ProtoReflect() prot // Deprecated: Use CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo.ProtoReflect.Descriptor instead. func (*CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{19, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{20, 0} } func (x *CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo) GetPlayerCardItemId() uint64 { @@ -10025,7 +10280,7 @@ type CMsgDOTAProfileCard_Slot struct { func (x *CMsgDOTAProfileCard_Slot) Reset() { *x = CMsgDOTAProfileCard_Slot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[95] + mi := &file_dota_gcmessages_common_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10038,7 +10293,7 @@ func (x *CMsgDOTAProfileCard_Slot) String() string { func (*CMsgDOTAProfileCard_Slot) ProtoMessage() {} func (x *CMsgDOTAProfileCard_Slot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[95] + mi := &file_dota_gcmessages_common_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10051,7 +10306,7 @@ func (x *CMsgDOTAProfileCard_Slot) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAProfileCard_Slot.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileCard_Slot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23, 0} } func (x *CMsgDOTAProfileCard_Slot) GetSlotId() uint32 { @@ -10115,7 +10370,7 @@ type CMsgDOTAProfileCard_Slot_Trophy struct { func (x *CMsgDOTAProfileCard_Slot_Trophy) Reset() { *x = CMsgDOTAProfileCard_Slot_Trophy{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[96] + mi := &file_dota_gcmessages_common_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10128,7 +10383,7 @@ func (x *CMsgDOTAProfileCard_Slot_Trophy) String() string { func (*CMsgDOTAProfileCard_Slot_Trophy) ProtoMessage() {} func (x *CMsgDOTAProfileCard_Slot_Trophy) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[96] + mi := &file_dota_gcmessages_common_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10141,7 +10396,7 @@ func (x *CMsgDOTAProfileCard_Slot_Trophy) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAProfileCard_Slot_Trophy.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileCard_Slot_Trophy) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22, 0, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23, 0, 0} } func (x *CMsgDOTAProfileCard_Slot_Trophy) GetTrophyId() uint32 { @@ -10170,7 +10425,7 @@ type CMsgDOTAProfileCard_Slot_Stat struct { func (x *CMsgDOTAProfileCard_Slot_Stat) Reset() { *x = CMsgDOTAProfileCard_Slot_Stat{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[97] + mi := &file_dota_gcmessages_common_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10183,7 +10438,7 @@ func (x *CMsgDOTAProfileCard_Slot_Stat) String() string { func (*CMsgDOTAProfileCard_Slot_Stat) ProtoMessage() {} func (x *CMsgDOTAProfileCard_Slot_Stat) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[97] + mi := &file_dota_gcmessages_common_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10196,7 +10451,7 @@ func (x *CMsgDOTAProfileCard_Slot_Stat) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAProfileCard_Slot_Stat.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileCard_Slot_Stat) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22, 0, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23, 0, 1} } func (x *CMsgDOTAProfileCard_Slot_Stat) GetStatId() CMsgDOTAProfileCard_EStatID { @@ -10225,7 +10480,7 @@ type CMsgDOTAProfileCard_Slot_Item struct { func (x *CMsgDOTAProfileCard_Slot_Item) Reset() { *x = CMsgDOTAProfileCard_Slot_Item{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[98] + mi := &file_dota_gcmessages_common_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10238,7 +10493,7 @@ func (x *CMsgDOTAProfileCard_Slot_Item) String() string { func (*CMsgDOTAProfileCard_Slot_Item) ProtoMessage() {} func (x *CMsgDOTAProfileCard_Slot_Item) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[98] + mi := &file_dota_gcmessages_common_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10251,7 +10506,7 @@ func (x *CMsgDOTAProfileCard_Slot_Item) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAProfileCard_Slot_Item.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileCard_Slot_Item) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22, 0, 2} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23, 0, 2} } func (x *CMsgDOTAProfileCard_Slot_Item) GetSerializedItem() []byte { @@ -10281,7 +10536,7 @@ type CMsgDOTAProfileCard_Slot_Hero struct { func (x *CMsgDOTAProfileCard_Slot_Hero) Reset() { *x = CMsgDOTAProfileCard_Slot_Hero{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[99] + mi := &file_dota_gcmessages_common_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10294,7 +10549,7 @@ func (x *CMsgDOTAProfileCard_Slot_Hero) String() string { func (*CMsgDOTAProfileCard_Slot_Hero) ProtoMessage() {} func (x *CMsgDOTAProfileCard_Slot_Hero) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[99] + mi := &file_dota_gcmessages_common_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10307,7 +10562,7 @@ func (x *CMsgDOTAProfileCard_Slot_Hero) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAProfileCard_Slot_Hero.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileCard_Slot_Hero) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22, 0, 3} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23, 0, 3} } func (x *CMsgDOTAProfileCard_Slot_Hero) GetHeroId() uint32 { @@ -10342,7 +10597,7 @@ type CMsgDOTAProfileCard_Slot_Emoticon struct { func (x *CMsgDOTAProfileCard_Slot_Emoticon) Reset() { *x = CMsgDOTAProfileCard_Slot_Emoticon{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[100] + mi := &file_dota_gcmessages_common_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10355,7 +10610,7 @@ func (x *CMsgDOTAProfileCard_Slot_Emoticon) String() string { func (*CMsgDOTAProfileCard_Slot_Emoticon) ProtoMessage() {} func (x *CMsgDOTAProfileCard_Slot_Emoticon) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[100] + mi := &file_dota_gcmessages_common_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10368,7 +10623,7 @@ func (x *CMsgDOTAProfileCard_Slot_Emoticon) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgDOTAProfileCard_Slot_Emoticon.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileCard_Slot_Emoticon) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22, 0, 4} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23, 0, 4} } func (x *CMsgDOTAProfileCard_Slot_Emoticon) GetEmoticonId() uint32 { @@ -10389,7 +10644,7 @@ type CMsgDOTAProfileCard_Slot_Team struct { func (x *CMsgDOTAProfileCard_Slot_Team) Reset() { *x = CMsgDOTAProfileCard_Slot_Team{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[101] + mi := &file_dota_gcmessages_common_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10402,7 +10657,7 @@ func (x *CMsgDOTAProfileCard_Slot_Team) String() string { func (*CMsgDOTAProfileCard_Slot_Team) ProtoMessage() {} func (x *CMsgDOTAProfileCard_Slot_Team) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[101] + mi := &file_dota_gcmessages_common_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10415,7 +10670,7 @@ func (x *CMsgDOTAProfileCard_Slot_Team) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAProfileCard_Slot_Team.ProtoReflect.Descriptor instead. func (*CMsgDOTAProfileCard_Slot_Team) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{22, 0, 5} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{23, 0, 5} } func (x *CMsgDOTAProfileCard_Slot_Team) GetTeamId() uint32 { @@ -10446,7 +10701,7 @@ type CMsgDOTARealtimeGameStats_TeamDetails struct { func (x *CMsgDOTARealtimeGameStats_TeamDetails) Reset() { *x = CMsgDOTARealtimeGameStats_TeamDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[102] + mi := &file_dota_gcmessages_common_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10459,7 +10714,7 @@ func (x *CMsgDOTARealtimeGameStats_TeamDetails) String() string { func (*CMsgDOTARealtimeGameStats_TeamDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_TeamDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[102] + mi := &file_dota_gcmessages_common_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10472,7 +10727,7 @@ func (x *CMsgDOTARealtimeGameStats_TeamDetails) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTARealtimeGameStats_TeamDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_TeamDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 0} } func (x *CMsgDOTARealtimeGameStats_TeamDetails) GetTeamNumber() uint32 { @@ -10567,7 +10822,7 @@ type CMsgDOTARealtimeGameStats_ItemDetails struct { func (x *CMsgDOTARealtimeGameStats_ItemDetails) Reset() { *x = CMsgDOTARealtimeGameStats_ItemDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[103] + mi := &file_dota_gcmessages_common_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10580,7 +10835,7 @@ func (x *CMsgDOTARealtimeGameStats_ItemDetails) String() string { func (*CMsgDOTARealtimeGameStats_ItemDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_ItemDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[103] + mi := &file_dota_gcmessages_common_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10593,7 +10848,7 @@ func (x *CMsgDOTARealtimeGameStats_ItemDetails) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTARealtimeGameStats_ItemDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_ItemDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 1} } func (x *CMsgDOTARealtimeGameStats_ItemDetails) GetItemAbilityId() int32 { @@ -10646,7 +10901,7 @@ type CMsgDOTARealtimeGameStats_AbilityDetails struct { func (x *CMsgDOTARealtimeGameStats_AbilityDetails) Reset() { *x = CMsgDOTARealtimeGameStats_AbilityDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[104] + mi := &file_dota_gcmessages_common_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10659,7 +10914,7 @@ func (x *CMsgDOTARealtimeGameStats_AbilityDetails) String() string { func (*CMsgDOTARealtimeGameStats_AbilityDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_AbilityDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[104] + mi := &file_dota_gcmessages_common_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10672,7 +10927,7 @@ func (x *CMsgDOTARealtimeGameStats_AbilityDetails) ProtoReflect() protoreflect.M // Deprecated: Use CMsgDOTARealtimeGameStats_AbilityDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_AbilityDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 2} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 2} } func (x *CMsgDOTARealtimeGameStats_AbilityDetails) GetId() int32 { @@ -10723,7 +10978,7 @@ type CMsgDOTARealtimeGameStats_HeroToHeroStats struct { func (x *CMsgDOTARealtimeGameStats_HeroToHeroStats) Reset() { *x = CMsgDOTARealtimeGameStats_HeroToHeroStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[105] + mi := &file_dota_gcmessages_common_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10736,7 +10991,7 @@ func (x *CMsgDOTARealtimeGameStats_HeroToHeroStats) String() string { func (*CMsgDOTARealtimeGameStats_HeroToHeroStats) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_HeroToHeroStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[105] + mi := &file_dota_gcmessages_common_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10749,7 +11004,7 @@ func (x *CMsgDOTARealtimeGameStats_HeroToHeroStats) ProtoReflect() protoreflect. // Deprecated: Use CMsgDOTARealtimeGameStats_HeroToHeroStats.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_HeroToHeroStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 3} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 3} } func (x *CMsgDOTARealtimeGameStats_HeroToHeroStats) GetVictimid() int32 { @@ -10784,7 +11039,7 @@ type CMsgDOTARealtimeGameStats_AbilityList struct { func (x *CMsgDOTARealtimeGameStats_AbilityList) Reset() { *x = CMsgDOTARealtimeGameStats_AbilityList{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[106] + mi := &file_dota_gcmessages_common_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10797,7 +11052,7 @@ func (x *CMsgDOTARealtimeGameStats_AbilityList) String() string { func (*CMsgDOTARealtimeGameStats_AbilityList) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_AbilityList) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[106] + mi := &file_dota_gcmessages_common_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10810,7 +11065,7 @@ func (x *CMsgDOTARealtimeGameStats_AbilityList) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTARealtimeGameStats_AbilityList.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_AbilityList) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 4} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 4} } func (x *CMsgDOTARealtimeGameStats_AbilityList) GetId() []int32 { @@ -10874,12 +11129,13 @@ type CMsgDOTARealtimeGameStats_PlayerDetails struct { HeroToHeroStats []*CMsgDOTARealtimeGameStats_HeroToHeroStats `protobuf:"bytes,47,rep,name=hero_to_hero_stats,json=heroToHeroStats" json:"hero_to_hero_stats,omitempty"` HasUltimate *bool `protobuf:"varint,48,opt,name=has_ultimate,json=hasUltimate" json:"has_ultimate,omitempty"` HasUltimateMana *bool `protobuf:"varint,49,opt,name=has_ultimate_mana,json=hasUltimateMana" json:"has_ultimate_mana,omitempty"` + TeamSlot *uint32 `protobuf:"varint,50,opt,name=team_slot,json=teamSlot" json:"team_slot,omitempty"` } func (x *CMsgDOTARealtimeGameStats_PlayerDetails) Reset() { *x = CMsgDOTARealtimeGameStats_PlayerDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[107] + mi := &file_dota_gcmessages_common_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10892,7 +11148,7 @@ func (x *CMsgDOTARealtimeGameStats_PlayerDetails) String() string { func (*CMsgDOTARealtimeGameStats_PlayerDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_PlayerDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[107] + mi := &file_dota_gcmessages_common_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10905,7 +11161,7 @@ func (x *CMsgDOTARealtimeGameStats_PlayerDetails) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgDOTARealtimeGameStats_PlayerDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_PlayerDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 5} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 5} } func (x *CMsgDOTARealtimeGameStats_PlayerDetails) GetAccountid() uint32 { @@ -11251,6 +11507,13 @@ func (x *CMsgDOTARealtimeGameStats_PlayerDetails) GetHasUltimateMana() bool { return false } +func (x *CMsgDOTARealtimeGameStats_PlayerDetails) GetTeamSlot() uint32 { + if x != nil && x.TeamSlot != nil { + return *x.TeamSlot + } + return 0 +} + type CMsgDOTARealtimeGameStats_BuildingDetails struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -11269,7 +11532,7 @@ type CMsgDOTARealtimeGameStats_BuildingDetails struct { func (x *CMsgDOTARealtimeGameStats_BuildingDetails) Reset() { *x = CMsgDOTARealtimeGameStats_BuildingDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[108] + mi := &file_dota_gcmessages_common_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11282,7 +11545,7 @@ func (x *CMsgDOTARealtimeGameStats_BuildingDetails) String() string { func (*CMsgDOTARealtimeGameStats_BuildingDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_BuildingDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[108] + mi := &file_dota_gcmessages_common_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11295,7 +11558,7 @@ func (x *CMsgDOTARealtimeGameStats_BuildingDetails) ProtoReflect() protoreflect. // Deprecated: Use CMsgDOTARealtimeGameStats_BuildingDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_BuildingDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 6} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 6} } func (x *CMsgDOTARealtimeGameStats_BuildingDetails) GetTeam() uint32 { @@ -11367,7 +11630,7 @@ type CMsgDOTARealtimeGameStats_KillDetails struct { func (x *CMsgDOTARealtimeGameStats_KillDetails) Reset() { *x = CMsgDOTARealtimeGameStats_KillDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[109] + mi := &file_dota_gcmessages_common_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11380,7 +11643,7 @@ func (x *CMsgDOTARealtimeGameStats_KillDetails) String() string { func (*CMsgDOTARealtimeGameStats_KillDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_KillDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[109] + mi := &file_dota_gcmessages_common_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11393,7 +11656,7 @@ func (x *CMsgDOTARealtimeGameStats_KillDetails) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgDOTARealtimeGameStats_KillDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_KillDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 7} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 7} } func (x *CMsgDOTARealtimeGameStats_KillDetails) GetPlayerId() int32 { @@ -11428,7 +11691,7 @@ type CMsgDOTARealtimeGameStats_BroadcasterDetails struct { func (x *CMsgDOTARealtimeGameStats_BroadcasterDetails) Reset() { *x = CMsgDOTARealtimeGameStats_BroadcasterDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[110] + mi := &file_dota_gcmessages_common_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11441,7 +11704,7 @@ func (x *CMsgDOTARealtimeGameStats_BroadcasterDetails) String() string { func (*CMsgDOTARealtimeGameStats_BroadcasterDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_BroadcasterDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[110] + mi := &file_dota_gcmessages_common_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11454,7 +11717,7 @@ func (x *CMsgDOTARealtimeGameStats_BroadcasterDetails) ProtoReflect() protorefle // Deprecated: Use CMsgDOTARealtimeGameStats_BroadcasterDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_BroadcasterDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 8} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 8} } func (x *CMsgDOTARealtimeGameStats_BroadcasterDetails) GetPlayerId() int32 { @@ -11476,7 +11739,7 @@ type CMsgDOTARealtimeGameStats_PickBanDetails struct { func (x *CMsgDOTARealtimeGameStats_PickBanDetails) Reset() { *x = CMsgDOTARealtimeGameStats_PickBanDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[111] + mi := &file_dota_gcmessages_common_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11489,7 +11752,7 @@ func (x *CMsgDOTARealtimeGameStats_PickBanDetails) String() string { func (*CMsgDOTARealtimeGameStats_PickBanDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_PickBanDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[111] + mi := &file_dota_gcmessages_common_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11502,7 +11765,7 @@ func (x *CMsgDOTARealtimeGameStats_PickBanDetails) ProtoReflect() protoreflect.M // Deprecated: Use CMsgDOTARealtimeGameStats_PickBanDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_PickBanDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 9} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 9} } func (x *CMsgDOTARealtimeGameStats_PickBanDetails) GetHero() uint32 { @@ -11549,7 +11812,7 @@ type CMsgDOTARealtimeGameStats_MatchDetails struct { func (x *CMsgDOTARealtimeGameStats_MatchDetails) Reset() { *x = CMsgDOTARealtimeGameStats_MatchDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[112] + mi := &file_dota_gcmessages_common_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11562,7 +11825,7 @@ func (x *CMsgDOTARealtimeGameStats_MatchDetails) String() string { func (*CMsgDOTARealtimeGameStats_MatchDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_MatchDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[112] + mi := &file_dota_gcmessages_common_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11575,7 +11838,7 @@ func (x *CMsgDOTARealtimeGameStats_MatchDetails) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgDOTARealtimeGameStats_MatchDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_MatchDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 10} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 10} } func (x *CMsgDOTARealtimeGameStats_MatchDetails) GetServerSteamId() uint64 { @@ -11734,7 +11997,7 @@ type CMsgDOTARealtimeGameStats_GraphData struct { func (x *CMsgDOTARealtimeGameStats_GraphData) Reset() { *x = CMsgDOTARealtimeGameStats_GraphData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[113] + mi := &file_dota_gcmessages_common_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11747,7 +12010,7 @@ func (x *CMsgDOTARealtimeGameStats_GraphData) String() string { func (*CMsgDOTARealtimeGameStats_GraphData) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_GraphData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[113] + mi := &file_dota_gcmessages_common_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11760,7 +12023,7 @@ func (x *CMsgDOTARealtimeGameStats_GraphData) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgDOTARealtimeGameStats_GraphData.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_GraphData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 11} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 11} } func (x *CMsgDOTARealtimeGameStats_GraphData) GetGraphGold() []int32 { @@ -11816,7 +12079,7 @@ type CMsgDOTARealtimeGameStats_GraphData_LocationStats struct { func (x *CMsgDOTARealtimeGameStats_GraphData_LocationStats) Reset() { *x = CMsgDOTARealtimeGameStats_GraphData_LocationStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[114] + mi := &file_dota_gcmessages_common_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11829,7 +12092,7 @@ func (x *CMsgDOTARealtimeGameStats_GraphData_LocationStats) String() string { func (*CMsgDOTARealtimeGameStats_GraphData_LocationStats) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_GraphData_LocationStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[114] + mi := &file_dota_gcmessages_common_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11842,7 +12105,7 @@ func (x *CMsgDOTARealtimeGameStats_GraphData_LocationStats) ProtoReflect() proto // Deprecated: Use CMsgDOTARealtimeGameStats_GraphData_LocationStats.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_GraphData_LocationStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 11, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 11, 0} } func (x *CMsgDOTARealtimeGameStats_GraphData_LocationStats) GetStats() []int32 { @@ -11863,7 +12126,7 @@ type CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats struct { func (x *CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats) Reset() { *x = CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[115] + mi := &file_dota_gcmessages_common_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11876,7 +12139,7 @@ func (x *CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats) String() string func (*CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[115] + mi := &file_dota_gcmessages_common_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11889,7 +12152,7 @@ func (x *CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats) ProtoReflect() p // Deprecated: Use CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{27, 11, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 11, 1} } func (x *CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats) GetLocStats() []*CMsgDOTARealtimeGameStats_GraphData_LocationStats { @@ -11918,7 +12181,7 @@ type CMsgDOTARealtimeGameStatsTerse_TeamDetails struct { func (x *CMsgDOTARealtimeGameStatsTerse_TeamDetails) Reset() { *x = CMsgDOTARealtimeGameStatsTerse_TeamDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[116] + mi := &file_dota_gcmessages_common_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11931,7 +12194,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_TeamDetails) String() string { func (*CMsgDOTARealtimeGameStatsTerse_TeamDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStatsTerse_TeamDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[116] + mi := &file_dota_gcmessages_common_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11944,7 +12207,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_TeamDetails) ProtoReflect() protoreflect // Deprecated: Use CMsgDOTARealtimeGameStatsTerse_TeamDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStatsTerse_TeamDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{29, 0} } func (x *CMsgDOTARealtimeGameStatsTerse_TeamDetails) GetTeamNumber() uint32 { @@ -12032,12 +12295,13 @@ type CMsgDOTARealtimeGameStatsTerse_PlayerDetails struct { NetWorth *uint32 `protobuf:"varint,15,opt,name=net_worth,json=netWorth" json:"net_worth,omitempty"` Abilities []int32 `protobuf:"varint,16,rep,name=abilities" json:"abilities,omitempty"` Items []int32 `protobuf:"varint,17,rep,name=items" json:"items,omitempty"` + TeamSlot *uint32 `protobuf:"varint,18,opt,name=team_slot,json=teamSlot" json:"team_slot,omitempty"` } func (x *CMsgDOTARealtimeGameStatsTerse_PlayerDetails) Reset() { *x = CMsgDOTARealtimeGameStatsTerse_PlayerDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[117] + mi := &file_dota_gcmessages_common_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12050,7 +12314,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_PlayerDetails) String() string { func (*CMsgDOTARealtimeGameStatsTerse_PlayerDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStatsTerse_PlayerDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[117] + mi := &file_dota_gcmessages_common_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12063,7 +12327,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_PlayerDetails) ProtoReflect() protorefle // Deprecated: Use CMsgDOTARealtimeGameStatsTerse_PlayerDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStatsTerse_PlayerDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{29, 1} } func (x *CMsgDOTARealtimeGameStatsTerse_PlayerDetails) GetAccountid() uint32 { @@ -12185,6 +12449,13 @@ func (x *CMsgDOTARealtimeGameStatsTerse_PlayerDetails) GetItems() []int32 { return nil } +func (x *CMsgDOTARealtimeGameStatsTerse_PlayerDetails) GetTeamSlot() uint32 { + if x != nil && x.TeamSlot != nil { + return *x.TeamSlot + } + return 0 +} + type CMsgDOTARealtimeGameStatsTerse_BuildingDetails struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -12203,7 +12474,7 @@ type CMsgDOTARealtimeGameStatsTerse_BuildingDetails struct { func (x *CMsgDOTARealtimeGameStatsTerse_BuildingDetails) Reset() { *x = CMsgDOTARealtimeGameStatsTerse_BuildingDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[118] + mi := &file_dota_gcmessages_common_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12216,7 +12487,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_BuildingDetails) String() string { func (*CMsgDOTARealtimeGameStatsTerse_BuildingDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStatsTerse_BuildingDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[118] + mi := &file_dota_gcmessages_common_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12229,7 +12500,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_BuildingDetails) ProtoReflect() protoref // Deprecated: Use CMsgDOTARealtimeGameStatsTerse_BuildingDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStatsTerse_BuildingDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 2} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{29, 2} } func (x *CMsgDOTARealtimeGameStatsTerse_BuildingDetails) GetTeam() uint32 { @@ -12300,7 +12571,7 @@ type CMsgDOTARealtimeGameStatsTerse_PickBanDetails struct { func (x *CMsgDOTARealtimeGameStatsTerse_PickBanDetails) Reset() { *x = CMsgDOTARealtimeGameStatsTerse_PickBanDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[119] + mi := &file_dota_gcmessages_common_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12313,7 +12584,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_PickBanDetails) String() string { func (*CMsgDOTARealtimeGameStatsTerse_PickBanDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStatsTerse_PickBanDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[119] + mi := &file_dota_gcmessages_common_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12326,7 +12597,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_PickBanDetails) ProtoReflect() protorefl // Deprecated: Use CMsgDOTARealtimeGameStatsTerse_PickBanDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStatsTerse_PickBanDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 3} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{29, 3} } func (x *CMsgDOTARealtimeGameStatsTerse_PickBanDetails) GetHero() uint32 { @@ -12366,7 +12637,7 @@ type CMsgDOTARealtimeGameStatsTerse_MatchDetails struct { func (x *CMsgDOTARealtimeGameStatsTerse_MatchDetails) Reset() { *x = CMsgDOTARealtimeGameStatsTerse_MatchDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[120] + mi := &file_dota_gcmessages_common_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12379,7 +12650,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_MatchDetails) String() string { func (*CMsgDOTARealtimeGameStatsTerse_MatchDetails) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStatsTerse_MatchDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[120] + mi := &file_dota_gcmessages_common_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12392,7 +12663,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_MatchDetails) ProtoReflect() protoreflec // Deprecated: Use CMsgDOTARealtimeGameStatsTerse_MatchDetails.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStatsTerse_MatchDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 4} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{29, 4} } func (x *CMsgDOTARealtimeGameStatsTerse_MatchDetails) GetServerSteamId() uint64 { @@ -12497,7 +12768,7 @@ type CMsgDOTARealtimeGameStatsTerse_GraphData struct { func (x *CMsgDOTARealtimeGameStatsTerse_GraphData) Reset() { *x = CMsgDOTARealtimeGameStatsTerse_GraphData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[121] + mi := &file_dota_gcmessages_common_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12510,7 +12781,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_GraphData) String() string { func (*CMsgDOTARealtimeGameStatsTerse_GraphData) ProtoMessage() {} func (x *CMsgDOTARealtimeGameStatsTerse_GraphData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[121] + mi := &file_dota_gcmessages_common_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12523,7 +12794,7 @@ func (x *CMsgDOTARealtimeGameStatsTerse_GraphData) ProtoReflect() protoreflect.M // Deprecated: Use CMsgDOTARealtimeGameStatsTerse_GraphData.ProtoReflect.Descriptor instead. func (*CMsgDOTARealtimeGameStatsTerse_GraphData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{28, 5} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{29, 5} } func (x *CMsgDOTARealtimeGameStatsTerse_GraphData) GetGraphGold() []int32 { @@ -12545,7 +12816,7 @@ type CMsgInGamePrediction_QueryKeyValues struct { func (x *CMsgInGamePrediction_QueryKeyValues) Reset() { *x = CMsgInGamePrediction_QueryKeyValues{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[122] + mi := &file_dota_gcmessages_common_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12558,7 +12829,7 @@ func (x *CMsgInGamePrediction_QueryKeyValues) String() string { func (*CMsgInGamePrediction_QueryKeyValues) ProtoMessage() {} func (x *CMsgInGamePrediction_QueryKeyValues) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[122] + mi := &file_dota_gcmessages_common_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12571,7 +12842,7 @@ func (x *CMsgInGamePrediction_QueryKeyValues) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgInGamePrediction_QueryKeyValues.ProtoReflect.Descriptor instead. func (*CMsgInGamePrediction_QueryKeyValues) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{33, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 0} } func (x *CMsgInGamePrediction_QueryKeyValues) GetName() string { @@ -12616,7 +12887,7 @@ type CMsgDOTASeasonPredictions_Prediction struct { func (x *CMsgDOTASeasonPredictions_Prediction) Reset() { *x = CMsgDOTASeasonPredictions_Prediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[123] + mi := &file_dota_gcmessages_common_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12629,7 +12900,7 @@ func (x *CMsgDOTASeasonPredictions_Prediction) String() string { func (*CMsgDOTASeasonPredictions_Prediction) ProtoMessage() {} func (x *CMsgDOTASeasonPredictions_Prediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[123] + mi := &file_dota_gcmessages_common_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12642,7 +12913,7 @@ func (x *CMsgDOTASeasonPredictions_Prediction) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgDOTASeasonPredictions_Prediction.ProtoReflect.Descriptor instead. func (*CMsgDOTASeasonPredictions_Prediction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{35, 0} } func (x *CMsgDOTASeasonPredictions_Prediction) GetType() CMsgDOTASeasonPredictions_Prediction_EPredictionType { @@ -12782,7 +13053,7 @@ type CMsgDOTASeasonPredictions_Prediction_Answers struct { func (x *CMsgDOTASeasonPredictions_Prediction_Answers) Reset() { *x = CMsgDOTASeasonPredictions_Prediction_Answers{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[124] + mi := &file_dota_gcmessages_common_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12795,7 +13066,7 @@ func (x *CMsgDOTASeasonPredictions_Prediction_Answers) String() string { func (*CMsgDOTASeasonPredictions_Prediction_Answers) ProtoMessage() {} func (x *CMsgDOTASeasonPredictions_Prediction_Answers) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[124] + mi := &file_dota_gcmessages_common_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12808,7 +13079,7 @@ func (x *CMsgDOTASeasonPredictions_Prediction_Answers) ProtoReflect() protorefle // Deprecated: Use CMsgDOTASeasonPredictions_Prediction_Answers.ProtoReflect.Descriptor instead. func (*CMsgDOTASeasonPredictions_Prediction_Answers) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{34, 0, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{35, 0, 0} } func (x *CMsgDOTASeasonPredictions_Prediction_Answers) GetAnswerId() uint32 { @@ -12830,7 +13101,7 @@ type CMsgAvailablePredictions_MatchPrediction struct { func (x *CMsgAvailablePredictions_MatchPrediction) Reset() { *x = CMsgAvailablePredictions_MatchPrediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[125] + mi := &file_dota_gcmessages_common_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12843,7 +13114,7 @@ func (x *CMsgAvailablePredictions_MatchPrediction) String() string { func (*CMsgAvailablePredictions_MatchPrediction) ProtoMessage() {} func (x *CMsgAvailablePredictions_MatchPrediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[125] + mi := &file_dota_gcmessages_common_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12856,7 +13127,7 @@ func (x *CMsgAvailablePredictions_MatchPrediction) ProtoReflect() protoreflect.M // Deprecated: Use CMsgAvailablePredictions_MatchPrediction.ProtoReflect.Descriptor instead. func (*CMsgAvailablePredictions_MatchPrediction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{35, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{36, 0} } func (x *CMsgAvailablePredictions_MatchPrediction) GetMatchId() uint64 { @@ -12885,7 +13156,7 @@ type CMsgLeagueWatchedGames_Series struct { func (x *CMsgLeagueWatchedGames_Series) Reset() { *x = CMsgLeagueWatchedGames_Series{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[126] + mi := &file_dota_gcmessages_common_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12898,7 +13169,7 @@ func (x *CMsgLeagueWatchedGames_Series) String() string { func (*CMsgLeagueWatchedGames_Series) ProtoMessage() {} func (x *CMsgLeagueWatchedGames_Series) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[126] + mi := &file_dota_gcmessages_common_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12911,7 +13182,7 @@ func (x *CMsgLeagueWatchedGames_Series) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLeagueWatchedGames_Series.ProtoReflect.Descriptor instead. func (*CMsgLeagueWatchedGames_Series) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{36, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 0} } func (x *CMsgLeagueWatchedGames_Series) GetNodeId() uint32 { @@ -12940,7 +13211,7 @@ type CMsgLeagueWatchedGames_League struct { func (x *CMsgLeagueWatchedGames_League) Reset() { *x = CMsgLeagueWatchedGames_League{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[127] + mi := &file_dota_gcmessages_common_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12953,7 +13224,7 @@ func (x *CMsgLeagueWatchedGames_League) String() string { func (*CMsgLeagueWatchedGames_League) ProtoMessage() {} func (x *CMsgLeagueWatchedGames_League) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[127] + mi := &file_dota_gcmessages_common_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12966,7 +13237,7 @@ func (x *CMsgLeagueWatchedGames_League) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLeagueWatchedGames_League.ProtoReflect.Descriptor instead. func (*CMsgLeagueWatchedGames_League) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{36, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 1} } func (x *CMsgLeagueWatchedGames_League) GetLeagueId() uint32 { @@ -13066,7 +13337,7 @@ type CMsgDOTAMatch_Player struct { func (x *CMsgDOTAMatch_Player) Reset() { *x = CMsgDOTAMatch_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[128] + mi := &file_dota_gcmessages_common_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13079,7 +13350,7 @@ func (x *CMsgDOTAMatch_Player) String() string { func (*CMsgDOTAMatch_Player) ProtoMessage() {} func (x *CMsgDOTAMatch_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[128] + mi := &file_dota_gcmessages_common_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13092,7 +13363,7 @@ func (x *CMsgDOTAMatch_Player) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatch_Player.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatch_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 0} } func (x *CMsgDOTAMatch_Player) GetAccountId() uint32 { @@ -13618,7 +13889,7 @@ type CMsgDOTAMatch_BroadcasterInfo struct { func (x *CMsgDOTAMatch_BroadcasterInfo) Reset() { *x = CMsgDOTAMatch_BroadcasterInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[129] + mi := &file_dota_gcmessages_common_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13631,7 +13902,7 @@ func (x *CMsgDOTAMatch_BroadcasterInfo) String() string { func (*CMsgDOTAMatch_BroadcasterInfo) ProtoMessage() {} func (x *CMsgDOTAMatch_BroadcasterInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[129] + mi := &file_dota_gcmessages_common_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13644,7 +13915,7 @@ func (x *CMsgDOTAMatch_BroadcasterInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatch_BroadcasterInfo.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatch_BroadcasterInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 1} } func (x *CMsgDOTAMatch_BroadcasterInfo) GetAccountId() uint32 { @@ -13675,7 +13946,7 @@ type CMsgDOTAMatch_BroadcasterChannel struct { func (x *CMsgDOTAMatch_BroadcasterChannel) Reset() { *x = CMsgDOTAMatch_BroadcasterChannel{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[130] + mi := &file_dota_gcmessages_common_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13688,7 +13959,7 @@ func (x *CMsgDOTAMatch_BroadcasterChannel) String() string { func (*CMsgDOTAMatch_BroadcasterChannel) ProtoMessage() {} func (x *CMsgDOTAMatch_BroadcasterChannel) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[130] + mi := &file_dota_gcmessages_common_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13701,7 +13972,7 @@ func (x *CMsgDOTAMatch_BroadcasterChannel) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatch_BroadcasterChannel.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatch_BroadcasterChannel) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 2} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 2} } func (x *CMsgDOTAMatch_BroadcasterChannel) GetCountryCode() string { @@ -13748,7 +14019,7 @@ type CMsgDOTAMatch_Coach struct { func (x *CMsgDOTAMatch_Coach) Reset() { *x = CMsgDOTAMatch_Coach{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[131] + mi := &file_dota_gcmessages_common_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13761,7 +14032,7 @@ func (x *CMsgDOTAMatch_Coach) String() string { func (*CMsgDOTAMatch_Coach) ProtoMessage() {} func (x *CMsgDOTAMatch_Coach) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[131] + mi := &file_dota_gcmessages_common_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13774,7 +14045,7 @@ func (x *CMsgDOTAMatch_Coach) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatch_Coach.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatch_Coach) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 3} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 3} } func (x *CMsgDOTAMatch_Coach) GetAccountId() uint32 { @@ -13831,7 +14102,7 @@ type CMsgDOTAMatch_CustomGameData struct { func (x *CMsgDOTAMatch_CustomGameData) Reset() { *x = CMsgDOTAMatch_CustomGameData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[132] + mi := &file_dota_gcmessages_common_proto_msgTypes[134] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13844,7 +14115,7 @@ func (x *CMsgDOTAMatch_CustomGameData) String() string { func (*CMsgDOTAMatch_CustomGameData) ProtoMessage() {} func (x *CMsgDOTAMatch_CustomGameData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[132] + mi := &file_dota_gcmessages_common_proto_msgTypes[134] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13857,7 +14128,7 @@ func (x *CMsgDOTAMatch_CustomGameData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatch_CustomGameData.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatch_CustomGameData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 4} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 4} } func (x *CMsgDOTAMatch_CustomGameData) GetCustomGameId() uint64 { @@ -13886,7 +14157,7 @@ type CMsgDOTAMatch_Player_CustomGameData struct { func (x *CMsgDOTAMatch_Player_CustomGameData) Reset() { *x = CMsgDOTAMatch_Player_CustomGameData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[133] + mi := &file_dota_gcmessages_common_proto_msgTypes[135] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13899,7 +14170,7 @@ func (x *CMsgDOTAMatch_Player_CustomGameData) String() string { func (*CMsgDOTAMatch_Player_CustomGameData) ProtoMessage() {} func (x *CMsgDOTAMatch_Player_CustomGameData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[133] + mi := &file_dota_gcmessages_common_proto_msgTypes[135] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13912,7 +14183,7 @@ func (x *CMsgDOTAMatch_Player_CustomGameData) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgDOTAMatch_Player_CustomGameData.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatch_Player_CustomGameData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 0, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 0, 0} } func (x *CMsgDOTAMatch_Player_CustomGameData) GetDotaTeam() uint32 { @@ -13942,7 +14213,7 @@ type CMsgDOTAMatch_Player_HeroDamageReceived struct { func (x *CMsgDOTAMatch_Player_HeroDamageReceived) Reset() { *x = CMsgDOTAMatch_Player_HeroDamageReceived{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[134] + mi := &file_dota_gcmessages_common_proto_msgTypes[136] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13955,7 +14226,7 @@ func (x *CMsgDOTAMatch_Player_HeroDamageReceived) String() string { func (*CMsgDOTAMatch_Player_HeroDamageReceived) ProtoMessage() {} func (x *CMsgDOTAMatch_Player_HeroDamageReceived) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[134] + mi := &file_dota_gcmessages_common_proto_msgTypes[136] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13968,7 +14239,7 @@ func (x *CMsgDOTAMatch_Player_HeroDamageReceived) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgDOTAMatch_Player_HeroDamageReceived.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatch_Player_HeroDamageReceived) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{37, 0, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 0, 1} } func (x *CMsgDOTAMatch_Player_HeroDamageReceived) GetPreReduction() uint32 { @@ -14004,7 +14275,7 @@ type CMsgPlayerCard_StatModifier struct { func (x *CMsgPlayerCard_StatModifier) Reset() { *x = CMsgPlayerCard_StatModifier{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[135] + mi := &file_dota_gcmessages_common_proto_msgTypes[137] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14017,7 +14288,7 @@ func (x *CMsgPlayerCard_StatModifier) String() string { func (*CMsgPlayerCard_StatModifier) ProtoMessage() {} func (x *CMsgPlayerCard_StatModifier) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[135] + mi := &file_dota_gcmessages_common_proto_msgTypes[137] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14030,7 +14301,7 @@ func (x *CMsgPlayerCard_StatModifier) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPlayerCard_StatModifier.ProtoReflect.Descriptor instead. func (*CMsgPlayerCard_StatModifier) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{38, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{39, 0} } func (x *CMsgPlayerCard_StatModifier) GetStat() uint32 { @@ -14069,7 +14340,7 @@ type CMsgDOTABotDebugInfo_Bot struct { func (x *CMsgDOTABotDebugInfo_Bot) Reset() { *x = CMsgDOTABotDebugInfo_Bot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[136] + mi := &file_dota_gcmessages_common_proto_msgTypes[138] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14082,7 +14353,7 @@ func (x *CMsgDOTABotDebugInfo_Bot) String() string { func (*CMsgDOTABotDebugInfo_Bot) ProtoMessage() {} func (x *CMsgDOTABotDebugInfo_Bot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[136] + mi := &file_dota_gcmessages_common_proto_msgTypes[138] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14095,7 +14366,7 @@ func (x *CMsgDOTABotDebugInfo_Bot) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTABotDebugInfo_Bot.ProtoReflect.Descriptor instead. func (*CMsgDOTABotDebugInfo_Bot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{41, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{42, 0} } func (x *CMsgDOTABotDebugInfo_Bot) GetPlayerOwnerId() int32 { @@ -14198,7 +14469,7 @@ type CMsgDOTABotDebugInfo_Bot_Mode struct { func (x *CMsgDOTABotDebugInfo_Bot_Mode) Reset() { *x = CMsgDOTABotDebugInfo_Bot_Mode{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[137] + mi := &file_dota_gcmessages_common_proto_msgTypes[139] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14211,7 +14482,7 @@ func (x *CMsgDOTABotDebugInfo_Bot_Mode) String() string { func (*CMsgDOTABotDebugInfo_Bot_Mode) ProtoMessage() {} func (x *CMsgDOTABotDebugInfo_Bot_Mode) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[137] + mi := &file_dota_gcmessages_common_proto_msgTypes[139] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14224,7 +14495,7 @@ func (x *CMsgDOTABotDebugInfo_Bot_Mode) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTABotDebugInfo_Bot_Mode.ProtoReflect.Descriptor instead. func (*CMsgDOTABotDebugInfo_Bot_Mode) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{41, 0, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{42, 0, 0} } func (x *CMsgDOTABotDebugInfo_Bot_Mode) GetModeId() uint32 { @@ -14281,7 +14552,7 @@ type CMsgDOTABotDebugInfo_Bot_Action struct { func (x *CMsgDOTABotDebugInfo_Bot_Action) Reset() { *x = CMsgDOTABotDebugInfo_Bot_Action{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[138] + mi := &file_dota_gcmessages_common_proto_msgTypes[140] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14294,7 +14565,7 @@ func (x *CMsgDOTABotDebugInfo_Bot_Action) String() string { func (*CMsgDOTABotDebugInfo_Bot_Action) ProtoMessage() {} func (x *CMsgDOTABotDebugInfo_Bot_Action) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[138] + mi := &file_dota_gcmessages_common_proto_msgTypes[140] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14307,7 +14578,7 @@ func (x *CMsgDOTABotDebugInfo_Bot_Action) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTABotDebugInfo_Bot_Action.ProtoReflect.Descriptor instead. func (*CMsgDOTABotDebugInfo_Bot_Action) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{41, 0, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{42, 0, 1} } func (x *CMsgDOTABotDebugInfo_Bot_Action) GetActionId() uint32 { @@ -14338,7 +14609,7 @@ type CMsgMatchTips_SingleTip struct { func (x *CMsgMatchTips_SingleTip) Reset() { *x = CMsgMatchTips_SingleTip{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[139] + mi := &file_dota_gcmessages_common_proto_msgTypes[141] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14351,7 +14622,7 @@ func (x *CMsgMatchTips_SingleTip) String() string { func (*CMsgMatchTips_SingleTip) ProtoMessage() {} func (x *CMsgMatchTips_SingleTip) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[139] + mi := &file_dota_gcmessages_common_proto_msgTypes[141] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14364,7 +14635,7 @@ func (x *CMsgMatchTips_SingleTip) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgMatchTips_SingleTip.ProtoReflect.Descriptor instead. func (*CMsgMatchTips_SingleTip) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{44, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{45, 0} } func (x *CMsgMatchTips_SingleTip) GetSourceAccountId() uint32 { @@ -14415,7 +14686,7 @@ type CMsgDOTAMatchMinimal_Player struct { func (x *CMsgDOTAMatchMinimal_Player) Reset() { *x = CMsgDOTAMatchMinimal_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[140] + mi := &file_dota_gcmessages_common_proto_msgTypes[142] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14428,7 +14699,7 @@ func (x *CMsgDOTAMatchMinimal_Player) String() string { func (*CMsgDOTAMatchMinimal_Player) ProtoMessage() {} func (x *CMsgDOTAMatchMinimal_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[140] + mi := &file_dota_gcmessages_common_proto_msgTypes[142] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14441,7 +14712,7 @@ func (x *CMsgDOTAMatchMinimal_Player) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatchMinimal_Player.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatchMinimal_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{45, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{46, 0} } func (x *CMsgDOTAMatchMinimal_Player) GetAccountId() uint32 { @@ -14539,7 +14810,7 @@ type CMsgDOTAMatchMinimal_Tourney struct { func (x *CMsgDOTAMatchMinimal_Tourney) Reset() { *x = CMsgDOTAMatchMinimal_Tourney{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[141] + mi := &file_dota_gcmessages_common_proto_msgTypes[143] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14552,7 +14823,7 @@ func (x *CMsgDOTAMatchMinimal_Tourney) String() string { func (*CMsgDOTAMatchMinimal_Tourney) ProtoMessage() {} func (x *CMsgDOTAMatchMinimal_Tourney) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[141] + mi := &file_dota_gcmessages_common_proto_msgTypes[143] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14565,7 +14836,7 @@ func (x *CMsgDOTAMatchMinimal_Tourney) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTAMatchMinimal_Tourney.ProtoReflect.Descriptor instead. func (*CMsgDOTAMatchMinimal_Tourney) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{45, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{46, 1} } func (x *CMsgDOTAMatchMinimal_Tourney) GetLeagueId() uint32 { @@ -14685,7 +14956,7 @@ type CMsgMatchConsumableUsage_PlayerUsage struct { func (x *CMsgMatchConsumableUsage_PlayerUsage) Reset() { *x = CMsgMatchConsumableUsage_PlayerUsage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[142] + mi := &file_dota_gcmessages_common_proto_msgTypes[144] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14698,7 +14969,7 @@ func (x *CMsgMatchConsumableUsage_PlayerUsage) String() string { func (*CMsgMatchConsumableUsage_PlayerUsage) ProtoMessage() {} func (x *CMsgMatchConsumableUsage_PlayerUsage) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[142] + mi := &file_dota_gcmessages_common_proto_msgTypes[144] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14711,7 +14982,7 @@ func (x *CMsgMatchConsumableUsage_PlayerUsage) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgMatchConsumableUsage_PlayerUsage.ProtoReflect.Descriptor instead. func (*CMsgMatchConsumableUsage_PlayerUsage) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{47, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{48, 0} } func (x *CMsgMatchConsumableUsage_PlayerUsage) GetAccountId() uint32 { @@ -14740,7 +15011,7 @@ type CMsgMatchEventActionGrants_PlayerGrants struct { func (x *CMsgMatchEventActionGrants_PlayerGrants) Reset() { *x = CMsgMatchEventActionGrants_PlayerGrants{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[143] + mi := &file_dota_gcmessages_common_proto_msgTypes[145] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14753,7 +15024,7 @@ func (x *CMsgMatchEventActionGrants_PlayerGrants) String() string { func (*CMsgMatchEventActionGrants_PlayerGrants) ProtoMessage() {} func (x *CMsgMatchEventActionGrants_PlayerGrants) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[143] + mi := &file_dota_gcmessages_common_proto_msgTypes[145] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14766,7 +15037,7 @@ func (x *CMsgMatchEventActionGrants_PlayerGrants) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgMatchEventActionGrants_PlayerGrants.ProtoReflect.Descriptor instead. func (*CMsgMatchEventActionGrants_PlayerGrants) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{48, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{49, 0} } func (x *CMsgMatchEventActionGrants_PlayerGrants) GetAccountId() uint32 { @@ -14795,7 +15066,7 @@ type CMsgCustomGameWhitelistForEdit_WhitelistEntry struct { func (x *CMsgCustomGameWhitelistForEdit_WhitelistEntry) Reset() { *x = CMsgCustomGameWhitelistForEdit_WhitelistEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[144] + mi := &file_dota_gcmessages_common_proto_msgTypes[146] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14808,7 +15079,7 @@ func (x *CMsgCustomGameWhitelistForEdit_WhitelistEntry) String() string { func (*CMsgCustomGameWhitelistForEdit_WhitelistEntry) ProtoMessage() {} func (x *CMsgCustomGameWhitelistForEdit_WhitelistEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[144] + mi := &file_dota_gcmessages_common_proto_msgTypes[146] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14821,7 +15092,7 @@ func (x *CMsgCustomGameWhitelistForEdit_WhitelistEntry) ProtoReflect() protorefl // Deprecated: Use CMsgCustomGameWhitelistForEdit_WhitelistEntry.ProtoReflect.Descriptor instead. func (*CMsgCustomGameWhitelistForEdit_WhitelistEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{50, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{51, 0} } func (x *CMsgCustomGameWhitelistForEdit_WhitelistEntry) GetCustomGameId() uint64 { @@ -14855,7 +15126,7 @@ type CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account struct { func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account) Reset() { *x = CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[145] + mi := &file_dota_gcmessages_common_proto_msgTypes[147] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14868,7 +15139,7 @@ func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account) String() stri func (*CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account) ProtoMessage() {} func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[145] + mi := &file_dota_gcmessages_common_proto_msgTypes[147] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14881,7 +15152,7 @@ func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account) ProtoReflect( // Deprecated: Use CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account.ProtoReflect.Descriptor instead. func (*CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{62, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{63, 0} } func (x *CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account) GetAccountId() uint32 { @@ -14948,7 +15219,7 @@ type CMsgPullTabsData_Slot struct { func (x *CMsgPullTabsData_Slot) Reset() { *x = CMsgPullTabsData_Slot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[146] + mi := &file_dota_gcmessages_common_proto_msgTypes[148] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14961,7 +15232,7 @@ func (x *CMsgPullTabsData_Slot) String() string { func (*CMsgPullTabsData_Slot) ProtoMessage() {} func (x *CMsgPullTabsData_Slot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[146] + mi := &file_dota_gcmessages_common_proto_msgTypes[148] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14974,7 +15245,7 @@ func (x *CMsgPullTabsData_Slot) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPullTabsData_Slot.ProtoReflect.Descriptor instead. func (*CMsgPullTabsData_Slot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{63, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{64, 0} } func (x *CMsgPullTabsData_Slot) GetEventId() uint32 { @@ -15025,7 +15296,7 @@ type CMsgPullTabsData_Jackpot struct { func (x *CMsgPullTabsData_Jackpot) Reset() { *x = CMsgPullTabsData_Jackpot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[147] + mi := &file_dota_gcmessages_common_proto_msgTypes[149] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15038,7 +15309,7 @@ func (x *CMsgPullTabsData_Jackpot) String() string { func (*CMsgPullTabsData_Jackpot) ProtoMessage() {} func (x *CMsgPullTabsData_Jackpot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[147] + mi := &file_dota_gcmessages_common_proto_msgTypes[149] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15051,7 +15322,7 @@ func (x *CMsgPullTabsData_Jackpot) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgPullTabsData_Jackpot.ProtoReflect.Descriptor instead. func (*CMsgPullTabsData_Jackpot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{63, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{64, 1} } func (x *CMsgPullTabsData_Jackpot) GetBoardId() uint32 { @@ -15088,7 +15359,7 @@ type CMsgUnderDraftData_BenchSlot struct { func (x *CMsgUnderDraftData_BenchSlot) Reset() { *x = CMsgUnderDraftData_BenchSlot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[148] + mi := &file_dota_gcmessages_common_proto_msgTypes[150] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15101,7 +15372,7 @@ func (x *CMsgUnderDraftData_BenchSlot) String() string { func (*CMsgUnderDraftData_BenchSlot) ProtoMessage() {} func (x *CMsgUnderDraftData_BenchSlot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[148] + mi := &file_dota_gcmessages_common_proto_msgTypes[150] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15114,7 +15385,7 @@ func (x *CMsgUnderDraftData_BenchSlot) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgUnderDraftData_BenchSlot.ProtoReflect.Descriptor instead. func (*CMsgUnderDraftData_BenchSlot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{64, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{65, 0} } func (x *CMsgUnderDraftData_BenchSlot) GetSlotId() uint32 { @@ -15151,7 +15422,7 @@ type CMsgUnderDraftData_ShopSlot struct { func (x *CMsgUnderDraftData_ShopSlot) Reset() { *x = CMsgUnderDraftData_ShopSlot{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[149] + mi := &file_dota_gcmessages_common_proto_msgTypes[151] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15164,7 +15435,7 @@ func (x *CMsgUnderDraftData_ShopSlot) String() string { func (*CMsgUnderDraftData_ShopSlot) ProtoMessage() {} func (x *CMsgUnderDraftData_ShopSlot) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[149] + mi := &file_dota_gcmessages_common_proto_msgTypes[151] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15177,7 +15448,7 @@ func (x *CMsgUnderDraftData_ShopSlot) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgUnderDraftData_ShopSlot.ProtoReflect.Descriptor instead. func (*CMsgUnderDraftData_ShopSlot) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{64, 1} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{65, 1} } func (x *CMsgUnderDraftData_ShopSlot) GetSlotId() uint32 { @@ -15217,7 +15488,7 @@ type CMsgGameDataHeroList_HeroInfo struct { func (x *CMsgGameDataHeroList_HeroInfo) Reset() { *x = CMsgGameDataHeroList_HeroInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[150] + mi := &file_dota_gcmessages_common_proto_msgTypes[152] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15230,7 +15501,7 @@ func (x *CMsgGameDataHeroList_HeroInfo) String() string { func (*CMsgGameDataHeroList_HeroInfo) ProtoMessage() {} func (x *CMsgGameDataHeroList_HeroInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[150] + mi := &file_dota_gcmessages_common_proto_msgTypes[152] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15243,7 +15514,7 @@ func (x *CMsgGameDataHeroList_HeroInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGameDataHeroList_HeroInfo.ProtoReflect.Descriptor instead. func (*CMsgGameDataHeroList_HeroInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{75, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{76, 0} } func (x *CMsgGameDataHeroList_HeroInfo) GetId() uint32 { @@ -15303,7 +15574,7 @@ type CMsgGameDataItemAbilityList_ItemAbilityInfo struct { func (x *CMsgGameDataItemAbilityList_ItemAbilityInfo) Reset() { *x = CMsgGameDataItemAbilityList_ItemAbilityInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_proto_msgTypes[151] + mi := &file_dota_gcmessages_common_proto_msgTypes[153] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15316,7 +15587,7 @@ func (x *CMsgGameDataItemAbilityList_ItemAbilityInfo) String() string { func (*CMsgGameDataItemAbilityList_ItemAbilityInfo) ProtoMessage() {} func (x *CMsgGameDataItemAbilityList_ItemAbilityInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_proto_msgTypes[151] + mi := &file_dota_gcmessages_common_proto_msgTypes[153] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15329,7 +15600,7 @@ func (x *CMsgGameDataItemAbilityList_ItemAbilityInfo) ProtoReflect() protoreflec // Deprecated: Use CMsgGameDataItemAbilityList_ItemAbilityInfo.ProtoReflect.Descriptor instead. func (*CMsgGameDataItemAbilityList_ItemAbilityInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{76, 0} + return file_dota_gcmessages_common_proto_rawDescGZIP(), []int{77, 0} } func (x *CMsgGameDataItemAbilityList_ItemAbilityInfo) GetId() int32 { @@ -15376,7 +15647,7 @@ var file_dota_gcmessages_common_proto_rawDesc = []byte{ 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x63, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, - 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9e, 0x17, 0x0a, 0x18, 0x43, + 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc6, 0x17, 0x0a, 0x18, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x61, 0x6d, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, @@ -15558,2501 +15829,2524 @@ var file_dota_gcmessages_common_proto_rawDesc = []byte{ 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x6d, 0x6d, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x79, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6d, 0x6d, 0x72, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, - 0x62, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x3e, 0x0a, 0x0c, 0x52, - 0x6f, 0x6c, 0x65, 0x48, 0x61, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x72, - 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x68, 0x61, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x08, 0x68, 0x61, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x70, 0x22, 0xe1, 0x02, 0x0a, 0x16, - 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x61, 0x6d, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, - 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x11, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x66, 0x6c, - 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x6c, 0x75, 0x73, 0x46, - 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x75, 0x73, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x72, 0x65, 0x70, 0x61, 0x69, 0x64, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x70, 0x72, 0x65, 0x70, 0x61, 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x72, 0x65, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x12, 0x70, 0x72, 0x65, 0x70, 0x61, 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, - 0x52, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, - 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x61, 0x67, 0x72, 0x65, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x06, 0x52, 0x10, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, - 0xec, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x46, 0x65, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, - 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x53, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x62, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x62, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x7b, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, + 0x49, 0x64, 0x73, 0x1a, 0x3e, 0x0a, 0x0c, 0x52, 0x6f, 0x6c, 0x65, 0x48, 0x61, 0x6e, 0x64, 0x69, + 0x63, 0x61, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x61, 0x6e, 0x64, 0x69, + 0x63, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x68, 0x61, 0x6e, 0x64, 0x69, + 0x63, 0x61, 0x70, 0x22, 0xe1, 0x02, 0x0a, 0x16, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x47, + 0x61, 0x6d, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x73, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, + 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, + 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x70, 0x6c, 0x75, 0x73, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, + 0x12, 0x70, 0x72, 0x65, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x72, 0x65, 0x70, 0x61, + 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x70, + 0x72, 0x65, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, + 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x72, 0x65, 0x70, 0x61, + 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, + 0x11, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x61, + 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x06, 0x52, 0x10, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x41, 0x67, 0x72, 0x65, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x31, 0x0a, 0x10, 0x43, 0x53, 0x4f, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0xec, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x72, 0x0a, 0x0f, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, - 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xa6, - 0x02, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, - 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x77, 0x69, 0x6e, 0x5f, 0x64, 0x61, - 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x44, 0x61, 0x74, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x6e, 0x74, - 0x69, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x76, 0x69, - 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, - 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, - 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, - 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, - 0x72, 0x6f, 0x70, 0x68, 0x79, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, 0x63, - 0x74, 0x6f, 0x72, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x07, 0x77, 0x69, 0x6e, 0x6e, - 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, - 0x63, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x73, 0x22, 0x39, - 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x97, 0x02, 0x0a, 0x14, 0x43, 0x50, - 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x73, - 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x65, 0x61, 0x72, 0x61, 0x62, - 0x6c, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x77, 0x65, 0x61, 0x72, 0x61, 0x62, - 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x6f, - 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0e, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x44, - 0x72, 0x6f, 0x70, 0x22, 0x4a, 0x0a, 0x1a, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, - 0x6d, 0x0a, 0x1b, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, - 0x69, 0x6d, 0x65, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x12, 0x38, - 0x0a, 0x04, 0x73, 0x74, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, - 0x61, 0x74, 0x52, 0x04, 0x73, 0x74, 0x61, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xb9, - 0x0b, 0x0a, 0x16, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, - 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, - 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, - 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, - 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, - 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, - 0x74, 0x68, 0x12, 0x0e, 0x0a, 0x02, 0x78, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, - 0x78, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x6f, 0x75, 0x6e, 0x74, - 0x79, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0e, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x52, 0x75, 0x6e, 0x65, 0x47, 0x6f, 0x6c, - 0x64, 0x12, 0x37, 0x0a, 0x18, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x65, 0x70, - 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x15, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x72, 0x65, 0x65, 0x70, 0x55, - 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x6f, 0x62, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x64, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x6f, 0x62, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x57, 0x61, 0x72, 0x64, 0x73, 0x44, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, - 0x6f, 0x6c, 0x64, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x12, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x45, 0x61, - 0x72, 0x6e, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, 0x73, - 0x73, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x11, 0x67, 0x6f, 0x6c, 0x64, 0x4c, 0x6f, 0x73, 0x73, 0x50, 0x72, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6b, 0x69, 0x6c, - 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x68, 0x65, - 0x72, 0x6f, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x72, - 0x65, 0x65, 0x70, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x65, 0x70, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x6f, - 0x6c, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, - 0x6f, 0x6c, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, - 0x69, 0x6e, 0x67, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x74, 0x68, 0x65, 0x72, - 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6f, 0x74, 0x68, - 0x65, 0x72, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x65, 0x62, 0x61, - 0x63, 0x6b, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, - 0x6f, 0x6d, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x65, - 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, - 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, - 0x6e, 0x74, 0x61, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x78, 0x70, 0x65, - 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x32, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x14, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, - 0x61, 0x6c, 0x32, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x65, 0x70, - 0x5f, 0x64, 0x65, 0x6e, 0x79, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, 0x65, 0x6e, 0x79, 0x47, 0x6f, 0x6c, 0x64, 0x12, + 0x12, 0x53, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, + 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x08, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x72, 0x0a, 0x0f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, + 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, + 0x6d, 0x61, 0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xa6, 0x02, 0x0a, 0x14, 0x43, 0x4d, + 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, 0x63, 0x74, 0x6f, + 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x19, 0x0a, 0x08, 0x77, 0x69, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x77, 0x69, 0x6e, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x12, 0x1f, 0x0a, + 0x0b, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x23, + 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, + 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, + 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, + 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, + 0x49, 0x64, 0x22, 0x55, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x4c, + 0x69, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x07, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, + 0x52, 0x07, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x73, 0x22, 0x39, 0x0a, 0x1d, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x4e, 0x6f, + 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x22, 0x97, 0x02, 0x0a, 0x14, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, + 0x74, 0x65, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x12, 0x17, 0x0a, + 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, + 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, + 0x79, 0x63, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x63, 0x79, 0x63, 0x6c, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x65, 0x61, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x0d, 0x52, 0x08, 0x77, 0x65, 0x61, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x20, 0x0a, + 0x0b, 0x69, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x14, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x05, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, + 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x72, 0x6f, 0x70, 0x22, 0x4a, + 0x0a, 0x1a, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x6d, 0x0a, 0x1b, 0x43, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x12, 0x38, 0x0a, 0x04, 0x73, 0x74, 0x61, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, + 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, + 0x69, 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x52, 0x04, 0x73, + 0x74, 0x61, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xb9, 0x0b, 0x0a, 0x16, 0x43, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, + 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x0e, 0x0a, + 0x02, 0x78, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x78, 0x70, 0x12, 0x1b, 0x0a, + 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, + 0x6e, 0x69, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, + 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x5f, 0x72, 0x75, 0x6e, + 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x62, 0x6f, + 0x75, 0x6e, 0x74, 0x79, 0x52, 0x75, 0x6e, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x37, 0x0a, 0x18, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x75, 0x70, 0x67, 0x72, + 0x61, 0x64, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x72, 0x65, 0x65, 0x70, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, + 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x57, 0x61, 0x72, 0x64, 0x73, 0x44, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x12, 0x30, 0x0a, + 0x14, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x65, + 0x61, 0x72, 0x6e, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x72, 0x65, 0x6c, + 0x69, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x12, + 0x2e, 0x0a, 0x13, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x5f, 0x70, 0x72, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x6f, + 0x6c, 0x64, 0x4c, 0x6f, 0x73, 0x73, 0x50, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x12, + 0x24, 0x0a, 0x0e, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, + 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x4b, 0x69, 0x6c, + 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x6b, + 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x63, 0x72, 0x65, 0x65, 0x70, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x23, 0x0a, + 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x6f, + 0x6c, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x67, 0x6f, 0x6c, 0x64, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x47, 0x6f, 0x6c, + 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x67, 0x6f, + 0x6c, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x65, 0x62, 0x61, + 0x63, 0x6b, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x47, + 0x6f, 0x6c, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, + 0x74, 0x61, 0x6c, 0x32, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x11, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x32, 0x47, 0x6f, + 0x6c, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x65, 0x6e, 0x79, + 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x72, 0x65, + 0x65, 0x70, 0x44, 0x65, 0x6e, 0x79, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x70, + 0x5f, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, + 0x65, 0x64, 0x5f, 0x31, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x70, 0x53, 0x63, + 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x31, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x70, 0x5f, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x5f, 0x70, 0x75, - 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x31, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x32, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x70, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, - 0x73, 0x65, 0x64, 0x31, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x70, 0x5f, 0x73, 0x63, 0x72, 0x6f, 0x6c, - 0x6c, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x32, 0x18, 0x17, + 0x73, 0x65, 0x64, 0x32, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x70, 0x5f, 0x73, 0x63, 0x72, 0x6f, 0x6c, + 0x6c, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x33, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x70, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x50, - 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x32, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x70, 0x5f, + 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x33, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x70, 0x5f, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x64, 0x5f, 0x33, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x70, 0x53, 0x63, 0x72, - 0x6f, 0x6c, 0x6c, 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x33, 0x12, 0x33, + 0x64, 0x5f, 0x34, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x70, 0x53, 0x63, 0x72, + 0x6f, 0x6c, 0x6c, 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x34, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x70, 0x5f, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x5f, 0x70, 0x75, 0x72, - 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x34, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x35, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x70, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x64, 0x34, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x70, 0x5f, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, - 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x35, 0x18, 0x1a, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x70, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x73, 0x50, 0x75, - 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x35, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x75, 0x74, - 0x72, 0x61, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, - 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1d, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x47, 0x6f, 0x6c, 0x64, 0x12, - 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1e, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x47, 0x6f, 0x6c, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x24, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, - 0x2c, 0x0a, 0x12, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, - 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x75, 0x70, - 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, - 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x26, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, - 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, - 0x65, 0x64, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, - 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, - 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x69, - 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, - 0x61, 0x67, 0x65, 0x73, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, - 0x61, 0x67, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x73, - 0x74, 0x61, 0x74, 0x73, 0x18, 0x2a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, - 0x6d, 0x65, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0b, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xf2, 0x01, 0x0a, 0x14, 0x43, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x65, 0x6e, 0x65, 0x6d, 0x79, - 0x5f, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x54, 0x6f, 0x77, 0x65, 0x72, - 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x6e, 0x65, 0x6d, 0x79, - 0x5f, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x42, 0x61, 0x72, - 0x72, 0x61, 0x63, 0x6b, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x65, - 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x54, - 0x6f, 0x77, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x65, - 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x65, 0x6e, 0x65, 0x6d, - 0x79, 0x42, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, - 0x52, 0x0a, 0x1d, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, - 0x65, 0x6d, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, - 0x66, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x62, - 0x75, 0x66, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x6d, 0x61, - 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, - 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, - 0x74, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, - 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, - 0x72, 0x61, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x5d, 0x0a, 0x15, 0x43, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, - 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x17, - 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xba, 0x02, 0x0a, 0x0a, 0x43, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, - 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, - 0x11, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x6d, - 0x65, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x7a, 0x0a, 0x17, 0x43, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x12, - 0x19, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x65, - 0x61, 0x63, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, - 0x61, 0x72, 0x74, 0x79, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x07, 0x52, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x22, 0x4e, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x48, 0x61, 0x73, 0x49, - 0x74, 0x65, 0x6d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, - 0x22, 0x34, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x48, 0x61, 0x73, 0x49, - 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x68, - 0x61, 0x73, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, - 0x61, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x22, 0x91, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, - 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x65, 0x64, 0x35, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x67, + 0x6f, 0x6c, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6e, 0x65, 0x75, 0x74, 0x72, + 0x61, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, + 0x72, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, + 0x75, 0x72, 0x69, 0x65, 0x72, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x73, + 0x68, 0x61, 0x6e, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, + 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x69, 0x74, 0x65, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, + 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, + 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, + 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x21, 0x0a, + 0x0c, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x27, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, + 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, 0x69, + 0x6c, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, + 0x29, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, + 0x44, 0x0a, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, + 0x2a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x52, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xf2, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x54, 0x65, 0x61, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, + 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x74, 0x6f, 0x77, 0x65, + 0x72, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x11, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x4b, 0x69, 0x6c, 0x6c, + 0x65, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x62, 0x61, 0x72, 0x72, + 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x13, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x42, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, + 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, + 0x74, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x11, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x73, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, + 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x42, 0x61, 0x72, 0x72, + 0x61, 0x63, 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x52, 0x0a, 0x1d, 0x43, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, + 0x69, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x75, + 0x6e, 0x69, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x75, 0x6e, 0x69, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x82, + 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, + 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, 0x12, 0x25, 0x0a, 0x0e, + 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x75, 0x66, 0x66, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, + 0x75, 0x66, 0x66, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x22, 0x5d, 0x0a, 0x15, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, + 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, + 0x69, 0x73, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, + 0x73, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, + 0x49, 0x64, 0x22, 0xba, 0x02, 0x0a, 0x0a, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, + 0x70, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x61, 0x6d, 0x65, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, + 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, + 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x5f, 0x6d, + 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x65, 0x72, + 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, + 0x7a, 0x0a, 0x17, 0x43, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, + 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x70, 0x61, + 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x62, 0x65, 0x61, 0x63, + 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, + 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x70, + 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x4e, 0x0a, 0x14, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x48, 0x61, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x17, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x48, 0x61, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x61, 0x73, 0x5f, 0x69, 0x74, + 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, 0x73, 0x49, 0x74, 0x65, + 0x6d, 0x22, 0x91, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x2f, 0x0a, 0x14, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x11, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, + 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x46, 0x6f, 0x72, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x93, 0x02, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, + 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, + 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x6e, 0x66, + 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x6e, + 0x66, 0x6f, 0x73, 0x1a, 0x85, 0x01, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, + 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2d, 0x0a, 0x13, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, + 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x62, + 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x70, 0x61, + 0x63, 0x6b, 0x65, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x22, 0x77, 0x0a, 0x17, 0x43, + 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x63, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x04, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x5f, 0x66, 0x6f, - 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, - 0x6c, 0x6c, 0x46, 0x6f, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x93, 0x02, 0x0a, 0x23, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, - 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x64, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, - 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x61, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x61, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x1a, 0x85, 0x01, 0x0a, 0x0e, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2d, 0x0a, 0x13, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x63, - 0x6b, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0d, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, - 0x22, 0x77, 0x0a, 0x17, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x70, 0x4c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, - 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x36, 0x0a, 0x13, 0x43, 0x4d, 0x73, - 0x67, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, - 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x73, 0x22, 0xe9, 0x0c, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x74, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, - 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x21, - 0x0a, 0x0c, 0x62, 0x61, 0x64, 0x67, 0x65, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x61, 0x64, 0x67, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x55, 0x0a, 0x19, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x5f, 0x63, 0x75, 0x70, 0x5f, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x16, - 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, - 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, - 0x69, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, - 0x69, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, - 0x72, 0x64, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, - 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x2c, - 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x50, 0x6c, - 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x18, - 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, - 0x70, 0x6c, 0x75, 0x73, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x69, - 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x69, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x32, 0x0a, - 0x15, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x61, 0x6e, - 0x6b, 0x5f, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6c, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x72, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, - 0x18, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, - 0x65, 0x61, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x69, 0x66, - 0x65, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x73, - 0x1a, 0xab, 0x06, 0x0a, 0x04, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, - 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x64, 0x22, 0x36, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xe9, 0x0c, 0x0a, + 0x13, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, - 0x6f, 0x74, 0x2e, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x52, 0x06, 0x74, 0x72, 0x6f, 0x70, 0x68, - 0x79, 0x12, 0x37, 0x0a, 0x04, 0x73, 0x74, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, - 0x53, 0x74, 0x61, 0x74, 0x52, 0x04, 0x73, 0x74, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x04, 0x69, 0x74, - 0x65, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, - 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, - 0x74, 0x65, 0x6d, 0x12, 0x37, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, - 0x74, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x43, 0x0a, 0x08, - 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, 0x45, - 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x52, 0x08, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, - 0x6e, 0x12, 0x37, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, - 0x54, 0x65, 0x61, 0x6d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x1a, 0x48, 0x0a, 0x06, 0x54, 0x72, - 0x6f, 0x70, 0x68, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x61, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x07, - 0x73, 0x74, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, + 0x6f, 0x74, 0x52, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x61, 0x64, + 0x67, 0x65, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x62, 0x61, 0x64, 0x67, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x55, 0x0a, 0x19, 0x72, 0x65, + 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x63, 0x75, 0x70, 0x5f, + 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, + 0x75, 0x70, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x16, 0x72, 0x65, 0x63, 0x65, 0x6e, + 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, + 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x69, 0x65, 0x72, 0x12, 0x29, + 0x0a, 0x10, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x61, + 0x6e, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, + 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x6c, 0x75, 0x73, 0x5f, + 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x64, + 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x70, 0x6c, 0x75, 0x73, 0x4f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, + 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x5f, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x6e, 0x6b, 0x54, + 0x69, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x6c, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x6f, 0x72, + 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, + 0x6f, 0x61, 0x72, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x12, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, + 0x63, 0x6b, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, + 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x69, + 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x1a, 0xab, 0x06, 0x0a, 0x04, + 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, + 0x06, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x45, 0x53, 0x74, 0x61, 0x74, 0x49, 0x44, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, - 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, - 0x61, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x48, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, - 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x69, 0x74, - 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, - 0x69, 0x7a, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, - 0x64, 0x1a, 0x5d, 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x57, 0x69, 0x6e, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4c, 0x6f, 0x73, 0x73, 0x65, 0x73, - 0x1a, 0x2b, 0x0a, 0x08, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, - 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x49, 0x64, 0x1a, 0x1f, 0x0a, - 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x9c, - 0x01, 0x0a, 0x07, 0x45, 0x53, 0x74, 0x61, 0x74, 0x49, 0x44, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, - 0x65, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x57, 0x69, 0x6e, 0x73, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, - 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x73, - 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x47, 0x61, - 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x6b, - 0x5f, 0x65, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x44, 0x61, 0x74, 0x65, 0x10, 0x06, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x5f, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x53, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x4d, 0x56, 0x50, 0x10, 0x08, 0x22, 0xad, 0x04, - 0x0a, 0x16, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x69, - 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, 0x30, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x69, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x30, 0x12, 0x1e, 0x0a, 0x0b, 0x69, - 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x69, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x21, 0x0a, 0x0c, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, - 0x0e, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x54, 0x69, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x74, - 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x74, - 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, - 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x24, 0x0a, 0x0e, - 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x61, - 0x6e, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, - 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x11, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x22, 0x88, 0x01, - 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, - 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xec, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x49, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, + 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, 0x54, 0x72, + 0x6f, 0x70, 0x68, 0x79, 0x52, 0x06, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x12, 0x37, 0x0a, 0x04, + 0x73, 0x74, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x52, + 0x04, 0x73, 0x74, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, + 0x6c, 0x6f, 0x74, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x37, + 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, 0x48, 0x65, 0x72, + 0x6f, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x43, 0x0a, 0x08, 0x65, 0x6d, 0x6f, 0x74, 0x69, + 0x63, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, + 0x6f, 0x6e, 0x52, 0x08, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x04, + 0x74, 0x65, 0x61, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, + 0x04, 0x74, 0x65, 0x61, 0x6d, 0x1a, 0x48, 0x0a, 0x06, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x12, + 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x1a, + 0x61, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x07, 0x73, 0x74, 0x61, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, + 0x61, 0x72, 0x64, 0x2e, 0x45, 0x53, 0x74, 0x61, 0x74, 0x49, 0x44, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x1a, 0x48, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, + 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x49, + 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x1a, 0x5d, 0x0a, 0x04, + 0x48, 0x65, 0x72, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, + 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x57, 0x69, 0x6e, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x1a, 0x2b, 0x0a, 0x08, 0x45, + 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6d, 0x6f, 0x74, 0x69, + 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x6d, + 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x49, 0x64, 0x1a, 0x1f, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, + 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x9c, 0x01, 0x0a, 0x07, 0x45, 0x53, + 0x74, 0x61, 0x74, 0x49, 0x44, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x5f, 0x57, 0x69, 0x6e, 0x73, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x73, 0x10, 0x04, 0x12, 0x17, 0x0a, + 0x13, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x64, 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x5f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x61, 0x74, 0x65, + 0x10, 0x06, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x50, 0x72, + 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x6b, + 0x10, 0x07, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x4d, 0x56, 0x50, 0x10, 0x08, 0x22, 0xad, 0x04, 0x0a, 0x16, 0x43, 0x53, 0x4f, + 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, + 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x5f, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x5f, 0x30, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x74, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x30, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x5f, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x74, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x65, 0x72, 0x12, + 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, + 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, + 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x1f, 0x0a, + 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, + 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x22, 0x88, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, + 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, + 0x6f, 0x49, 0x64, 0x22, 0xec, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x7a, 0x0a, 0x07, 0x45, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x13, 0x0a, 0x0f, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x65, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x10, 0x01, - 0x12, 0x14, 0x0a, 0x10, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, 0x74, 0x46, - 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x10, 0x03, 0x12, 0x17, - 0x0a, 0x13, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x04, 0x22, 0x6b, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x4c, - 0x69, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x70, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0e, 0x74, - 0x6f, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x25, 0x0a, - 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x74, 0x68, 0x65, 0x5f, 0x64, 0x61, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x4f, 0x66, 0x54, 0x68, - 0x65, 0x44, 0x61, 0x79, 0x22, 0xf2, 0x25, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x12, 0x42, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, - 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x41, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, - 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x4d, 0x0a, 0x09, 0x62, 0x75, 0x69, - 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, + 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x7a, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x13, 0x0a, 0x0f, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x65, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, + 0x02, 0x12, 0x16, 0x0a, 0x12, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x43, 0x61, 0x6e, + 0x74, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x65, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x10, 0x04, 0x22, 0x6b, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x70, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x28, + 0x0a, 0x10, 0x74, 0x6f, 0x70, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0e, 0x74, 0x6f, 0x70, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0f, 0x67, 0x61, 0x6d, 0x65, + 0x5f, 0x6f, 0x66, 0x5f, 0x74, 0x68, 0x65, 0x5f, 0x64, 0x61, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x4f, 0x66, 0x54, 0x68, 0x65, 0x44, 0x61, 0x79, 0x22, + 0x8f, 0x26, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, + 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x42, 0x0a, + 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, - 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x42, 0x75, - 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x62, - 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x48, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, - 0x68, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, - 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x47, 0x72, - 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, - 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x5f, 0x66, 0x72, 0x61, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x46, 0x72, - 0x61, 0x6d, 0x65, 0x1a, 0xf1, 0x02, 0x0a, 0x0b, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x74, - 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x74, 0x61, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x54, - 0x61, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, - 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, - 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x47, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, - 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x1b, - 0x0a, 0x09, 0x6f, 0x6e, 0x6c, 0x79, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x08, 0x6f, 0x6e, 0x6c, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x63, - 0x68, 0x65, 0x65, 0x72, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x63, 0x68, 0x65, - 0x65, 0x72, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, - 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x1a, 0x91, 0x01, 0x0a, 0x0b, 0x49, 0x74, 0x65, 0x6d, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 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, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6f, 0x6c, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x73, 0x6f, 0x6c, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x73, - 0x74, 0x61, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x89, 0x01, 0x0a, 0x0e, - 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, - 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, - 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, - 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x63, 0x6f, 0x6f, 0x6c, - 0x64, 0x6f, 0x77, 0x6e, 0x4d, 0x61, 0x78, 0x1a, 0x5d, 0x0a, 0x0f, 0x48, 0x65, 0x72, 0x6f, 0x54, - 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, - 0x63, 0x74, 0x69, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x76, 0x69, - 0x63, 0x74, 0x69, 0x6d, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, - 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x1a, 0x1d, 0x0a, 0x0b, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x02, 0x69, 0x64, 0x1a, 0xbe, 0x0e, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, - 0x6f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, - 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x70, - 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x68, 0x65, 0x61, 0x6c, - 0x74, 0x68, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x6d, 0x61, 0x78, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x28, 0x0a, 0x0f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x72, 0x61, - 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, - 0x72, 0x65, 0x67, 0x65, 0x6e, 0x72, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, - 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, - 0x61, 0x6e, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x61, 0x78, - 0x6d, 0x61, 0x6e, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x6d, 0x61, 0x6e, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x24, 0x0a, 0x0d, 0x6d, 0x61, 0x6e, 0x61, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x72, 0x61, 0x74, 0x65, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x6d, 0x61, 0x6e, 0x61, 0x72, 0x65, 0x67, 0x65, - 0x6e, 0x72, 0x61, 0x74, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x73, 0x74, - 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x61, - 0x73, 0x65, 0x53, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x61, - 0x73, 0x65, 0x5f, 0x61, 0x67, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x62, 0x61, 0x73, 0x65, 0x41, 0x67, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2b, 0x0a, - 0x11, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, - 0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, - 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, - 0x73, 0x65, 0x5f, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x62, 0x61, 0x73, 0x65, 0x41, 0x72, 0x6d, 0x6f, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x61, 0x73, - 0x65, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x73, 0x70, 0x65, 0x65, 0x64, - 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, - 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x44, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x18, 0x0a, - 0x07, 0x61, 0x67, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x61, 0x67, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x6c, - 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, - 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, - 0x72, 0x6d, 0x6f, 0x72, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x61, 0x72, 0x6d, 0x6f, - 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x16, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, - 0x16, 0x0a, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x65, - 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x77, 0x65, - 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x74, 0x6f, 0x77, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x4c, 0x0a, 0x09, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, - 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, - 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, - 0x65, 0x6c, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, - 0x1d, 0x0a, 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x1c, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x1d, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x65, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x23, 0x0a, 0x0d, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x5f, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x65, 0x6e, 0x69, - 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x68, 0x5f, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6c, 0x68, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x69, - 0x6e, 0x67, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x48, 0x65, - 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x20, 0x0a, 0x0c, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, - 0x72, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x6c, - 0x64, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x0a, 0x78, 0x70, 0x5f, 0x70, 0x65, - 0x72, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x78, 0x70, 0x50, - 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x5f, 0x67, 0x6f, 0x6c, - 0x64, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x47, 0x6f, 0x6c, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, - 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x26, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x27, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, - 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x28, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, - 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, - 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, - 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x18, - 0x2a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, - 0x6b, 0x12, 0x41, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x0b, + 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x12, 0x41, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x12, 0x4b, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x73, 0x68, 0x69, 0x74, 0x65, - 0x6d, 0x73, 0x18, 0x2c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, - 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x73, 0x68, 0x69, 0x74, 0x65, 0x6d, - 0x73, 0x12, 0x57, 0x0a, 0x10, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, - 0x67, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x2d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, + 0x73, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x74, + 0x65, 0x61, 0x6d, 0x73, 0x12, 0x4d, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, + 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, + 0x6e, 0x67, 0x73, 0x12, 0x48, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, + 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, + 0x0b, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x1a, 0xf1, + 0x02, 0x0a, 0x0b, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1f, + 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, + 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, + 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, + 0x67, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, 0x12, 0x14, 0x0a, + 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, + 0x12, 0x47, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x6e, 0x6c, + 0x79, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x6e, + 0x6c, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x68, 0x65, 0x65, 0x72, 0x73, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x63, 0x68, 0x65, 0x65, 0x72, 0x73, 0x12, 0x22, + 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, + 0x72, 0x6c, 0x1a, 0x91, 0x01, 0x0a, 0x0b, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, + 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 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, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, + 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x04, 0x73, 0x6f, 0x6c, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, + 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x89, 0x01, 0x0a, 0x0e, 0x41, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, + 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x4d, + 0x61, 0x78, 0x1a, 0x5d, 0x0a, 0x0f, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x6f, 0x48, 0x65, 0x72, 0x6f, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x69, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, + 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, + 0x73, 0x1a, 0x1d, 0x0a, 0x0b, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, + 0x1a, 0xdb, 0x0e, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x74, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, + 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x68, 0x65, + 0x61, 0x6c, 0x74, 0x68, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x68, 0x65, + 0x61, 0x6c, 0x74, 0x68, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x72, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x0f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x72, 0x65, 0x67, 0x65, 0x6e, + 0x72, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x6d, 0x61, 0x6e, 0x61, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x78, + 0x6d, 0x61, 0x6e, 0x61, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x61, + 0x6e, 0x61, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x0d, 0x6d, 0x61, 0x6e, 0x61, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x72, 0x61, 0x74, 0x65, + 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x53, 0x74, 0x72, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x61, 0x67, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x61, 0x73, + 0x65, 0x41, 0x67, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x62, 0x61, 0x73, 0x65, + 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x62, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, + 0x67, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x61, 0x72, + 0x6d, 0x6f, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x62, 0x61, 0x73, 0x65, 0x41, + 0x72, 0x6d, 0x6f, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x6f, 0x76, + 0x65, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x61, + 0x73, 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x62, + 0x61, 0x73, 0x65, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x67, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x67, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, + 0x63, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, + 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x09, + 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x61, + 0x6d, 0x61, 0x67, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, + 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x4c, 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, + 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x41, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x1b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x69, + 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x61, + 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x64, 0x65, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x73, + 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x1e, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x20, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6c, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, + 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x21, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, + 0x12, 0x20, 0x0a, 0x0c, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, + 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x4d, + 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x0a, 0x78, 0x70, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, + 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x78, 0x70, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, + 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x24, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x67, + 0x6f, 0x6c, 0x64, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, + 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x26, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, + 0x01, 0x79, 0x18, 0x27, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x72, + 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x28, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2b, + 0x0a, 0x11, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, + 0x6f, 0x77, 0x6e, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x75, 0x6c, 0x74, 0x69, 0x6d, + 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x68, + 0x61, 0x73, 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0a, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x41, 0x0a, 0x05, + 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x49, 0x74, 0x65, - 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x10, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x68, - 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x6c, 0x65, - 0x76, 0x65, 0x6c, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x2e, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, - 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x2e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x0b, 0x6c, 0x65, - 0x76, 0x65, 0x6c, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x5c, 0x0a, 0x12, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x74, 0x6f, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, - 0x2f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, - 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x6f, 0x48, 0x65, 0x72, - 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x54, 0x6f, 0x48, 0x65, - 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x61, 0x73, 0x5f, 0x75, - 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x68, - 0x61, 0x73, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x61, - 0x73, 0x5f, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x18, - 0x31, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x61, 0x73, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, - 0x74, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x1a, 0xb5, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x69, 0x6c, 0x64, - 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, - 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x18, - 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x74, 0x69, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, - 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, - 0x74, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, - 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x1a, 0x73, - 0x0a, 0x0b, 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1b, 0x0a, - 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, - 0x61, 0x74, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x64, 0x65, 0x61, 0x74, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6b, 0x69, 0x6c, - 0x6c, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x64, 0x1a, 0x31, 0x0a, 0x12, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x38, 0x0a, 0x0e, 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, - 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x12, 0x0a, 0x04, - 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, - 0x1a, 0xd6, 0x06, 0x0a, 0x0c, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x61, - 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x44, - 0x61, 0x79, 0x12, 0x32, 0x0a, 0x15, 0x69, 0x73, 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, 0x73, 0x74, - 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x13, 0x69, 0x73, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x73, 0x74, 0x61, 0x6c, 0x6b, 0x65, - 0x72, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, - 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x5f, 0x72, 0x61, 0x64, - 0x69, 0x61, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, - 0x69, 0x64, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, - 0x6d, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x44, 0x69, 0x72, 0x65, 0x12, 0x44, 0x0a, 0x05, 0x70, 0x69, - 0x63, 0x6b, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, - 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x69, 0x63, 0x6b, 0x42, - 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x70, 0x69, 0x63, 0x6b, 0x73, - 0x12, 0x42, 0x0a, 0x04, 0x62, 0x61, 0x6e, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, - 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, - 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x04, - 0x62, 0x61, 0x6e, 0x73, 0x12, 0x41, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0c, 0x20, + 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, + 0x4b, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x73, 0x68, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x2c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x56, 0x0a, 0x0c, 0x62, 0x72, 0x6f, 0x61, 0x64, - 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, - 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x42, - 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x52, 0x0c, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, - 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, - 0x1f, 0x0a, 0x0b, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x65, 0x61, 0x6d, - 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x73, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, - 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x61, - 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0xcd, 0x04, 0x0a, 0x09, 0x47, 0x72, - 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, - 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x67, 0x72, 0x61, - 0x70, 0x68, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, - 0x78, 0x70, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x67, 0x72, 0x61, 0x70, 0x68, 0x58, - 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4b, 0x69, 0x6c, 0x6c, - 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x54, 0x6f, 0x77, 0x65, - 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x72, 0x61, 0x78, 0x18, 0x05, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x67, 0x72, 0x61, 0x70, 0x68, 0x52, 0x61, 0x78, 0x12, 0x61, - 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x63, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, - 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x74, 0x61, 0x74, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x52, 0x0a, 0x73, 0x74, 0x61, 0x73, 0x68, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x57, 0x0a, 0x10, + 0x69, 0x74, 0x65, 0x6d, 0x73, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x74, + 0x18, 0x2d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, - 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, - 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x1a, 0x25, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x1a, 0x69, 0x0a, 0x11, 0x54, 0x65, 0x61, 0x6d, - 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x54, 0x0a, - 0x09, 0x6c, 0x6f, 0x63, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x52, 0x10, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, + 0x67, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x18, 0x2e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, + 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x41, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x0b, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x12, 0x5c, 0x0a, 0x12, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x74, 0x6f, 0x5f, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x2f, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x4c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x22, 0x5b, 0x0a, 0x05, 0x65, 0x53, 0x74, 0x61, 0x74, 0x12, 0x13, 0x0a, 0x0f, - 0x43, 0x72, 0x65, 0x65, 0x70, 0x47, 0x6f, 0x6c, 0x64, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x10, - 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x45, 0x61, 0x72, - 0x6e, 0x65, 0x64, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x65, 0x61, 0x74, 0x68, 0x41, 0x6e, - 0x64, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x47, 0x6f, 0x6c, 0x64, 0x4c, 0x6f, 0x73, 0x74, - 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x58, 0x50, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x10, 0x03, - 0x22, 0x57, 0x0a, 0x09, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, - 0x07, 0x42, 0x6f, 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x69, - 0x64, 0x4c, 0x61, 0x6e, 0x65, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x54, 0x6f, 0x70, 0x4c, 0x61, - 0x6e, 0x65, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x4a, 0x75, 0x6e, 0x67, 0x6c, 0x65, 0x10, 0x03, - 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x04, 0x12, 0x09, - 0x0a, 0x05, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x10, 0x05, 0x22, 0xca, 0x0f, 0x0a, 0x1e, 0x43, 0x4d, + 0x73, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x52, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x54, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x61, 0x73, 0x5f, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, + 0x74, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x68, 0x61, 0x73, 0x55, 0x6c, 0x74, + 0x69, 0x6d, 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x61, 0x73, 0x5f, 0x75, 0x6c, 0x74, + 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x18, 0x31, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0f, 0x68, 0x61, 0x73, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x6e, + 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x32, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x1a, 0xb5, + 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x01, + 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x73, 0x74, + 0x72, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x65, 0x73, + 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x1a, 0x73, 0x0a, 0x0b, 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x65, 0x61, 0x74, 0x68, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6b, 0x69, 0x6c, + 0x6c, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x31, 0x0a, 0x12, 0x42, + 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x38, + 0x0a, 0x0e, 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x68, 0x65, 0x72, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x1a, 0xd6, 0x06, 0x0a, 0x0c, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, + 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x69, + 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x44, 0x61, 0x79, 0x12, 0x32, 0x0a, 0x15, 0x69, 0x73, + 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, 0x73, 0x74, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x5f, 0x6e, 0x69, + 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x69, 0x73, 0x4e, 0x69, 0x67, + 0x68, 0x74, 0x73, 0x74, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1b, + 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x65, + 0x61, 0x6d, 0x69, 0x64, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, + 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x65, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x44, 0x69, + 0x72, 0x65, 0x12, 0x44, 0x0a, 0x05, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x2e, 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x52, 0x05, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x42, 0x0a, 0x04, 0x62, 0x61, 0x6e, 0x73, + 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, - 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x05, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, + 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x04, 0x62, 0x61, 0x6e, 0x73, 0x12, 0x41, 0x0a, 0x05, + 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, - 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, - 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x46, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x52, 0x0a, - 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, - 0x73, 0x12, 0x4d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4b, 0x69, 0x6c, + 0x6c, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, + 0x56, 0x0a, 0x0c, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, + 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, - 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x47, 0x72, 0x61, 0x70, - 0x68, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x46, 0x72, 0x61, 0x6d, - 0x65, 0x1a, 0xc1, 0x02, 0x0a, 0x0b, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x74, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, - 0x54, 0x61, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, - 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, - 0x72, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, - 0x72, 0x74, 0x68, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, - 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x4c, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, + 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0c, 0x62, 0x72, 0x6f, 0x61, 0x64, + 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, + 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, + 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x69, 0x6e, 0x67, 0x6c, + 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x73, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x65, + 0x72, 0x73, 0x5f, 0x70, 0x65, 0x61, 0x6b, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, + 0x68, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, + 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x15, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x1a, 0xcd, 0x04, 0x0a, 0x09, 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x05, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x19, + 0x0a, 0x08, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x78, 0x70, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, + 0x52, 0x07, 0x67, 0x72, 0x61, 0x70, 0x68, 0x58, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x4b, 0x69, 0x6c, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x5f, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x5f, 0x72, 0x61, 0x78, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x67, 0x72, + 0x61, 0x70, 0x68, 0x52, 0x61, 0x78, 0x12, 0x61, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, + 0x6f, 0x63, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, + 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0c, 0x74, 0x65, 0x61, + 0x6d, 0x4c, 0x6f, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, 0x25, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, + 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, + 0x1a, 0x69, 0x0a, 0x11, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x54, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, - 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x07, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0xc3, 0x03, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, - 0x6f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, - 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6b, 0x69, 0x6c, - 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x65, 0x61, - 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x73, 0x73, 0x69, 0x73, - 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, - 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x6c, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x6c, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, - 0x6c, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x0c, - 0x0a, 0x01, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, - 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, - 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, - 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x11, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0xb5, 0x01, 0x0a, 0x0f, - 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, - 0x65, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x12, 0x0a, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, - 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, - 0x79, 0x65, 0x64, 0x1a, 0x38, 0x0a, 0x0e, 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, - 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x1a, 0xaa, 0x04, - 0x0a, 0x0c, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x26, - 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, - 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, - 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x1d, - 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, - 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x1a, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, - 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, - 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x49, - 0x0a, 0x05, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, + 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, + 0x61, 0x74, 0x61, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x5b, 0x0a, 0x05, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x65, 0x70, 0x47, 0x6f, 0x6c, + 0x64, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x4b, 0x69, 0x6c, + 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x10, 0x01, 0x12, 0x1b, 0x0a, + 0x17, 0x44, 0x65, 0x61, 0x74, 0x68, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, + 0x47, 0x6f, 0x6c, 0x64, 0x4c, 0x6f, 0x73, 0x74, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x58, 0x50, + 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x10, 0x03, 0x22, 0x57, 0x0a, 0x09, 0x65, 0x4c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x42, 0x6f, 0x74, 0x4c, 0x61, 0x6e, 0x65, + 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x69, 0x64, 0x4c, 0x61, 0x6e, 0x65, 0x10, 0x01, 0x12, + 0x0b, 0x0a, 0x07, 0x54, 0x6f, 0x70, 0x4c, 0x61, 0x6e, 0x65, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, + 0x4a, 0x75, 0x6e, 0x67, 0x6c, 0x65, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x6e, 0x63, 0x69, + 0x65, 0x6e, 0x74, 0x73, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x10, + 0x05, 0x22, 0xe7, 0x0f, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, + 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, + 0x65, 0x72, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x46, 0x0a, + 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, + 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, + 0x73, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, + 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x52, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, + 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x42, + 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, + 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x4d, 0x0a, 0x0a, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, - 0x72, 0x73, 0x65, 0x2e, 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x52, 0x05, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x47, 0x0a, 0x04, 0x62, 0x61, 0x6e, - 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, - 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x50, 0x69, - 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x04, 0x62, 0x61, - 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0x2a, 0x0a, 0x09, 0x47, 0x72, - 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, - 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x67, 0x72, 0x61, - 0x70, 0x68, 0x47, 0x6f, 0x6c, 0x64, 0x22, 0xa8, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x33, 0x0a, 0x05, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, - 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1c, - 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x07, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, - 0x61, 0x22, 0x53, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x56, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x12, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x91, 0x02, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x53, 0x44, 0x4f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, - 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1d, - 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, - 0x77, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x77, 0x6f, 0x6e, 0x12, 0x10, - 0x0a, 0x03, 0x67, 0x70, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x67, 0x70, 0x6d, - 0x12, 0x10, 0x0a, 0x03, 0x78, 0x70, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x78, - 0x70, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, - 0x68, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, - 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x14, 0x43, - 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x6f, - 0x69, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, - 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x52, 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x52, 0x61, 0x77, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xdb, 0x09, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, - 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, - 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x48, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, - 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x52, - 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x5f, 0x74, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x68, 0x6f, 0x69, - 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, - 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x27, - 0x0a, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x65, - 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, - 0x64, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4b, 0x65, - 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x12, 0x62, 0x0a, 0x16, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, - 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x45, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, - 0x5f, 0x74, 0x52, 0x14, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, - 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x6f, 0x69, 0x6e, - 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, 0x6f, 0x47, 0x72, 0x61, 0x6e, 0x74, - 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x66, - 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x64, 0x65, 0x62, 0x75, 0x67, 0x46, 0x6f, 0x72, 0x63, 0x65, - 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x0e, 0x72, 0x61, 0x77, - 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, - 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x52, - 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x52, 0x0c, 0x72, - 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x3a, 0x0a, 0x0e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x27, 0x0a, 0x0f, 0x45, 0x52, 0x61, 0x77, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x69, 0x6d, 0x65, 0x10, 0x01, - 0x22, 0x6a, 0x0a, 0x0f, 0x45, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x10, 0x00, - 0x12, 0x08, 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x65, - 0x61, 0x6d, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0x03, - 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x10, 0x04, 0x12, 0x09, 0x0a, - 0x05, 0x59, 0x65, 0x73, 0x4e, 0x6f, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x51, 0x75, 0x61, 0x6c, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x06, 0x22, 0xd4, 0x01, 0x0a, - 0x11, 0x45, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, - 0x5f, 0x74, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x69, 0x72, 0x73, 0x74, 0x54, 0x6f, 0x50, - 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x61, - 0x73, 0x74, 0x54, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x02, 0x12, - 0x16, 0x0a, 0x12, 0x4c, 0x61, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x4d, 0x61, 0x78, 0x54, 0x6f, - 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x4d, - 0x69, 0x6e, 0x54, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x05, 0x12, - 0x0c, 0x0a, 0x08, 0x53, 0x75, 0x6d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x06, 0x12, 0x19, 0x0a, - 0x15, 0x4d, 0x61, 0x78, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x75, 0x6d, 0x54, 0x6f, 0x50, 0x61, 0x73, - 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x07, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x69, 0x6e, 0x54, - 0x65, 0x61, 0x6d, 0x53, 0x75, 0x6d, 0x54, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x10, 0x08, 0x22, 0x4e, 0x0a, 0x17, 0x45, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x74, 0x12, 0x0d, - 0x0a, 0x09, 0x45, 0x61, 0x72, 0x6c, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x00, 0x12, 0x0b, 0x0a, - 0x07, 0x4d, 0x69, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x61, - 0x74, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x10, 0x03, 0x22, 0xf8, 0x0b, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x4c, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x4a, 0x0a, 0x13, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x47, 0x0a, 0x21, 0x69, - 0x6e, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x67, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x65, 0x72, - 0x47, 0x61, 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x28, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, - 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x69, 0x6e, - 0x67, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x23, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x1a, 0xa0, 0x09, 0x0a, 0x0a, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4e, 0x0a, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x6f, - 0x69, 0x63, 0x65, 0x52, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, - 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, - 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1b, - 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x12, 0x57, 0x0a, 0x0b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x64, 0x12, 0x4c, 0x0a, 0x07, 0x61, 0x6e, 0x73, - 0x77, 0x65, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x52, 0x07, - 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6f, - 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x6f, 0x63, 0x6b, 0x4f, 0x6e, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x17, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, - 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6c, 0x6f, 0x63, 0x6b, 0x4f, 0x6e, - 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x31, - 0x0a, 0x15, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x6c, - 0x6f, 0x63, 0x6b, 0x4f, 0x6e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, - 0x74, 0x12, 0x35, 0x0a, 0x17, 0x75, 0x73, 0x65, 0x5f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x14, 0x75, 0x73, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, - 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x72, - 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x06, 0x70, 0x68, 0x61, 0x73, 0x65, 0x73, 0x18, - 0x12, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4c, 0x65, - 0x61, 0x67, 0x75, 0x65, 0x50, 0x68, 0x61, 0x73, 0x65, 0x52, 0x06, 0x70, 0x68, 0x61, 0x73, 0x65, - 0x73, 0x12, 0x2f, 0x0a, 0x0c, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x1a, 0x26, 0x0a, 0x07, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, - 0x09, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x64, 0x22, 0x7e, 0x0a, 0x0f, 0x45, 0x50, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, - 0x07, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x65, - 0x72, 0x6f, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x02, 0x12, 0x0a, - 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x70, - 0x65, 0x63, 0x69, 0x61, 0x6c, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x59, 0x65, 0x73, 0x4e, 0x6f, - 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, - 0x54, 0x65, 0x61, 0x6d, 0x10, 0x06, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x68, - 0x61, 0x6e, 0x63, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x07, 0x22, 0x91, 0x01, 0x0a, 0x0b, 0x45, - 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x69, - 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x69, 0x6e, - 0x67, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x75, - 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x4d, - 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x10, 0x03, 0x12, 0x0e, - 0x0a, 0x0a, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x04, 0x12, 0x0e, - 0x0a, 0x0a, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x10, 0x05, 0x12, 0x10, - 0x0a, 0x0c, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x10, 0x06, - 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x6f, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x10, 0x07, 0x22, 0xe3, - 0x01, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5b, 0x0a, 0x11, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x6a, 0x0a, 0x0f, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6d, + 0x72, 0x73, 0x65, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x74, + 0x61, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, + 0x65, 0x6c, 0x74, 0x61, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x1a, 0xc1, 0x02, 0x0a, 0x0b, 0x54, 0x65, + 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, + 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x22, 0x0a, 0x0d, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x12, + 0x4c, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0xe0, 0x03, + 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, + 0x1c, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, + 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, + 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, + 0x1d, 0x0a, 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, + 0x0a, 0x0b, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x65, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x23, 0x0a, 0x0d, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x65, 0x6e, 0x69, + 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x68, 0x5f, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6c, 0x68, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x01, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, + 0x1c, 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x10, 0x20, 0x03, + 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, + 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, + 0x65, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, + 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, + 0x1a, 0xb5, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, + 0x6e, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, + 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, 0x12, 0x0c, + 0x0a, 0x01, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, + 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, + 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, + 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x1a, 0x38, 0x0a, 0x0e, 0x50, 0x69, 0x63, 0x6b, + 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, + 0x72, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, + 0x61, 0x6d, 0x1a, 0xaa, 0x04, 0x0a, 0x0c, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64, + 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x1a, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x42, + 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x24, + 0x0a, 0x0e, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, + 0x64, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x12, 0x49, 0x0a, 0x05, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x0b, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, 0x6e, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x05, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x47, + 0x0a, 0x04, 0x62, 0x61, 0x6e, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, + 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, + 0x73, 0x65, 0x2e, 0x50, 0x69, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x52, 0x04, 0x62, 0x61, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, + 0x2a, 0x0a, 0x09, 0x47, 0x72, 0x61, 0x70, 0x68, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, + 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, + 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x47, 0x6f, 0x6c, 0x64, 0x22, 0xa8, 0x01, 0x0a, 0x1e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x33, + 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x22, 0x53, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x91, 0x02, 0x0a, 0x1b, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x44, 0x4f, 0x48, 0x65, 0x72, 0x6f, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, + 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, + 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, + 0x6f, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x10, 0x0a, 0x03, 0x77, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, + 0x77, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x70, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x03, 0x67, 0x70, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x78, 0x70, 0x6d, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x03, 0x78, 0x70, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, + 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, + 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x22, + 0x88, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x52, 0x61, + 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x61, + 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, + 0x61, 0x78, 0x52, 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xdb, 0x09, 0x0a, 0x14, 0x43, + 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x45, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x48, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x45, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x74, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, + 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x07, 0x63, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, + 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x71, 0x75, 0x65, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, + 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x0b, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x62, 0x0a, 0x16, 0x61, 0x6e, 0x73, + 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x52, 0x14, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, + 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, + 0x0f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, 0x6f, + 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x65, + 0x62, 0x75, 0x67, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x64, 0x65, 0x62, 0x75, 0x67, + 0x46, 0x6f, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50, + 0x0a, 0x0e, 0x72, 0x61, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x45, 0x52, 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x5f, 0x74, 0x52, 0x0c, 0x72, 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x1a, 0x3a, 0x0a, 0x0e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x27, 0x0a, 0x0f, + 0x45, 0x52, 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x12, + 0x0a, 0x0a, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x54, + 0x69, 0x6d, 0x65, 0x10, 0x01, 0x22, 0x6a, 0x0a, 0x0f, 0x45, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x69, 0x63, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x10, 0x01, 0x12, + 0x08, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, + 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x59, 0x65, 0x73, 0x4e, 0x6f, 0x10, 0x05, 0x12, 0x12, 0x0a, + 0x0e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x54, 0x65, 0x61, 0x6d, 0x10, + 0x06, 0x22, 0xd4, 0x01, 0x0a, 0x11, 0x45, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x12, 0x10, 0x0a, 0x0c, 0x49, 0x6e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x69, 0x72, + 0x73, 0x74, 0x54, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x01, 0x12, + 0x13, 0x0a, 0x0f, 0x4c, 0x61, 0x73, 0x74, 0x54, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x61, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x61, + 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, + 0x4d, 0x61, 0x78, 0x54, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x04, + 0x12, 0x12, 0x0a, 0x0e, 0x4d, 0x69, 0x6e, 0x54, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x10, 0x05, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x75, 0x6d, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x61, 0x78, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x75, 0x6d, + 0x54, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x07, 0x12, 0x19, 0x0a, + 0x15, 0x4d, 0x69, 0x6e, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x75, 0x6d, 0x54, 0x6f, 0x50, 0x61, 0x73, + 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x08, 0x22, 0x4e, 0x0a, 0x17, 0x45, 0x52, 0x61, 0x6e, + 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x5f, 0x74, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x61, 0x72, 0x6c, 0x79, 0x47, 0x61, 0x6d, 0x65, + 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x69, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x01, 0x12, + 0x0c, 0x0a, 0x08, 0x4c, 0x61, 0x74, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x02, 0x12, 0x09, 0x0a, + 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x03, 0x22, 0xf8, 0x0b, 0x0a, 0x19, 0x43, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4c, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x61, 0x73, 0x6f, + 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xf2, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, - 0x3d, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x4c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x73, 0x1a, 0x35, - 0x0a, 0x06, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, - 0x04, 0x67, 0x61, 0x6d, 0x65, 0x1a, 0x62, 0x0a, 0x06, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x12, - 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x06, - 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x57, 0x61, - 0x74, 0x63, 0x68, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x52, 0x06, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0xe4, 0x2e, 0x0a, 0x0d, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x64, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, - 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x61, 0x72, - 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0d, 0x52, 0x0e, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, - 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, - 0x6f, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, - 0x5f, 0x73, 0x61, 0x6c, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x72, 0x65, 0x70, - 0x6c, 0x61, 0x79, 0x53, 0x61, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x69, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x07, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x49, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x70, - 0x6f, 0x72, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x68, 0x75, 0x6d, - 0x61, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x76, 0x65, - 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x12, 0x21, - 0x0a, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x13, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, - 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x64, 0x69, 0x72, - 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, - 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x17, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x69, 0x72, - 0x65, 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x64, - 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x19, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, - 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x64, - 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x31, 0x0a, 0x15, 0x72, - 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, - 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x36, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x72, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x2b, - 0x0a, 0x12, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, - 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x69, 0x72, 0x65, - 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x32, 0x0a, 0x15, 0x72, - 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x72, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, - 0x2c, 0x0a, 0x12, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x6f, 0x6d, - 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x64, 0x69, 0x72, - 0x65, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x25, 0x0a, - 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, - 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x56, - 0x6f, 0x74, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6e, 0x65, - 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x09, 0x67, - 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, - 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x3a, 0x0a, - 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x5f, 0x62, 0x61, 0x6e, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, - 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x09, - 0x70, 0x69, 0x63, 0x6b, 0x73, 0x42, 0x61, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x21, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x12, 0x42, 0x0a, - 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x22, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x67, 0x75, 0x69, - 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x61, 0x64, - 0x69, 0x61, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x64, - 0x69, 0x72, 0x65, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x24, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, - 0x28, 0x0a, 0x10, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x74, 0x61, 0x67, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x61, 0x64, 0x69, 0x61, - 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, 0x12, 0x22, 0x0a, 0x0d, 0x64, 0x69, 0x72, - 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x26, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, 0x12, 0x1b, 0x0a, - 0x09, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, - 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x59, 0x0a, 0x14, 0x62, - 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x42, - 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x52, 0x13, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, - 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x4c, - 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x30, 0x0a, - 0x14, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x70, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x12, - 0x2c, 0x0a, 0x12, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x61, 0x64, - 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x26, 0x0a, - 0x0f, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, - 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x38, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, - 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, - 0x65, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, - 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, - 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x47, - 0x61, 0x6d, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x07, 0x63, - 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x39, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x2e, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x07, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, - 0x1a, 0x95, 0x19, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, - 0x72, 0x6f, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x30, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x30, 0x12, 0x15, 0x0a, 0x06, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x31, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, - 0x6d, 0x31, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x32, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x32, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, - 0x6d, 0x5f, 0x33, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x33, - 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x34, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x34, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x35, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x35, 0x12, 0x15, - 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x36, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x36, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x37, 0x18, - 0x3c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x37, 0x12, 0x15, 0x0a, 0x06, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x38, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, - 0x65, 0x6d, 0x38, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x39, 0x18, 0x4c, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x39, 0x12, 0x3c, 0x0a, 0x1a, 0x65, 0x78, - 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x18, - 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x63, 0x61, 0x6c, - 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x0c, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x23, 0x0a, - 0x0d, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x52, 0x61, - 0x6e, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x6d, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x4a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x6d, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, - 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, - 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, - 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, - 0x6f, 0x6c, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, - 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x13, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, - 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, - 0x6e, 0x69, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, - 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x6c, 0x64, - 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x0a, 0x78, 0x70, 0x5f, 0x70, 0x65, 0x72, - 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x78, 0x70, 0x50, 0x65, - 0x72, 0x4d, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, - 0x6e, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x53, 0x70, - 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, - 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, - 0x6d, 0x61, 0x67, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, - 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, - 0x65, 0x72, 0x6f, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, - 0x76, 0x65, 0x6c, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, - 0x65, 0x6e, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x4c, 0x61, - 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x75, 0x70, 0x70, 0x6f, - 0x72, 0x74, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x41, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x66, - 0x65, 0x65, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, - 0x20, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x66, 0x65, 0x65, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, - 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, - 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x61, - 0x72, 0x63, 0x68, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x36, 0x0a, 0x17, 0x73, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x75, 0x6e, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, - 0x74, 0x79, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, - 0x52, 0x61, 0x6e, 0x6b, 0x55, 0x6e, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x74, 0x79, 0x12, - 0x36, 0x0a, 0x17, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x75, 0x6e, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, - 0x6e, 0x74, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x15, 0x72, 0x61, 0x6e, 0x6b, 0x55, 0x6e, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x74, - 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x26, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x63, - 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, - 0x18, 0x36, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x48, 0x65, - 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, 0x6c, - 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, - 0x37, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x77, - 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, 0x6c, - 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, - 0x38, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, - 0x6f, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x63, 0x61, 0x6c, - 0x65, 0x64, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x27, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, - 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, - 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x28, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x0c, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x44, 0x65, 0x61, 0x74, 0x68, 0x73, - 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, - 0x74, 0x73, 0x18, 0x29, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, - 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6c, 0x61, 0x69, 0x6d, - 0x65, 0x64, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x2a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x46, 0x61, 0x72, 0x6d, 0x47, - 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67, - 0x6f, 0x6c, 0x64, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, 0x70, 0x70, 0x6f, - 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, - 0x64, 0x5f, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x25, 0x0a, - 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x18, - 0x2d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x4d, 0x69, - 0x73, 0x73, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x18, 0x2e, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x10, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, - 0x18, 0x2f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x0f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x61, 0x0a, 0x1a, 0x61, 0x64, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x5f, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x30, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x52, 0x18, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, - 0x69, 0x74, 0x73, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x48, 0x0a, 0x0f, - 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x75, 0x66, 0x66, 0x73, 0x18, - 0x39, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, - 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, 0x52, 0x0e, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, - 0x74, 0x42, 0x75, 0x66, 0x66, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x48, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x49, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x53, - 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x13, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, + 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, + 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x69, + 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x47, 0x0a, 0x21, 0x69, 0x6e, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x70, 0x65, 0x72, + 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x69, 0x6e, 0x47, + 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x50, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x28, 0x69, 0x6e, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x76, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x6d, 0x69, + 0x6e, 0x75, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x23, 0x69, 0x6e, 0x47, + 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, + 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, + 0x1a, 0xa0, 0x09, 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x4e, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x50, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x50, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x07, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x64, 0x61, + 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x57, 0x0a, 0x0b, 0x61, 0x6e, 0x73, 0x77, + 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x50, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x41, 0x6e, 0x73, 0x77, 0x65, + 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x64, 0x12, 0x4c, + 0x0a, 0x07, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x6e, 0x73, 0x77, + 0x65, 0x72, 0x73, 0x52, 0x07, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x71, 0x75, 0x65, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x14, 0x6c, + 0x6f, 0x63, 0x6b, 0x5f, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x6f, 0x63, 0x6b, 0x4f, + 0x6e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x17, + 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6c, + 0x6f, 0x63, 0x6b, 0x4f, 0x6e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6f, 0x6e, 0x5f, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x12, 0x6c, 0x6f, 0x63, 0x6b, 0x4f, 0x6e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x12, 0x35, 0x0a, 0x17, 0x75, 0x73, 0x65, 0x5f, 0x61, 0x6e, + 0x73, 0x77, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, + 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x75, 0x73, 0x65, 0x41, 0x6e, 0x73, 0x77, + 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x0a, + 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, 0x65, 0x67, 0x69, + 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x06, 0x70, 0x68, + 0x61, 0x73, 0x65, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x68, 0x61, 0x73, 0x65, 0x52, 0x06, + 0x70, 0x68, 0x61, 0x73, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x0c, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, + 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x72, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x1a, 0x26, 0x0a, 0x07, 0x41, 0x6e, 0x73, 0x77, 0x65, + 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x64, 0x22, + 0x7e, 0x0a, 0x0f, 0x45, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x10, 0x00, 0x12, + 0x08, 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x65, 0x61, + 0x6d, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0x03, 0x12, + 0x0b, 0x0a, 0x07, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, + 0x59, 0x65, 0x73, 0x4e, 0x6f, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x51, 0x75, 0x61, 0x6c, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x73, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x06, 0x12, 0x12, 0x0a, 0x0e, 0x4c, + 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x07, 0x22, + 0x91, 0x01, 0x0a, 0x0b, 0x45, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x0d, 0x0a, 0x09, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x10, 0x00, 0x12, 0x0f, + 0x0a, 0x0b, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x10, 0x01, 0x12, + 0x0f, 0x0a, 0x0b, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x10, 0x02, + 0x12, 0x11, 0x0a, 0x0d, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x61, + 0x74, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x54, 0x65, 0x61, + 0x6d, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x6f, 0x41, 0x6e, 0x73, 0x77, 0x65, + 0x72, 0x10, 0x07, 0x22, 0xe3, 0x01, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x76, 0x61, 0x69, + 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x5b, 0x0a, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, + 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x6a, 0x0a, + 0x0f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x0b, 0x70, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x47, 0x61, + 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x72, + 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xf2, 0x01, 0x0a, 0x16, 0x43, 0x4d, + 0x73, 0x67, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x47, + 0x61, 0x6d, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x2e, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x73, 0x1a, 0x35, 0x0a, 0x06, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x17, 0x0a, + 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x1a, 0x62, 0x0a, 0x06, 0x4c, 0x65, + 0x61, 0x67, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, + 0x64, 0x12, 0x3b, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x57, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x2e, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x06, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x96, + 0x2e, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, + 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, + 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, + 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x27, + 0x0a, 0x0f, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, + 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x69, 0x72, + 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, + 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x61, 0x6c, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x07, + 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x61, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x07, 0x52, + 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, + 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x75, 0x6d, + 0x61, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x23, + 0x0a, 0x0d, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x18, + 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x6b, + 0x69, 0x6c, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, + 0x6e, 0x63, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x42, + 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, + 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x20, + 0x0a, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x15, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x11, + 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, + 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, + 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, + 0x0a, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, + 0x6f, 0x67, 0x6f, 0x18, 0x19, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, + 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x69, + 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x1a, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, + 0x12, 0x31, 0x0a, 0x15, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x36, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x12, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, + 0x55, 0x72, 0x6c, 0x12, 0x2b, 0x0a, 0x12, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, + 0x12, 0x32, 0x0a, 0x15, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x13, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x10, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x12, 0x30, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, + 0x1f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x3a, 0x0a, 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x5f, 0x62, 0x61, + 0x6e, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x42, 0x61, 0x6e, 0x73, + 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, + 0x6d, 0x18, 0x21, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, + 0x71, 0x4e, 0x75, 0x6d, 0x12, 0x42, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, + 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x72, 0x65, 0x70, + 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x64, 0x69, + 0x61, 0x6e, 0x74, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x23, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x69, 0x64, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, + 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0e, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, + 0x12, 0x22, 0x0a, 0x0d, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, + 0x67, 0x18, 0x26, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, + 0x6d, 0x54, 0x61, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, + 0x64, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, + 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x59, 0x0a, 0x14, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, + 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, + 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x13, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, + 0x61, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x16, 0x0a, + 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x4c, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, - 0x61, 0x74, 0x61, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x6c, - 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x33, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x50, 0x6c, 0x75, - 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, - 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x6f, - 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x3a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, - 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x5f, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, - 0x50, 0x69, 0x63, 0x6b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x65, 0x64, 0x18, 0x40, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x57, 0x61, 0x73, 0x52, 0x61, 0x6e, - 0x64, 0x6f, 0x6d, 0x65, 0x64, 0x12, 0x40, 0x0a, 0x1d, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x77, 0x61, - 0x73, 0x5f, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x67, 0x67, - 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x45, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x68, 0x65, - 0x72, 0x6f, 0x57, 0x61, 0x73, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x67, - 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5f, 0x0a, 0x14, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, - 0x43, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, - 0x69, 0x76, 0x65, 0x64, 0x52, 0x12, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, - 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x59, 0x0a, 0x11, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x61, 0x6c, 0x74, 0x18, 0x4f, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, - 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, - 0x65, 0x64, 0x52, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x65, - 0x61, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x64, - 0x65, 0x61, 0x64, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x73, 0x44, 0x65, 0x61, 0x64, 0x12, 0x2b, 0x0a, 0x12, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, - 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, 0x47, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x6f, 0x6c, 0x64, 0x4c, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x44, 0x65, - 0x61, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x4b, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x5f, - 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x75, - 0x6e, 0x74, 0x79, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x70, - 0x6f, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x18, 0x4e, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x43, 0x61, 0x70, - 0x74, 0x75, 0x72, 0x65, 0x64, 0x12, 0x33, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x18, 0x50, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0a, - 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x51, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, - 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x1a, 0x45, 0x0a, 0x0e, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6f, 0x74, - 0x61, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6f, - 0x74, 0x61, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x1a, 0xac, - 0x01, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x64, - 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x72, - 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6f, - 0x73, 0x74, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x4a, 0x0a, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x59, 0x0a, - 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x18, 0x0a, 0x14, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x50, - 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x48, 0x45, 0x52, - 0x4f, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x4d, 0x41, 0x47, 0x49, 0x43, 0x41, 0x4c, - 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, - 0x45, 0x5f, 0x50, 0x55, 0x52, 0x45, 0x10, 0x02, 0x1a, 0x44, 0x0a, 0x0f, 0x42, 0x72, 0x6f, 0x61, - 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0xd0, - 0x01, 0x0a, 0x12, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, - 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x11, 0x62, 0x72, - 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, - 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x10, 0x62, 0x72, 0x6f, 0x61, - 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x23, 0x0a, 0x0d, - 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, - 0x65, 0x1a, 0xd7, 0x01, 0x0a, 0x05, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, - 0x61, 0x63, 0x68, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x6f, 0x61, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x61, - 0x63, 0x68, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, 0x0a, - 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x24, 0x0a, 0x0e, 0x63, - 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x50, 0x61, 0x72, 0x74, 0x79, 0x49, - 0x64, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x73, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, - 0x63, 0x6f, 0x61, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x73, 0x50, - 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x1a, 0x51, 0x0a, 0x0e, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x24, 0x0a, - 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, - 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x50, - 0x0a, 0x0b, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, - 0x10, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, - 0x45, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x4e, 0x4f, - 0x54, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x45, 0x44, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, - 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, - 0x22, 0xb1, 0x01, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x46, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, - 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x2e, - 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0c, 0x73, 0x74, - 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x1a, 0x38, 0x0a, 0x0c, 0x53, 0x74, - 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, - 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x74, 0x61, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x22, 0x87, 0x05, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, - 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, - 0x61, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, - 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, - 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x63, - 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x63, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x67, - 0x70, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x03, 0x67, 0x70, 0x6d, 0x12, 0x1f, 0x0a, - 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x21, - 0x0a, 0x0c, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, - 0x73, 0x12, 0x37, 0x0a, 0x17, 0x74, 0x65, 0x61, 0x6d, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x16, 0x74, 0x65, 0x61, 0x6d, 0x66, 0x69, 0x67, 0x68, 0x74, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, - 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x23, 0x0a, - 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x12, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, - 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x62, - 0x62, 0x65, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x65, 0x73, - 0x47, 0x72, 0x61, 0x62, 0x62, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x72, 0x73, 0x74, - 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x69, - 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x75, 0x6e, - 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x74, 0x75, 0x6e, 0x73, 0x22, 0x5d, - 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, - 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x12, 0x3a, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, 0xdf, 0x0a, - 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x32, 0x0a, 0x04, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x49, 0x6e, 0x66, 0x6f, - 0x2e, 0x42, 0x6f, 0x74, 0x52, 0x04, 0x62, 0x6f, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x65, - 0x73, 0x69, 0x72, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x74, - 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, - 0x50, 0x75, 0x73, 0x68, 0x4c, 0x61, 0x6e, 0x65, 0x54, 0x6f, 0x70, 0x12, 0x2f, 0x0a, 0x14, 0x64, - 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, - 0x6d, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x69, 0x72, - 0x65, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x61, 0x6e, 0x65, 0x4d, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x14, + 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x66, 0x6c, 0x61, + 0x67, 0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x46, + 0x6c, 0x61, 0x67, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x2f, 0x20, 0x01, + 0x28, 0x07, 0x52, 0x12, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, + 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x30, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x10, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x64, + 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x38, 0x0a, 0x0d, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x18, 0x32, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x4f, + 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, + 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x74, + 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, + 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x35, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x07, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x39, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x07, + 0x63, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, 0x1a, 0x95, 0x19, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, + 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x30, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, + 0x6d, 0x30, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x31, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x31, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x32, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x32, + 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x33, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x33, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x34, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x34, 0x12, 0x15, + 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x35, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x69, 0x74, 0x65, 0x6d, 0x35, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x36, 0x18, + 0x3b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x36, 0x12, 0x15, 0x0a, 0x06, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x37, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, + 0x65, 0x6d, 0x37, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x38, 0x18, 0x3d, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x38, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x39, 0x18, 0x4c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, + 0x39, 0x12, 0x3c, 0x0a, 0x1a, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x18, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, + 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x23, 0x0a, 0x0d, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, + 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, + 0x76, 0x69, 0x6f, 0x75, 0x73, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x6e, + 0x6b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, + 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x6d, + 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x6d, + 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0e, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, + 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, + 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x23, 0x0a, + 0x0d, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, + 0x69, 0x74, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, + 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x67, + 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x12, 0x1c, 0x0a, + 0x0a, 0x78, 0x70, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x16, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x78, 0x70, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, + 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, + 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x1a, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, + 0x67, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x5f, + 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x4c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x12, 0x1f, 0x0a, + 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x1d, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x32, + 0x0a, 0x15, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, + 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x65, 0x65, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, + 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x20, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x66, 0x65, + 0x65, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a, + 0x0b, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x22, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x36, + 0x0a, 0x17, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x75, 0x6e, + 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x74, 0x79, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x15, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x61, 0x6e, 0x6b, 0x55, 0x6e, 0x63, 0x65, 0x72, + 0x74, 0x61, 0x69, 0x6e, 0x74, 0x79, 0x12, 0x36, 0x0a, 0x17, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x75, + 0x6e, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x74, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x05, 0x52, 0x15, 0x72, 0x61, 0x6e, 0x6b, 0x55, 0x6e, 0x63, + 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x74, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x26, + 0x0a, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x61, + 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, + 0x69, 0x64, 0x18, 0x26, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, + 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, + 0x63, 0x61, 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, + 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, + 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x63, + 0x61, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, + 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, + 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x63, + 0x61, 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, + 0x21, 0x0a, 0x0c, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, + 0x27, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x4b, 0x69, 0x6c, + 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x61, + 0x74, 0x68, 0x73, 0x18, 0x28, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x63, 0x61, 0x6c, 0x65, + 0x64, 0x44, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x63, 0x61, 0x6c, 0x65, + 0x64, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x29, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x0d, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x2a, + 0x0a, 0x11, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x67, + 0x6f, 0x6c, 0x64, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x61, 0x69, 0x6d, + 0x65, 0x64, 0x46, 0x61, 0x72, 0x6d, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x25, 0x0a, + 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, + 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x44, 0x65, + 0x6e, 0x69, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, + 0x6d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, + 0x61, 0x69, 0x6d, 0x65, 0x64, 0x4d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, + 0x69, 0x73, 0x73, 0x65, 0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x69, 0x73, + 0x73, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x10, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x75, + 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x2f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, + 0x0f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, + 0x12, 0x61, 0x0a, 0x1a, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, + 0x6e, 0x69, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x30, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, 0x69, 0x74, + 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x18, 0x61, 0x64, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x12, 0x48, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, + 0x5f, 0x62, 0x75, 0x66, 0x66, 0x73, 0x18, 0x39, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x50, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, 0x52, 0x0e, 0x70, + 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, 0x73, 0x12, 0x19, 0x0a, + 0x08, 0x70, 0x72, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x48, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x70, 0x72, 0x6f, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x6c, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x49, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x61, + 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x53, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x33, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, + 0x68, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, + 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, + 0x6c, 0x74, 0x79, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x6f, 0x74, 0x44, 0x69, + 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x3f, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x50, 0x69, 0x63, 0x6b, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x61, 0x6e, + 0x64, 0x6f, 0x6d, 0x65, 0x64, 0x18, 0x40, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x65, 0x72, + 0x6f, 0x57, 0x61, 0x73, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x65, 0x64, 0x12, 0x40, 0x0a, 0x1d, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x77, 0x61, 0x73, 0x5f, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x70, 0x6c, + 0x75, 0x73, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x45, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x19, 0x68, 0x65, 0x72, 0x6f, 0x57, 0x61, 0x73, 0x44, 0x6f, 0x74, 0x61, + 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5f, + 0x0a, 0x14, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, + 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x43, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x52, 0x12, 0x68, 0x65, 0x72, + 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, + 0x59, 0x0a, 0x11, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, + 0x65, 0x61, 0x6c, 0x74, 0x18, 0x4f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x52, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x44, + 0x61, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x65, 0x61, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x44, 0x65, 0x61, 0x64, 0x12, 0x2b, 0x0a, + 0x12, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, + 0x61, 0x74, 0x68, 0x18, 0x47, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x6f, 0x6c, 0x64, 0x4c, + 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x61, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, + 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, + 0x67, 0x73, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x4d, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, + 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x74, + 0x75, 0x72, 0x65, 0x64, 0x18, 0x4e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x70, + 0x6f, 0x73, 0x74, 0x73, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x12, 0x33, 0x0a, 0x0b, + 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x50, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, + 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x51, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x1a, 0x45, + 0x0a, 0x0e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, + 0x06, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x77, + 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x1a, 0xac, 0x01, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, + 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, + 0x70, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x74, 0x52, + 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x0b, 0x64, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, + 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x59, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, + 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x00, + 0x12, 0x17, 0x0a, 0x13, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, + 0x4d, 0x41, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x48, 0x45, 0x52, + 0x4f, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x55, 0x52, 0x45, 0x10, 0x02, 0x1a, + 0x44, 0x0a, 0x0f, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0xd0, 0x01, 0x0a, 0x12, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, + 0x61, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0c, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x50, 0x0a, 0x11, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, + 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x2e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x10, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, + 0x66, 0x6f, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, + 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x1a, 0xd7, 0x01, 0x0a, 0x05, 0x43, 0x6f, 0x61, + 0x63, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x61, 0x74, + 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x74, 0x65, 0x61, + 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x54, 0x65, + 0x61, 0x6d, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x70, 0x61, 0x72, 0x74, + 0x79, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x6f, 0x61, 0x63, + 0x68, 0x50, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x73, 0x5f, 0x70, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0e, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, + 0x63, 0x68, 0x1a, 0x51, 0x0a, 0x0e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, + 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, + 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x50, 0x0a, 0x0b, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x41, + 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x45, + 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x45, + 0x44, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x58, + 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x22, 0xb1, 0x01, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x0d, 0x73, 0x74, 0x61, + 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x1a, 0x38, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x04, 0x73, 0x74, 0x61, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xe2, 0x06, 0x0a, 0x1a, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, + 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, + 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, + 0x61, 0x74, 0x68, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, + 0x68, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x63, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, + 0x63, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x70, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x03, 0x67, 0x70, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6b, 0x69, + 0x6c, 0x6c, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, + 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, + 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x6f, 0x73, + 0x68, 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x37, 0x0a, 0x17, 0x74, 0x65, 0x61, 0x6d, + 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, 0x74, 0x65, 0x61, 0x6d, 0x66, + 0x69, 0x67, 0x68, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, + 0x61, 0x63, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, + 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x61, 0x6d, + 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x75, 0x6e, + 0x65, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x62, 0x62, 0x65, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x47, 0x72, 0x61, 0x62, 0x62, 0x65, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x12, + 0x14, 0x0a, 0x05, 0x73, 0x74, 0x75, 0x6e, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, + 0x73, 0x74, 0x75, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6d, 0x6f, 0x6b, 0x65, 0x73, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6d, 0x6f, 0x6b, 0x65, 0x73, 0x12, 0x25, 0x0a, + 0x0e, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, + 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x73, + 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x77, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, + 0x72, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x74, 0x6f, 0x72, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, + 0x75, 0x72, 0x69, 0x65, 0x72, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, + 0x1f, 0x0a, 0x0b, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x1c, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x0a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x22, 0x5d, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, + 0x61, 0x73, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x12, 0x3a, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, + 0xdf, 0x0a, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, + 0x65, 0x62, 0x75, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x32, 0x0a, 0x04, 0x62, 0x6f, 0x74, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x49, 0x6e, + 0x66, 0x6f, 0x2e, 0x42, 0x6f, 0x74, 0x52, 0x04, 0x62, 0x6f, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6c, 0x61, 0x6e, 0x65, - 0x5f, 0x62, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x69, - 0x72, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x61, 0x6e, 0x65, 0x42, 0x6f, 0x74, 0x12, 0x33, 0x0a, - 0x16, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x5f, 0x6c, - 0x61, 0x6e, 0x65, 0x5f, 0x74, 0x6f, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x64, - 0x65, 0x73, 0x69, 0x72, 0x65, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x4c, 0x61, 0x6e, 0x65, 0x54, - 0x6f, 0x70, 0x12, 0x33, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x64, 0x65, 0x66, - 0x65, 0x6e, 0x64, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x13, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x64, - 0x4c, 0x61, 0x6e, 0x65, 0x4d, 0x69, 0x64, 0x12, 0x33, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x69, 0x72, - 0x65, 0x5f, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x62, 0x6f, - 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x44, - 0x65, 0x66, 0x65, 0x6e, 0x64, 0x4c, 0x61, 0x6e, 0x65, 0x42, 0x6f, 0x74, 0x12, 0x2f, 0x0a, 0x14, - 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x6c, 0x61, 0x6e, 0x65, - 0x5f, 0x74, 0x6f, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x69, - 0x72, 0x65, 0x46, 0x61, 0x72, 0x6d, 0x4c, 0x61, 0x6e, 0x65, 0x54, 0x6f, 0x70, 0x12, 0x2f, 0x0a, - 0x14, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x6c, 0x61, 0x6e, - 0x65, 0x5f, 0x6d, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, - 0x69, 0x72, 0x65, 0x46, 0x61, 0x72, 0x6d, 0x4c, 0x61, 0x6e, 0x65, 0x4d, 0x69, 0x64, 0x12, 0x2f, + 0x5f, 0x74, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x69, + 0x72, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x61, 0x6e, 0x65, 0x54, 0x6f, 0x70, 0x12, 0x2f, 0x0a, + 0x14, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6c, 0x61, 0x6e, + 0x65, 0x5f, 0x6d, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, + 0x69, 0x72, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x61, 0x6e, 0x65, 0x4d, 0x69, 0x64, 0x12, 0x2f, + 0x0a, 0x14, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6c, 0x61, + 0x6e, 0x65, 0x5f, 0x62, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, + 0x73, 0x69, 0x72, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x61, 0x6e, 0x65, 0x42, 0x6f, 0x74, 0x12, + 0x33, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, + 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x74, 0x6f, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x13, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x4c, 0x61, 0x6e, + 0x65, 0x54, 0x6f, 0x70, 0x12, 0x33, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x64, + 0x65, 0x66, 0x65, 0x6e, 0x64, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x69, 0x64, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x44, 0x65, 0x66, 0x65, + 0x6e, 0x64, 0x4c, 0x61, 0x6e, 0x65, 0x4d, 0x69, 0x64, 0x12, 0x33, 0x0a, 0x16, 0x64, 0x65, 0x73, + 0x69, 0x72, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, + 0x62, 0x6f, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x64, 0x65, 0x73, 0x69, 0x72, + 0x65, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x4c, 0x61, 0x6e, 0x65, 0x42, 0x6f, 0x74, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x6c, 0x61, - 0x6e, 0x65, 0x5f, 0x62, 0x6f, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, - 0x73, 0x69, 0x72, 0x65, 0x46, 0x61, 0x72, 0x6d, 0x4c, 0x61, 0x6e, 0x65, 0x42, 0x6f, 0x74, 0x12, - 0x2c, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x72, - 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x64, 0x65, 0x73, - 0x69, 0x72, 0x65, 0x46, 0x61, 0x72, 0x6d, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x12, 0x25, 0x0a, - 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x75, 0x6e, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0xd7, 0x05, 0x0a, 0x03, 0x42, 0x6f, 0x74, 0x12, 0x26, 0x0a, - 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4f, 0x77, - 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1e, - 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x23, - 0x0a, 0x0d, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, - 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x78, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x4d, 0x61, 0x78, - 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, - 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x6f, 0x76, 0x65, 0x54, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x58, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x5f, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x6f, 0x76, - 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x59, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x6f, 0x76, 0x65, - 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x7a, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x6d, 0x6f, 0x76, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5a, 0x12, 0x24, 0x0a, 0x0e, - 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4d, 0x6f, 0x64, 0x65, - 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x05, 0x6d, 0x6f, 0x64, - 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, - 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x42, 0x6f, 0x74, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6d, - 0x6f, 0x64, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x49, 0x6e, 0x66, 0x6f, - 0x2e, 0x42, 0x6f, 0x74, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x1a, 0xad, 0x01, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x0a, 0x07, - 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, - 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x12, 0x23, 0x0a, - 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x78, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x58, 0x12, 0x19, 0x0a, - 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x59, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5f, 0x7a, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5a, 0x1a, 0x4a, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, - 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, - 0x75, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, - 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x77, 0x69, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x0a, 0x77, 0x69, 0x6e, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, - 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, - 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x73, 0x74, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x22, 0xff, 0x02, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x52, - 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x09, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, - 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, - 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, - 0x73, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, - 0x12, 0x38, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, - 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x0c, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, - 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, - 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, - 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xf0, 0x01, 0x0a, 0x0d, 0x43, 0x4d, 0x73, - 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x70, 0x73, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x69, - 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x70, 0x73, 0x2e, 0x53, 0x69, - 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x69, 0x70, 0x52, 0x04, 0x74, 0x69, 0x70, 0x73, 0x1a, 0xab, 0x01, - 0x0a, 0x09, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x69, 0x70, 0x12, 0x2a, 0x0a, 0x11, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x70, 0x41, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9b, 0x0b, 0x0a, 0x14, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, - 0x69, 0x6d, 0x61, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, - 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x07, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x09, 0x67, 0x61, - 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, - 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x3b, 0x0a, 0x07, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x3c, 0x0a, 0x07, 0x74, 0x6f, 0x75, - 0x72, 0x6e, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, - 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x2e, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x52, 0x07, - 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x12, 0x38, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, - 0x6f, 0x6d, 0x65, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, - 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x6f, - 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, - 0x54, 0x79, 0x70, 0x65, 0x1a, 0xa5, 0x02, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, - 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, - 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, - 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x33, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x1a, 0xba, 0x05, 0x0a, - 0x07, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, - 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, - 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, - 0x69, 0x65, 0x73, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x77, 0x65, 0x65, 0x6b, 0x65, - 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, - 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x54, 0x6f, - 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x20, 0x77, 0x65, - 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x73, 0x65, - 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, - 0x72, 0x6e, 0x65, 0x79, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, - 0x49, 0x64, 0x12, 0x38, 0x0a, 0x18, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, - 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, - 0x72, 0x6e, 0x65, 0x79, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x1b, - 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, - 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x18, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, - 0x79, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72, - 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, - 0x6d, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x72, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x31, 0x0a, 0x15, 0x72, - 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, - 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x72, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x20, - 0x0a, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, - 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, - 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, - 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x2b, 0x0a, 0x12, - 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, - 0x72, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, - 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x22, 0x59, 0x0a, 0x13, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x27, 0x0a, 0x0f, 0x71, - 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x22, 0xf2, 0x01, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x62, 0x0a, 0x17, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x73, - 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x61, - 0x67, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x15, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, - 0x73, 0x55, 0x73, 0x65, 0x64, 0x1a, 0x72, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, - 0x73, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, - 0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, - 0x62, 0x6c, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, - 0x61, 0x62, 0x6c, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x22, 0xe5, 0x01, 0x0a, 0x1a, 0x43, 0x4d, - 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x52, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, - 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x0c, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x1a, 0x73, 0x0a, 0x0c, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x0f, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, 0x72, - 0x64, 0x52, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, - 0x64, 0x22, 0x96, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, - 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x14, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, - 0x61, 0x6d, 0x65, 0x73, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x2b, 0x0a, - 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, - 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, - 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x85, 0x02, 0x0a, 0x1e, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x57, 0x68, 0x69, - 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x45, 0x64, 0x69, 0x74, 0x12, 0x60, 0x0a, - 0x11, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x57, 0x68, - 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x45, 0x64, 0x69, 0x74, 0x2e, 0x57, - 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x77, - 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x1a, - 0x80, 0x01, 0x0a, 0x0e, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x0f, 0x77, 0x68, 0x69, 0x74, - 0x65, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x52, 0x0e, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x22, 0xe3, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, + 0x6e, 0x65, 0x5f, 0x74, 0x6f, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x65, + 0x73, 0x69, 0x72, 0x65, 0x46, 0x61, 0x72, 0x6d, 0x4c, 0x61, 0x6e, 0x65, 0x54, 0x6f, 0x70, 0x12, + 0x2f, 0x0a, 0x14, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x6c, + 0x61, 0x6e, 0x65, 0x5f, 0x6d, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, + 0x65, 0x73, 0x69, 0x72, 0x65, 0x46, 0x61, 0x72, 0x6d, 0x4c, 0x61, 0x6e, 0x65, 0x4d, 0x69, 0x64, + 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, + 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x62, 0x6f, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, + 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x46, 0x61, 0x72, 0x6d, 0x4c, 0x61, 0x6e, 0x65, 0x42, 0x6f, + 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x61, 0x72, 0x6d, + 0x5f, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x64, + 0x65, 0x73, 0x69, 0x72, 0x65, 0x46, 0x61, 0x72, 0x6d, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x12, + 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x75, 0x6e, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0xd7, 0x05, 0x0a, 0x03, 0x42, 0x6f, 0x74, 0x12, + 0x26, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, + 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x43, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6d, + 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x4d, + 0x61, 0x78, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x5f, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x6f, 0x76, 0x65, 0x54, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x58, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, + 0x6f, 0x76, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x59, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x6f, + 0x76, 0x65, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x7a, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x6d, 0x6f, 0x76, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5a, 0x12, 0x24, + 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4d, 0x6f, + 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x65, 0x78, + 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x05, 0x6d, + 0x6f, 0x64, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x42, 0x6f, 0x74, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, + 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x49, 0x6e, + 0x66, 0x6f, 0x2e, 0x42, 0x6f, 0x74, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xad, 0x01, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x17, + 0x0a, 0x07, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x6d, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x73, 0x69, 0x72, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x12, + 0x23, 0x0a, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x78, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x58, 0x12, + 0x19, 0x0a, 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x59, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x5f, 0x7a, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x5a, 0x1a, 0x4a, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x22, 0x75, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x66, 0x75, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, + 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x69, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x77, 0x69, 0x6e, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, + 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x72, + 0x65, 0x61, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x6f, 0x6e, 0x67, 0x65, + 0x73, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x22, 0xff, 0x02, 0x0a, 0x13, 0x43, 0x4d, 0x73, + 0x67, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x77, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x03, 0x77, 0x69, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, - 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x22, 0x43, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x22, 0x5c, 0x0a, - 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, - 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x12, 0x1a, - 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x57, 0x0a, 0x18, 0x43, - 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x95, 0x04, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, - 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x65, - 0x6e, 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, - 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4f, 0x75, - 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, - 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, - 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6b, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x14, 0x70, 0x6c, 0x75, 0x73, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x47, 0x0a, 0x0f, 0x72, 0x65, 0x63, - 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x64, 0x73, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x64, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x13, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3e, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, - 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x6c, 0x61, 0x73, - 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x44, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, - 0x5f, 0x6d, 0x76, 0x70, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, + 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x09, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x4d, + 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, + 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, + 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, + 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, + 0x6f, 0x74, 0x12, 0x38, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x75, 0x74, 0x63, + 0x6f, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x0c, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, + 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xf0, 0x01, 0x0a, 0x0d, 0x43, + 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x70, 0x73, 0x12, 0x31, 0x0a, 0x04, + 0x74, 0x69, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x70, 0x73, 0x2e, + 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x69, 0x70, 0x52, 0x04, 0x74, 0x69, 0x70, 0x73, 0x1a, + 0xab, 0x01, 0x0a, 0x09, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x69, 0x70, 0x12, 0x2a, 0x0a, + 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x70, 0x41, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9b, 0x0b, + 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, + 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x09, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, + 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x3b, + 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x3c, 0x0a, 0x07, 0x74, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x2e, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, + 0x52, 0x07, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x12, 0x38, 0x0a, 0x0d, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, + 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, + 0x6f, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, + 0x61, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, + 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, + 0x72, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, + 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x1a, 0xa5, 0x02, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, + 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, + 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, + 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x33, 0x0a, 0x0b, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, + 0x41, 0x4d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x1a, 0xba, + 0x05, 0x0a, 0x07, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, + 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x77, 0x65, 0x65, + 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x74, 0x6f, 0x75, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x1a, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, + 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x20, + 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, + 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x5f, 0x69, 0x64, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x54, 0x72, 0x6f, 0x70, + 0x68, 0x79, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x18, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, + 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3d, + 0x0a, 0x1b, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, + 0x79, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x18, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, + 0x6e, 0x65, 0x79, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x26, 0x0a, + 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, + 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, + 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x31, 0x0a, + 0x15, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, + 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, + 0x12, 0x20, 0x0a, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x69, 0x72, 0x65, + 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x69, 0x72, 0x65, + 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x0c, 0x64, 0x69, 0x72, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x2b, + 0x0a, 0x12, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, + 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x69, 0x72, 0x65, + 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x22, 0x59, 0x0a, 0x13, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x61, + 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x27, 0x0a, + 0x0f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x22, 0xf2, 0x01, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x62, 0x0a, 0x17, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, + 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x55, + 0x73, 0x61, 0x67, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, + 0x52, 0x15, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, + 0x6c, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x1a, 0x72, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, + 0x62, 0x6c, 0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x75, + 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x73, + 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x22, 0xe5, 0x01, 0x0a, 0x1a, + 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x52, 0x0a, 0x0d, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, + 0x6e, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, + 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x1a, 0x73, + 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x44, 0x0a, + 0x0f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x77, + 0x61, 0x72, 0x64, 0x52, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x47, 0x72, 0x61, 0x6e, + 0x74, 0x65, 0x64, 0x22, 0x96, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, + 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x14, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x12, + 0x2b, 0x0a, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, + 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x85, 0x02, 0x0a, + 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x57, + 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x45, 0x64, 0x69, 0x74, 0x12, + 0x60, 0x0a, 0x11, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x74, + 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x45, 0x64, 0x69, 0x74, + 0x2e, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x10, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, + 0x73, 0x1a, 0x80, 0x01, 0x0a, 0x0e, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x0f, 0x77, 0x68, + 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x52, 0x0e, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x22, 0xe3, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x64, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x77, 0x69, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x77, 0x69, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, + 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, + 0x68, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x22, 0x43, 0x0a, 0x15, 0x43, 0x4d, + 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x65, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x22, + 0x5c, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, - 0x52, 0x0a, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x76, 0x70, 0x73, 0x22, 0xf3, 0x01, 0x0a, - 0x23, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x52, - 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x6f, - 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, + 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x57, 0x0a, + 0x18, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x95, 0x04, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x0f, 0x72, 0x65, + 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, + 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0b, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x70, 0x72, + 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x70, 0x6c, 0x75, 0x73, 0x50, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x47, 0x0a, 0x0f, 0x72, + 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x64, 0x73, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x13, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3e, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, + 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, + 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x6c, + 0x61, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x44, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x65, + 0x6e, 0x74, 0x5f, 0x6d, 0x76, 0x70, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, - 0x65, 0x73, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, - 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x12, 0x3e, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x22, 0xd7, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, 0x65, 0x6e, - 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x12, 0x5c, 0x0a, 0x16, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x6d, - 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, - 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x15, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, - 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x5c, - 0x0a, 0x14, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, - 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x65, - 0x72, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, - 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x13, 0x68, 0x65, 0x72, 0x6f, 0x41, 0x63, 0x63, - 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x6a, 0x0a, 0x30, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, - 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x65, 0x73, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x76, 0x70, 0x73, 0x22, 0xf3, + 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x65, 0x72, + 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, + 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, + 0x6f, 0x6d, 0x65, 0x73, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x4f, 0x75, 0x74, 0x63, + 0x6f, 0x6d, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x72, 0x65, + 0x63, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x65, + 0x63, 0x6f, 0x72, 0x64, 0x12, 0x3e, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x22, 0xd7, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, + 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x5c, 0x0a, 0x16, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x15, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x12, 0x5c, 0x0a, 0x14, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x13, 0x68, 0x65, 0x72, 0x6f, 0x41, + 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x6a, + 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, + 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xc8, 0x02, 0x0a, 0x38, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, + 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x48, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, + 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x56, 0x0a, 0x16, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x15, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x22, 0x52, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, + 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x10, 0x03, 0x22, 0x6d, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x72, 0x63, + 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, + 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x76, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xe7, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, + 0x6f, 0x47, 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x45, 0x78, 0x70, + 0x6c, 0x6f, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x31, 0x0a, 0x15, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, + 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x12, 0x6e, 0x75, 0x6d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x54, 0x6f, 0x53, 0x65, 0x61, + 0x72, 0x63, 0x68, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x64, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x6e, 0x75, 0x6d, 0x5f, + 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6e, 0x75, 0x6d, 0x41, 0x64, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0xac, + 0x03, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, 0x6f, 0x47, 0x43, 0x41, 0x73, 0x73, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x69, 0x74, 0x65, 0x72, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x74, 0x6f, 0x47, 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, + 0x64, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, + 0x9b, 0x02, 0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x75, + 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x61, 0x72, 0x6c, + 0x69, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x65, 0x61, 0x72, 0x6c, 0x69, 0x65, 0x73, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x2e, 0x0a, 0x13, + 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x61, 0x74, 0x65, 0x73, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1e, 0x0a, 0x0a, + 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, + 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, + 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, + 0x79, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, + 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x22, 0x8d, 0x03, + 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x75, 0x6c, 0x6c, 0x54, 0x61, 0x62, 0x73, 0x44, 0x61, + 0x74, 0x61, 0x12, 0x31, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x75, 0x6c, + 0x6c, 0x54, 0x61, 0x62, 0x73, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x05, + 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x3a, 0x0a, 0x08, 0x6a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x50, 0x75, 0x6c, 0x6c, 0x54, 0x61, 0x62, 0x73, 0x44, 0x61, 0x74, 0x61, 0x2e, + 0x4a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x52, 0x08, 0x6a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, + 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x42, 0x6f, 0x61, 0x72, 0x64, + 0x1a, 0x8e, 0x01, 0x0a, 0x04, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, + 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x65, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x65, + 0x64, 0x1a, 0x5a, 0x0a, 0x07, 0x4a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xb4, 0x03, + 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x43, 0x0a, 0x0b, 0x62, 0x65, 0x6e, 0x63, 0x68, 0x5f, 0x73, 0x6c, + 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x2e, 0x42, 0x65, 0x6e, 0x63, 0x68, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x0a, 0x62, + 0x65, 0x6e, 0x63, 0x68, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x40, 0x0a, 0x0a, 0x73, 0x68, 0x6f, + 0x70, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, + 0x61, 0x66, 0x74, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x68, 0x6f, 0x70, 0x53, 0x6c, 0x6f, 0x74, + 0x52, 0x09, 0x73, 0x68, 0x6f, 0x70, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, + 0x6f, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x25, + 0x0a, 0x0e, 0x6e, 0x6f, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x62, 0x6c, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6e, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0x53, 0x0a, 0x09, 0x42, 0x65, 0x6e, 0x63, 0x68, 0x53, 0x6c, + 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x73, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x73, 0x1a, 0x68, 0x0a, 0x08, 0x53, 0x68, + 0x6f, 0x70, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xc8, 0x02, 0x0a, 0x38, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, - 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x48, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, - 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x56, 0x0a, 0x16, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, - 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x15, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, - 0x52, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, - 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x64, 0x10, 0x03, 0x22, 0x6d, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x72, 0x63, 0x61, 0x6e, - 0x61, 0x56, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x12, - 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, - 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, - 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x76, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x22, 0xe7, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, 0x6f, 0x47, - 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x45, 0x78, 0x70, 0x6c, 0x6f, - 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x31, - 0x0a, 0x15, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x74, 0x6f, - 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6e, - 0x75, 0x6d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x54, 0x6f, 0x53, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x6e, 0x75, 0x6d, 0x5f, 0x61, 0x64, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6e, 0x75, 0x6d, 0x41, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0xac, 0x03, 0x0a, - 0x30, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, 0x6f, 0x47, 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x65, 0x64, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x5a, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x74, 0x6f, 0x47, 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x45, - 0x78, 0x70, 0x6c, 0x6f, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x9b, 0x02, - 0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x75, 0x6d, 0x5f, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x61, 0x72, 0x6c, 0x69, 0x65, - 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x65, 0x61, 0x72, 0x6c, 0x69, 0x65, 0x73, 0x74, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x2e, 0x0a, 0x13, 0x6c, 0x61, - 0x74, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, - 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x65, 0x72, - 0x73, 0x6f, 0x6e, 0x61, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x5f, - 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x61, 0x6c, - 0x72, 0x65, 0x61, 0x64, 0x79, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x22, 0x8d, 0x03, 0x0a, 0x10, - 0x43, 0x4d, 0x73, 0x67, 0x50, 0x75, 0x6c, 0x6c, 0x54, 0x61, 0x62, 0x73, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x31, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x75, 0x6c, 0x6c, 0x54, - 0x61, 0x62, 0x73, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x05, 0x73, 0x6c, - 0x6f, 0x74, 0x73, 0x12, 0x3a, 0x0a, 0x08, 0x6a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x50, 0x75, 0x6c, 0x6c, 0x54, 0x61, 0x62, 0x73, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x4a, 0x61, - 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x52, 0x08, 0x6a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x73, 0x12, - 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x1a, 0x8e, - 0x01, 0x0a, 0x04, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, - 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x65, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x65, 0x64, 0x1a, - 0x5a, 0x0a, 0x07, 0x4a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x6f, - 0x61, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x6f, - 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0xb4, 0x03, 0x0a, 0x12, - 0x43, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x44, 0x61, - 0x74, 0x61, 0x12, 0x43, 0x0a, 0x0b, 0x62, 0x65, 0x6e, 0x63, 0x68, 0x5f, 0x73, 0x6c, 0x6f, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x44, 0x61, 0x74, - 0x61, 0x2e, 0x42, 0x65, 0x6e, 0x63, 0x68, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x0a, 0x62, 0x65, 0x6e, - 0x63, 0x68, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x40, 0x0a, 0x0a, 0x73, 0x68, 0x6f, 0x70, 0x5f, - 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, - 0x74, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x68, 0x6f, 0x70, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x09, - 0x73, 0x68, 0x6f, 0x70, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x1d, 0x0a, - 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x25, 0x0a, 0x0e, - 0x6e, 0x6f, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6e, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x62, 0x6c, 0x65, 0x1a, 0x53, 0x0a, 0x09, 0x42, 0x65, 0x6e, 0x63, 0x68, 0x53, 0x6c, 0x6f, 0x74, - 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x73, 0x1a, 0x68, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x70, - 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, - 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x73, 0x5f, 0x73, 0x70, 0x65, - 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0f, 0x69, 0x73, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x22, 0x5e, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x54, 0x69, 0x74, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x22, 0x94, 0x02, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, - 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, - 0x0b, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3d, - 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, - 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, - 0x6f, 0x72, 0x79, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x25, 0x0a, 0x0e, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, - 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6f, 0x72, 0x72, 0x65, - 0x63, 0x74, 0x5f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x41, 0x6e, - 0x73, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x76, 0x0a, 0x24, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, - 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, - 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x61, 0x76, 0x61, - 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x75, - 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x21, - 0x0a, 0x0c, 0x70, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x22, 0x67, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, - 0x61, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6e, - 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1c, 0x0a, 0x09, - 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xd7, 0x01, 0x0a, 0x19, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x65, 0x63, 0x69, - 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x02, 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, - 0x23, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, - 0x74, 0x61, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, - 0x6c, 0x6f, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x65, 0x61, 0x64, 0x69, - 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x12, 0x3d, 0x0a, 0x07, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, - 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, - 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x52, 0x07, 0x62, 0x6f, 0x6e, - 0x75, 0x73, 0x65, 0x73, 0x22, 0xad, 0x0a, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, - 0x65, 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x49, 0x74, - 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x6c, - 0x6f, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x6f, - 0x63, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x65, 0x73, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x73, 0x63, 0x4c, 0x6f, 0x63, 0x12, 0x19, 0x0a, 0x08, - 0x6c, 0x6f, 0x72, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x6c, 0x6f, 0x72, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x6f, 0x74, 0x65, 0x73, - 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x6f, 0x74, 0x65, - 0x73, 0x4c, 0x6f, 0x63, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x6c, 0x6f, - 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x61, 0x72, 0x64, 0x4c, 0x6f, - 0x63, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x63, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x4c, - 0x6f, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, - 0x6f, 0x72, 0x18, 0x15, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, - 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74, 0x65, 0x61, - 0x6d, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, - 0x65, 0x61, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x18, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x61, - 0x6d, 0x61, 0x67, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x18, 0x1a, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x12, 0x20, - 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x1b, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, - 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x1c, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1f, 0x0a, - 0x0b, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x03, - 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x1f, - 0x0a, 0x0b, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x1f, 0x20, - 0x03, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x61, 0x73, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x18, 0x20, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, - 0x73, 0x18, 0x21, 0x20, 0x03, 0x28, 0x02, 0x52, 0x09, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, - 0x6e, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x22, 0x20, 0x03, 0x28, 0x02, 0x52, 0x09, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x18, 0x0a, 0x07, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x23, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x07, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, - 0x6e, 0x61, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x24, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, - 0x6d, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x6c, - 0x64, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x25, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x67, - 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, - 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, - 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x46, 0x0a, 0x0e, 0x73, - 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x28, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x32, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x2e, 0x0a, 0x13, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x63, 0x65, 0x70, - 0x74, 0x65, 0x72, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x48, 0x61, 0x73, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, - 0x64, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x48, 0x61, 0x73, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x40, 0x0a, 0x1d, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x5f, 0x69, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x62, - 0x79, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x19, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, - 0x64, 0x42, 0x79, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x1b, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, - 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x17, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, - 0x64, 0x42, 0x79, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, - 0x6d, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x47, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x12, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, - 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x48, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x54, - 0x69, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x74, 0x6f, 0x63, - 0x6b, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x49, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, - 0x6d, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x4d, 0x61, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, - 0x6d, 0x5f, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x4a, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, - 0x79, 0x18, 0x55, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x51, 0x75, 0x61, - 0x6c, 0x69, 0x74, 0x79, 0x22, 0xf1, 0x08, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, - 0x65, 0x44, 0x61, 0x74, 0x61, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, - 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x61, 0x6d, 0x65, - 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x61, 0x6d, 0x65, - 0x4c, 0x6f, 0x63, 0x12, 0x17, 0x0a, 0x07, 0x62, 0x69, 0x6f, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x69, 0x6f, 0x4c, 0x6f, 0x63, 0x12, 0x19, 0x0a, 0x08, - 0x68, 0x79, 0x70, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x68, 0x79, 0x70, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x70, 0x65, 0x5f, 0x64, - 0x65, 0x73, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, - 0x70, 0x65, 0x44, 0x65, 0x73, 0x63, 0x4c, 0x6f, 0x63, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x72, - 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x73, 0x74, 0x72, - 0x42, 0x61, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x5f, 0x67, 0x61, 0x69, 0x6e, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x73, 0x74, 0x72, 0x47, 0x61, 0x69, 0x6e, 0x12, - 0x19, 0x0a, 0x08, 0x61, 0x67, 0x69, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x61, 0x67, 0x69, 0x42, 0x61, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, - 0x69, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x61, 0x67, - 0x69, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x73, - 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x6e, 0x74, 0x42, 0x61, 0x73, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x07, 0x69, 0x6e, 0x74, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, - 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x74, 0x74, 0x72, 0x12, 0x1e, - 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x18, 0x15, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x12, 0x2b, - 0x0a, 0x11, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, - 0x6b, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x72, - 0x6f, 0x6c, 0x65, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0d, - 0x52, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x64, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, - 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, - 0x74, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x29, - 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x65, - 0x65, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x72, 0x6d, - 0x6f, 0x72, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x12, - 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x69, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, 0x67, 0x69, 0x63, - 0x52, 0x65, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x6f, - 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x1f, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x65, - 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x20, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x74, 0x75, 0x72, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x12, 0x26, - 0x0a, 0x0f, 0x73, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x64, 0x61, - 0x79, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x69, 0x67, 0x68, 0x74, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x44, 0x61, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x69, 0x67, 0x68, 0x74, 0x5f, - 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, 0x18, 0x22, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0f, 0x73, 0x69, 0x67, 0x68, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x69, 0x67, - 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x78, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, - 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x61, 0x78, 0x48, 0x65, 0x61, 0x6c, 0x74, - 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x72, 0x65, 0x67, 0x65, - 0x6e, 0x18, 0x24, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x52, - 0x65, 0x67, 0x65, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x61, 0x6e, 0x61, - 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x4d, 0x61, 0x6e, 0x61, 0x12, - 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x18, 0x26, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x09, 0x6d, 0x61, 0x6e, 0x61, 0x52, 0x65, 0x67, 0x65, 0x6e, 0x12, 0x3d, - 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, - 0x65, 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x49, 0x74, - 0x65, 0x6d, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x39, 0x0a, - 0x07, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, - 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x52, - 0x07, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x56, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x12, 0x3d, 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, - 0x72, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x22, 0x4a, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, - 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x35, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, - 0x72, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x44, 0x0a, 0x12, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x48, 0x65, 0x72, 0x6f, - 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, - 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, - 0x65, 0x73, 0x22, 0x8c, 0x02, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, - 0x61, 0x74, 0x61, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x06, 0x68, - 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x48, - 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x1a, 0xb6, 0x01, 0x0a, 0x08, 0x48, 0x65, 0x72, - 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x61, 0x6d, - 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x61, 0x6d, - 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x65, 0x6e, 0x67, - 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x6e, 0x61, 0x6d, 0x65, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x63, 0x12, 0x21, - 0x0a, 0x0c, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x74, 0x74, - 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, - 0x79, 0x22, 0x9f, 0x02, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, - 0x74, 0x61, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x12, 0x57, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x49, 0x74, 0x65, 0x6d, - 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x49, 0x74, 0x65, 0x6d, - 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x69, 0x74, 0x65, - 0x6d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0xa6, 0x01, 0x0a, 0x0f, 0x49, - 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x73, 0x5f, 0x73, + 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x22, 0x5e, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x22, 0x94, 0x02, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x1f, 0x0a, 0x0b, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x3d, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, + 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, + 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x25, 0x0a, + 0x0e, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x73, + 0x77, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6f, 0x72, + 0x72, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, + 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x76, 0x0a, 0x24, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, + 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x53, 0x75, 0x6d, 0x6d, + 0x61, 0x72, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x61, + 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, + 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, + 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0x67, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, + 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa1, 0x02, 0x0a, + 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x65, + 0x63, 0x69, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x46, 0x6c, 0x6f, 0x61, + 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, + 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x50, 0x65, 0x72, 0x63, + 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x65, 0x61, + 0x64, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x12, 0x3d, 0x0a, 0x07, 0x62, 0x6f, 0x6e, 0x75, 0x73, + 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x53, 0x70, 0x65, 0x63, + 0x69, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x52, 0x07, 0x62, + 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x73, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x03, 0x28, + 0x02, 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, + 0x22, 0xad, 0x0a, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x28, 0x0a, - 0x10, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x6c, 0x6f, - 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6e, 0x61, 0x6d, 0x65, 0x45, 0x6e, 0x67, - 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x63, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, 0x75, 0x74, 0x72, - 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x54, - 0x69, 0x65, 0x72, 0x22, 0x4b, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x5f, 0x64, 0x72, 0x61, 0x66, - 0x74, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x73, - 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x22, 0x95, 0x02, 0x0a, 0x18, 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, - 0x44, 0x72, 0x6f, 0x70, 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, - 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x44, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x62, - 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, - 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x6c, 0x65, - 0x66, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x4c, 0x65, 0x66, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x6f, - 0x73, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x22, 0xad, 0x02, 0x0a, 0x1d, 0x43, 0x53, 0x4f, - 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, - 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, - 0x32, 0x0a, 0x15, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x75, 0x72, 0x63, - 0x68, 0x61, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, - 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x73, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x73, - 0x5f, 0x62, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, - 0x61, 0x73, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x42, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x12, 0x18, - 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, - 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0xc7, 0x02, 0x0a, 0x16, 0x43, 0x4d, 0x73, + 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x19, 0x0a, + 0x08, 0x64, 0x65, 0x73, 0x63, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x64, 0x65, 0x73, 0x63, 0x4c, 0x6f, 0x63, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x72, 0x65, + 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x6f, 0x72, 0x65, + 0x4c, 0x6f, 0x63, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x5f, 0x6c, 0x6f, 0x63, + 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x4c, 0x6f, 0x63, + 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x61, 0x72, 0x64, 0x4c, 0x6f, 0x63, 0x12, 0x1f, 0x0a, + 0x0b, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x4c, 0x6f, 0x63, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x15, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1f, + 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x16, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, + 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x17, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x69, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x69, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, + 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x64, 0x69, 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, + 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x6d, 0x61, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x73, + 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, + 0x63, 0x61, 0x73, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, + 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x02, 0x52, + 0x0a, 0x63, 0x61, 0x73, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x20, 0x20, 0x03, + 0x28, 0x02, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x18, 0x21, 0x20, + 0x03, 0x28, 0x02, 0x52, 0x09, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x22, 0x20, 0x03, 0x28, + 0x02, 0x52, 0x09, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, + 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x23, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x64, + 0x61, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x5f, 0x63, + 0x6f, 0x73, 0x74, 0x73, 0x18, 0x24, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x61, 0x6e, 0x61, + 0x43, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x63, 0x6f, + 0x73, 0x74, 0x73, 0x18, 0x25, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x43, + 0x6f, 0x73, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x63, + 0x6f, 0x73, 0x74, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x6c, + 0x74, 0x68, 0x43, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x46, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x52, 0x0d, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, + 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x32, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x06, 0x69, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x18, + 0x3c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x61, + 0x73, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x3d, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x61, 0x73, 0x53, + 0x68, 0x61, 0x72, 0x64, 0x12, 0x40, 0x0a, 0x1d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x69, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x63, + 0x65, 0x70, 0x74, 0x65, 0x72, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x49, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x42, 0x79, 0x53, + 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x1b, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x69, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x5f, + 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x49, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x42, 0x79, 0x53, + 0x68, 0x61, 0x72, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x73, + 0x74, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x73, + 0x74, 0x12, 0x30, 0x0a, 0x14, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x6c, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x47, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x12, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x68, 0x61, 0x72, + 0x67, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x6e, 0x65, 0x75, 0x74, + 0x72, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, + 0x69, 0x74, 0x65, 0x6d, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x54, 0x69, 0x65, 0x72, 0x12, + 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x5f, 0x6d, 0x61, + 0x78, 0x18, 0x49, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x6f, + 0x63, 0x6b, 0x4d, 0x61, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x74, + 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, + 0x69, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x55, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x22, 0xf1, 0x08, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x63, 0x12, + 0x17, 0x0a, 0x07, 0x62, 0x69, 0x6f, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x62, 0x69, 0x6f, 0x4c, 0x6f, 0x63, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x79, 0x70, 0x65, + 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x79, 0x70, 0x65, + 0x4c, 0x6f, 0x63, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x70, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x5f, + 0x6c, 0x6f, 0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x70, 0x65, 0x44, 0x65, + 0x73, 0x63, 0x4c, 0x6f, 0x63, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x5f, 0x62, 0x61, 0x73, + 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x73, 0x74, 0x72, 0x42, 0x61, 0x73, 0x65, + 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x07, 0x73, 0x74, 0x72, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x61, + 0x67, 0x69, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, + 0x67, 0x69, 0x42, 0x61, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x69, 0x5f, 0x67, 0x61, + 0x69, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x61, 0x67, 0x69, 0x47, 0x61, 0x69, + 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x6e, 0x74, 0x42, 0x61, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, + 0x69, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, + 0x69, 0x6e, 0x74, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x69, 0x6d, 0x61, + 0x72, 0x79, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, + 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x74, 0x74, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x43, 0x61, 0x70, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x6c, 0x65, 0x5f, + 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x6f, + 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x61, + 0x6d, 0x61, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, + 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x61, 0x74, 0x74, + 0x61, 0x63, 0x6b, 0x52, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, + 0x6b, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, + 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x1c, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, + 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x18, 0x1d, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x6d, + 0x61, 0x67, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, + 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x52, 0x65, 0x73, 0x69, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x6f, 0x76, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x6d, 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x1b, 0x0a, + 0x09, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x08, 0x74, 0x75, 0x72, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x69, + 0x67, 0x68, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x79, 0x18, 0x21, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x69, 0x67, 0x68, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x44, + 0x61, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, + 0x69, 0x67, 0x68, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, + 0x0a, 0x0a, 0x6d, 0x61, 0x78, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x23, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x61, 0x78, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x21, 0x0a, + 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x18, 0x24, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x52, 0x65, 0x67, 0x65, 0x6e, + 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x18, 0x25, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x4d, 0x61, 0x6e, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, + 0x61, 0x6e, 0x61, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x18, 0x26, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x09, 0x6d, 0x61, 0x6e, 0x61, 0x52, 0x65, 0x67, 0x65, 0x6e, 0x12, 0x3d, 0x0a, 0x09, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x09, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x07, 0x74, 0x61, 0x6c, + 0x65, 0x6e, 0x74, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x07, 0x74, 0x61, 0x6c, + 0x65, 0x6e, 0x74, 0x73, 0x22, 0x56, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x3d, 0x0a, + 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x49, 0x74, 0x65, + 0x6d, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0x4a, 0x0a, 0x11, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x49, 0x74, 0x65, 0x6d, + 0x73, 0x12, 0x35, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x49, 0x74, 0x65, + 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x44, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x2e, + 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x22, 0x8c, + 0x02, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x48, + 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x48, 0x65, 0x72, 0x6f, 0x4c, + 0x69, 0x73, 0x74, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x65, 0x73, 0x1a, 0xb6, 0x01, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, + 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x63, + 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, + 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6e, 0x61, 0x6d, 0x65, + 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x63, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, + 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x74, 0x74, 0x72, 0x12, 0x1e, 0x0a, + 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x69, 0x74, 0x79, 0x22, 0x9f, 0x02, + 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x49, 0x74, + 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x57, 0x0a, + 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0xa6, 0x01, 0x0a, 0x0f, 0x49, 0x74, 0x65, 0x6d, 0x41, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, + 0x0a, 0x08, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x61, 0x6d, + 0x65, 0x5f, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6e, 0x61, 0x6d, 0x65, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, + 0x4c, 0x6f, 0x63, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, + 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x69, 0x65, 0x72, 0x22, + 0x4b, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x41, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2e, 0x0a, 0x13, + 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x5f, 0x64, 0x72, 0x61, 0x66, 0x74, 0x5f, 0x6f, 0x72, + 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x73, 0x68, 0x75, 0x66, 0x66, + 0x6c, 0x65, 0x44, 0x72, 0x61, 0x66, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x95, 0x02, 0x0a, + 0x18, 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x72, 0x6f, 0x70, + 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x07, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x05, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, 0x6e, 0x75, 0x73, + 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x6f, + 0x6e, 0x75, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, + 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, + 0x0a, 0x0c, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x4c, 0x65, 0x66, + 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, + 0x54, 0x79, 0x70, 0x65, 0x22, 0xad, 0x02, 0x0a, 0x1d, 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, + 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x61, + 0x73, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x6f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x29, 0x0a, 0x10, 0x70, 0x61, 0x73, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x62, 0x6f, 0x75, + 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x61, 0x73, 0x73, 0x70, + 0x6f, 0x72, 0x74, 0x73, 0x42, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x66, 0x6c, 0x61, 0x67, + 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x46, + 0x6c, 0x61, 0x67, 0x73, 0x22, 0xc7, 0x02, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, + 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x12, + 0x1e, 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x64, 0x12, + 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x4e, 0x75, 0x6d, + 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x7a, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5a, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x72, 0x6f, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x74, 0x68, 0x5f, 0x62, 0x69, 0x61, 0x73, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42, 0x69, 0x61, 0x73, 0x22, 0xe5, + 0x01, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, + 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, + 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, + 0x6d, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x08, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, - 0x66, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x6e, - 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x4e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1d, - 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, 0x1d, 0x0a, - 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x12, 0x1d, 0x0a, 0x0a, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x7a, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5a, 0x12, 0x1a, 0x0a, 0x08, 0x72, - 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x72, - 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x24, 0x0a, - 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x74, 0x65, - 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x74, 0x68, 0x5f, 0x62, 0x69, 0x61, - 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42, 0x69, - 0x61, 0x73, 0x22, 0xe5, 0x01, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, - 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, - 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, - 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, - 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x08, 0x73, 0x74, 0x69, 0x63, 0x6b, - 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, - 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x52, 0x08, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x73, 0x12, 0x37, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x69, - 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x49, 0x0a, 0x24, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, - 0x6d, 0x50, 0x61, 0x67, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0xd3, 0x01, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x2f, 0x0a, 0x05, 0x70, 0x61, 0x67, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, - 0x61, 0x67, 0x65, 0x52, 0x05, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x63, 0x0a, 0x18, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, - 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x15, 0x74, 0x65, 0x61, 0x6d, 0x50, 0x61, - 0x67, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, - 0x2a, 0x0a, 0x11, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x67, 0x65, - 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x61, 0x76, 0x6f, - 0x72, 0x69, 0x74, 0x65, 0x50, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x22, 0x8a, 0x01, 0x0a, 0x0f, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x12, - 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, - 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x74, 0x65, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x42, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x2d, 0x0a, - 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x48, 0x65, 0x72, 0x6f, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x22, 0x83, 0x01, 0x0a, - 0x11, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, - 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x77, 0x69, 0x6e, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x22, 0x68, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, - 0x6c, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x6b, 0x65, 0x72, 0x52, 0x08, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x12, 0x37, 0x0a, + 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, + 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x49, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, + 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x22, 0xd3, 0x01, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, + 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x2f, 0x0a, 0x05, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, + 0x05, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x63, 0x0a, 0x18, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x70, + 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, + 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x52, 0x15, 0x74, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x66, + 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, + 0x50, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x22, 0x8a, 0x01, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, - 0x72, 0x6f, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, - 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x70, 0x0a, 0x15, - 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x61, 0x6e, 0x6b, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x69, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x69, - 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xa5, - 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x41, - 0x6c, 0x6c, 0x52, 0x61, 0x6e, 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x27, 0x0a, 0x0f, - 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, - 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3a, 0x0a, 0x0a, 0x72, 0x61, - 0x6e, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, - 0x6c, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x09, 0x72, 0x61, 0x6e, - 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xaf, 0x03, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x4d, - 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, - 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x27, 0x0a, - 0x0f, 0x66, 0x61, 0x6d, 0x61, 0x6e, 0x67, 0x6f, 0x73, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x65, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x66, 0x61, 0x6d, 0x61, 0x6e, 0x67, 0x6f, 0x73, - 0x47, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x77, 0x69, 0x73, 0x64, 0x6f, 0x6d, - 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x11, 0x77, 0x69, 0x73, 0x64, 0x6f, 0x6d, 0x52, 0x75, 0x6e, 0x65, 0x73, - 0x47, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, - 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x64, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x0e, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x44, 0x61, 0x79, - 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, - 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x72, 0x6f, - 0x73, 0x68, 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, - 0x0a, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x73, 0x55, 0x73, 0x65, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x5f, 0x6c, 0x69, - 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6c, 0x61, 0x6e, 0x74, 0x65, 0x72, 0x6e, - 0x73, 0x4c, 0x69, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x69, 0x62, 0x6f, 0x73, 0x73, - 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6d, 0x69, - 0x6e, 0x69, 0x62, 0x6f, 0x73, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x6f, + 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x44, + 0x65, 0x66, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x24, + 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x49, 0x64, 0x22, 0x42, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, + 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x06, 0x68, 0x65, 0x72, + 0x6f, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x22, 0x83, 0x01, 0x0a, 0x11, 0x43, 0x4d, 0x73, + 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x30, + 0x0a, 0x14, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, + 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x77, 0x69, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x68, + 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, + 0x12, 0x36, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x09, 0x72, + 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x70, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, + 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x69, 0x65, 0x72, 0x12, 0x3a, + 0x0a, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, + 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, + 0x09, 0x68, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xa5, 0x01, 0x0a, 0x19, 0x43, + 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x41, 0x6c, 0x6c, 0x52, 0x61, + 0x6e, 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3a, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x73, + 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x61, + 0x6e, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x22, 0xb3, 0x03, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x70, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x74, + 0x75, 0x73, 0x65, 0x73, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0d, 0x6c, 0x6f, 0x74, 0x75, 0x73, 0x65, 0x73, 0x47, 0x61, 0x69, 0x6e, 0x65, 0x64, + 0x12, 0x2e, 0x0a, 0x13, 0x77, 0x69, 0x73, 0x64, 0x6f, 0x6d, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, + 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x77, + 0x69, 0x73, 0x64, 0x6f, 0x6d, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x47, 0x61, 0x69, 0x6e, 0x65, 0x64, + 0x12, 0x28, 0x0a, 0x10, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, + 0x5f, 0x64, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x72, 0x6f, 0x73, 0x68, + 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x44, 0x61, 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x6f, + 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x4b, 0x69, + 0x6c, 0x6c, 0x73, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x72, 0x74, + 0x61, 0x6c, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, + 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x77, + 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x73, 0x5f, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0d, 0x77, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x73, 0x54, 0x61, 0x6b, + 0x65, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x6f, 0x72, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x5f, + 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x74, 0x6f, 0x72, + 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x68, 0x69, 0x65, @@ -18070,218 +18364,260 @@ var file_dota_gcmessages_common_proto_rawDesc = []byte{ 0x74, 0x61, 0x72, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x6e, 0x61, 0x70, - 0x73, 0x68, 0x6f, 0x74, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x45, 0x6e, 0x64, 0x2a, - 0x55, 0x0a, 0x11, 0x45, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x53, 0x70, 0x65, 0x63, 0x69, - 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x4e, 0x6f, 0x44, 0x61, - 0x74, 0x61, 0x10, 0xfe, 0x7f, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x53, 0x70, 0x65, 0x63, - 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x46, 0x61, 0x69, - 0x6c, 0x65, 0x64, 0x10, 0xff, 0x7f, 0x2a, 0x86, 0x05, 0x0a, 0x12, 0x45, 0x44, 0x4f, 0x54, 0x41, - 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x12, 0x20, 0x0a, - 0x1c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, - 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x53, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x64, 0x12, 0x29, 0x0a, - 0x25, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x4f, 0x6e, 0x6c, 0x69, - 0x6e, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x65, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x44, + 0x73, 0x68, 0x6f, 0x74, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x45, 0x6e, 0x64, 0x22, + 0x67, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, + 0x61, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x73, 0x74, + 0x61, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x72, 0x61, + 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x72, + 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, + 0x74, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2a, 0x55, 0x0a, 0x11, 0x45, 0x53, 0x70, 0x65, + 0x63, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, + 0x1a, 0x6b, 0x5f, 0x45, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x10, 0xfe, 0x7f, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xff, 0x7f, 0x2a, + 0x86, 0x05, 0x0a, 0x12, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, + 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, - 0x5f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x47, 0x61, 0x6d, 0x65, - 0x10, 0x66, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x6e, 0x55, 0x49, 0x57, 0x61, 0x73, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, - 0x67, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, + 0x5f, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, + 0x65, 0x64, 0x65, 0x64, 0x10, 0x64, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x6e, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x10, + 0x65, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, - 0x55, 0x49, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, - 0x10, 0x68, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x54, - 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x73, 0x10, 0x69, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, + 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x66, 0x12, 0x2d, 0x0a, 0x29, 0x6b, + 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, + 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x55, 0x49, 0x57, 0x61, 0x73, 0x43, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0x67, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, - 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x55, 0x49, 0x57, 0x61, 0x73, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x49, 0x64, 0x6c, 0x65, 0x10, 0x6a, 0x12, 0x33, 0x0a, - 0x2f, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x55, 0x49, 0x4e, 0x65, - 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x49, 0x64, 0x6c, 0x65, - 0x10, 0x6b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, + 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x55, 0x49, 0x4e, 0x65, 0x76, 0x65, 0x72, + 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0x68, 0x12, 0x26, 0x0a, 0x22, 0x6b, + 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, + 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, + 0x73, 0x10, 0x69, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x6e, 0x55, 0x49, 0x57, 0x61, 0x73, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, + 0x49, 0x64, 0x6c, 0x65, 0x10, 0x6a, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x6e, 0x55, 0x49, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x65, 0x64, 0x49, 0x64, 0x6c, 0x65, 0x10, 0x6b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, + 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, + 0x65, 0x65, 0x64, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4f, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x10, 0xc8, 0x01, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x44, 0x4f, + 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, + 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x10, + 0xc9, 0x01, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x10, 0xc8, 0x01, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x10, 0xc9, 0x01, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, - 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, - 0x64, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x6c, 0x65, - 0x10, 0xca, 0x01, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, - 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x47, 0x61, 0x6d, 0x65, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x10, 0xcb, 0x01, 0x12, 0x2f, - 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x10, 0xcc, 0x01, 0x2a, - 0x86, 0x02, 0x0a, 0x1e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, - 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x48, 0x50, 0x52, 0x65, 0x67, 0x65, 0x6e, 0x55, - 0x6e, 0x64, 0x65, 0x72, 0x54, 0x31, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x10, 0x01, 0x12, 0x4f, - 0x0a, 0x4b, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, - 0x74, 0x61, 0x74, 0x5f, 0x4d, 0x61, 0x67, 0x69, 0x63, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x77, 0x46, 0x6f, 0x72, - 0x6d, 0x75, 0x6c, 0x61, 0x5f, 0x41, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x10, 0x02, 0x12, - 0x57, 0x0a, 0x53, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x53, 0x74, 0x61, 0x74, 0x5f, 0x4d, 0x61, 0x67, 0x69, 0x63, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, - 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x77, 0x46, 0x6f, - 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x5f, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x4f, 0x66, 0x54, - 0x6f, 0x74, 0x61, 0x6c, 0x48, 0x50, 0x10, 0x03, 0x2a, 0xf6, 0x01, 0x0a, 0x15, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x45, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x42, - 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x45, 0x5f, 0x47, 0x41, 0x4d, - 0x45, 0x5f, 0x45, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x4d, 0x55, - 0x4c, 0x54, 0x49, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x45, - 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x45, 0x4e, 0x59, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, - 0x54, 0x45, 0x5f, 0x41, 0x45, 0x47, 0x49, 0x53, 0x5f, 0x44, 0x45, 0x4e, 0x59, 0x10, 0x04, 0x12, - 0x13, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x41, 0x45, 0x47, 0x49, 0x53, 0x5f, 0x53, 0x54, 0x4f, 0x4c, - 0x45, 0x4e, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x45, 0x5f, 0x47, 0x4f, 0x44, 0x4c, 0x49, - 0x4b, 0x45, 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x52, 0x49, - 0x45, 0x52, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x45, 0x5f, - 0x45, 0x43, 0x48, 0x4f, 0x53, 0x4c, 0x41, 0x4d, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x45, - 0x5f, 0x52, 0x41, 0x50, 0x49, 0x45, 0x52, 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x45, 0x5f, - 0x45, 0x41, 0x52, 0x4c, 0x59, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x10, 0x0a, 0x12, 0x11, - 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x42, 0x4c, 0x41, 0x43, 0x4b, 0x5f, 0x48, 0x4f, 0x4c, 0x45, 0x10, - 0x0b, 0x2a, 0x8d, 0x03, 0x0a, 0x17, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, - 0x24, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2c, 0x0a, 0x28, 0x45, 0x42, 0x72, 0x6f, 0x61, - 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x64, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x44, 0x65, 0x61, 0x74, 0x68, 0x10, 0x03, 0x12, 0x29, 0x0a, - 0x25, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, - 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x42, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, - 0x73, 0x44, 0x65, 0x61, 0x74, 0x68, 0x10, 0x04, 0x12, 0x28, 0x0a, 0x24, 0x45, 0x42, 0x72, 0x6f, - 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x5f, 0x41, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x61, 0x74, 0x68, - 0x10, 0x05, 0x12, 0x27, 0x0a, 0x23, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x52, 0x6f, - 0x73, 0x68, 0x61, 0x6e, 0x44, 0x65, 0x61, 0x74, 0x68, 0x10, 0x06, 0x12, 0x25, 0x0a, 0x21, 0x45, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x6c, 0x65, 0x10, 0xca, 0x01, 0x12, 0x29, 0x0a, 0x24, + 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x4e, 0x65, 0x65, 0x64, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, + 0x65, 0x6c, 0x61, 0x79, 0x10, 0xcb, 0x01, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x44, 0x4f, + 0x54, 0x41, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x5f, + 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x55, + 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x10, 0xcc, 0x01, 0x2a, 0x86, 0x02, 0x0a, 0x1e, 0x45, 0x44, 0x4f, + 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, + 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x36, 0x6b, + 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, + 0x5f, 0x48, 0x50, 0x52, 0x65, 0x67, 0x65, 0x6e, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x54, 0x31, 0x54, + 0x6f, 0x77, 0x65, 0x72, 0x73, 0x10, 0x01, 0x12, 0x4f, 0x0a, 0x4b, 0x6b, 0x5f, 0x45, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, + 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x4d, 0x61, 0x67, + 0x69, 0x63, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x57, + 0x69, 0x74, 0x68, 0x4e, 0x65, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x5f, 0x41, 0x62, + 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x10, 0x02, 0x12, 0x57, 0x0a, 0x53, 0x6b, 0x5f, 0x45, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, + 0x69, 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x5f, 0x4d, 0x61, + 0x67, 0x69, 0x63, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, + 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x77, 0x46, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x5f, 0x50, + 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x4f, 0x66, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x48, 0x50, 0x10, + 0x03, 0x2a, 0xf6, 0x01, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, + 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x54, + 0x45, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x00, 0x12, + 0x0f, 0x0a, 0x0b, 0x54, 0x45, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x45, 0x4e, 0x44, 0x10, 0x01, + 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x5f, 0x4b, 0x49, 0x4c, + 0x4c, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, + 0x45, 0x4e, 0x59, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x41, 0x45, 0x47, 0x49, + 0x53, 0x5f, 0x44, 0x45, 0x4e, 0x59, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x41, + 0x45, 0x47, 0x49, 0x53, 0x5f, 0x53, 0x54, 0x4f, 0x4c, 0x45, 0x4e, 0x10, 0x05, 0x12, 0x0e, 0x0a, + 0x0a, 0x54, 0x45, 0x5f, 0x47, 0x4f, 0x44, 0x4c, 0x49, 0x4b, 0x45, 0x10, 0x06, 0x12, 0x13, 0x0a, + 0x0f, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, + 0x10, 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x45, 0x5f, 0x45, 0x43, 0x48, 0x4f, 0x53, 0x4c, 0x41, + 0x4d, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x45, 0x5f, 0x52, 0x41, 0x50, 0x49, 0x45, 0x52, + 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x45, 0x41, 0x52, 0x4c, 0x59, 0x5f, 0x52, + 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x10, 0x0a, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x42, 0x4c, + 0x41, 0x43, 0x4b, 0x5f, 0x48, 0x4f, 0x4c, 0x45, 0x10, 0x0b, 0x2a, 0x8d, 0x03, 0x0a, 0x17, 0x45, + 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x24, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, + 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0x01, + 0x12, 0x2c, 0x0a, 0x28, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x02, 0x12, 0x26, + 0x0a, 0x22, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x44, + 0x65, 0x61, 0x74, 0x68, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, + 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x42, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x44, 0x65, 0x61, 0x74, 0x68, 0x10, + 0x04, 0x12, 0x28, 0x0a, 0x24, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x41, 0x6e, 0x63, + 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x61, 0x74, 0x68, 0x10, 0x05, 0x12, 0x27, 0x0a, 0x23, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x65, 0x61, 0x74, 0x68, - 0x10, 0x07, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x54, 0x65, - 0x61, 0x6d, 0x46, 0x69, 0x67, 0x68, 0x74, 0x10, 0x08, 0x12, 0x26, 0x0a, 0x22, 0x45, 0x42, 0x72, - 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x10, - 0x09, 0x2a, 0x98, 0x01, 0x0a, 0x19, 0x45, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, - 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, - 0x27, 0x0a, 0x23, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x57, - 0x48, 0x49, 0x54, 0x45, 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, - 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x28, 0x0a, 0x24, 0x43, 0x55, 0x53, 0x54, + 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x44, 0x65, 0x61, + 0x74, 0x68, 0x10, 0x06, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, + 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x48, 0x65, 0x72, 0x6f, 0x44, 0x65, 0x61, 0x74, 0x68, 0x10, 0x07, 0x12, 0x25, 0x0a, 0x21, 0x45, + 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x69, 0x67, 0x68, 0x74, + 0x10, 0x08, 0x12, 0x26, 0x0a, 0x22, 0x45, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x46, 0x69, + 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x10, 0x09, 0x2a, 0x98, 0x01, 0x0a, 0x19, 0x45, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, + 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x57, 0x48, 0x49, 0x54, 0x45, 0x4c, 0x49, 0x53, - 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x45, 0x44, - 0x10, 0x01, 0x12, 0x28, 0x0a, 0x24, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, - 0x45, 0x5f, 0x57, 0x48, 0x49, 0x54, 0x45, 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x9a, 0x07, 0x0a, - 0x1b, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, - 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x2d, 0x0a, 0x29, - 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, - 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x63, 0x6f, 0x6e, 0x10, 0x00, 0x12, 0x31, 0x0a, 0x2d, 0x6b, - 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, - 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x10, 0x01, 0x12, 0x30, - 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, - 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, - 0x48, 0x65, 0x72, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x10, 0x02, - 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, - 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, - 0x79, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x4d, 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x70, - 0x65, 0x65, 0x64, 0x10, 0x03, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, - 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, - 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x65, - 0x65, 0x10, 0x04, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, - 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, - 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x05, - 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, - 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, - 0x79, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x72, 0x69, 0x63, 0x65, 0x10, 0x06, 0x12, 0x2e, 0x0a, - 0x2a, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, - 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x07, 0x12, 0x2f, 0x0a, - 0x2b, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, - 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x49, - 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x53, 0x70, 0x65, 0x6c, 0x6c, 0x73, 0x10, 0x08, 0x12, 0x31, - 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, - 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, - 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x73, 0x74, 0x10, - 0x09, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, - 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, - 0x72, 0x79, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x53, 0x6f, 0x75, - 0x6e, 0x64, 0x10, 0x0a, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, + 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, + 0x00, 0x12, 0x28, 0x0a, 0x24, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x57, 0x48, 0x49, 0x54, 0x45, 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, + 0x5f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x45, 0x44, 0x10, 0x01, 0x12, 0x28, 0x0a, 0x24, 0x43, + 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x57, 0x48, 0x49, 0x54, 0x45, + 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, + 0x54, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x9a, 0x07, 0x0a, 0x1b, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, - 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, - 0x65, 0x10, 0x0b, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, - 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, - 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, - 0x6e, 0x74, 0x73, 0x10, 0x0c, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, - 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x4c, 0x6f, 0x72, 0x65, 0x10, - 0x0d, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, - 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, - 0x72, 0x79, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x73, 0x10, - 0x0e, 0x12, 0x36, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, - 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, - 0x72, 0x79, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x49, 0x43, 0x5f, 0x51, 0x55, 0x45, 0x53, 0x54, 0x49, - 0x4f, 0x4e, 0x53, 0x5f, 0x45, 0x4e, 0x44, 0x10, 0x0f, 0x12, 0x39, 0x0a, 0x35, 0x6b, 0x5f, 0x45, - 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, - 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x44, 0x59, 0x4e, 0x41, 0x4d, - 0x49, 0x43, 0x5f, 0x51, 0x55, 0x45, 0x53, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x41, - 0x52, 0x54, 0x10, 0x63, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, + 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x63, + 0x6f, 0x6e, 0x10, 0x00, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, - 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x49, 0x74, - 0x65, 0x6d, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x64, 0x2a, 0xa9, 0x01, 0x0a, 0x14, 0x45, 0x4f, - 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, - 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x4e, 0x6f, 0x6e, - 0x65, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, - 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x4e, 0x6f, - 0x74, 0x47, 0x75, 0x69, 0x6c, 0x74, 0x79, 0x10, 0x01, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, - 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x74, 0x55, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x72, - 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6f, + 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x10, 0x01, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, + 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, + 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x10, 0x02, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, + 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x4d, + 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x10, 0x03, 0x12, 0x2c, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, + 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, + 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x65, 0x65, 0x10, 0x04, 0x12, 0x2b, 0x0a, 0x27, + 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, + 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x05, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x50, + 0x72, 0x69, 0x63, 0x65, 0x10, 0x06, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, + 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x07, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x49, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x53, + 0x70, 0x65, 0x6c, 0x6c, 0x73, 0x10, 0x08, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, + 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, + 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x4d, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x73, 0x74, 0x10, 0x09, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, + 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x48, 0x65, 0x72, 0x6f, + 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x0a, 0x12, 0x2d, 0x0a, + 0x29, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, + 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x41, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x0b, 0x12, 0x30, 0x0a, 0x2c, + 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, + 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x49, 0x74, + 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x0c, 0x12, 0x2a, + 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, + 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, + 0x49, 0x74, 0x65, 0x6d, 0x4c, 0x6f, 0x72, 0x65, 0x10, 0x0d, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, + 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x49, 0x74, 0x65, 0x6d, + 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x73, 0x10, 0x0e, 0x12, 0x36, 0x0a, 0x32, 0x6b, 0x5f, + 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x53, 0x54, 0x41, 0x54, + 0x49, 0x43, 0x5f, 0x51, 0x55, 0x45, 0x53, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x5f, 0x45, 0x4e, 0x44, + 0x10, 0x0f, 0x12, 0x39, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, + 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, + 0x6f, 0x72, 0x79, 0x5f, 0x44, 0x59, 0x4e, 0x41, 0x4d, 0x49, 0x43, 0x5f, 0x51, 0x55, 0x45, 0x53, + 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x63, 0x12, 0x33, 0x0a, + 0x2f, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, + 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x44, + 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x42, 0x75, 0x69, 0x6c, 0x64, + 0x10, 0x64, 0x2a, 0xa9, 0x01, 0x0a, 0x14, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, + 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, + 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, + 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x4e, 0x6f, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x74, 0x79, + 0x10, 0x01, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, - 0x6c, 0x74, 0x79, 0x10, 0x03, 0x2a, 0x74, 0x0a, 0x10, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, - 0x6c, 0x69, 0x63, 0x52, 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, 0x26, 0x0a, 0x19, 0x48, 0x45, 0x52, - 0x4f, 0x5f, 0x52, 0x45, 0x4c, 0x49, 0x43, 0x5f, 0x52, 0x41, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x52, 0x45, 0x4c, 0x49, 0x43, 0x5f, - 0x52, 0x41, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x4f, 0x4e, 0x10, 0x00, 0x12, - 0x1a, 0x0a, 0x16, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x52, 0x45, 0x4c, 0x49, 0x43, 0x5f, 0x52, 0x41, - 0x52, 0x49, 0x54, 0x59, 0x5f, 0x52, 0x41, 0x52, 0x45, 0x10, 0x01, 0x2a, 0xd1, 0x01, 0x0a, 0x17, - 0x45, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x41, 0x75, 0x64, 0x69, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x54, 0x49, 0x43, 0x4b, - 0x45, 0x52, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x43, 0x52, 0x45, - 0x41, 0x54, 0x45, 0x5f, 0x50, 0x41, 0x47, 0x45, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x54, - 0x49, 0x43, 0x4b, 0x45, 0x52, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, - 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, 0x50, 0x41, 0x47, 0x45, 0x10, 0x01, 0x12, 0x24, 0x0a, - 0x20, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, - 0x49, 0x54, 0x5f, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x5f, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, - 0x53, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x42, 0x4f, - 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, - 0x5f, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x53, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, 0x53, - 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, - 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x10, 0x04, 0x2a, - 0x60, 0x0a, 0x14, 0x45, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, - 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x54, 0x49, 0x43, 0x4b, - 0x45, 0x52, 0x5f, 0x50, 0x41, 0x47, 0x45, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x10, - 0x00, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x5f, 0x50, 0x41, 0x47, - 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x54, 0x49, 0x43, - 0x4b, 0x45, 0x52, 0x5f, 0x50, 0x41, 0x47, 0x45, 0x5f, 0x54, 0x41, 0x4c, 0x45, 0x4e, 0x54, 0x10, - 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, - 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x6c, 0x74, 0x55, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x6b, + 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x76, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x74, 0x79, 0x10, 0x03, 0x2a, 0x74, + 0x0a, 0x10, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x61, 0x72, 0x69, + 0x74, 0x79, 0x12, 0x26, 0x0a, 0x19, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x52, 0x45, 0x4c, 0x49, 0x43, + 0x5f, 0x52, 0x41, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x48, 0x45, + 0x52, 0x4f, 0x5f, 0x52, 0x45, 0x4c, 0x49, 0x43, 0x5f, 0x52, 0x41, 0x52, 0x49, 0x54, 0x59, 0x5f, + 0x43, 0x4f, 0x4d, 0x4d, 0x4f, 0x4e, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x48, 0x45, 0x52, 0x4f, + 0x5f, 0x52, 0x45, 0x4c, 0x49, 0x43, 0x5f, 0x52, 0x41, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x52, 0x41, + 0x52, 0x45, 0x10, 0x01, 0x2a, 0xd1, 0x01, 0x0a, 0x17, 0x45, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, + 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, + 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x41, 0x47, + 0x45, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x42, 0x4f, + 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f, + 0x50, 0x41, 0x47, 0x45, 0x10, 0x01, 0x12, 0x24, 0x0a, 0x20, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, + 0x52, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x53, 0x54, 0x49, 0x43, + 0x4b, 0x5f, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x53, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, + 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, 0x49, + 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, + 0x52, 0x53, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x42, + 0x4f, 0x4f, 0x4b, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x53, + 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x10, 0x04, 0x2a, 0x60, 0x0a, 0x14, 0x45, 0x53, 0x74, 0x69, + 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x18, 0x0a, 0x14, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x5f, 0x50, 0x41, 0x47, 0x45, + 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, + 0x49, 0x43, 0x4b, 0x45, 0x52, 0x5f, 0x50, 0x41, 0x47, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, + 0x01, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x52, 0x5f, 0x50, 0x41, 0x47, + 0x45, 0x5f, 0x54, 0x41, 0x4c, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x2a, 0xbb, 0x04, 0x0a, 0x18, 0x45, + 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x45, 0x4e, 0x65, 0x77, + 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x53, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x45, 0x4e, 0x65, 0x77, 0x42, + 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x55, 0x6e, 0x6b, 0x6e, + 0x6f, 0x77, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x10, 0x01, 0x12, 0x26, 0x0a, 0x22, + 0x6b, 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, + 0x67, 0x5f, 0x4d, 0x61, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0x02, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, + 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, 0x6b, + 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x04, 0x12, + 0x31, 0x0a, 0x2d, 0x6b, 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, + 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x41, 0x6c, + 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x54, 0x6f, 0x47, 0x69, 0x76, 0x65, 0x47, 0x69, 0x66, 0x74, 0x73, + 0x10, 0x05, 0x12, 0x34, 0x0a, 0x30, 0x6b, 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, + 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x6f, + 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x54, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, + 0x65, 0x47, 0x69, 0x66, 0x74, 0x73, 0x10, 0x06, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x45, 0x4e, 0x65, + 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, + 0x64, 0x10, 0x64, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, + 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, + 0x6f, 0x74, 0x49, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0x65, 0x12, 0x26, 0x0a, 0x22, 0x6b, + 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x49, 0x6e, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x10, 0x66, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, + 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4e, 0x6f, + 0x74, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x10, 0x67, 0x12, 0x26, 0x0a, 0x21, 0x6b, + 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x10, 0xc8, 0x01, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, + 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6f, + 0x53, 0x68, 0x6f, 0x72, 0x74, 0x10, 0xc9, 0x01, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, + 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, + 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -18296,8 +18632,8 @@ func file_dota_gcmessages_common_proto_rawDescGZIP() []byte { return file_dota_gcmessages_common_proto_rawDescData } -var file_dota_gcmessages_common_proto_enumTypes = make([]protoimpl.EnumInfo, 24) -var file_dota_gcmessages_common_proto_msgTypes = make([]protoimpl.MessageInfo, 152) +var file_dota_gcmessages_common_proto_enumTypes = make([]protoimpl.EnumInfo, 25) +var file_dota_gcmessages_common_proto_msgTypes = make([]protoimpl.MessageInfo, 154) var file_dota_gcmessages_common_proto_goTypes = []interface{}{ (ESpecialPingValue)(0), // 0: dota.ESpecialPingValue (EDOTAGCSessionNeed)(0), // 1: dota.EDOTAGCSessionNeed @@ -18310,316 +18646,319 @@ var file_dota_gcmessages_common_proto_goTypes = []interface{}{ (EHeroRelicRarity)(0), // 8: dota.EHeroRelicRarity (EStickerbookAuditAction)(0), // 9: dota.EStickerbookAuditAction (EStickerbookPageType)(0), // 10: dota.EStickerbookPageType - (CMsgDOTAProfileCard_EStatID)(0), // 11: dota.CMsgDOTAProfileCard.EStatID - (CMsgGCRerollPlayerChallengeResponse_EResult)(0), // 12: dota.CMsgGCRerollPlayerChallengeResponse.EResult - (CMsgDOTARealtimeGameStats_GraphDataEStat)(0), // 13: dota.CMsgDOTARealtimeGameStats.GraphData.eStat - (CMsgDOTARealtimeGameStats_GraphDataELocation)(0), // 14: dota.CMsgDOTARealtimeGameStats.GraphData.eLocation - (CMsgInGamePrediction_ERawValueTypeT)(0), // 15: dota.CMsgInGamePrediction.ERawValueType_t - (CMsgInGamePrediction_EPredictionType)(0), // 16: dota.CMsgInGamePrediction.EPredictionType - (CMsgInGamePrediction_EResolutionTypeT)(0), // 17: dota.CMsgInGamePrediction.EResolutionType_t - (CMsgInGamePrediction_ERandomSelectionGroupT)(0), // 18: dota.CMsgInGamePrediction.ERandomSelectionGroup_t - (CMsgDOTASeasonPredictions_Prediction_EPredictionType)(0), // 19: dota.CMsgDOTASeasonPredictions.Prediction.EPredictionType - (CMsgDOTASeasonPredictions_Prediction_EAnswerType)(0), // 20: dota.CMsgDOTASeasonPredictions.Prediction.EAnswerType - (CMsgDOTAMatch_ReplayState)(0), // 21: dota.CMsgDOTAMatch.ReplayState - (CMsgDOTAMatch_Player_HeroDamageType)(0), // 22: dota.CMsgDOTAMatch.Player.HeroDamageType - (CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse)(0), // 23: dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.EResponse - (*CSODOTAGameAccountClient)(nil), // 24: dota.CSODOTAGameAccountClient - (*CSODOTAGameAccountPlus)(nil), // 25: dota.CSODOTAGameAccountPlus - (*CMsgLobbyFeaturedGamemodeProgress)(nil), // 26: dota.CMsgLobbyFeaturedGamemodeProgress - (*CMsgBattleCupVictory)(nil), // 27: dota.CMsgBattleCupVictory - (*CMsgLobbyBattleCupVictoryList)(nil), // 28: dota.CMsgLobbyBattleCupVictoryList - (*CMsgDOTABroadcastNotification)(nil), // 29: dota.CMsgDOTABroadcastNotification - (*CProtoItemHeroStatue)(nil), // 30: dota.CProtoItemHeroStatue - (*CMatchPlayerAbilityUpgrade)(nil), // 31: dota.CMatchPlayerAbilityUpgrade - (*CMatchPlayerTimedCustomStat)(nil), // 32: dota.CMatchPlayerTimedCustomStat - (*CMatchPlayerTimedStats)(nil), // 33: dota.CMatchPlayerTimedStats - (*CMatchTeamTimedStats)(nil), // 34: dota.CMatchTeamTimedStats - (*CMatchAdditionalUnitInventory)(nil), // 35: dota.CMatchAdditionalUnitInventory - (*CMatchPlayerPermanentBuff)(nil), // 36: dota.CMatchPlayerPermanentBuff - (*CMatchHeroSelectEvent)(nil), // 37: dota.CMatchHeroSelectEvent - (*CMatchClip)(nil), // 38: dota.CMatchClip - (*CPartySearchClientParty)(nil), // 39: dota.CPartySearchClientParty - (*CMsgDOTAHasItemQuery)(nil), // 40: dota.CMsgDOTAHasItemQuery - (*CMsgDOTAHasItemResponse)(nil), // 41: dota.CMsgDOTAHasItemResponse - (*CMsgGCGetPlayerCardItemInfo)(nil), // 42: dota.CMsgGCGetPlayerCardItemInfo - (*CMsgGCGetPlayerCardItemInfoResponse)(nil), // 43: dota.CMsgGCGetPlayerCardItemInfoResponse - (*CSODOTAMapLocationState)(nil), // 44: dota.CSODOTAMapLocationState - (*CMsgLeagueAdminList)(nil), // 45: dota.CMsgLeagueAdminList - (*CMsgDOTAProfileCard)(nil), // 46: dota.CMsgDOTAProfileCard - (*CSODOTAPlayerChallenge)(nil), // 47: dota.CSODOTAPlayerChallenge - (*CMsgClientToGCRerollPlayerChallenge)(nil), // 48: dota.CMsgClientToGCRerollPlayerChallenge - (*CMsgGCRerollPlayerChallengeResponse)(nil), // 49: dota.CMsgGCRerollPlayerChallengeResponse - (*CMsgGCTopCustomGamesList)(nil), // 50: dota.CMsgGCTopCustomGamesList - (*CMsgDOTARealtimeGameStats)(nil), // 51: dota.CMsgDOTARealtimeGameStats - (*CMsgDOTARealtimeGameStatsTerse)(nil), // 52: dota.CMsgDOTARealtimeGameStatsTerse - (*CMsgDOTABroadcastTimelineEvent)(nil), // 53: dota.CMsgDOTABroadcastTimelineEvent - (*CMsgGCToClientMatchGroupsVersion)(nil), // 54: dota.CMsgGCToClientMatchGroupsVersion - (*CMsgDOTASDOHeroStatsHistory)(nil), // 55: dota.CMsgDOTASDOHeroStatsHistory - (*CMsgPredictionChoice)(nil), // 56: dota.CMsgPredictionChoice - (*CMsgInGamePrediction)(nil), // 57: dota.CMsgInGamePrediction - (*CMsgDOTASeasonPredictions)(nil), // 58: dota.CMsgDOTASeasonPredictions - (*CMsgAvailablePredictions)(nil), // 59: dota.CMsgAvailablePredictions - (*CMsgLeagueWatchedGames)(nil), // 60: dota.CMsgLeagueWatchedGames - (*CMsgDOTAMatch)(nil), // 61: dota.CMsgDOTAMatch - (*CMsgPlayerCard)(nil), // 62: dota.CMsgPlayerCard - (*CMsgDOTAFantasyPlayerStats)(nil), // 63: dota.CMsgDOTAFantasyPlayerStats - (*CMsgDOTAFantasyPlayerMatchStats)(nil), // 64: dota.CMsgDOTAFantasyPlayerMatchStats - (*CMsgDOTABotDebugInfo)(nil), // 65: dota.CMsgDOTABotDebugInfo - (*CMsgSuccessfulHero)(nil), // 66: dota.CMsgSuccessfulHero - (*CMsgRecentMatchInfo)(nil), // 67: dota.CMsgRecentMatchInfo - (*CMsgMatchTips)(nil), // 68: dota.CMsgMatchTips - (*CMsgDOTAMatchMinimal)(nil), // 69: dota.CMsgDOTAMatchMinimal - (*CMsgConsumableUsage)(nil), // 70: dota.CMsgConsumableUsage - (*CMsgMatchConsumableUsage)(nil), // 71: dota.CMsgMatchConsumableUsage - (*CMsgMatchEventActionGrants)(nil), // 72: dota.CMsgMatchEventActionGrants - (*CMsgCustomGameWhitelist)(nil), // 73: dota.CMsgCustomGameWhitelist - (*CMsgCustomGameWhitelistForEdit)(nil), // 74: dota.CMsgCustomGameWhitelistForEdit - (*CMsgPlayerRecentMatchInfo)(nil), // 75: dota.CMsgPlayerRecentMatchInfo - (*CMsgPlayerMatchRecord)(nil), // 76: dota.CMsgPlayerMatchRecord - (*CMsgPlayerRecentMatchOutcomes)(nil), // 77: dota.CMsgPlayerRecentMatchOutcomes - (*CMsgPlayerRecentCommends)(nil), // 78: dota.CMsgPlayerRecentCommends - (*CMsgPlayerRecentAccomplishments)(nil), // 79: dota.CMsgPlayerRecentAccomplishments - (*CMsgPlayerHeroRecentAccomplishments)(nil), // 80: dota.CMsgPlayerHeroRecentAccomplishments - (*CMsgRecentAccomplishments)(nil), // 81: dota.CMsgRecentAccomplishments - (*CMsgServerToGCRequestPlayerRecentAccomplishments)(nil), // 82: dota.CMsgServerToGCRequestPlayerRecentAccomplishments - (*CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse)(nil), // 83: dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse - (*CMsgArcanaVoteMatchVotes)(nil), // 84: dota.CMsgArcanaVoteMatchVotes - (*CMsgGCtoGCAssociatedExploiterAccountInfo)(nil), // 85: dota.CMsgGCtoGCAssociatedExploiterAccountInfo - (*CMsgGCtoGCAssociatedExploiterAccountInfoResponse)(nil), // 86: dota.CMsgGCtoGCAssociatedExploiterAccountInfoResponse - (*CMsgPullTabsData)(nil), // 87: dota.CMsgPullTabsData - (*CMsgUnderDraftData)(nil), // 88: dota.CMsgUnderDraftData - (*CMsgPlayerTitleData)(nil), // 89: dota.CMsgPlayerTitleData - (*CMsgDOTATriviaQuestion)(nil), // 90: dota.CMsgDOTATriviaQuestion - (*CMsgDOTATriviaQuestionAnswersSummary)(nil), // 91: dota.CMsgDOTATriviaQuestionAnswersSummary - (*CMsgGameDataSpecialValueBonus)(nil), // 92: dota.CMsgGameDataSpecialValueBonus - (*CMsgGameDataSpecialValues)(nil), // 93: dota.CMsgGameDataSpecialValues - (*CMsgGameDataAbilityOrItem)(nil), // 94: dota.CMsgGameDataAbilityOrItem - (*CMsgGameDataHero)(nil), // 95: dota.CMsgGameDataHero - (*CMsgGameDataAbilities)(nil), // 96: dota.CMsgGameDataAbilities - (*CMsgGameDataItems)(nil), // 97: dota.CMsgGameDataItems - (*CMsgGameDataHeroes)(nil), // 98: dota.CMsgGameDataHeroes - (*CMsgGameDataHeroList)(nil), // 99: dota.CMsgGameDataHeroList - (*CMsgGameDataItemAbilityList)(nil), // 100: dota.CMsgGameDataItemAbilityList - (*CMsgLobbyAbilityDraftData)(nil), // 101: dota.CMsgLobbyAbilityDraftData - (*CSOEconItemDropRateBonus)(nil), // 102: dota.CSOEconItemDropRateBonus - (*CSOEconItemTournamentPassport)(nil), // 103: dota.CSOEconItemTournamentPassport - (*CMsgStickerbookSticker)(nil), // 104: dota.CMsgStickerbookSticker - (*CMsgStickerbookPage)(nil), // 105: dota.CMsgStickerbookPage - (*CMsgStickerbookTeamPageOrderSequence)(nil), // 106: dota.CMsgStickerbookTeamPageOrderSequence - (*CMsgStickerbook)(nil), // 107: dota.CMsgStickerbook - (*CMsgStickerHero)(nil), // 108: dota.CMsgStickerHero - (*CMsgStickerHeroes)(nil), // 109: dota.CMsgStickerHeroes - (*CMsgHeroRoleStats)(nil), // 110: dota.CMsgHeroRoleStats - (*CMsgHeroRoleHeroStats)(nil), // 111: dota.CMsgHeroRoleHeroStats - (*CMsgHeroRoleRankStats)(nil), // 112: dota.CMsgHeroRoleRankStats - (*CMsgHeroRoleAllRanksStats)(nil), // 113: dota.CMsgHeroRoleAllRanksStats - (*CMsgMapStatsSnapshot)(nil), // 114: dota.CMsgMapStatsSnapshot - (*CMsgGlobalMapStats)(nil), // 115: dota.CMsgGlobalMapStats - (*CSODOTAGameAccountClient_RoleHandicap)(nil), // 116: dota.CSODOTAGameAccountClient.RoleHandicap - (*CMsgLobbyFeaturedGamemodeProgress_AccountProgress)(nil), // 117: dota.CMsgLobbyFeaturedGamemodeProgress.AccountProgress - (*CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo)(nil), // 118: dota.CMsgGCGetPlayerCardItemInfoResponse.PlayerCardInfo - (*CMsgDOTAProfileCard_Slot)(nil), // 119: dota.CMsgDOTAProfileCard.Slot - (*CMsgDOTAProfileCard_Slot_Trophy)(nil), // 120: dota.CMsgDOTAProfileCard.Slot.Trophy - (*CMsgDOTAProfileCard_Slot_Stat)(nil), // 121: dota.CMsgDOTAProfileCard.Slot.Stat - (*CMsgDOTAProfileCard_Slot_Item)(nil), // 122: dota.CMsgDOTAProfileCard.Slot.Item - (*CMsgDOTAProfileCard_Slot_Hero)(nil), // 123: dota.CMsgDOTAProfileCard.Slot.Hero - (*CMsgDOTAProfileCard_Slot_Emoticon)(nil), // 124: dota.CMsgDOTAProfileCard.Slot.Emoticon - (*CMsgDOTAProfileCard_Slot_Team)(nil), // 125: dota.CMsgDOTAProfileCard.Slot.Team - (*CMsgDOTARealtimeGameStats_TeamDetails)(nil), // 126: dota.CMsgDOTARealtimeGameStats.TeamDetails - (*CMsgDOTARealtimeGameStats_ItemDetails)(nil), // 127: dota.CMsgDOTARealtimeGameStats.ItemDetails - (*CMsgDOTARealtimeGameStats_AbilityDetails)(nil), // 128: dota.CMsgDOTARealtimeGameStats.AbilityDetails - (*CMsgDOTARealtimeGameStats_HeroToHeroStats)(nil), // 129: dota.CMsgDOTARealtimeGameStats.HeroToHeroStats - (*CMsgDOTARealtimeGameStats_AbilityList)(nil), // 130: dota.CMsgDOTARealtimeGameStats.AbilityList - (*CMsgDOTARealtimeGameStats_PlayerDetails)(nil), // 131: dota.CMsgDOTARealtimeGameStats.PlayerDetails - (*CMsgDOTARealtimeGameStats_BuildingDetails)(nil), // 132: dota.CMsgDOTARealtimeGameStats.BuildingDetails - (*CMsgDOTARealtimeGameStats_KillDetails)(nil), // 133: dota.CMsgDOTARealtimeGameStats.KillDetails - (*CMsgDOTARealtimeGameStats_BroadcasterDetails)(nil), // 134: dota.CMsgDOTARealtimeGameStats.BroadcasterDetails - (*CMsgDOTARealtimeGameStats_PickBanDetails)(nil), // 135: dota.CMsgDOTARealtimeGameStats.PickBanDetails - (*CMsgDOTARealtimeGameStats_MatchDetails)(nil), // 136: dota.CMsgDOTARealtimeGameStats.MatchDetails - (*CMsgDOTARealtimeGameStats_GraphData)(nil), // 137: dota.CMsgDOTARealtimeGameStats.GraphData - (*CMsgDOTARealtimeGameStats_GraphData_LocationStats)(nil), // 138: dota.CMsgDOTARealtimeGameStats.GraphData.LocationStats - (*CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats)(nil), // 139: dota.CMsgDOTARealtimeGameStats.GraphData.TeamLocationStats - (*CMsgDOTARealtimeGameStatsTerse_TeamDetails)(nil), // 140: dota.CMsgDOTARealtimeGameStatsTerse.TeamDetails - (*CMsgDOTARealtimeGameStatsTerse_PlayerDetails)(nil), // 141: dota.CMsgDOTARealtimeGameStatsTerse.PlayerDetails - (*CMsgDOTARealtimeGameStatsTerse_BuildingDetails)(nil), // 142: dota.CMsgDOTARealtimeGameStatsTerse.BuildingDetails - (*CMsgDOTARealtimeGameStatsTerse_PickBanDetails)(nil), // 143: dota.CMsgDOTARealtimeGameStatsTerse.PickBanDetails - (*CMsgDOTARealtimeGameStatsTerse_MatchDetails)(nil), // 144: dota.CMsgDOTARealtimeGameStatsTerse.MatchDetails - (*CMsgDOTARealtimeGameStatsTerse_GraphData)(nil), // 145: dota.CMsgDOTARealtimeGameStatsTerse.GraphData - (*CMsgInGamePrediction_QueryKeyValues)(nil), // 146: dota.CMsgInGamePrediction.QueryKeyValues - (*CMsgDOTASeasonPredictions_Prediction)(nil), // 147: dota.CMsgDOTASeasonPredictions.Prediction - (*CMsgDOTASeasonPredictions_Prediction_Answers)(nil), // 148: dota.CMsgDOTASeasonPredictions.Prediction.Answers - (*CMsgAvailablePredictions_MatchPrediction)(nil), // 149: dota.CMsgAvailablePredictions.MatchPrediction - (*CMsgLeagueWatchedGames_Series)(nil), // 150: dota.CMsgLeagueWatchedGames.Series - (*CMsgLeagueWatchedGames_League)(nil), // 151: dota.CMsgLeagueWatchedGames.League - (*CMsgDOTAMatch_Player)(nil), // 152: dota.CMsgDOTAMatch.Player - (*CMsgDOTAMatch_BroadcasterInfo)(nil), // 153: dota.CMsgDOTAMatch.BroadcasterInfo - (*CMsgDOTAMatch_BroadcasterChannel)(nil), // 154: dota.CMsgDOTAMatch.BroadcasterChannel - (*CMsgDOTAMatch_Coach)(nil), // 155: dota.CMsgDOTAMatch.Coach - (*CMsgDOTAMatch_CustomGameData)(nil), // 156: dota.CMsgDOTAMatch.CustomGameData - (*CMsgDOTAMatch_Player_CustomGameData)(nil), // 157: dota.CMsgDOTAMatch.Player.CustomGameData - (*CMsgDOTAMatch_Player_HeroDamageReceived)(nil), // 158: dota.CMsgDOTAMatch.Player.HeroDamageReceived - (*CMsgPlayerCard_StatModifier)(nil), // 159: dota.CMsgPlayerCard.StatModifier - (*CMsgDOTABotDebugInfo_Bot)(nil), // 160: dota.CMsgDOTABotDebugInfo.Bot - (*CMsgDOTABotDebugInfo_Bot_Mode)(nil), // 161: dota.CMsgDOTABotDebugInfo.Bot.Mode - (*CMsgDOTABotDebugInfo_Bot_Action)(nil), // 162: dota.CMsgDOTABotDebugInfo.Bot.Action - (*CMsgMatchTips_SingleTip)(nil), // 163: dota.CMsgMatchTips.SingleTip - (*CMsgDOTAMatchMinimal_Player)(nil), // 164: dota.CMsgDOTAMatchMinimal.Player - (*CMsgDOTAMatchMinimal_Tourney)(nil), // 165: dota.CMsgDOTAMatchMinimal.Tourney - (*CMsgMatchConsumableUsage_PlayerUsage)(nil), // 166: dota.CMsgMatchConsumableUsage.PlayerUsage - (*CMsgMatchEventActionGrants_PlayerGrants)(nil), // 167: dota.CMsgMatchEventActionGrants.PlayerGrants - (*CMsgCustomGameWhitelistForEdit_WhitelistEntry)(nil), // 168: dota.CMsgCustomGameWhitelistForEdit.WhitelistEntry - (*CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account)(nil), // 169: dota.CMsgGCtoGCAssociatedExploiterAccountInfoResponse.Account - (*CMsgPullTabsData_Slot)(nil), // 170: dota.CMsgPullTabsData.Slot - (*CMsgPullTabsData_Jackpot)(nil), // 171: dota.CMsgPullTabsData.Jackpot - (*CMsgUnderDraftData_BenchSlot)(nil), // 172: dota.CMsgUnderDraftData.BenchSlot - (*CMsgUnderDraftData_ShopSlot)(nil), // 173: dota.CMsgUnderDraftData.ShopSlot - (*CMsgGameDataHeroList_HeroInfo)(nil), // 174: dota.CMsgGameDataHeroList.HeroInfo - (*CMsgGameDataItemAbilityList_ItemAbilityInfo)(nil), // 175: dota.CMsgGameDataItemAbilityList.ItemAbilityInfo - (EEvent)(0), // 176: dota.EEvent - (DOTA_GameMode)(0), // 177: dota.DOTA_GameMode - (EMatchOutcome)(0), // 178: dota.EMatchOutcome - (ELeagueRegion)(0), // 179: dota.ELeagueRegion - (ELeaguePhase)(0), // 180: dota.ELeaguePhase - (DOTA_GC_TEAM)(0), // 181: dota.DOTA_GC_TEAM - (*CMsgPendingEventAward)(nil), // 182: dota.CMsgPendingEventAward + (ENewBloomGiftingResponse)(0), // 11: dota.ENewBloomGiftingResponse + (CMsgDOTAProfileCard_EStatID)(0), // 12: dota.CMsgDOTAProfileCard.EStatID + (CMsgGCRerollPlayerChallengeResponse_EResult)(0), // 13: dota.CMsgGCRerollPlayerChallengeResponse.EResult + (CMsgDOTARealtimeGameStats_GraphDataEStat)(0), // 14: dota.CMsgDOTARealtimeGameStats.GraphData.eStat + (CMsgDOTARealtimeGameStats_GraphDataELocation)(0), // 15: dota.CMsgDOTARealtimeGameStats.GraphData.eLocation + (CMsgInGamePrediction_ERawValueTypeT)(0), // 16: dota.CMsgInGamePrediction.ERawValueType_t + (CMsgInGamePrediction_EPredictionType)(0), // 17: dota.CMsgInGamePrediction.EPredictionType + (CMsgInGamePrediction_EResolutionTypeT)(0), // 18: dota.CMsgInGamePrediction.EResolutionType_t + (CMsgInGamePrediction_ERandomSelectionGroupT)(0), // 19: dota.CMsgInGamePrediction.ERandomSelectionGroup_t + (CMsgDOTASeasonPredictions_Prediction_EPredictionType)(0), // 20: dota.CMsgDOTASeasonPredictions.Prediction.EPredictionType + (CMsgDOTASeasonPredictions_Prediction_EAnswerType)(0), // 21: dota.CMsgDOTASeasonPredictions.Prediction.EAnswerType + (CMsgDOTAMatch_ReplayState)(0), // 22: dota.CMsgDOTAMatch.ReplayState + (CMsgDOTAMatch_Player_HeroDamageType)(0), // 23: dota.CMsgDOTAMatch.Player.HeroDamageType + (CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse_EResponse)(0), // 24: dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.EResponse + (*CSODOTAGameAccountClient)(nil), // 25: dota.CSODOTAGameAccountClient + (*CSODOTAGameAccountPlus)(nil), // 26: dota.CSODOTAGameAccountPlus + (*CSODOTAChatWheel)(nil), // 27: dota.CSODOTAChatWheel + (*CMsgLobbyFeaturedGamemodeProgress)(nil), // 28: dota.CMsgLobbyFeaturedGamemodeProgress + (*CMsgBattleCupVictory)(nil), // 29: dota.CMsgBattleCupVictory + (*CMsgLobbyBattleCupVictoryList)(nil), // 30: dota.CMsgLobbyBattleCupVictoryList + (*CMsgDOTABroadcastNotification)(nil), // 31: dota.CMsgDOTABroadcastNotification + (*CProtoItemHeroStatue)(nil), // 32: dota.CProtoItemHeroStatue + (*CMatchPlayerAbilityUpgrade)(nil), // 33: dota.CMatchPlayerAbilityUpgrade + (*CMatchPlayerTimedCustomStat)(nil), // 34: dota.CMatchPlayerTimedCustomStat + (*CMatchPlayerTimedStats)(nil), // 35: dota.CMatchPlayerTimedStats + (*CMatchTeamTimedStats)(nil), // 36: dota.CMatchTeamTimedStats + (*CMatchAdditionalUnitInventory)(nil), // 37: dota.CMatchAdditionalUnitInventory + (*CMatchPlayerPermanentBuff)(nil), // 38: dota.CMatchPlayerPermanentBuff + (*CMatchHeroSelectEvent)(nil), // 39: dota.CMatchHeroSelectEvent + (*CMatchClip)(nil), // 40: dota.CMatchClip + (*CPartySearchClientParty)(nil), // 41: dota.CPartySearchClientParty + (*CMsgDOTAHasItemQuery)(nil), // 42: dota.CMsgDOTAHasItemQuery + (*CMsgDOTAHasItemResponse)(nil), // 43: dota.CMsgDOTAHasItemResponse + (*CMsgGCGetPlayerCardItemInfo)(nil), // 44: dota.CMsgGCGetPlayerCardItemInfo + (*CMsgGCGetPlayerCardItemInfoResponse)(nil), // 45: dota.CMsgGCGetPlayerCardItemInfoResponse + (*CSODOTAMapLocationState)(nil), // 46: dota.CSODOTAMapLocationState + (*CMsgLeagueAdminList)(nil), // 47: dota.CMsgLeagueAdminList + (*CMsgDOTAProfileCard)(nil), // 48: dota.CMsgDOTAProfileCard + (*CSODOTAPlayerChallenge)(nil), // 49: dota.CSODOTAPlayerChallenge + (*CMsgClientToGCRerollPlayerChallenge)(nil), // 50: dota.CMsgClientToGCRerollPlayerChallenge + (*CMsgGCRerollPlayerChallengeResponse)(nil), // 51: dota.CMsgGCRerollPlayerChallengeResponse + (*CMsgGCTopCustomGamesList)(nil), // 52: dota.CMsgGCTopCustomGamesList + (*CMsgDOTARealtimeGameStats)(nil), // 53: dota.CMsgDOTARealtimeGameStats + (*CMsgDOTARealtimeGameStatsTerse)(nil), // 54: dota.CMsgDOTARealtimeGameStatsTerse + (*CMsgDOTABroadcastTimelineEvent)(nil), // 55: dota.CMsgDOTABroadcastTimelineEvent + (*CMsgGCToClientMatchGroupsVersion)(nil), // 56: dota.CMsgGCToClientMatchGroupsVersion + (*CMsgDOTASDOHeroStatsHistory)(nil), // 57: dota.CMsgDOTASDOHeroStatsHistory + (*CMsgPredictionChoice)(nil), // 58: dota.CMsgPredictionChoice + (*CMsgInGamePrediction)(nil), // 59: dota.CMsgInGamePrediction + (*CMsgDOTASeasonPredictions)(nil), // 60: dota.CMsgDOTASeasonPredictions + (*CMsgAvailablePredictions)(nil), // 61: dota.CMsgAvailablePredictions + (*CMsgLeagueWatchedGames)(nil), // 62: dota.CMsgLeagueWatchedGames + (*CMsgDOTAMatch)(nil), // 63: dota.CMsgDOTAMatch + (*CMsgPlayerCard)(nil), // 64: dota.CMsgPlayerCard + (*CMsgDOTAFantasyPlayerStats)(nil), // 65: dota.CMsgDOTAFantasyPlayerStats + (*CMsgDOTAFantasyPlayerMatchStats)(nil), // 66: dota.CMsgDOTAFantasyPlayerMatchStats + (*CMsgDOTABotDebugInfo)(nil), // 67: dota.CMsgDOTABotDebugInfo + (*CMsgSuccessfulHero)(nil), // 68: dota.CMsgSuccessfulHero + (*CMsgRecentMatchInfo)(nil), // 69: dota.CMsgRecentMatchInfo + (*CMsgMatchTips)(nil), // 70: dota.CMsgMatchTips + (*CMsgDOTAMatchMinimal)(nil), // 71: dota.CMsgDOTAMatchMinimal + (*CMsgConsumableUsage)(nil), // 72: dota.CMsgConsumableUsage + (*CMsgMatchConsumableUsage)(nil), // 73: dota.CMsgMatchConsumableUsage + (*CMsgMatchEventActionGrants)(nil), // 74: dota.CMsgMatchEventActionGrants + (*CMsgCustomGameWhitelist)(nil), // 75: dota.CMsgCustomGameWhitelist + (*CMsgCustomGameWhitelistForEdit)(nil), // 76: dota.CMsgCustomGameWhitelistForEdit + (*CMsgPlayerRecentMatchInfo)(nil), // 77: dota.CMsgPlayerRecentMatchInfo + (*CMsgPlayerMatchRecord)(nil), // 78: dota.CMsgPlayerMatchRecord + (*CMsgPlayerRecentMatchOutcomes)(nil), // 79: dota.CMsgPlayerRecentMatchOutcomes + (*CMsgPlayerRecentCommends)(nil), // 80: dota.CMsgPlayerRecentCommends + (*CMsgPlayerRecentAccomplishments)(nil), // 81: dota.CMsgPlayerRecentAccomplishments + (*CMsgPlayerHeroRecentAccomplishments)(nil), // 82: dota.CMsgPlayerHeroRecentAccomplishments + (*CMsgRecentAccomplishments)(nil), // 83: dota.CMsgRecentAccomplishments + (*CMsgServerToGCRequestPlayerRecentAccomplishments)(nil), // 84: dota.CMsgServerToGCRequestPlayerRecentAccomplishments + (*CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse)(nil), // 85: dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse + (*CMsgArcanaVoteMatchVotes)(nil), // 86: dota.CMsgArcanaVoteMatchVotes + (*CMsgGCtoGCAssociatedExploiterAccountInfo)(nil), // 87: dota.CMsgGCtoGCAssociatedExploiterAccountInfo + (*CMsgGCtoGCAssociatedExploiterAccountInfoResponse)(nil), // 88: dota.CMsgGCtoGCAssociatedExploiterAccountInfoResponse + (*CMsgPullTabsData)(nil), // 89: dota.CMsgPullTabsData + (*CMsgUnderDraftData)(nil), // 90: dota.CMsgUnderDraftData + (*CMsgPlayerTitleData)(nil), // 91: dota.CMsgPlayerTitleData + (*CMsgDOTATriviaQuestion)(nil), // 92: dota.CMsgDOTATriviaQuestion + (*CMsgDOTATriviaQuestionAnswersSummary)(nil), // 93: dota.CMsgDOTATriviaQuestionAnswersSummary + (*CMsgGameDataSpecialValueBonus)(nil), // 94: dota.CMsgGameDataSpecialValueBonus + (*CMsgGameDataSpecialValues)(nil), // 95: dota.CMsgGameDataSpecialValues + (*CMsgGameDataAbilityOrItem)(nil), // 96: dota.CMsgGameDataAbilityOrItem + (*CMsgGameDataHero)(nil), // 97: dota.CMsgGameDataHero + (*CMsgGameDataAbilities)(nil), // 98: dota.CMsgGameDataAbilities + (*CMsgGameDataItems)(nil), // 99: dota.CMsgGameDataItems + (*CMsgGameDataHeroes)(nil), // 100: dota.CMsgGameDataHeroes + (*CMsgGameDataHeroList)(nil), // 101: dota.CMsgGameDataHeroList + (*CMsgGameDataItemAbilityList)(nil), // 102: dota.CMsgGameDataItemAbilityList + (*CMsgLobbyAbilityDraftData)(nil), // 103: dota.CMsgLobbyAbilityDraftData + (*CSOEconItemDropRateBonus)(nil), // 104: dota.CSOEconItemDropRateBonus + (*CSOEconItemTournamentPassport)(nil), // 105: dota.CSOEconItemTournamentPassport + (*CMsgStickerbookSticker)(nil), // 106: dota.CMsgStickerbookSticker + (*CMsgStickerbookPage)(nil), // 107: dota.CMsgStickerbookPage + (*CMsgStickerbookTeamPageOrderSequence)(nil), // 108: dota.CMsgStickerbookTeamPageOrderSequence + (*CMsgStickerbook)(nil), // 109: dota.CMsgStickerbook + (*CMsgStickerHero)(nil), // 110: dota.CMsgStickerHero + (*CMsgStickerHeroes)(nil), // 111: dota.CMsgStickerHeroes + (*CMsgHeroRoleStats)(nil), // 112: dota.CMsgHeroRoleStats + (*CMsgHeroRoleHeroStats)(nil), // 113: dota.CMsgHeroRoleHeroStats + (*CMsgHeroRoleRankStats)(nil), // 114: dota.CMsgHeroRoleRankStats + (*CMsgHeroRoleAllRanksStats)(nil), // 115: dota.CMsgHeroRoleAllRanksStats + (*CMsgMapStatsSnapshot)(nil), // 116: dota.CMsgMapStatsSnapshot + (*CMsgGlobalMapStats)(nil), // 117: dota.CMsgGlobalMapStats + (*CMsgTrackedStat)(nil), // 118: dota.CMsgTrackedStat + (*CSODOTAGameAccountClient_RoleHandicap)(nil), // 119: dota.CSODOTAGameAccountClient.RoleHandicap + (*CMsgLobbyFeaturedGamemodeProgress_AccountProgress)(nil), // 120: dota.CMsgLobbyFeaturedGamemodeProgress.AccountProgress + (*CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo)(nil), // 121: dota.CMsgGCGetPlayerCardItemInfoResponse.PlayerCardInfo + (*CMsgDOTAProfileCard_Slot)(nil), // 122: dota.CMsgDOTAProfileCard.Slot + (*CMsgDOTAProfileCard_Slot_Trophy)(nil), // 123: dota.CMsgDOTAProfileCard.Slot.Trophy + (*CMsgDOTAProfileCard_Slot_Stat)(nil), // 124: dota.CMsgDOTAProfileCard.Slot.Stat + (*CMsgDOTAProfileCard_Slot_Item)(nil), // 125: dota.CMsgDOTAProfileCard.Slot.Item + (*CMsgDOTAProfileCard_Slot_Hero)(nil), // 126: dota.CMsgDOTAProfileCard.Slot.Hero + (*CMsgDOTAProfileCard_Slot_Emoticon)(nil), // 127: dota.CMsgDOTAProfileCard.Slot.Emoticon + (*CMsgDOTAProfileCard_Slot_Team)(nil), // 128: dota.CMsgDOTAProfileCard.Slot.Team + (*CMsgDOTARealtimeGameStats_TeamDetails)(nil), // 129: dota.CMsgDOTARealtimeGameStats.TeamDetails + (*CMsgDOTARealtimeGameStats_ItemDetails)(nil), // 130: dota.CMsgDOTARealtimeGameStats.ItemDetails + (*CMsgDOTARealtimeGameStats_AbilityDetails)(nil), // 131: dota.CMsgDOTARealtimeGameStats.AbilityDetails + (*CMsgDOTARealtimeGameStats_HeroToHeroStats)(nil), // 132: dota.CMsgDOTARealtimeGameStats.HeroToHeroStats + (*CMsgDOTARealtimeGameStats_AbilityList)(nil), // 133: dota.CMsgDOTARealtimeGameStats.AbilityList + (*CMsgDOTARealtimeGameStats_PlayerDetails)(nil), // 134: dota.CMsgDOTARealtimeGameStats.PlayerDetails + (*CMsgDOTARealtimeGameStats_BuildingDetails)(nil), // 135: dota.CMsgDOTARealtimeGameStats.BuildingDetails + (*CMsgDOTARealtimeGameStats_KillDetails)(nil), // 136: dota.CMsgDOTARealtimeGameStats.KillDetails + (*CMsgDOTARealtimeGameStats_BroadcasterDetails)(nil), // 137: dota.CMsgDOTARealtimeGameStats.BroadcasterDetails + (*CMsgDOTARealtimeGameStats_PickBanDetails)(nil), // 138: dota.CMsgDOTARealtimeGameStats.PickBanDetails + (*CMsgDOTARealtimeGameStats_MatchDetails)(nil), // 139: dota.CMsgDOTARealtimeGameStats.MatchDetails + (*CMsgDOTARealtimeGameStats_GraphData)(nil), // 140: dota.CMsgDOTARealtimeGameStats.GraphData + (*CMsgDOTARealtimeGameStats_GraphData_LocationStats)(nil), // 141: dota.CMsgDOTARealtimeGameStats.GraphData.LocationStats + (*CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats)(nil), // 142: dota.CMsgDOTARealtimeGameStats.GraphData.TeamLocationStats + (*CMsgDOTARealtimeGameStatsTerse_TeamDetails)(nil), // 143: dota.CMsgDOTARealtimeGameStatsTerse.TeamDetails + (*CMsgDOTARealtimeGameStatsTerse_PlayerDetails)(nil), // 144: dota.CMsgDOTARealtimeGameStatsTerse.PlayerDetails + (*CMsgDOTARealtimeGameStatsTerse_BuildingDetails)(nil), // 145: dota.CMsgDOTARealtimeGameStatsTerse.BuildingDetails + (*CMsgDOTARealtimeGameStatsTerse_PickBanDetails)(nil), // 146: dota.CMsgDOTARealtimeGameStatsTerse.PickBanDetails + (*CMsgDOTARealtimeGameStatsTerse_MatchDetails)(nil), // 147: dota.CMsgDOTARealtimeGameStatsTerse.MatchDetails + (*CMsgDOTARealtimeGameStatsTerse_GraphData)(nil), // 148: dota.CMsgDOTARealtimeGameStatsTerse.GraphData + (*CMsgInGamePrediction_QueryKeyValues)(nil), // 149: dota.CMsgInGamePrediction.QueryKeyValues + (*CMsgDOTASeasonPredictions_Prediction)(nil), // 150: dota.CMsgDOTASeasonPredictions.Prediction + (*CMsgDOTASeasonPredictions_Prediction_Answers)(nil), // 151: dota.CMsgDOTASeasonPredictions.Prediction.Answers + (*CMsgAvailablePredictions_MatchPrediction)(nil), // 152: dota.CMsgAvailablePredictions.MatchPrediction + (*CMsgLeagueWatchedGames_Series)(nil), // 153: dota.CMsgLeagueWatchedGames.Series + (*CMsgLeagueWatchedGames_League)(nil), // 154: dota.CMsgLeagueWatchedGames.League + (*CMsgDOTAMatch_Player)(nil), // 155: dota.CMsgDOTAMatch.Player + (*CMsgDOTAMatch_BroadcasterInfo)(nil), // 156: dota.CMsgDOTAMatch.BroadcasterInfo + (*CMsgDOTAMatch_BroadcasterChannel)(nil), // 157: dota.CMsgDOTAMatch.BroadcasterChannel + (*CMsgDOTAMatch_Coach)(nil), // 158: dota.CMsgDOTAMatch.Coach + (*CMsgDOTAMatch_CustomGameData)(nil), // 159: dota.CMsgDOTAMatch.CustomGameData + (*CMsgDOTAMatch_Player_CustomGameData)(nil), // 160: dota.CMsgDOTAMatch.Player.CustomGameData + (*CMsgDOTAMatch_Player_HeroDamageReceived)(nil), // 161: dota.CMsgDOTAMatch.Player.HeroDamageReceived + (*CMsgPlayerCard_StatModifier)(nil), // 162: dota.CMsgPlayerCard.StatModifier + (*CMsgDOTABotDebugInfo_Bot)(nil), // 163: dota.CMsgDOTABotDebugInfo.Bot + (*CMsgDOTABotDebugInfo_Bot_Mode)(nil), // 164: dota.CMsgDOTABotDebugInfo.Bot.Mode + (*CMsgDOTABotDebugInfo_Bot_Action)(nil), // 165: dota.CMsgDOTABotDebugInfo.Bot.Action + (*CMsgMatchTips_SingleTip)(nil), // 166: dota.CMsgMatchTips.SingleTip + (*CMsgDOTAMatchMinimal_Player)(nil), // 167: dota.CMsgDOTAMatchMinimal.Player + (*CMsgDOTAMatchMinimal_Tourney)(nil), // 168: dota.CMsgDOTAMatchMinimal.Tourney + (*CMsgMatchConsumableUsage_PlayerUsage)(nil), // 169: dota.CMsgMatchConsumableUsage.PlayerUsage + (*CMsgMatchEventActionGrants_PlayerGrants)(nil), // 170: dota.CMsgMatchEventActionGrants.PlayerGrants + (*CMsgCustomGameWhitelistForEdit_WhitelistEntry)(nil), // 171: dota.CMsgCustomGameWhitelistForEdit.WhitelistEntry + (*CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account)(nil), // 172: dota.CMsgGCtoGCAssociatedExploiterAccountInfoResponse.Account + (*CMsgPullTabsData_Slot)(nil), // 173: dota.CMsgPullTabsData.Slot + (*CMsgPullTabsData_Jackpot)(nil), // 174: dota.CMsgPullTabsData.Jackpot + (*CMsgUnderDraftData_BenchSlot)(nil), // 175: dota.CMsgUnderDraftData.BenchSlot + (*CMsgUnderDraftData_ShopSlot)(nil), // 176: dota.CMsgUnderDraftData.ShopSlot + (*CMsgGameDataHeroList_HeroInfo)(nil), // 177: dota.CMsgGameDataHeroList.HeroInfo + (*CMsgGameDataItemAbilityList_ItemAbilityInfo)(nil), // 178: dota.CMsgGameDataItemAbilityList.ItemAbilityInfo + (EEvent)(0), // 179: dota.EEvent + (DOTA_GameMode)(0), // 180: dota.DOTA_GameMode + (EMatchOutcome)(0), // 181: dota.EMatchOutcome + (ELeagueRegion)(0), // 182: dota.ELeagueRegion + (ELeaguePhase)(0), // 183: dota.ELeaguePhase + (DOTA_GC_TEAM)(0), // 184: dota.DOTA_GC_TEAM + (*CMsgPendingEventAward)(nil), // 185: dota.CMsgPendingEventAward } var file_dota_gcmessages_common_proto_depIdxs = []int32{ - 116, // 0: dota.CSODOTAGameAccountClient.role_handicaps:type_name -> dota.CSODOTAGameAccountClient.RoleHandicap - 117, // 1: dota.CMsgLobbyFeaturedGamemodeProgress.accounts:type_name -> dota.CMsgLobbyFeaturedGamemodeProgress.AccountProgress - 27, // 2: dota.CMsgLobbyBattleCupVictoryList.winners:type_name -> dota.CMsgBattleCupVictory + 119, // 0: dota.CSODOTAGameAccountClient.role_handicaps:type_name -> dota.CSODOTAGameAccountClient.RoleHandicap + 120, // 1: dota.CMsgLobbyFeaturedGamemodeProgress.accounts:type_name -> dota.CMsgLobbyFeaturedGamemodeProgress.AccountProgress + 29, // 2: dota.CMsgLobbyBattleCupVictoryList.winners:type_name -> dota.CMsgBattleCupVictory 2, // 3: dota.CMatchPlayerTimedCustomStat.stat:type_name -> dota.EDOTAMatchPlayerTimeCustomStat - 32, // 4: dota.CMatchPlayerTimedStats.custom_stats:type_name -> dota.CMatchPlayerTimedCustomStat - 118, // 5: dota.CMsgGCGetPlayerCardItemInfoResponse.player_card_infos:type_name -> dota.CMsgGCGetPlayerCardItemInfoResponse.PlayerCardInfo - 119, // 6: dota.CMsgDOTAProfileCard.slots:type_name -> dota.CMsgDOTAProfileCard.Slot - 27, // 7: dota.CMsgDOTAProfileCard.recent_battle_cup_victory:type_name -> dota.CMsgBattleCupVictory - 176, // 8: dota.CMsgClientToGCRerollPlayerChallenge.event_id:type_name -> dota.EEvent - 12, // 9: dota.CMsgGCRerollPlayerChallengeResponse.result:type_name -> dota.CMsgGCRerollPlayerChallengeResponse.EResult - 136, // 10: dota.CMsgDOTARealtimeGameStats.match:type_name -> dota.CMsgDOTARealtimeGameStats.MatchDetails - 126, // 11: dota.CMsgDOTARealtimeGameStats.teams:type_name -> dota.CMsgDOTARealtimeGameStats.TeamDetails - 132, // 12: dota.CMsgDOTARealtimeGameStats.buildings:type_name -> dota.CMsgDOTARealtimeGameStats.BuildingDetails - 137, // 13: dota.CMsgDOTARealtimeGameStats.graph_data:type_name -> dota.CMsgDOTARealtimeGameStats.GraphData - 144, // 14: dota.CMsgDOTARealtimeGameStatsTerse.match:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.MatchDetails - 140, // 15: dota.CMsgDOTARealtimeGameStatsTerse.teams:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.TeamDetails - 142, // 16: dota.CMsgDOTARealtimeGameStatsTerse.buildings:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.BuildingDetails - 145, // 17: dota.CMsgDOTARealtimeGameStatsTerse.graph_data:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.GraphData + 34, // 4: dota.CMatchPlayerTimedStats.custom_stats:type_name -> dota.CMatchPlayerTimedCustomStat + 121, // 5: dota.CMsgGCGetPlayerCardItemInfoResponse.player_card_infos:type_name -> dota.CMsgGCGetPlayerCardItemInfoResponse.PlayerCardInfo + 122, // 6: dota.CMsgDOTAProfileCard.slots:type_name -> dota.CMsgDOTAProfileCard.Slot + 29, // 7: dota.CMsgDOTAProfileCard.recent_battle_cup_victory:type_name -> dota.CMsgBattleCupVictory + 179, // 8: dota.CMsgClientToGCRerollPlayerChallenge.event_id:type_name -> dota.EEvent + 13, // 9: dota.CMsgGCRerollPlayerChallengeResponse.result:type_name -> dota.CMsgGCRerollPlayerChallengeResponse.EResult + 139, // 10: dota.CMsgDOTARealtimeGameStats.match:type_name -> dota.CMsgDOTARealtimeGameStats.MatchDetails + 129, // 11: dota.CMsgDOTARealtimeGameStats.teams:type_name -> dota.CMsgDOTARealtimeGameStats.TeamDetails + 135, // 12: dota.CMsgDOTARealtimeGameStats.buildings:type_name -> dota.CMsgDOTARealtimeGameStats.BuildingDetails + 140, // 13: dota.CMsgDOTARealtimeGameStats.graph_data:type_name -> dota.CMsgDOTARealtimeGameStats.GraphData + 147, // 14: dota.CMsgDOTARealtimeGameStatsTerse.match:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.MatchDetails + 143, // 15: dota.CMsgDOTARealtimeGameStatsTerse.teams:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.TeamDetails + 145, // 16: dota.CMsgDOTARealtimeGameStatsTerse.buildings:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.BuildingDetails + 148, // 17: dota.CMsgDOTARealtimeGameStatsTerse.graph_data:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.GraphData 4, // 18: dota.CMsgDOTABroadcastTimelineEvent.event:type_name -> dota.EBroadcastTimelineEvent - 16, // 19: dota.CMsgInGamePrediction.type:type_name -> dota.CMsgInGamePrediction.EPredictionType - 18, // 20: dota.CMsgInGamePrediction.group:type_name -> dota.CMsgInGamePrediction.ERandomSelectionGroup_t - 56, // 21: dota.CMsgInGamePrediction.choices:type_name -> dota.CMsgPredictionChoice - 146, // 22: dota.CMsgInGamePrediction.query_values:type_name -> dota.CMsgInGamePrediction.QueryKeyValues - 17, // 23: dota.CMsgInGamePrediction.answer_resolution_type:type_name -> dota.CMsgInGamePrediction.EResolutionType_t - 15, // 24: dota.CMsgInGamePrediction.raw_value_type:type_name -> dota.CMsgInGamePrediction.ERawValueType_t - 147, // 25: dota.CMsgDOTASeasonPredictions.predictions:type_name -> dota.CMsgDOTASeasonPredictions.Prediction - 57, // 26: dota.CMsgDOTASeasonPredictions.in_game_predictions:type_name -> dota.CMsgInGamePrediction - 149, // 27: dota.CMsgAvailablePredictions.match_predictions:type_name -> dota.CMsgAvailablePredictions.MatchPrediction - 151, // 28: dota.CMsgLeagueWatchedGames.leagues:type_name -> dota.CMsgLeagueWatchedGames.League - 152, // 29: dota.CMsgDOTAMatch.players:type_name -> dota.CMsgDOTAMatch.Player - 177, // 30: dota.CMsgDOTAMatch.game_mode:type_name -> dota.DOTA_GameMode - 37, // 31: dota.CMsgDOTAMatch.picks_bans:type_name -> dota.CMatchHeroSelectEvent - 21, // 32: dota.CMsgDOTAMatch.replay_state:type_name -> dota.CMsgDOTAMatch.ReplayState - 154, // 33: dota.CMsgDOTAMatch.broadcaster_channels:type_name -> dota.CMsgDOTAMatch.BroadcasterChannel - 156, // 34: dota.CMsgDOTAMatch.custom_game_data:type_name -> dota.CMsgDOTAMatch.CustomGameData - 178, // 35: dota.CMsgDOTAMatch.match_outcome:type_name -> dota.EMatchOutcome - 155, // 36: dota.CMsgDOTAMatch.coaches:type_name -> dota.CMsgDOTAMatch.Coach - 159, // 37: dota.CMsgPlayerCard.stat_modifier:type_name -> dota.CMsgPlayerCard.StatModifier - 63, // 38: dota.CMsgDOTAFantasyPlayerMatchStats.matches:type_name -> dota.CMsgDOTAFantasyPlayerStats - 160, // 39: dota.CMsgDOTABotDebugInfo.bots:type_name -> dota.CMsgDOTABotDebugInfo.Bot - 177, // 40: dota.CMsgRecentMatchInfo.game_mode:type_name -> dota.DOTA_GameMode - 178, // 41: dota.CMsgRecentMatchInfo.match_outcome:type_name -> dota.EMatchOutcome - 163, // 42: dota.CMsgMatchTips.tips:type_name -> dota.CMsgMatchTips.SingleTip - 177, // 43: dota.CMsgDOTAMatchMinimal.game_mode:type_name -> dota.DOTA_GameMode - 164, // 44: dota.CMsgDOTAMatchMinimal.players:type_name -> dota.CMsgDOTAMatchMinimal.Player - 165, // 45: dota.CMsgDOTAMatchMinimal.tourney:type_name -> dota.CMsgDOTAMatchMinimal.Tourney - 178, // 46: dota.CMsgDOTAMatchMinimal.match_outcome:type_name -> dota.EMatchOutcome - 166, // 47: dota.CMsgMatchConsumableUsage.player_consumables_used:type_name -> dota.CMsgMatchConsumableUsage.PlayerUsage - 167, // 48: dota.CMsgMatchEventActionGrants.player_grants:type_name -> dota.CMsgMatchEventActionGrants.PlayerGrants - 168, // 49: dota.CMsgCustomGameWhitelistForEdit.whitelist_entries:type_name -> dota.CMsgCustomGameWhitelistForEdit.WhitelistEntry - 77, // 50: dota.CMsgPlayerRecentAccomplishments.recent_outcomes:type_name -> dota.CMsgPlayerRecentMatchOutcomes - 76, // 51: dota.CMsgPlayerRecentAccomplishments.total_record:type_name -> dota.CMsgPlayerMatchRecord - 78, // 52: dota.CMsgPlayerRecentAccomplishments.recent_commends:type_name -> dota.CMsgPlayerRecentCommends - 75, // 53: dota.CMsgPlayerRecentAccomplishments.last_match:type_name -> dota.CMsgPlayerRecentMatchInfo - 77, // 54: dota.CMsgPlayerRecentAccomplishments.recent_mvps:type_name -> dota.CMsgPlayerRecentMatchOutcomes - 77, // 55: dota.CMsgPlayerHeroRecentAccomplishments.recent_outcomes:type_name -> dota.CMsgPlayerRecentMatchOutcomes - 76, // 56: dota.CMsgPlayerHeroRecentAccomplishments.total_record:type_name -> dota.CMsgPlayerMatchRecord - 75, // 57: dota.CMsgPlayerHeroRecentAccomplishments.last_match:type_name -> dota.CMsgPlayerRecentMatchInfo - 79, // 58: dota.CMsgRecentAccomplishments.player_accomplishments:type_name -> dota.CMsgPlayerRecentAccomplishments - 80, // 59: dota.CMsgRecentAccomplishments.hero_accomplishments:type_name -> dota.CMsgPlayerHeroRecentAccomplishments - 23, // 60: dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.result:type_name -> dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.EResponse - 81, // 61: dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.player_accomplishments:type_name -> dota.CMsgRecentAccomplishments - 169, // 62: dota.CMsgGCtoGCAssociatedExploiterAccountInfoResponse.accounts:type_name -> dota.CMsgGCtoGCAssociatedExploiterAccountInfoResponse.Account - 170, // 63: dota.CMsgPullTabsData.slots:type_name -> dota.CMsgPullTabsData.Slot - 171, // 64: dota.CMsgPullTabsData.jackpots:type_name -> dota.CMsgPullTabsData.Jackpot - 172, // 65: dota.CMsgUnderDraftData.bench_slots:type_name -> dota.CMsgUnderDraftData.BenchSlot - 173, // 66: dota.CMsgUnderDraftData.shop_slots:type_name -> dota.CMsgUnderDraftData.ShopSlot + 17, // 19: dota.CMsgInGamePrediction.type:type_name -> dota.CMsgInGamePrediction.EPredictionType + 19, // 20: dota.CMsgInGamePrediction.group:type_name -> dota.CMsgInGamePrediction.ERandomSelectionGroup_t + 58, // 21: dota.CMsgInGamePrediction.choices:type_name -> dota.CMsgPredictionChoice + 149, // 22: dota.CMsgInGamePrediction.query_values:type_name -> dota.CMsgInGamePrediction.QueryKeyValues + 18, // 23: dota.CMsgInGamePrediction.answer_resolution_type:type_name -> dota.CMsgInGamePrediction.EResolutionType_t + 16, // 24: dota.CMsgInGamePrediction.raw_value_type:type_name -> dota.CMsgInGamePrediction.ERawValueType_t + 150, // 25: dota.CMsgDOTASeasonPredictions.predictions:type_name -> dota.CMsgDOTASeasonPredictions.Prediction + 59, // 26: dota.CMsgDOTASeasonPredictions.in_game_predictions:type_name -> dota.CMsgInGamePrediction + 152, // 27: dota.CMsgAvailablePredictions.match_predictions:type_name -> dota.CMsgAvailablePredictions.MatchPrediction + 154, // 28: dota.CMsgLeagueWatchedGames.leagues:type_name -> dota.CMsgLeagueWatchedGames.League + 155, // 29: dota.CMsgDOTAMatch.players:type_name -> dota.CMsgDOTAMatch.Player + 180, // 30: dota.CMsgDOTAMatch.game_mode:type_name -> dota.DOTA_GameMode + 39, // 31: dota.CMsgDOTAMatch.picks_bans:type_name -> dota.CMatchHeroSelectEvent + 22, // 32: dota.CMsgDOTAMatch.replay_state:type_name -> dota.CMsgDOTAMatch.ReplayState + 157, // 33: dota.CMsgDOTAMatch.broadcaster_channels:type_name -> dota.CMsgDOTAMatch.BroadcasterChannel + 159, // 34: dota.CMsgDOTAMatch.custom_game_data:type_name -> dota.CMsgDOTAMatch.CustomGameData + 181, // 35: dota.CMsgDOTAMatch.match_outcome:type_name -> dota.EMatchOutcome + 158, // 36: dota.CMsgDOTAMatch.coaches:type_name -> dota.CMsgDOTAMatch.Coach + 162, // 37: dota.CMsgPlayerCard.stat_modifier:type_name -> dota.CMsgPlayerCard.StatModifier + 65, // 38: dota.CMsgDOTAFantasyPlayerMatchStats.matches:type_name -> dota.CMsgDOTAFantasyPlayerStats + 163, // 39: dota.CMsgDOTABotDebugInfo.bots:type_name -> dota.CMsgDOTABotDebugInfo.Bot + 180, // 40: dota.CMsgRecentMatchInfo.game_mode:type_name -> dota.DOTA_GameMode + 181, // 41: dota.CMsgRecentMatchInfo.match_outcome:type_name -> dota.EMatchOutcome + 166, // 42: dota.CMsgMatchTips.tips:type_name -> dota.CMsgMatchTips.SingleTip + 180, // 43: dota.CMsgDOTAMatchMinimal.game_mode:type_name -> dota.DOTA_GameMode + 167, // 44: dota.CMsgDOTAMatchMinimal.players:type_name -> dota.CMsgDOTAMatchMinimal.Player + 168, // 45: dota.CMsgDOTAMatchMinimal.tourney:type_name -> dota.CMsgDOTAMatchMinimal.Tourney + 181, // 46: dota.CMsgDOTAMatchMinimal.match_outcome:type_name -> dota.EMatchOutcome + 169, // 47: dota.CMsgMatchConsumableUsage.player_consumables_used:type_name -> dota.CMsgMatchConsumableUsage.PlayerUsage + 170, // 48: dota.CMsgMatchEventActionGrants.player_grants:type_name -> dota.CMsgMatchEventActionGrants.PlayerGrants + 171, // 49: dota.CMsgCustomGameWhitelistForEdit.whitelist_entries:type_name -> dota.CMsgCustomGameWhitelistForEdit.WhitelistEntry + 79, // 50: dota.CMsgPlayerRecentAccomplishments.recent_outcomes:type_name -> dota.CMsgPlayerRecentMatchOutcomes + 78, // 51: dota.CMsgPlayerRecentAccomplishments.total_record:type_name -> dota.CMsgPlayerMatchRecord + 80, // 52: dota.CMsgPlayerRecentAccomplishments.recent_commends:type_name -> dota.CMsgPlayerRecentCommends + 77, // 53: dota.CMsgPlayerRecentAccomplishments.last_match:type_name -> dota.CMsgPlayerRecentMatchInfo + 79, // 54: dota.CMsgPlayerRecentAccomplishments.recent_mvps:type_name -> dota.CMsgPlayerRecentMatchOutcomes + 79, // 55: dota.CMsgPlayerHeroRecentAccomplishments.recent_outcomes:type_name -> dota.CMsgPlayerRecentMatchOutcomes + 78, // 56: dota.CMsgPlayerHeroRecentAccomplishments.total_record:type_name -> dota.CMsgPlayerMatchRecord + 77, // 57: dota.CMsgPlayerHeroRecentAccomplishments.last_match:type_name -> dota.CMsgPlayerRecentMatchInfo + 81, // 58: dota.CMsgRecentAccomplishments.player_accomplishments:type_name -> dota.CMsgPlayerRecentAccomplishments + 82, // 59: dota.CMsgRecentAccomplishments.hero_accomplishments:type_name -> dota.CMsgPlayerHeroRecentAccomplishments + 24, // 60: dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.result:type_name -> dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.EResponse + 83, // 61: dota.CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.player_accomplishments:type_name -> dota.CMsgRecentAccomplishments + 172, // 62: dota.CMsgGCtoGCAssociatedExploiterAccountInfoResponse.accounts:type_name -> dota.CMsgGCtoGCAssociatedExploiterAccountInfoResponse.Account + 173, // 63: dota.CMsgPullTabsData.slots:type_name -> dota.CMsgPullTabsData.Slot + 174, // 64: dota.CMsgPullTabsData.jackpots:type_name -> dota.CMsgPullTabsData.Jackpot + 175, // 65: dota.CMsgUnderDraftData.bench_slots:type_name -> dota.CMsgUnderDraftData.BenchSlot + 176, // 66: dota.CMsgUnderDraftData.shop_slots:type_name -> dota.CMsgUnderDraftData.ShopSlot 6, // 67: dota.CMsgDOTATriviaQuestion.category:type_name -> dota.EDOTATriviaQuestionCategory - 92, // 68: dota.CMsgGameDataSpecialValues.bonuses:type_name -> dota.CMsgGameDataSpecialValueBonus - 93, // 69: dota.CMsgGameDataAbilityOrItem.special_values:type_name -> dota.CMsgGameDataSpecialValues - 94, // 70: dota.CMsgGameDataHero.abilities:type_name -> dota.CMsgGameDataAbilityOrItem - 94, // 71: dota.CMsgGameDataHero.talents:type_name -> dota.CMsgGameDataAbilityOrItem - 94, // 72: dota.CMsgGameDataAbilities.abilities:type_name -> dota.CMsgGameDataAbilityOrItem - 94, // 73: dota.CMsgGameDataItems.items:type_name -> dota.CMsgGameDataAbilityOrItem - 95, // 74: dota.CMsgGameDataHeroes.heroes:type_name -> dota.CMsgGameDataHero - 174, // 75: dota.CMsgGameDataHeroList.heroes:type_name -> dota.CMsgGameDataHeroList.HeroInfo - 175, // 76: dota.CMsgGameDataItemAbilityList.itemabilities:type_name -> dota.CMsgGameDataItemAbilityList.ItemAbilityInfo - 176, // 77: dota.CMsgStickerbookPage.event_id:type_name -> dota.EEvent - 104, // 78: dota.CMsgStickerbookPage.stickers:type_name -> dota.CMsgStickerbookSticker + 94, // 68: dota.CMsgGameDataSpecialValues.bonuses:type_name -> dota.CMsgGameDataSpecialValueBonus + 95, // 69: dota.CMsgGameDataAbilityOrItem.special_values:type_name -> dota.CMsgGameDataSpecialValues + 96, // 70: dota.CMsgGameDataHero.abilities:type_name -> dota.CMsgGameDataAbilityOrItem + 96, // 71: dota.CMsgGameDataHero.talents:type_name -> dota.CMsgGameDataAbilityOrItem + 96, // 72: dota.CMsgGameDataAbilities.abilities:type_name -> dota.CMsgGameDataAbilityOrItem + 96, // 73: dota.CMsgGameDataItems.items:type_name -> dota.CMsgGameDataAbilityOrItem + 97, // 74: dota.CMsgGameDataHeroes.heroes:type_name -> dota.CMsgGameDataHero + 177, // 75: dota.CMsgGameDataHeroList.heroes:type_name -> dota.CMsgGameDataHeroList.HeroInfo + 178, // 76: dota.CMsgGameDataItemAbilityList.itemabilities:type_name -> dota.CMsgGameDataItemAbilityList.ItemAbilityInfo + 179, // 77: dota.CMsgStickerbookPage.event_id:type_name -> dota.EEvent + 106, // 78: dota.CMsgStickerbookPage.stickers:type_name -> dota.CMsgStickerbookSticker 10, // 79: dota.CMsgStickerbookPage.page_type:type_name -> dota.EStickerbookPageType - 105, // 80: dota.CMsgStickerbook.pages:type_name -> dota.CMsgStickerbookPage - 106, // 81: dota.CMsgStickerbook.team_page_order_sequence:type_name -> dota.CMsgStickerbookTeamPageOrderSequence - 108, // 82: dota.CMsgStickerHeroes.heroes:type_name -> dota.CMsgStickerHero - 110, // 83: dota.CMsgHeroRoleHeroStats.role_stats:type_name -> dota.CMsgHeroRoleStats - 111, // 84: dota.CMsgHeroRoleRankStats.hero_stats:type_name -> dota.CMsgHeroRoleHeroStats - 112, // 85: dota.CMsgHeroRoleAllRanksStats.rank_stats:type_name -> dota.CMsgHeroRoleRankStats - 114, // 86: dota.CMsgGlobalMapStats.current:type_name -> dota.CMsgMapStatsSnapshot - 114, // 87: dota.CMsgGlobalMapStats.window_start:type_name -> dota.CMsgMapStatsSnapshot - 114, // 88: dota.CMsgGlobalMapStats.window_end:type_name -> dota.CMsgMapStatsSnapshot - 120, // 89: dota.CMsgDOTAProfileCard.Slot.trophy:type_name -> dota.CMsgDOTAProfileCard.Slot.Trophy - 121, // 90: dota.CMsgDOTAProfileCard.Slot.stat:type_name -> dota.CMsgDOTAProfileCard.Slot.Stat - 122, // 91: dota.CMsgDOTAProfileCard.Slot.item:type_name -> dota.CMsgDOTAProfileCard.Slot.Item - 123, // 92: dota.CMsgDOTAProfileCard.Slot.hero:type_name -> dota.CMsgDOTAProfileCard.Slot.Hero - 124, // 93: dota.CMsgDOTAProfileCard.Slot.emoticon:type_name -> dota.CMsgDOTAProfileCard.Slot.Emoticon - 125, // 94: dota.CMsgDOTAProfileCard.Slot.team:type_name -> dota.CMsgDOTAProfileCard.Slot.Team - 11, // 95: dota.CMsgDOTAProfileCard.Slot.Stat.stat_id:type_name -> dota.CMsgDOTAProfileCard.EStatID - 131, // 96: dota.CMsgDOTARealtimeGameStats.TeamDetails.players:type_name -> dota.CMsgDOTARealtimeGameStats.PlayerDetails - 128, // 97: dota.CMsgDOTARealtimeGameStats.PlayerDetails.abilities:type_name -> dota.CMsgDOTARealtimeGameStats.AbilityDetails - 127, // 98: dota.CMsgDOTARealtimeGameStats.PlayerDetails.items:type_name -> dota.CMsgDOTARealtimeGameStats.ItemDetails - 127, // 99: dota.CMsgDOTARealtimeGameStats.PlayerDetails.stashitems:type_name -> dota.CMsgDOTARealtimeGameStats.ItemDetails - 127, // 100: dota.CMsgDOTARealtimeGameStats.PlayerDetails.itemshoppinglist:type_name -> dota.CMsgDOTARealtimeGameStats.ItemDetails - 130, // 101: dota.CMsgDOTARealtimeGameStats.PlayerDetails.levelpoints:type_name -> dota.CMsgDOTARealtimeGameStats.AbilityList - 129, // 102: dota.CMsgDOTARealtimeGameStats.PlayerDetails.hero_to_hero_stats:type_name -> dota.CMsgDOTARealtimeGameStats.HeroToHeroStats - 135, // 103: dota.CMsgDOTARealtimeGameStats.MatchDetails.picks:type_name -> dota.CMsgDOTARealtimeGameStats.PickBanDetails - 135, // 104: dota.CMsgDOTARealtimeGameStats.MatchDetails.bans:type_name -> dota.CMsgDOTARealtimeGameStats.PickBanDetails - 133, // 105: dota.CMsgDOTARealtimeGameStats.MatchDetails.kills:type_name -> dota.CMsgDOTARealtimeGameStats.KillDetails - 134, // 106: dota.CMsgDOTARealtimeGameStats.MatchDetails.broadcasters:type_name -> dota.CMsgDOTARealtimeGameStats.BroadcasterDetails - 139, // 107: dota.CMsgDOTARealtimeGameStats.GraphData.team_loc_stats:type_name -> dota.CMsgDOTARealtimeGameStats.GraphData.TeamLocationStats - 138, // 108: dota.CMsgDOTARealtimeGameStats.GraphData.TeamLocationStats.loc_stats:type_name -> dota.CMsgDOTARealtimeGameStats.GraphData.LocationStats - 141, // 109: dota.CMsgDOTARealtimeGameStatsTerse.TeamDetails.players:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.PlayerDetails - 143, // 110: dota.CMsgDOTARealtimeGameStatsTerse.MatchDetails.picks:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.PickBanDetails - 143, // 111: dota.CMsgDOTARealtimeGameStatsTerse.MatchDetails.bans:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.PickBanDetails - 19, // 112: dota.CMsgDOTASeasonPredictions.Prediction.type:type_name -> dota.CMsgDOTASeasonPredictions.Prediction.EPredictionType - 56, // 113: dota.CMsgDOTASeasonPredictions.Prediction.choices:type_name -> dota.CMsgPredictionChoice - 20, // 114: dota.CMsgDOTASeasonPredictions.Prediction.answer_type:type_name -> dota.CMsgDOTASeasonPredictions.Prediction.EAnswerType - 148, // 115: dota.CMsgDOTASeasonPredictions.Prediction.answers:type_name -> dota.CMsgDOTASeasonPredictions.Prediction.Answers - 179, // 116: dota.CMsgDOTASeasonPredictions.Prediction.region:type_name -> dota.ELeagueRegion - 180, // 117: dota.CMsgDOTASeasonPredictions.Prediction.phases:type_name -> dota.ELeaguePhase - 176, // 118: dota.CMsgDOTASeasonPredictions.Prediction.reward_event:type_name -> dota.EEvent - 57, // 119: dota.CMsgAvailablePredictions.MatchPrediction.predictions:type_name -> dota.CMsgInGamePrediction - 150, // 120: dota.CMsgLeagueWatchedGames.League.series:type_name -> dota.CMsgLeagueWatchedGames.Series - 31, // 121: dota.CMsgDOTAMatch.Player.ability_upgrades:type_name -> dota.CMatchPlayerAbilityUpgrade - 35, // 122: dota.CMsgDOTAMatch.Player.additional_units_inventory:type_name -> dota.CMatchAdditionalUnitInventory - 36, // 123: dota.CMsgDOTAMatch.Player.permanent_buffs:type_name -> dota.CMatchPlayerPermanentBuff - 157, // 124: dota.CMsgDOTAMatch.Player.custom_game_data:type_name -> dota.CMsgDOTAMatch.Player.CustomGameData - 158, // 125: dota.CMsgDOTAMatch.Player.hero_damage_received:type_name -> dota.CMsgDOTAMatch.Player.HeroDamageReceived - 158, // 126: dota.CMsgDOTAMatch.Player.hero_damage_dealt:type_name -> dota.CMsgDOTAMatch.Player.HeroDamageReceived - 181, // 127: dota.CMsgDOTAMatch.Player.team_number:type_name -> dota.DOTA_GC_TEAM - 153, // 128: dota.CMsgDOTAMatch.BroadcasterChannel.broadcaster_infos:type_name -> dota.CMsgDOTAMatch.BroadcasterInfo - 22, // 129: dota.CMsgDOTAMatch.Player.HeroDamageReceived.damage_type:type_name -> dota.CMsgDOTAMatch.Player.HeroDamageType - 161, // 130: dota.CMsgDOTABotDebugInfo.Bot.modes:type_name -> dota.CMsgDOTABotDebugInfo.Bot.Mode - 162, // 131: dota.CMsgDOTABotDebugInfo.Bot.action:type_name -> dota.CMsgDOTABotDebugInfo.Bot.Action - 176, // 132: dota.CMsgMatchTips.SingleTip.event_id:type_name -> dota.EEvent - 181, // 133: dota.CMsgDOTAMatchMinimal.Player.team_number:type_name -> dota.DOTA_GC_TEAM - 70, // 134: dota.CMsgMatchConsumableUsage.PlayerUsage.consumables_used:type_name -> dota.CMsgConsumableUsage - 182, // 135: dota.CMsgMatchEventActionGrants.PlayerGrants.actions_granted:type_name -> dota.CMsgPendingEventAward + 107, // 80: dota.CMsgStickerbook.pages:type_name -> dota.CMsgStickerbookPage + 108, // 81: dota.CMsgStickerbook.team_page_order_sequence:type_name -> dota.CMsgStickerbookTeamPageOrderSequence + 110, // 82: dota.CMsgStickerHeroes.heroes:type_name -> dota.CMsgStickerHero + 112, // 83: dota.CMsgHeroRoleHeroStats.role_stats:type_name -> dota.CMsgHeroRoleStats + 113, // 84: dota.CMsgHeroRoleRankStats.hero_stats:type_name -> dota.CMsgHeroRoleHeroStats + 114, // 85: dota.CMsgHeroRoleAllRanksStats.rank_stats:type_name -> dota.CMsgHeroRoleRankStats + 116, // 86: dota.CMsgGlobalMapStats.current:type_name -> dota.CMsgMapStatsSnapshot + 116, // 87: dota.CMsgGlobalMapStats.window_start:type_name -> dota.CMsgMapStatsSnapshot + 116, // 88: dota.CMsgGlobalMapStats.window_end:type_name -> dota.CMsgMapStatsSnapshot + 123, // 89: dota.CMsgDOTAProfileCard.Slot.trophy:type_name -> dota.CMsgDOTAProfileCard.Slot.Trophy + 124, // 90: dota.CMsgDOTAProfileCard.Slot.stat:type_name -> dota.CMsgDOTAProfileCard.Slot.Stat + 125, // 91: dota.CMsgDOTAProfileCard.Slot.item:type_name -> dota.CMsgDOTAProfileCard.Slot.Item + 126, // 92: dota.CMsgDOTAProfileCard.Slot.hero:type_name -> dota.CMsgDOTAProfileCard.Slot.Hero + 127, // 93: dota.CMsgDOTAProfileCard.Slot.emoticon:type_name -> dota.CMsgDOTAProfileCard.Slot.Emoticon + 128, // 94: dota.CMsgDOTAProfileCard.Slot.team:type_name -> dota.CMsgDOTAProfileCard.Slot.Team + 12, // 95: dota.CMsgDOTAProfileCard.Slot.Stat.stat_id:type_name -> dota.CMsgDOTAProfileCard.EStatID + 134, // 96: dota.CMsgDOTARealtimeGameStats.TeamDetails.players:type_name -> dota.CMsgDOTARealtimeGameStats.PlayerDetails + 131, // 97: dota.CMsgDOTARealtimeGameStats.PlayerDetails.abilities:type_name -> dota.CMsgDOTARealtimeGameStats.AbilityDetails + 130, // 98: dota.CMsgDOTARealtimeGameStats.PlayerDetails.items:type_name -> dota.CMsgDOTARealtimeGameStats.ItemDetails + 130, // 99: dota.CMsgDOTARealtimeGameStats.PlayerDetails.stashitems:type_name -> dota.CMsgDOTARealtimeGameStats.ItemDetails + 130, // 100: dota.CMsgDOTARealtimeGameStats.PlayerDetails.itemshoppinglist:type_name -> dota.CMsgDOTARealtimeGameStats.ItemDetails + 133, // 101: dota.CMsgDOTARealtimeGameStats.PlayerDetails.levelpoints:type_name -> dota.CMsgDOTARealtimeGameStats.AbilityList + 132, // 102: dota.CMsgDOTARealtimeGameStats.PlayerDetails.hero_to_hero_stats:type_name -> dota.CMsgDOTARealtimeGameStats.HeroToHeroStats + 138, // 103: dota.CMsgDOTARealtimeGameStats.MatchDetails.picks:type_name -> dota.CMsgDOTARealtimeGameStats.PickBanDetails + 138, // 104: dota.CMsgDOTARealtimeGameStats.MatchDetails.bans:type_name -> dota.CMsgDOTARealtimeGameStats.PickBanDetails + 136, // 105: dota.CMsgDOTARealtimeGameStats.MatchDetails.kills:type_name -> dota.CMsgDOTARealtimeGameStats.KillDetails + 137, // 106: dota.CMsgDOTARealtimeGameStats.MatchDetails.broadcasters:type_name -> dota.CMsgDOTARealtimeGameStats.BroadcasterDetails + 142, // 107: dota.CMsgDOTARealtimeGameStats.GraphData.team_loc_stats:type_name -> dota.CMsgDOTARealtimeGameStats.GraphData.TeamLocationStats + 141, // 108: dota.CMsgDOTARealtimeGameStats.GraphData.TeamLocationStats.loc_stats:type_name -> dota.CMsgDOTARealtimeGameStats.GraphData.LocationStats + 144, // 109: dota.CMsgDOTARealtimeGameStatsTerse.TeamDetails.players:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.PlayerDetails + 146, // 110: dota.CMsgDOTARealtimeGameStatsTerse.MatchDetails.picks:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.PickBanDetails + 146, // 111: dota.CMsgDOTARealtimeGameStatsTerse.MatchDetails.bans:type_name -> dota.CMsgDOTARealtimeGameStatsTerse.PickBanDetails + 20, // 112: dota.CMsgDOTASeasonPredictions.Prediction.type:type_name -> dota.CMsgDOTASeasonPredictions.Prediction.EPredictionType + 58, // 113: dota.CMsgDOTASeasonPredictions.Prediction.choices:type_name -> dota.CMsgPredictionChoice + 21, // 114: dota.CMsgDOTASeasonPredictions.Prediction.answer_type:type_name -> dota.CMsgDOTASeasonPredictions.Prediction.EAnswerType + 151, // 115: dota.CMsgDOTASeasonPredictions.Prediction.answers:type_name -> dota.CMsgDOTASeasonPredictions.Prediction.Answers + 182, // 116: dota.CMsgDOTASeasonPredictions.Prediction.region:type_name -> dota.ELeagueRegion + 183, // 117: dota.CMsgDOTASeasonPredictions.Prediction.phases:type_name -> dota.ELeaguePhase + 179, // 118: dota.CMsgDOTASeasonPredictions.Prediction.reward_event:type_name -> dota.EEvent + 59, // 119: dota.CMsgAvailablePredictions.MatchPrediction.predictions:type_name -> dota.CMsgInGamePrediction + 153, // 120: dota.CMsgLeagueWatchedGames.League.series:type_name -> dota.CMsgLeagueWatchedGames.Series + 33, // 121: dota.CMsgDOTAMatch.Player.ability_upgrades:type_name -> dota.CMatchPlayerAbilityUpgrade + 37, // 122: dota.CMsgDOTAMatch.Player.additional_units_inventory:type_name -> dota.CMatchAdditionalUnitInventory + 38, // 123: dota.CMsgDOTAMatch.Player.permanent_buffs:type_name -> dota.CMatchPlayerPermanentBuff + 160, // 124: dota.CMsgDOTAMatch.Player.custom_game_data:type_name -> dota.CMsgDOTAMatch.Player.CustomGameData + 161, // 125: dota.CMsgDOTAMatch.Player.hero_damage_received:type_name -> dota.CMsgDOTAMatch.Player.HeroDamageReceived + 161, // 126: dota.CMsgDOTAMatch.Player.hero_damage_dealt:type_name -> dota.CMsgDOTAMatch.Player.HeroDamageReceived + 184, // 127: dota.CMsgDOTAMatch.Player.team_number:type_name -> dota.DOTA_GC_TEAM + 156, // 128: dota.CMsgDOTAMatch.BroadcasterChannel.broadcaster_infos:type_name -> dota.CMsgDOTAMatch.BroadcasterInfo + 23, // 129: dota.CMsgDOTAMatch.Player.HeroDamageReceived.damage_type:type_name -> dota.CMsgDOTAMatch.Player.HeroDamageType + 164, // 130: dota.CMsgDOTABotDebugInfo.Bot.modes:type_name -> dota.CMsgDOTABotDebugInfo.Bot.Mode + 165, // 131: dota.CMsgDOTABotDebugInfo.Bot.action:type_name -> dota.CMsgDOTABotDebugInfo.Bot.Action + 179, // 132: dota.CMsgMatchTips.SingleTip.event_id:type_name -> dota.EEvent + 184, // 133: dota.CMsgDOTAMatchMinimal.Player.team_number:type_name -> dota.DOTA_GC_TEAM + 72, // 134: dota.CMsgMatchConsumableUsage.PlayerUsage.consumables_used:type_name -> dota.CMsgConsumableUsage + 185, // 135: dota.CMsgMatchEventActionGrants.PlayerGrants.actions_granted:type_name -> dota.CMsgPendingEventAward 5, // 136: dota.CMsgCustomGameWhitelistForEdit.WhitelistEntry.whitelist_state:type_name -> dota.ECustomGameWhitelistState 137, // [137:137] is the sub-list for method output_type 137, // [137:137] is the sub-list for method input_type @@ -18662,7 +19001,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyFeaturedGamemodeProgress); i { + switch v := v.(*CSODOTAChatWheel); i { case 0: return &v.state case 1: @@ -18674,7 +19013,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgBattleCupVictory); i { + switch v := v.(*CMsgLobbyFeaturedGamemodeProgress); i { case 0: return &v.state case 1: @@ -18686,7 +19025,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyBattleCupVictoryList); i { + switch v := v.(*CMsgBattleCupVictory); i { case 0: return &v.state case 1: @@ -18698,7 +19037,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTABroadcastNotification); i { + switch v := v.(*CMsgLobbyBattleCupVictoryList); i { case 0: return &v.state case 1: @@ -18710,7 +19049,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemHeroStatue); i { + switch v := v.(*CMsgDOTABroadcastNotification); i { case 0: return &v.state case 1: @@ -18722,7 +19061,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchPlayerAbilityUpgrade); i { + switch v := v.(*CProtoItemHeroStatue); i { case 0: return &v.state case 1: @@ -18734,7 +19073,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchPlayerTimedCustomStat); i { + switch v := v.(*CMatchPlayerAbilityUpgrade); i { case 0: return &v.state case 1: @@ -18746,7 +19085,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchPlayerTimedStats); i { + switch v := v.(*CMatchPlayerTimedCustomStat); i { case 0: return &v.state case 1: @@ -18758,7 +19097,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchTeamTimedStats); i { + switch v := v.(*CMatchPlayerTimedStats); i { case 0: return &v.state case 1: @@ -18770,7 +19109,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchAdditionalUnitInventory); i { + switch v := v.(*CMatchTeamTimedStats); i { case 0: return &v.state case 1: @@ -18782,7 +19121,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchPlayerPermanentBuff); i { + switch v := v.(*CMatchAdditionalUnitInventory); i { case 0: return &v.state case 1: @@ -18794,7 +19133,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchHeroSelectEvent); i { + switch v := v.(*CMatchPlayerPermanentBuff); i { case 0: return &v.state case 1: @@ -18806,7 +19145,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMatchClip); i { + switch v := v.(*CMatchHeroSelectEvent); i { case 0: return &v.state case 1: @@ -18818,7 +19157,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CPartySearchClientParty); i { + switch v := v.(*CMatchClip); i { case 0: return &v.state case 1: @@ -18830,7 +19169,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAHasItemQuery); i { + switch v := v.(*CPartySearchClientParty); i { case 0: return &v.state case 1: @@ -18842,7 +19181,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAHasItemResponse); i { + switch v := v.(*CMsgDOTAHasItemQuery); i { case 0: return &v.state case 1: @@ -18854,7 +19193,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCGetPlayerCardItemInfo); i { + switch v := v.(*CMsgDOTAHasItemResponse); i { case 0: return &v.state case 1: @@ -18866,7 +19205,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCGetPlayerCardItemInfoResponse); i { + switch v := v.(*CMsgGCGetPlayerCardItemInfo); i { case 0: return &v.state case 1: @@ -18878,7 +19217,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAMapLocationState); i { + switch v := v.(*CMsgGCGetPlayerCardItemInfoResponse); i { case 0: return &v.state case 1: @@ -18890,7 +19229,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLeagueAdminList); i { + switch v := v.(*CSODOTAMapLocationState); i { case 0: return &v.state case 1: @@ -18902,7 +19241,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileCard); i { + switch v := v.(*CMsgLeagueAdminList); i { case 0: return &v.state case 1: @@ -18914,7 +19253,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAPlayerChallenge); i { + switch v := v.(*CMsgDOTAProfileCard); i { case 0: return &v.state case 1: @@ -18926,7 +19265,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRerollPlayerChallenge); i { + switch v := v.(*CSODOTAPlayerChallenge); i { case 0: return &v.state case 1: @@ -18938,7 +19277,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCRerollPlayerChallengeResponse); i { + switch v := v.(*CMsgClientToGCRerollPlayerChallenge); i { case 0: return &v.state case 1: @@ -18950,7 +19289,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCTopCustomGamesList); i { + switch v := v.(*CMsgGCRerollPlayerChallengeResponse); i { case 0: return &v.state case 1: @@ -18962,7 +19301,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats); i { + switch v := v.(*CMsgGCTopCustomGamesList); i { case 0: return &v.state case 1: @@ -18974,7 +19313,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStatsTerse); i { + switch v := v.(*CMsgDOTARealtimeGameStats); i { case 0: return &v.state case 1: @@ -18986,7 +19325,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTABroadcastTimelineEvent); i { + switch v := v.(*CMsgDOTARealtimeGameStatsTerse); i { case 0: return &v.state case 1: @@ -18998,7 +19337,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientMatchGroupsVersion); i { + switch v := v.(*CMsgDOTABroadcastTimelineEvent); i { case 0: return &v.state case 1: @@ -19010,7 +19349,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASDOHeroStatsHistory); i { + switch v := v.(*CMsgGCToClientMatchGroupsVersion); i { case 0: return &v.state case 1: @@ -19022,7 +19361,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPredictionChoice); i { + switch v := v.(*CMsgDOTASDOHeroStatsHistory); i { case 0: return &v.state case 1: @@ -19034,7 +19373,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgInGamePrediction); i { + switch v := v.(*CMsgPredictionChoice); i { case 0: return &v.state case 1: @@ -19046,7 +19385,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASeasonPredictions); i { + switch v := v.(*CMsgInGamePrediction); i { case 0: return &v.state case 1: @@ -19058,7 +19397,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgAvailablePredictions); i { + switch v := v.(*CMsgDOTASeasonPredictions); i { case 0: return &v.state case 1: @@ -19070,7 +19409,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLeagueWatchedGames); i { + switch v := v.(*CMsgAvailablePredictions); i { case 0: return &v.state case 1: @@ -19082,7 +19421,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatch); i { + switch v := v.(*CMsgLeagueWatchedGames); i { case 0: return &v.state case 1: @@ -19094,7 +19433,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerCard); i { + switch v := v.(*CMsgDOTAMatch); i { case 0: return &v.state case 1: @@ -19106,7 +19445,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyPlayerStats); i { + switch v := v.(*CMsgPlayerCard); i { case 0: return &v.state case 1: @@ -19118,7 +19457,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyPlayerMatchStats); i { + switch v := v.(*CMsgDOTAFantasyPlayerStats); i { case 0: return &v.state case 1: @@ -19130,7 +19469,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTABotDebugInfo); i { + switch v := v.(*CMsgDOTAFantasyPlayerMatchStats); i { case 0: return &v.state case 1: @@ -19142,7 +19481,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSuccessfulHero); i { + switch v := v.(*CMsgDOTABotDebugInfo); i { case 0: return &v.state case 1: @@ -19154,7 +19493,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgRecentMatchInfo); i { + switch v := v.(*CMsgSuccessfulHero); i { case 0: return &v.state case 1: @@ -19166,7 +19505,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchTips); i { + switch v := v.(*CMsgRecentMatchInfo); i { case 0: return &v.state case 1: @@ -19178,7 +19517,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatchMinimal); i { + switch v := v.(*CMsgMatchTips); i { case 0: return &v.state case 1: @@ -19190,7 +19529,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgConsumableUsage); i { + switch v := v.(*CMsgDOTAMatchMinimal); i { case 0: return &v.state case 1: @@ -19202,7 +19541,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchConsumableUsage); i { + switch v := v.(*CMsgConsumableUsage); i { case 0: return &v.state case 1: @@ -19214,7 +19553,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchEventActionGrants); i { + switch v := v.(*CMsgMatchConsumableUsage); i { case 0: return &v.state case 1: @@ -19226,7 +19565,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgCustomGameWhitelist); i { + switch v := v.(*CMsgMatchEventActionGrants); i { case 0: return &v.state case 1: @@ -19238,7 +19577,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgCustomGameWhitelistForEdit); i { + switch v := v.(*CMsgCustomGameWhitelist); i { case 0: return &v.state case 1: @@ -19250,7 +19589,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerRecentMatchInfo); i { + switch v := v.(*CMsgCustomGameWhitelistForEdit); i { case 0: return &v.state case 1: @@ -19262,7 +19601,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerMatchRecord); i { + switch v := v.(*CMsgPlayerRecentMatchInfo); i { case 0: return &v.state case 1: @@ -19274,7 +19613,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerRecentMatchOutcomes); i { + switch v := v.(*CMsgPlayerMatchRecord); i { case 0: return &v.state case 1: @@ -19286,7 +19625,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerRecentCommends); i { + switch v := v.(*CMsgPlayerRecentMatchOutcomes); i { case 0: return &v.state case 1: @@ -19298,7 +19637,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerRecentAccomplishments); i { + switch v := v.(*CMsgPlayerRecentCommends); i { case 0: return &v.state case 1: @@ -19310,7 +19649,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerHeroRecentAccomplishments); i { + switch v := v.(*CMsgPlayerRecentAccomplishments); i { case 0: return &v.state case 1: @@ -19322,7 +19661,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgRecentAccomplishments); i { + switch v := v.(*CMsgPlayerHeroRecentAccomplishments); i { case 0: return &v.state case 1: @@ -19334,7 +19673,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCRequestPlayerRecentAccomplishments); i { + switch v := v.(*CMsgRecentAccomplishments); i { case 0: return &v.state case 1: @@ -19346,7 +19685,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse); i { + switch v := v.(*CMsgServerToGCRequestPlayerRecentAccomplishments); i { case 0: return &v.state case 1: @@ -19358,7 +19697,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgArcanaVoteMatchVotes); i { + switch v := v.(*CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse); i { case 0: return &v.state case 1: @@ -19370,7 +19709,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCtoGCAssociatedExploiterAccountInfo); i { + switch v := v.(*CMsgArcanaVoteMatchVotes); i { case 0: return &v.state case 1: @@ -19382,7 +19721,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCtoGCAssociatedExploiterAccountInfoResponse); i { + switch v := v.(*CMsgGCtoGCAssociatedExploiterAccountInfo); i { case 0: return &v.state case 1: @@ -19394,7 +19733,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPullTabsData); i { + switch v := v.(*CMsgGCtoGCAssociatedExploiterAccountInfoResponse); i { case 0: return &v.state case 1: @@ -19406,7 +19745,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgUnderDraftData); i { + switch v := v.(*CMsgPullTabsData); i { case 0: return &v.state case 1: @@ -19418,7 +19757,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerTitleData); i { + switch v := v.(*CMsgUnderDraftData); i { case 0: return &v.state case 1: @@ -19430,7 +19769,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATriviaQuestion); i { + switch v := v.(*CMsgPlayerTitleData); i { case 0: return &v.state case 1: @@ -19442,7 +19781,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTATriviaQuestionAnswersSummary); i { + switch v := v.(*CMsgDOTATriviaQuestion); i { case 0: return &v.state case 1: @@ -19454,7 +19793,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataSpecialValueBonus); i { + switch v := v.(*CMsgDOTATriviaQuestionAnswersSummary); i { case 0: return &v.state case 1: @@ -19466,7 +19805,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataSpecialValues); i { + switch v := v.(*CMsgGameDataSpecialValueBonus); i { case 0: return &v.state case 1: @@ -19478,7 +19817,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataAbilityOrItem); i { + switch v := v.(*CMsgGameDataSpecialValues); i { case 0: return &v.state case 1: @@ -19490,7 +19829,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataHero); i { + switch v := v.(*CMsgGameDataAbilityOrItem); i { case 0: return &v.state case 1: @@ -19502,7 +19841,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataAbilities); i { + switch v := v.(*CMsgGameDataHero); i { case 0: return &v.state case 1: @@ -19514,7 +19853,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataItems); i { + switch v := v.(*CMsgGameDataAbilities); i { case 0: return &v.state case 1: @@ -19526,7 +19865,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataHeroes); i { + switch v := v.(*CMsgGameDataItems); i { case 0: return &v.state case 1: @@ -19538,7 +19877,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataHeroList); i { + switch v := v.(*CMsgGameDataHeroes); i { case 0: return &v.state case 1: @@ -19550,7 +19889,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataItemAbilityList); i { + switch v := v.(*CMsgGameDataHeroList); i { case 0: return &v.state case 1: @@ -19562,7 +19901,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyAbilityDraftData); i { + switch v := v.(*CMsgGameDataItemAbilityList); i { case 0: return &v.state case 1: @@ -19574,7 +19913,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSOEconItemDropRateBonus); i { + switch v := v.(*CMsgLobbyAbilityDraftData); i { case 0: return &v.state case 1: @@ -19586,7 +19925,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSOEconItemTournamentPassport); i { + switch v := v.(*CSOEconItemDropRateBonus); i { case 0: return &v.state case 1: @@ -19598,7 +19937,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgStickerbookSticker); i { + switch v := v.(*CSOEconItemTournamentPassport); i { case 0: return &v.state case 1: @@ -19610,7 +19949,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgStickerbookPage); i { + switch v := v.(*CMsgStickerbookSticker); i { case 0: return &v.state case 1: @@ -19622,7 +19961,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgStickerbookTeamPageOrderSequence); i { + switch v := v.(*CMsgStickerbookPage); i { case 0: return &v.state case 1: @@ -19634,7 +19973,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgStickerbook); i { + switch v := v.(*CMsgStickerbookTeamPageOrderSequence); i { case 0: return &v.state case 1: @@ -19646,7 +19985,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgStickerHero); i { + switch v := v.(*CMsgStickerbook); i { case 0: return &v.state case 1: @@ -19658,7 +19997,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgStickerHeroes); i { + switch v := v.(*CMsgStickerHero); i { case 0: return &v.state case 1: @@ -19670,7 +20009,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgHeroRoleStats); i { + switch v := v.(*CMsgStickerHeroes); i { case 0: return &v.state case 1: @@ -19682,7 +20021,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgHeroRoleHeroStats); i { + switch v := v.(*CMsgHeroRoleStats); i { case 0: return &v.state case 1: @@ -19694,7 +20033,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgHeroRoleRankStats); i { + switch v := v.(*CMsgHeroRoleHeroStats); i { case 0: return &v.state case 1: @@ -19706,7 +20045,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgHeroRoleAllRanksStats); i { + switch v := v.(*CMsgHeroRoleRankStats); i { case 0: return &v.state case 1: @@ -19718,7 +20057,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMapStatsSnapshot); i { + switch v := v.(*CMsgHeroRoleAllRanksStats); i { case 0: return &v.state case 1: @@ -19730,7 +20069,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGlobalMapStats); i { + switch v := v.(*CMsgMapStatsSnapshot); i { case 0: return &v.state case 1: @@ -19742,7 +20081,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAGameAccountClient_RoleHandicap); i { + switch v := v.(*CMsgGlobalMapStats); i { case 0: return &v.state case 1: @@ -19754,7 +20093,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyFeaturedGamemodeProgress_AccountProgress); i { + switch v := v.(*CMsgTrackedStat); i { case 0: return &v.state case 1: @@ -19766,7 +20105,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo); i { + switch v := v.(*CSODOTAGameAccountClient_RoleHandicap); i { case 0: return &v.state case 1: @@ -19778,7 +20117,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileCard_Slot); i { + switch v := v.(*CMsgLobbyFeaturedGamemodeProgress_AccountProgress); i { case 0: return &v.state case 1: @@ -19790,7 +20129,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileCard_Slot_Trophy); i { + switch v := v.(*CMsgGCGetPlayerCardItemInfoResponse_PlayerCardInfo); i { case 0: return &v.state case 1: @@ -19802,7 +20141,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileCard_Slot_Stat); i { + switch v := v.(*CMsgDOTAProfileCard_Slot); i { case 0: return &v.state case 1: @@ -19814,7 +20153,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileCard_Slot_Item); i { + switch v := v.(*CMsgDOTAProfileCard_Slot_Trophy); i { case 0: return &v.state case 1: @@ -19826,7 +20165,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileCard_Slot_Hero); i { + switch v := v.(*CMsgDOTAProfileCard_Slot_Stat); i { case 0: return &v.state case 1: @@ -19838,7 +20177,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileCard_Slot_Emoticon); i { + switch v := v.(*CMsgDOTAProfileCard_Slot_Item); i { case 0: return &v.state case 1: @@ -19850,7 +20189,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAProfileCard_Slot_Team); i { + switch v := v.(*CMsgDOTAProfileCard_Slot_Hero); i { case 0: return &v.state case 1: @@ -19862,7 +20201,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_TeamDetails); i { + switch v := v.(*CMsgDOTAProfileCard_Slot_Emoticon); i { case 0: return &v.state case 1: @@ -19874,7 +20213,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_ItemDetails); i { + switch v := v.(*CMsgDOTAProfileCard_Slot_Team); i { case 0: return &v.state case 1: @@ -19886,7 +20225,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_AbilityDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_TeamDetails); i { case 0: return &v.state case 1: @@ -19898,7 +20237,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_HeroToHeroStats); i { + switch v := v.(*CMsgDOTARealtimeGameStats_ItemDetails); i { case 0: return &v.state case 1: @@ -19910,7 +20249,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_AbilityList); i { + switch v := v.(*CMsgDOTARealtimeGameStats_AbilityDetails); i { case 0: return &v.state case 1: @@ -19922,7 +20261,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_PlayerDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_HeroToHeroStats); i { case 0: return &v.state case 1: @@ -19934,7 +20273,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_BuildingDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_AbilityList); i { case 0: return &v.state case 1: @@ -19946,7 +20285,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_KillDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_PlayerDetails); i { case 0: return &v.state case 1: @@ -19958,7 +20297,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_BroadcasterDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_BuildingDetails); i { case 0: return &v.state case 1: @@ -19970,7 +20309,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_PickBanDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_KillDetails); i { case 0: return &v.state case 1: @@ -19982,7 +20321,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_MatchDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_BroadcasterDetails); i { case 0: return &v.state case 1: @@ -19994,7 +20333,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_GraphData); i { + switch v := v.(*CMsgDOTARealtimeGameStats_PickBanDetails); i { case 0: return &v.state case 1: @@ -20006,7 +20345,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_GraphData_LocationStats); i { + switch v := v.(*CMsgDOTARealtimeGameStats_MatchDetails); i { case 0: return &v.state case 1: @@ -20018,7 +20357,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats); i { + switch v := v.(*CMsgDOTARealtimeGameStats_GraphData); i { case 0: return &v.state case 1: @@ -20030,7 +20369,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStatsTerse_TeamDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_GraphData_LocationStats); i { case 0: return &v.state case 1: @@ -20042,7 +20381,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStatsTerse_PlayerDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStats_GraphData_TeamLocationStats); i { case 0: return &v.state case 1: @@ -20054,7 +20393,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStatsTerse_BuildingDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStatsTerse_TeamDetails); i { case 0: return &v.state case 1: @@ -20066,7 +20405,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStatsTerse_PickBanDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStatsTerse_PlayerDetails); i { case 0: return &v.state case 1: @@ -20078,7 +20417,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStatsTerse_MatchDetails); i { + switch v := v.(*CMsgDOTARealtimeGameStatsTerse_BuildingDetails); i { case 0: return &v.state case 1: @@ -20090,7 +20429,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTARealtimeGameStatsTerse_GraphData); i { + switch v := v.(*CMsgDOTARealtimeGameStatsTerse_PickBanDetails); i { case 0: return &v.state case 1: @@ -20102,7 +20441,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgInGamePrediction_QueryKeyValues); i { + switch v := v.(*CMsgDOTARealtimeGameStatsTerse_MatchDetails); i { case 0: return &v.state case 1: @@ -20114,7 +20453,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASeasonPredictions_Prediction); i { + switch v := v.(*CMsgDOTARealtimeGameStatsTerse_GraphData); i { case 0: return &v.state case 1: @@ -20126,7 +20465,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTASeasonPredictions_Prediction_Answers); i { + switch v := v.(*CMsgInGamePrediction_QueryKeyValues); i { case 0: return &v.state case 1: @@ -20138,7 +20477,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgAvailablePredictions_MatchPrediction); i { + switch v := v.(*CMsgDOTASeasonPredictions_Prediction); i { case 0: return &v.state case 1: @@ -20150,7 +20489,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLeagueWatchedGames_Series); i { + switch v := v.(*CMsgDOTASeasonPredictions_Prediction_Answers); i { case 0: return &v.state case 1: @@ -20162,7 +20501,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLeagueWatchedGames_League); i { + switch v := v.(*CMsgAvailablePredictions_MatchPrediction); i { case 0: return &v.state case 1: @@ -20174,7 +20513,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatch_Player); i { + switch v := v.(*CMsgLeagueWatchedGames_Series); i { case 0: return &v.state case 1: @@ -20186,7 +20525,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatch_BroadcasterInfo); i { + switch v := v.(*CMsgLeagueWatchedGames_League); i { case 0: return &v.state case 1: @@ -20198,7 +20537,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatch_BroadcasterChannel); i { + switch v := v.(*CMsgDOTAMatch_Player); i { case 0: return &v.state case 1: @@ -20210,7 +20549,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatch_Coach); i { + switch v := v.(*CMsgDOTAMatch_BroadcasterInfo); i { case 0: return &v.state case 1: @@ -20222,7 +20561,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatch_CustomGameData); i { + switch v := v.(*CMsgDOTAMatch_BroadcasterChannel); i { case 0: return &v.state case 1: @@ -20234,7 +20573,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatch_Player_CustomGameData); i { + switch v := v.(*CMsgDOTAMatch_Coach); i { case 0: return &v.state case 1: @@ -20246,7 +20585,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatch_Player_HeroDamageReceived); i { + switch v := v.(*CMsgDOTAMatch_CustomGameData); i { case 0: return &v.state case 1: @@ -20258,7 +20597,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPlayerCard_StatModifier); i { + switch v := v.(*CMsgDOTAMatch_Player_CustomGameData); i { case 0: return &v.state case 1: @@ -20270,7 +20609,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTABotDebugInfo_Bot); i { + switch v := v.(*CMsgDOTAMatch_Player_HeroDamageReceived); i { case 0: return &v.state case 1: @@ -20282,7 +20621,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTABotDebugInfo_Bot_Mode); i { + switch v := v.(*CMsgPlayerCard_StatModifier); i { case 0: return &v.state case 1: @@ -20294,7 +20633,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTABotDebugInfo_Bot_Action); i { + switch v := v.(*CMsgDOTABotDebugInfo_Bot); i { case 0: return &v.state case 1: @@ -20306,7 +20645,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchTips_SingleTip); i { + switch v := v.(*CMsgDOTABotDebugInfo_Bot_Mode); i { case 0: return &v.state case 1: @@ -20318,7 +20657,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatchMinimal_Player); i { + switch v := v.(*CMsgDOTABotDebugInfo_Bot_Action); i { case 0: return &v.state case 1: @@ -20330,7 +20669,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAMatchMinimal_Tourney); i { + switch v := v.(*CMsgMatchTips_SingleTip); i { case 0: return &v.state case 1: @@ -20342,7 +20681,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchConsumableUsage_PlayerUsage); i { + switch v := v.(*CMsgDOTAMatchMinimal_Player); i { case 0: return &v.state case 1: @@ -20354,7 +20693,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchEventActionGrants_PlayerGrants); i { + switch v := v.(*CMsgDOTAMatchMinimal_Tourney); i { case 0: return &v.state case 1: @@ -20366,7 +20705,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgCustomGameWhitelistForEdit_WhitelistEntry); i { + switch v := v.(*CMsgMatchConsumableUsage_PlayerUsage); i { case 0: return &v.state case 1: @@ -20378,7 +20717,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account); i { + switch v := v.(*CMsgMatchEventActionGrants_PlayerGrants); i { case 0: return &v.state case 1: @@ -20390,7 +20729,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPullTabsData_Slot); i { + switch v := v.(*CMsgCustomGameWhitelistForEdit_WhitelistEntry); i { case 0: return &v.state case 1: @@ -20402,7 +20741,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPullTabsData_Jackpot); i { + switch v := v.(*CMsgGCtoGCAssociatedExploiterAccountInfoResponse_Account); i { case 0: return &v.state case 1: @@ -20414,7 +20753,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgUnderDraftData_BenchSlot); i { + switch v := v.(*CMsgPullTabsData_Slot); i { case 0: return &v.state case 1: @@ -20426,7 +20765,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgUnderDraftData_ShopSlot); i { + switch v := v.(*CMsgPullTabsData_Jackpot); i { case 0: return &v.state case 1: @@ -20438,7 +20777,7 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameDataHeroList_HeroInfo); i { + switch v := v.(*CMsgUnderDraftData_BenchSlot); i { case 0: return &v.state case 1: @@ -20450,6 +20789,30 @@ func file_dota_gcmessages_common_proto_init() { } } file_dota_gcmessages_common_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgUnderDraftData_ShopSlot); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_common_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGameDataHeroList_HeroInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_common_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGameDataItemAbilityList_ItemAbilityInfo); i { case 0: return &v.state @@ -20467,8 +20830,8 @@ func file_dota_gcmessages_common_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_gcmessages_common_proto_rawDesc, - NumEnums: 24, - NumMessages: 152, + NumEnums: 25, + NumMessages: 154, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_gcmessages_common.proto b/dota/dota_gcmessages_common.proto index db07c6b5..b6bfeb4f 100644 --- a/dota/dota_gcmessages_common.proto +++ b/dota/dota_gcmessages_common.proto @@ -116,6 +116,22 @@ enum EStickerbookPageType { STICKER_PAGE_TALENT = 2; } +enum ENewBloomGiftingResponse { + kENewBloomGifting_Success = 0; + kENewBloomGifting_UnknownFailure = 1; + kENewBloomGifting_MalformedRequest = 2; + kENewBloomGifting_FeatureDisabled = 3; + kENewBloomGifting_ItemNotFound = 4; + kENewBloomGifting_PlayerNotAllowedToGiveGifts = 5; + kENewBloomGifting_TargetNotAllowedToReceiveGifts = 6; + kENewBloomGifting_ServerNotAuthorized = 100; + kENewBloomGifting_PlayerNotInLobby = 101; + kENewBloomGifting_TargetNotInLobby = 102; + kENewBloomGifting_LobbyNotEligible = 103; + kENewBloomGifting_TargetNotFriend = 200; + kENewBloomGifting_TargetFriendDurationTooShort = 201; +} + message CSODOTAGameAccountClient { message RoleHandicap { optional uint32 role = 1; @@ -177,6 +193,7 @@ message CSODOTAGameAccountClient { repeated CSODOTAGameAccountClient.RoleHandicap role_handicaps = 115; optional uint32 event_mode_recent_time = 120; optional uint32 mmr_recalibration_time = 121; + repeated uint32 banned_hero_ids = 123; } message CSODOTAGameAccountPlus { @@ -190,6 +207,10 @@ message CSODOTAGameAccountPlus { optional fixed64 steam_agreement_id = 8; } +message CSODOTAChatWheel { + optional uint32 message_id = 1; +} + message CMsgLobbyFeaturedGamemodeProgress { message AccountProgress { optional uint32 account_id = 1; @@ -559,6 +580,7 @@ message CMsgDOTARealtimeGameStats { repeated CMsgDOTARealtimeGameStats.HeroToHeroStats hero_to_hero_stats = 47; optional bool has_ultimate = 48; optional bool has_ultimate_mana = 49; + optional uint32 team_slot = 50; } message BuildingDetails { @@ -681,6 +703,7 @@ message CMsgDOTARealtimeGameStatsTerse { optional uint32 net_worth = 15; repeated int32 abilities = 16; repeated int32 items = 17; + optional uint32 team_slot = 18; } message BuildingDetails { @@ -1042,8 +1065,6 @@ message CMsgDOTAMatch { optional string dire_team_logo_url = 55; optional uint32 radiant_team_complete = 27; optional uint32 dire_team_complete = 28; - optional uint32 positive_votes = 29; - optional uint32 negative_votes = 30; optional DOTA_GameMode game_mode = 31; repeated CMatchHeroSelectEvent picks_bans = 32; optional uint64 match_seq_num = 33; @@ -1099,6 +1120,13 @@ message CMsgDOTAFantasyPlayerStats { optional uint32 runes_grabbed = 19; optional uint32 first_blood = 20; optional float stuns = 21; + optional uint32 smokes = 22; + optional uint32 neutral_tokens = 23; + optional uint32 watchers = 24; + optional uint32 lotuses = 25; + optional uint32 tormentors = 26; + optional uint32 courier_kills = 27; + optional fixed64 title_stats = 28; } message CMsgDOTAFantasyPlayerMatchStats { @@ -1427,6 +1455,8 @@ message CMsgGameDataSpecialValues { optional bool is_percentage = 4; optional string heading_loc = 5; repeated CMsgGameDataSpecialValueBonus bonuses = 6; + repeated float values_shard = 7; + repeated float values_scepter = 8; } message CMsgGameDataAbilityOrItem { @@ -1488,8 +1518,8 @@ message CMsgGameDataHero { optional uint32 complexity = 21; optional uint32 attack_capability = 22; repeated uint32 role_levels = 23; - optional uint32 damage_min = 24; - optional uint32 damage_max = 25; + optional int32 damage_min = 24; + optional int32 damage_max = 25; optional float attack_rate = 26; optional uint32 attack_range = 27; optional uint32 projectile_speed = 28; @@ -1636,13 +1666,13 @@ message CMsgHeroRoleAllRanksStats { message CMsgMapStatsSnapshot { optional uint32 timestamp = 1; - optional uint64 famangos_gained = 2; + optional uint64 lotuses_gained = 2; optional uint64 wisdom_runes_gained = 3; optional uint64 roshan_kills_day = 4; optional uint64 roshan_kills_night = 5; optional uint64 portals_used = 6; - optional uint64 lanterns_lit = 7; - optional uint64 miniboss_kills = 8; + optional uint64 watchers_taken = 7; + optional uint64 tormentor_kills = 8; optional uint64 outposts_captured = 9; optional uint64 shield_runes_gained = 10; } @@ -1652,3 +1682,8 @@ message CMsgGlobalMapStats { optional CMsgMapStatsSnapshot window_start = 2; optional CMsgMapStatsSnapshot window_end = 3; } + +message CMsgTrackedStat { + optional uint32 tracked_stat_id = 1; + optional int32 tracked_stat_value = 2; +} diff --git a/dota/dota_gcmessages_common_league.pb.go b/dota/dota_gcmessages_common_league.pb.go index 32ce548c..5f2c334d 100644 --- a/dota/dota_gcmessages_common_league.pb.go +++ b/dota/dota_gcmessages_common_league.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_common_league.proto @@ -32,6 +32,7 @@ const ( ELeagueNodeGroupType_BRACKET_DOUBLE_ALL_WINNER ELeagueNodeGroupType = 6 ELeagueNodeGroupType_SHOWMATCH ELeagueNodeGroupType = 7 ELeagueNodeGroupType_GSL ELeagueNodeGroupType = 8 + ELeagueNodeGroupType_PLACEMENT ELeagueNodeGroupType = 9 ) // Enum value maps for ELeagueNodeGroupType. @@ -46,6 +47,7 @@ var ( 6: "BRACKET_DOUBLE_ALL_WINNER", 7: "SHOWMATCH", 8: "GSL", + 9: "PLACEMENT", } ELeagueNodeGroupType_value = map[string]int32{ "INVALID_GROUP_TYPE": 0, @@ -57,6 +59,7 @@ var ( "BRACKET_DOUBLE_ALL_WINNER": 6, "SHOWMATCH": 7, "GSL": 8, + "PLACEMENT": 9, } ) @@ -3941,7 +3944,7 @@ var file_dota_gcmessages_common_league_proto_rawDesc = []byte{ 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x50, 0x43, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x0c, 0x73, 0x61, 0x76, 0x65, 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x73, 0x2a, 0xc8, 0x01, 0x0a, 0x14, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, + 0x73, 0x2a, 0xd7, 0x01, 0x0a, 0x14, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x52, 0x47, 0x41, 0x4e, 0x49, 0x5a, 0x41, 0x54, 0x49, @@ -3953,17 +3956,18 @@ var file_dota_gcmessages_common_league_proto_rawDesc = []byte{ 0x53, 0x45, 0x52, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x42, 0x52, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x5f, 0x57, 0x49, 0x4e, 0x4e, 0x45, 0x52, 0x10, 0x06, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x48, 0x4f, 0x57, 0x4d, 0x41, 0x54, 0x43, - 0x48, 0x10, 0x07, 0x12, 0x07, 0x0a, 0x03, 0x47, 0x53, 0x4c, 0x10, 0x08, 0x2a, 0x6f, 0x0a, 0x0f, - 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x15, 0x0a, 0x11, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x42, 0x45, 0x53, 0x54, 0x5f, 0x4f, - 0x46, 0x5f, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x42, 0x45, 0x53, 0x54, 0x5f, - 0x4f, 0x46, 0x5f, 0x54, 0x48, 0x52, 0x45, 0x45, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x42, 0x45, - 0x53, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x46, 0x49, 0x56, 0x45, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, - 0x42, 0x45, 0x53, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x54, 0x57, 0x4f, 0x10, 0x04, 0x42, 0x25, 0x5a, - 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, - 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, - 0x64, 0x6f, 0x74, 0x61, + 0x48, 0x10, 0x07, 0x12, 0x07, 0x0a, 0x03, 0x47, 0x53, 0x4c, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, + 0x50, 0x4c, 0x41, 0x43, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x09, 0x2a, 0x6f, 0x0a, 0x0f, 0x45, + 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, + 0x0a, 0x11, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x42, 0x45, 0x53, 0x54, 0x5f, 0x4f, 0x46, + 0x5f, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x42, 0x45, 0x53, 0x54, 0x5f, 0x4f, + 0x46, 0x5f, 0x54, 0x48, 0x52, 0x45, 0x45, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x42, 0x45, 0x53, + 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x46, 0x49, 0x56, 0x45, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x42, + 0x45, 0x53, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x54, 0x57, 0x4f, 0x10, 0x04, 0x42, 0x25, 0x5a, 0x23, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, + 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, + 0x6f, 0x74, 0x61, } var ( diff --git a/dota/dota_gcmessages_common_league.proto b/dota/dota_gcmessages_common_league.proto index c1500d27..6bd91829 100644 --- a/dota/dota_gcmessages_common_league.proto +++ b/dota/dota_gcmessages_common_league.proto @@ -15,6 +15,7 @@ enum ELeagueNodeGroupType { BRACKET_DOUBLE_ALL_WINNER = 6; SHOWMATCH = 7; GSL = 8; + PLACEMENT = 9; } enum ELeagueNodeType { diff --git a/dota/dota_gcmessages_common_lobby.pb.go b/dota/dota_gcmessages_common_lobby.pb.go index 64e07161..30b6342e 100644 --- a/dota/dota_gcmessages_common_lobby.pb.go +++ b/dota/dota_gcmessages_common_lobby.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_common_lobby.proto @@ -268,7 +268,7 @@ func (x *CSODOTALobby_State) UnmarshalJSON(b []byte) error { // Deprecated: Use CSODOTALobby_State.Descriptor instead. func (CSODOTALobby_State) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{14, 0} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{17, 0} } type CSODOTALobby_LobbyType int32 @@ -351,7 +351,7 @@ func (x *CSODOTALobby_LobbyType) UnmarshalJSON(b []byte) error { // Deprecated: Use CSODOTALobby_LobbyType.Descriptor instead. func (CSODOTALobby_LobbyType) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{14, 1} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{17, 1} } type CMsgLobbyCoachFriendRequest struct { @@ -464,6 +464,124 @@ func (x *CMsgLobbyPlayerPlusSubscriptionData) GetHeroBadges() []*CMsgLobbyPlayer return nil } +type CMsgEventActionData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ActionId *uint32 `protobuf:"varint,1,opt,name=action_id,json=actionId" json:"action_id,omitempty"` + ActionScore *uint32 `protobuf:"varint,2,opt,name=action_score,json=actionScore" json:"action_score,omitempty"` +} + +func (x *CMsgEventActionData) Reset() { + *x = CMsgEventActionData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgEventActionData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgEventActionData) ProtoMessage() {} + +func (x *CMsgEventActionData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgEventActionData.ProtoReflect.Descriptor instead. +func (*CMsgEventActionData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{2} +} + +func (x *CMsgEventActionData) GetActionId() uint32 { + if x != nil && x.ActionId != nil { + return *x.ActionId + } + return 0 +} + +func (x *CMsgEventActionData) GetActionScore() uint32 { + if x != nil && x.ActionScore != nil { + return *x.ActionScore + } + return 0 +} + +type CMsgPeriodicResourceData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PeriodicResourceId *uint32 `protobuf:"varint,1,opt,name=periodic_resource_id,json=periodicResourceId" json:"periodic_resource_id,omitempty"` + Remaining *uint32 `protobuf:"varint,2,opt,name=remaining" json:"remaining,omitempty"` + Max *uint32 `protobuf:"varint,3,opt,name=max" json:"max,omitempty"` +} + +func (x *CMsgPeriodicResourceData) Reset() { + *x = CMsgPeriodicResourceData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgPeriodicResourceData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgPeriodicResourceData) ProtoMessage() {} + +func (x *CMsgPeriodicResourceData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgPeriodicResourceData.ProtoReflect.Descriptor instead. +func (*CMsgPeriodicResourceData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{3} +} + +func (x *CMsgPeriodicResourceData) GetPeriodicResourceId() uint32 { + if x != nil && x.PeriodicResourceId != nil { + return *x.PeriodicResourceId + } + return 0 +} + +func (x *CMsgPeriodicResourceData) GetRemaining() uint32 { + if x != nil && x.Remaining != nil { + return *x.Remaining + } + return 0 +} + +func (x *CMsgPeriodicResourceData) GetMax() uint32 { + if x != nil && x.Max != nil { + return *x.Max + } + return 0 +} + type CMsgLobbyEventPoints struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -476,7 +594,7 @@ type CMsgLobbyEventPoints struct { func (x *CMsgLobbyEventPoints) Reset() { *x = CMsgLobbyEventPoints{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[2] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -489,7 +607,7 @@ func (x *CMsgLobbyEventPoints) String() string { func (*CMsgLobbyEventPoints) ProtoMessage() {} func (x *CMsgLobbyEventPoints) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[2] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -502,7 +620,7 @@ func (x *CMsgLobbyEventPoints) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLobbyEventPoints.ProtoReflect.Descriptor instead. func (*CMsgLobbyEventPoints) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{2} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{4} } func (x *CMsgLobbyEventPoints) GetEventId() uint32 { @@ -531,7 +649,7 @@ type CMsgLobbyEventGameData struct { func (x *CMsgLobbyEventGameData) Reset() { *x = CMsgLobbyEventGameData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[3] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -544,7 +662,7 @@ func (x *CMsgLobbyEventGameData) String() string { func (*CMsgLobbyEventGameData) ProtoMessage() {} func (x *CMsgLobbyEventGameData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[3] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -557,7 +675,7 @@ func (x *CMsgLobbyEventGameData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLobbyEventGameData.ProtoReflect.Descriptor instead. func (*CMsgLobbyEventGameData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{3} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{5} } func (x *CMsgLobbyEventGameData) GetGameSeed() uint32 { @@ -592,7 +710,7 @@ type CSODOTALobbyInvite struct { func (x *CSODOTALobbyInvite) Reset() { *x = CSODOTALobbyInvite{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[4] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -605,7 +723,7 @@ func (x *CSODOTALobbyInvite) String() string { func (*CSODOTALobbyInvite) ProtoMessage() {} func (x *CSODOTALobbyInvite) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[4] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -618,7 +736,7 @@ func (x *CSODOTALobbyInvite) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTALobbyInvite.ProtoReflect.Descriptor instead. func (*CSODOTALobbyInvite) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{4} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{6} } func (x *CSODOTALobbyInvite) GetGroupId() uint64 { @@ -723,12 +841,13 @@ type CSODOTALobbyMember struct { IsSteamChina *bool `protobuf:"varint,54,opt,name=is_steam_china,json=isSteamChina" json:"is_steam_china,omitempty"` LiveSpectatorAccountId *uint32 `protobuf:"varint,55,opt,name=live_spectator_account_id,json=liveSpectatorAccountId" json:"live_spectator_account_id,omitempty"` CommsReportsAvailable *uint32 `protobuf:"varint,56,opt,name=comms_reports_available,json=commsReportsAvailable" json:"comms_reports_available,omitempty"` + BannedHeroIds []uint32 `protobuf:"varint,57,rep,name=banned_hero_ids,json=bannedHeroIds" json:"banned_hero_ids,omitempty"` } func (x *CSODOTALobbyMember) Reset() { *x = CSODOTALobbyMember{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[5] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -741,7 +860,7 @@ func (x *CSODOTALobbyMember) String() string { func (*CSODOTALobbyMember) ProtoMessage() {} func (x *CSODOTALobbyMember) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[5] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -754,7 +873,7 @@ func (x *CSODOTALobbyMember) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTALobbyMember.ProtoReflect.Descriptor instead. func (*CSODOTALobbyMember) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{5} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{7} } func (x *CSODOTALobbyMember) GetId() uint64 { @@ -1044,6 +1163,13 @@ func (x *CSODOTALobbyMember) GetCommsReportsAvailable() uint32 { return 0 } +func (x *CSODOTALobbyMember) GetBannedHeroIds() []uint32 { + if x != nil { + return x.BannedHeroIds + } + return nil +} + type CSODOTAServerLobbyMember struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1053,7 +1179,7 @@ type CSODOTAServerLobbyMember struct { func (x *CSODOTAServerLobbyMember) Reset() { *x = CSODOTAServerLobbyMember{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[6] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1066,7 +1192,7 @@ func (x *CSODOTAServerLobbyMember) String() string { func (*CSODOTAServerLobbyMember) ProtoMessage() {} func (x *CSODOTAServerLobbyMember) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[6] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1079,7 +1205,7 @@ func (x *CSODOTAServerLobbyMember) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAServerLobbyMember.ProtoReflect.Descriptor instead. func (*CSODOTAServerLobbyMember) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{6} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{8} } type CSODOTAStaticLobbyMember struct { @@ -1091,7 +1217,7 @@ type CSODOTAStaticLobbyMember struct { func (x *CSODOTAStaticLobbyMember) Reset() { *x = CSODOTAStaticLobbyMember{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[7] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1104,7 +1230,7 @@ func (x *CSODOTAStaticLobbyMember) String() string { func (*CSODOTAStaticLobbyMember) ProtoMessage() {} func (x *CSODOTAStaticLobbyMember) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[7] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1117,19 +1243,21 @@ func (x *CSODOTAStaticLobbyMember) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAStaticLobbyMember.ProtoReflect.Descriptor instead. func (*CSODOTAStaticLobbyMember) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{7} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{9} } type CSODOTAServerStaticLobbyMember struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + SteamId *uint64 `protobuf:"fixed64,1,opt,name=steam_id,json=steamId" json:"steam_id,omitempty"` } func (x *CSODOTAServerStaticLobbyMember) Reset() { *x = CSODOTAServerStaticLobbyMember{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[8] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1142,7 +1270,7 @@ func (x *CSODOTAServerStaticLobbyMember) String() string { func (*CSODOTAServerStaticLobbyMember) ProtoMessage() {} func (x *CSODOTAServerStaticLobbyMember) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[8] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1155,7 +1283,14 @@ func (x *CSODOTAServerStaticLobbyMember) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAServerStaticLobbyMember.ProtoReflect.Descriptor instead. func (*CSODOTAServerStaticLobbyMember) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{8} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{10} +} + +func (x *CSODOTAServerStaticLobbyMember) GetSteamId() uint64 { + if x != nil && x.SteamId != nil { + return *x.SteamId + } + return 0 } type CLobbyTeamDetails struct { @@ -1182,7 +1317,7 @@ type CLobbyTeamDetails struct { func (x *CLobbyTeamDetails) Reset() { *x = CLobbyTeamDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[9] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1195,7 +1330,7 @@ func (x *CLobbyTeamDetails) String() string { func (*CLobbyTeamDetails) ProtoMessage() {} func (x *CLobbyTeamDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[9] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1208,7 +1343,7 @@ func (x *CLobbyTeamDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CLobbyTeamDetails.ProtoReflect.Descriptor instead. func (*CLobbyTeamDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{9} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{11} } func (x *CLobbyTeamDetails) GetTeamName() string { @@ -1330,7 +1465,7 @@ type CLobbyGuildDetails struct { func (x *CLobbyGuildDetails) Reset() { *x = CLobbyGuildDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[10] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1343,7 +1478,7 @@ func (x *CLobbyGuildDetails) String() string { func (*CLobbyGuildDetails) ProtoMessage() {} func (x *CLobbyGuildDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[10] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1356,7 +1491,7 @@ func (x *CLobbyGuildDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CLobbyGuildDetails.ProtoReflect.Descriptor instead. func (*CLobbyGuildDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{10} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{12} } func (x *CLobbyGuildDetails) GetGuildId() uint32 { @@ -1451,7 +1586,7 @@ type CLobbyTimedRewardDetails struct { func (x *CLobbyTimedRewardDetails) Reset() { *x = CLobbyTimedRewardDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[11] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1464,7 +1599,7 @@ func (x *CLobbyTimedRewardDetails) String() string { func (*CLobbyTimedRewardDetails) ProtoMessage() {} func (x *CLobbyTimedRewardDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[11] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1477,7 +1612,7 @@ func (x *CLobbyTimedRewardDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CLobbyTimedRewardDetails.ProtoReflect.Descriptor instead. func (*CLobbyTimedRewardDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{11} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{13} } func (x *CLobbyTimedRewardDetails) GetItemDefIndex() uint32 { @@ -1529,7 +1664,7 @@ type CLobbyBroadcastChannelInfo struct { func (x *CLobbyBroadcastChannelInfo) Reset() { *x = CLobbyBroadcastChannelInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[12] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1542,7 +1677,7 @@ func (x *CLobbyBroadcastChannelInfo) String() string { func (*CLobbyBroadcastChannelInfo) ProtoMessage() {} func (x *CLobbyBroadcastChannelInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[12] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1555,7 +1690,7 @@ func (x *CLobbyBroadcastChannelInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CLobbyBroadcastChannelInfo.ProtoReflect.Descriptor instead. func (*CLobbyBroadcastChannelInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{12} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{14} } func (x *CLobbyBroadcastChannelInfo) GetChannelId() uint32 { @@ -1604,7 +1739,7 @@ type CLobbyGuildChallenge struct { func (x *CLobbyGuildChallenge) Reset() { *x = CLobbyGuildChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[13] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1617,7 +1752,7 @@ func (x *CLobbyGuildChallenge) String() string { func (*CLobbyGuildChallenge) ProtoMessage() {} func (x *CLobbyGuildChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[13] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1630,7 +1765,7 @@ func (x *CLobbyGuildChallenge) ProtoReflect() protoreflect.Message { // Deprecated: Use CLobbyGuildChallenge.ProtoReflect.Descriptor instead. func (*CLobbyGuildChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{13} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{15} } func (x *CLobbyGuildChallenge) GetGuildId() uint32 { @@ -1689,6 +1824,77 @@ func (x *CLobbyGuildChallenge) GetEligibleAccountIds() []uint32 { return nil } +type CDOTALobbyMatchQualityData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OverallQuality *uint32 `protobuf:"varint,1,opt,name=overall_quality,json=overallQuality" json:"overall_quality,omitempty"` + TeamBalance *uint32 `protobuf:"varint,2,opt,name=team_balance,json=teamBalance" json:"team_balance,omitempty"` + MatchSkillRange *uint32 `protobuf:"varint,3,opt,name=match_skill_range,json=matchSkillRange" json:"match_skill_range,omitempty"` + MatchBehavior *uint32 `protobuf:"varint,4,opt,name=match_behavior,json=matchBehavior" json:"match_behavior,omitempty"` +} + +func (x *CDOTALobbyMatchQualityData) Reset() { + *x = CDOTALobbyMatchQualityData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CDOTALobbyMatchQualityData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CDOTALobbyMatchQualityData) ProtoMessage() {} + +func (x *CDOTALobbyMatchQualityData) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CDOTALobbyMatchQualityData.ProtoReflect.Descriptor instead. +func (*CDOTALobbyMatchQualityData) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{16} +} + +func (x *CDOTALobbyMatchQualityData) GetOverallQuality() uint32 { + if x != nil && x.OverallQuality != nil { + return *x.OverallQuality + } + return 0 +} + +func (x *CDOTALobbyMatchQualityData) GetTeamBalance() uint32 { + if x != nil && x.TeamBalance != nil { + return *x.TeamBalance + } + return 0 +} + +func (x *CDOTALobbyMatchQualityData) GetMatchSkillRange() uint32 { + if x != nil && x.MatchSkillRange != nil { + return *x.MatchSkillRange + } + return 0 +} + +func (x *CDOTALobbyMatchQualityData) GetMatchBehavior() uint32 { + if x != nil && x.MatchBehavior != nil { + return *x.MatchBehavior + } + return 0 +} + type CSODOTALobby struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1780,7 +1986,6 @@ type CSODOTALobby struct { LeagueNodeId *uint32 `protobuf:"varint,110,opt,name=league_node_id,json=leagueNodeId" json:"league_node_id,omitempty"` MatchDuration *uint32 `protobuf:"varint,111,opt,name=match_duration,json=matchDuration" json:"match_duration,omitempty"` LeaguePhase *uint32 `protobuf:"varint,113,opt,name=league_phase,json=leaguePhase" json:"league_phase,omitempty"` - RecordDetailedStats *bool `protobuf:"varint,114,opt,name=record_detailed_stats,json=recordDetailedStats" json:"record_detailed_stats,omitempty"` ExperimentalGameplayEnabled *bool `protobuf:"varint,116,opt,name=experimental_gameplay_enabled,json=experimentalGameplayEnabled" json:"experimental_gameplay_enabled,omitempty"` GuildChallenges []*CLobbyGuildChallenge `protobuf:"bytes,117,rep,name=guild_challenges,json=guildChallenges" json:"guild_challenges,omitempty"` GuildDetails []*CLobbyGuildDetails `protobuf:"bytes,118,rep,name=guild_details,json=guildDetails" json:"guild_details,omitempty"` @@ -1792,12 +1997,13 @@ type CSODOTALobby struct { LobbyCreationTime *uint32 `protobuf:"varint,128,opt,name=lobby_creation_time,json=lobbyCreationTime" json:"lobby_creation_time,omitempty"` EventGameDefinition *string `protobuf:"bytes,129,opt,name=event_game_definition,json=eventGameDefinition" json:"event_game_definition,omitempty"` ExtraStartupMessages []*CSODOTALobby_CExtraMsg `protobuf:"bytes,130,rep,name=extra_startup_messages,json=extraStartupMessages" json:"extra_startup_messages,omitempty"` + MatchQualityData *CDOTALobbyMatchQualityData `protobuf:"bytes,131,opt,name=match_quality_data,json=matchQualityData" json:"match_quality_data,omitempty"` } func (x *CSODOTALobby) Reset() { *x = CSODOTALobby{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[14] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1810,7 +2016,7 @@ func (x *CSODOTALobby) String() string { func (*CSODOTALobby) ProtoMessage() {} func (x *CSODOTALobby) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[14] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1823,7 +2029,7 @@ func (x *CSODOTALobby) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTALobby.ProtoReflect.Descriptor instead. func (*CSODOTALobby) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{14} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{17} } func (x *CSODOTALobby) GetLobbyId() uint64 { @@ -2428,13 +2634,6 @@ func (x *CSODOTALobby) GetLeaguePhase() uint32 { return 0 } -func (x *CSODOTALobby) GetRecordDetailedStats() bool { - if x != nil && x.RecordDetailedStats != nil { - return *x.RecordDetailedStats - } - return false -} - func (x *CSODOTALobby) GetExperimentalGameplayEnabled() bool { if x != nil && x.ExperimentalGameplayEnabled != nil { return *x.ExperimentalGameplayEnabled @@ -2512,6 +2711,13 @@ func (x *CSODOTALobby) GetExtraStartupMessages() []*CSODOTALobby_CExtraMsg { return nil } +func (x *CSODOTALobby) GetMatchQualityData() *CDOTALobbyMatchQualityData { + if x != nil { + return x.MatchQualityData + } + return nil +} + type CSODOTAServerLobby struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2523,7 +2729,7 @@ type CSODOTAServerLobby struct { func (x *CSODOTAServerLobby) Reset() { *x = CSODOTAServerLobby{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[15] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2536,7 +2742,7 @@ func (x *CSODOTAServerLobby) String() string { func (*CSODOTAServerLobby) ProtoMessage() {} func (x *CSODOTAServerLobby) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[15] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2549,7 +2755,7 @@ func (x *CSODOTAServerLobby) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAServerLobby.ProtoReflect.Descriptor instead. func (*CSODOTAServerLobby) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{15} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{18} } func (x *CSODOTAServerLobby) GetAllMembers() []*CSODOTAServerLobbyMember { @@ -2564,14 +2770,15 @@ type CSODOTAStaticLobby struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AllMembers []*CSODOTAStaticLobbyMember `protobuf:"bytes,1,rep,name=all_members,json=allMembers" json:"all_members,omitempty"` - IsPlayerDraft *bool `protobuf:"varint,2,opt,name=is_player_draft,json=isPlayerDraft" json:"is_player_draft,omitempty"` + AllMembers []*CSODOTAStaticLobbyMember `protobuf:"bytes,1,rep,name=all_members,json=allMembers" json:"all_members,omitempty"` + IsPlayerDraft *bool `protobuf:"varint,2,opt,name=is_player_draft,json=isPlayerDraft" json:"is_player_draft,omitempty"` + IsLastMatchInSeries *bool `protobuf:"varint,3,opt,name=is_last_match_in_series,json=isLastMatchInSeries" json:"is_last_match_in_series,omitempty"` } func (x *CSODOTAStaticLobby) Reset() { *x = CSODOTAStaticLobby{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[16] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2584,7 +2791,7 @@ func (x *CSODOTAStaticLobby) String() string { func (*CSODOTAStaticLobby) ProtoMessage() {} func (x *CSODOTAStaticLobby) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[16] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2597,7 +2804,7 @@ func (x *CSODOTAStaticLobby) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAStaticLobby.ProtoReflect.Descriptor instead. func (*CSODOTAStaticLobby) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{16} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{19} } func (x *CSODOTAStaticLobby) GetAllMembers() []*CSODOTAStaticLobbyMember { @@ -2614,6 +2821,13 @@ func (x *CSODOTAStaticLobby) GetIsPlayerDraft() bool { return false } +func (x *CSODOTAStaticLobby) GetIsLastMatchInSeries() bool { + if x != nil && x.IsLastMatchInSeries != nil { + return *x.IsLastMatchInSeries + } + return false +} + type CSODOTAServerStaticLobby struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2625,7 +2839,7 @@ type CSODOTAServerStaticLobby struct { func (x *CSODOTAServerStaticLobby) Reset() { *x = CSODOTAServerStaticLobby{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[17] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2638,7 +2852,7 @@ func (x *CSODOTAServerStaticLobby) String() string { func (*CSODOTAServerStaticLobby) ProtoMessage() {} func (x *CSODOTAServerStaticLobby) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[17] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2651,7 +2865,7 @@ func (x *CSODOTAServerStaticLobby) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTAServerStaticLobby.ProtoReflect.Descriptor instead. func (*CSODOTAServerStaticLobby) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{17} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{20} } func (x *CSODOTAServerStaticLobby) GetAllMembers() []*CSODOTAServerStaticLobbyMember { @@ -2675,7 +2889,7 @@ type CMsgAdditionalLobbyStartupAccountData struct { func (x *CMsgAdditionalLobbyStartupAccountData) Reset() { *x = CMsgAdditionalLobbyStartupAccountData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[18] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2688,7 +2902,7 @@ func (x *CMsgAdditionalLobbyStartupAccountData) String() string { func (*CMsgAdditionalLobbyStartupAccountData) ProtoMessage() {} func (x *CMsgAdditionalLobbyStartupAccountData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[18] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2701,7 +2915,7 @@ func (x *CMsgAdditionalLobbyStartupAccountData) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgAdditionalLobbyStartupAccountData.ProtoReflect.Descriptor instead. func (*CMsgAdditionalLobbyStartupAccountData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{18} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{21} } func (x *CMsgAdditionalLobbyStartupAccountData) GetAccountId() uint32 { @@ -2741,7 +2955,7 @@ type CMsgLobbyInitializationComplete struct { func (x *CMsgLobbyInitializationComplete) Reset() { *x = CMsgLobbyInitializationComplete{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[19] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2754,7 +2968,7 @@ func (x *CMsgLobbyInitializationComplete) String() string { func (*CMsgLobbyInitializationComplete) ProtoMessage() {} func (x *CMsgLobbyInitializationComplete) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[19] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2767,7 +2981,7 @@ func (x *CMsgLobbyInitializationComplete) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLobbyInitializationComplete.ProtoReflect.Descriptor instead. func (*CMsgLobbyInitializationComplete) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{19} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{22} } type CMsgLobbyPlaytestDetails struct { @@ -2781,7 +2995,7 @@ type CMsgLobbyPlaytestDetails struct { func (x *CMsgLobbyPlaytestDetails) Reset() { *x = CMsgLobbyPlaytestDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[20] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2794,7 +3008,7 @@ func (x *CMsgLobbyPlaytestDetails) String() string { func (*CMsgLobbyPlaytestDetails) ProtoMessage() {} func (x *CMsgLobbyPlaytestDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[20] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2807,7 +3021,7 @@ func (x *CMsgLobbyPlaytestDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLobbyPlaytestDetails.ProtoReflect.Descriptor instead. func (*CMsgLobbyPlaytestDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{20} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{23} } func (x *CMsgLobbyPlaytestDetails) GetJson() string { @@ -2836,7 +3050,7 @@ type CMsgLocalServerGuildData struct { func (x *CMsgLocalServerGuildData) Reset() { *x = CMsgLocalServerGuildData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[21] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2849,7 +3063,7 @@ func (x *CMsgLocalServerGuildData) String() string { func (*CMsgLocalServerGuildData) ProtoMessage() {} func (x *CMsgLocalServerGuildData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[21] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2862,7 +3076,7 @@ func (x *CMsgLocalServerGuildData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLocalServerGuildData.ProtoReflect.Descriptor instead. func (*CMsgLocalServerGuildData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{21} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{24} } func (x *CMsgLocalServerGuildData) GetGuildId() uint32 { @@ -2947,7 +3161,7 @@ type CMsgLocalServerFakeLobbyData struct { func (x *CMsgLocalServerFakeLobbyData) Reset() { *x = CMsgLocalServerFakeLobbyData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[22] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2960,7 +3174,7 @@ func (x *CMsgLocalServerFakeLobbyData) String() string { func (*CMsgLocalServerFakeLobbyData) ProtoMessage() {} func (x *CMsgLocalServerFakeLobbyData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[22] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2973,7 +3187,7 @@ func (x *CMsgLocalServerFakeLobbyData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLocalServerFakeLobbyData.ProtoReflect.Descriptor instead. func (*CMsgLocalServerFakeLobbyData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{22} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{25} } func (x *CMsgLocalServerFakeLobbyData) GetAccountId() uint32 { @@ -3051,7 +3265,7 @@ type CMsgLobbyPlayerPlusSubscriptionData_HeroBadge struct { func (x *CMsgLobbyPlayerPlusSubscriptionData_HeroBadge) Reset() { *x = CMsgLobbyPlayerPlusSubscriptionData_HeroBadge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[23] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3064,7 +3278,7 @@ func (x *CMsgLobbyPlayerPlusSubscriptionData_HeroBadge) String() string { func (*CMsgLobbyPlayerPlusSubscriptionData_HeroBadge) ProtoMessage() {} func (x *CMsgLobbyPlayerPlusSubscriptionData_HeroBadge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[23] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3094,147 +3308,30 @@ func (x *CMsgLobbyPlayerPlusSubscriptionData_HeroBadge) GetHeroBadgeXp() uint32 return 0 } -type CMsgLobbyEventPoints_PeriodicResourceData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PeriodicResourceId *uint32 `protobuf:"varint,1,opt,name=periodic_resource_id,json=periodicResourceId" json:"periodic_resource_id,omitempty"` - Remaining *uint32 `protobuf:"varint,2,opt,name=remaining" json:"remaining,omitempty"` - Max *uint32 `protobuf:"varint,3,opt,name=max" json:"max,omitempty"` -} - -func (x *CMsgLobbyEventPoints_PeriodicResourceData) Reset() { - *x = CMsgLobbyEventPoints_PeriodicResourceData{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgLobbyEventPoints_PeriodicResourceData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgLobbyEventPoints_PeriodicResourceData) ProtoMessage() {} - -func (x *CMsgLobbyEventPoints_PeriodicResourceData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgLobbyEventPoints_PeriodicResourceData.ProtoReflect.Descriptor instead. -func (*CMsgLobbyEventPoints_PeriodicResourceData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{2, 0} -} - -func (x *CMsgLobbyEventPoints_PeriodicResourceData) GetPeriodicResourceId() uint32 { - if x != nil && x.PeriodicResourceId != nil { - return *x.PeriodicResourceId - } - return 0 -} - -func (x *CMsgLobbyEventPoints_PeriodicResourceData) GetRemaining() uint32 { - if x != nil && x.Remaining != nil { - return *x.Remaining - } - return 0 -} - -func (x *CMsgLobbyEventPoints_PeriodicResourceData) GetMax() uint32 { - if x != nil && x.Max != nil { - return *x.Max - } - return 0 -} - -type CMsgLobbyEventPoints_NetworkedEventAction struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ActionId *uint32 `protobuf:"varint,1,opt,name=action_id,json=actionId" json:"action_id,omitempty"` - TimesGranted *uint32 `protobuf:"varint,2,opt,name=times_granted,json=timesGranted" json:"times_granted,omitempty"` -} - -func (x *CMsgLobbyEventPoints_NetworkedEventAction) Reset() { - *x = CMsgLobbyEventPoints_NetworkedEventAction{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgLobbyEventPoints_NetworkedEventAction) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgLobbyEventPoints_NetworkedEventAction) ProtoMessage() {} - -func (x *CMsgLobbyEventPoints_NetworkedEventAction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgLobbyEventPoints_NetworkedEventAction.ProtoReflect.Descriptor instead. -func (*CMsgLobbyEventPoints_NetworkedEventAction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{2, 1} -} - -func (x *CMsgLobbyEventPoints_NetworkedEventAction) GetActionId() uint32 { - if x != nil && x.ActionId != nil { - return *x.ActionId - } - return 0 -} - -func (x *CMsgLobbyEventPoints_NetworkedEventAction) GetTimesGranted() uint32 { - if x != nil && x.TimesGranted != nil { - return *x.TimesGranted - } - return 0 -} - type CMsgLobbyEventPoints_AccountPoints struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` - NormalPoints *uint32 `protobuf:"varint,2,opt,name=normal_points,json=normalPoints" json:"normal_points,omitempty"` - PremiumPoints *uint32 `protobuf:"varint,3,opt,name=premium_points,json=premiumPoints" json:"premium_points,omitempty"` - Owned *bool `protobuf:"varint,4,opt,name=owned" json:"owned,omitempty"` - ActiveEffectsMask *uint64 `protobuf:"varint,12,opt,name=active_effects_mask,json=activeEffectsMask" json:"active_effects_mask,omitempty"` - WagerStreak *uint32 `protobuf:"varint,23,opt,name=wager_streak,json=wagerStreak" json:"wager_streak,omitempty"` - EventGameCustomActions []*CMsgLobbyEventPoints_NetworkedEventAction `protobuf:"bytes,25,rep,name=event_game_custom_actions,json=eventGameCustomActions" json:"event_game_custom_actions,omitempty"` - TipAmountIndex *uint32 `protobuf:"varint,26,opt,name=tip_amount_index,json=tipAmountIndex" json:"tip_amount_index,omitempty"` - ActiveEventSeasonId *uint32 `protobuf:"varint,27,opt,name=active_event_season_id,json=activeEventSeasonId" json:"active_event_season_id,omitempty"` - TeleportFxLevel *uint32 `protobuf:"varint,28,opt,name=teleport_fx_level,json=teleportFxLevel" json:"teleport_fx_level,omitempty"` - NetworkedEventActions []*CMsgLobbyEventPoints_NetworkedEventAction `protobuf:"bytes,30,rep,name=networked_event_actions,json=networkedEventActions" json:"networked_event_actions,omitempty"` - PeriodicResources []*CMsgLobbyEventPoints_PeriodicResourceData `protobuf:"bytes,31,rep,name=periodic_resources,json=periodicResources" json:"periodic_resources,omitempty"` + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + NormalPoints *uint32 `protobuf:"varint,2,opt,name=normal_points,json=normalPoints" json:"normal_points,omitempty"` + PremiumPoints *uint32 `protobuf:"varint,3,opt,name=premium_points,json=premiumPoints" json:"premium_points,omitempty"` + Owned *bool `protobuf:"varint,4,opt,name=owned" json:"owned,omitempty"` + ActiveEffectsMask *uint64 `protobuf:"varint,12,opt,name=active_effects_mask,json=activeEffectsMask" json:"active_effects_mask,omitempty"` + WagerStreak *uint32 `protobuf:"varint,23,opt,name=wager_streak,json=wagerStreak" json:"wager_streak,omitempty"` + EventGameCustomActions []*CMsgEventActionData `protobuf:"bytes,25,rep,name=event_game_custom_actions,json=eventGameCustomActions" json:"event_game_custom_actions,omitempty"` + TipAmountIndex *uint32 `protobuf:"varint,26,opt,name=tip_amount_index,json=tipAmountIndex" json:"tip_amount_index,omitempty"` + ActiveEventSeasonId *uint32 `protobuf:"varint,27,opt,name=active_event_season_id,json=activeEventSeasonId" json:"active_event_season_id,omitempty"` + TeleportFxLevel *uint32 `protobuf:"varint,28,opt,name=teleport_fx_level,json=teleportFxLevel" json:"teleport_fx_level,omitempty"` + NetworkedEventActions []*CMsgEventActionData `protobuf:"bytes,30,rep,name=networked_event_actions,json=networkedEventActions" json:"networked_event_actions,omitempty"` + PeriodicResources []*CMsgPeriodicResourceData `protobuf:"bytes,31,rep,name=periodic_resources,json=periodicResources" json:"periodic_resources,omitempty"` + ExtraEventMessages []*CExtraMsgBlock `protobuf:"bytes,32,rep,name=extra_event_messages,json=extraEventMessages" json:"extra_event_messages,omitempty"` } func (x *CMsgLobbyEventPoints_AccountPoints) Reset() { *x = CMsgLobbyEventPoints_AccountPoints{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[26] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3247,7 +3344,7 @@ func (x *CMsgLobbyEventPoints_AccountPoints) String() string { func (*CMsgLobbyEventPoints_AccountPoints) ProtoMessage() {} func (x *CMsgLobbyEventPoints_AccountPoints) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[26] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3260,7 +3357,7 @@ func (x *CMsgLobbyEventPoints_AccountPoints) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgLobbyEventPoints_AccountPoints.ProtoReflect.Descriptor instead. func (*CMsgLobbyEventPoints_AccountPoints) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{2, 2} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{4, 0} } func (x *CMsgLobbyEventPoints_AccountPoints) GetAccountId() uint32 { @@ -3305,7 +3402,7 @@ func (x *CMsgLobbyEventPoints_AccountPoints) GetWagerStreak() uint32 { return 0 } -func (x *CMsgLobbyEventPoints_AccountPoints) GetEventGameCustomActions() []*CMsgLobbyEventPoints_NetworkedEventAction { +func (x *CMsgLobbyEventPoints_AccountPoints) GetEventGameCustomActions() []*CMsgEventActionData { if x != nil { return x.EventGameCustomActions } @@ -3333,20 +3430,27 @@ func (x *CMsgLobbyEventPoints_AccountPoints) GetTeleportFxLevel() uint32 { return 0 } -func (x *CMsgLobbyEventPoints_AccountPoints) GetNetworkedEventActions() []*CMsgLobbyEventPoints_NetworkedEventAction { +func (x *CMsgLobbyEventPoints_AccountPoints) GetNetworkedEventActions() []*CMsgEventActionData { if x != nil { return x.NetworkedEventActions } return nil } -func (x *CMsgLobbyEventPoints_AccountPoints) GetPeriodicResources() []*CMsgLobbyEventPoints_PeriodicResourceData { +func (x *CMsgLobbyEventPoints_AccountPoints) GetPeriodicResources() []*CMsgPeriodicResourceData { if x != nil { return x.PeriodicResources } return nil } +func (x *CMsgLobbyEventPoints_AccountPoints) GetExtraEventMessages() []*CExtraMsgBlock { + if x != nil { + return x.ExtraEventMessages + } + return nil +} + type CSODOTALobbyInvite_LobbyMember struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3359,7 +3463,7 @@ type CSODOTALobbyInvite_LobbyMember struct { func (x *CSODOTALobbyInvite_LobbyMember) Reset() { *x = CSODOTALobbyInvite_LobbyMember{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[27] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3372,7 +3476,7 @@ func (x *CSODOTALobbyInvite_LobbyMember) String() string { func (*CSODOTALobbyInvite_LobbyMember) ProtoMessage() {} func (x *CSODOTALobbyInvite_LobbyMember) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[27] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3385,7 +3489,7 @@ func (x *CSODOTALobbyInvite_LobbyMember) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTALobbyInvite_LobbyMember.ProtoReflect.Descriptor instead. func (*CSODOTALobbyInvite_LobbyMember) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{4, 0} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{6, 0} } func (x *CSODOTALobbyInvite_LobbyMember) GetName() string { @@ -3414,7 +3518,7 @@ type CSODOTALobby_CExtraMsg struct { func (x *CSODOTALobby_CExtraMsg) Reset() { *x = CSODOTALobby_CExtraMsg{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[28] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3427,7 +3531,7 @@ func (x *CSODOTALobby_CExtraMsg) String() string { func (*CSODOTALobby_CExtraMsg) ProtoMessage() {} func (x *CSODOTALobby_CExtraMsg) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[28] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3440,7 +3544,7 @@ func (x *CSODOTALobby_CExtraMsg) ProtoReflect() protoreflect.Message { // Deprecated: Use CSODOTALobby_CExtraMsg.ProtoReflect.Descriptor instead. func (*CSODOTALobby_CExtraMsg) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{14, 0} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{17, 0} } func (x *CSODOTALobby_CExtraMsg) GetId() uint32 { @@ -3469,7 +3573,7 @@ type CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange struct { func (x *CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange) Reset() { *x = CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[29] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3482,7 +3586,7 @@ func (x *CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange) String() s func (*CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange) ProtoMessage() {} func (x *CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[29] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3495,7 +3599,7 @@ func (x *CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange) ProtoRefle // Deprecated: Use CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange.ProtoReflect.Descriptor instead. func (*CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{18, 0} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{21, 0} } func (x *CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange) GetMessageIdStart() uint32 { @@ -3524,7 +3628,7 @@ type CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange struct { func (x *CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange) Reset() { *x = CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[30] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3537,7 +3641,7 @@ func (x *CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange) String() s func (*CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange) ProtoMessage() {} func (x *CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[30] + mi := &file_dota_gcmessages_common_lobby_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3550,7 +3654,7 @@ func (x *CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange) ProtoRefle // Deprecated: Use CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange.ProtoReflect.Descriptor instead. func (*CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{18, 1} + return file_dota_gcmessages_common_lobby_proto_rawDescGZIP(), []int{21, 1} } func (x *CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange) GetMessageIdStart() uint32 { @@ -3575,844 +3679,868 @@ var file_dota_gcmessages_common_lobby_proto_rawDesc = []byte{ 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0x13, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x75, - 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbd, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, - 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x6f, 0x61, 0x63, - 0x68, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x48, - 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0xc5, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, - 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x6c, 0x75, 0x73, - 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x54, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x64, 0x67, 0x65, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x6c, 0x75, 0x73, - 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, - 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, - 0x42, 0x61, 0x64, 0x67, 0x65, 0x73, 0x1a, 0x48, 0x0a, 0x09, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, - 0x64, 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, - 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x64, 0x67, 0x65, 0x5f, 0x78, 0x70, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x58, 0x70, - 0x22, 0xfc, 0x07, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0x78, 0x0a, 0x14, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, - 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x30, 0x0a, - 0x14, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, - 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, - 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, - 0x03, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x1a, - 0x58, 0x0a, 0x14, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x5f, 0x67, 0x72, - 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x1a, 0xa3, 0x05, 0x0a, 0x0d, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x6f, - 0x72, 0x6d, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, - 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, - 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x73, 0x5f, 0x6d, - 0x61, 0x73, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x73, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x21, 0x0a, 0x0c, - 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x17, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x67, 0x65, 0x72, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, - 0x6a, 0x0a, 0x19, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x19, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x4e, - 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x74, - 0x69, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x69, 0x70, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x33, 0x0a, 0x16, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, - 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x65, - 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x78, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, - 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, - 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x67, 0x0a, 0x17, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x64, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x15, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x5e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, - 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x11, 0x70, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, - 0x6c, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x73, 0x65, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, - 0x6d, 0x65, 0x53, 0x65, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x17, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x57, 0x69, - 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x8c, 0x03, - 0x0a, 0x12, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, - 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x06, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, - 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, + 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x63, 0x73, 0x64, 0x6b, 0x5f, + 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x22, 0xbd, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6f, + 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x28, 0x0a, 0x10, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x61, 0x63, + 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x22, 0xc5, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x54, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x62, 0x61, 0x64, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x64, + 0x67, 0x65, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x73, 0x1a, 0x48, + 0x0a, 0x09, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x64, + 0x67, 0x65, 0x5f, 0x78, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x72, + 0x6f, 0x42, 0x61, 0x64, 0x67, 0x65, 0x58, 0x70, 0x22, 0x55, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, + 0x7c, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x30, 0x0a, 0x14, 0x70, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, + 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x6d, + 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x22, 0xb3, 0x06, + 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x4f, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x73, 0x1a, 0xae, 0x05, 0x0a, 0x0d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x5f, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x6f, 0x72, 0x6d, + 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x6d, + 0x69, 0x75, 0x6d, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, + 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, + 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x73, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x11, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x73, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x73, + 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x67, + 0x65, 0x72, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x54, 0x0a, 0x19, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x19, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x16, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, + 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, + 0x0a, 0x10, 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x69, 0x70, 0x41, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x33, 0x0a, 0x16, 0x61, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, + 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2a, 0x0a, + 0x11, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x78, 0x5f, 0x6c, 0x65, 0x76, + 0x65, 0x6c, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x46, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x51, 0x0a, 0x17, 0x6e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x15, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x64, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4d, 0x0a, 0x12, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x73, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x11, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x14, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, + 0x12, 0x65, 0x78, 0x74, 0x72, 0x61, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x22, 0x6c, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, + 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x17, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x22, 0x8c, 0x03, 0x0a, 0x12, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x3e, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, + 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x2e, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, + 0x65, 0x5f, 0x67, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x69, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x47, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x72, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x06, 0x52, + 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x32, + 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x1a, 0x3c, 0x0a, 0x0b, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, + 0x22, 0xad, 0x0e, 0x0a, 0x12, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x06, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, + 0x12, 0x26, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, + 0x41, 0x4d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, + 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, + 0x65, 0x74, 0x61, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x6d, 0x65, 0x74, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x65, + 0x74, 0x61, 0x5f, 0x78, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x65, 0x74, + 0x61, 0x58, 0x70, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x65, 0x74, 0x61, 0x5f, 0x78, 0x70, 0x5f, 0x61, + 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x65, + 0x74, 0x61, 0x58, 0x70, 0x41, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x0d, 0x6c, + 0x65, 0x61, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, + 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x74, 0x52, 0x0c, 0x6c, 0x65, + 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x65, + 0x61, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x1c, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x10, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, + 0x14, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x48, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x16, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, + 0x0a, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x17, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, + 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x09, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, + 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x35, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x63, + 0x6f, 0x61, 0x63, 0x68, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, + 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, + 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x61, 0x74, + 0x69, 0x6e, 0x67, 0x12, 0x2b, 0x0a, 0x12, 0x70, 0x77, 0x72, 0x64, 0x5f, 0x63, 0x79, 0x62, 0x65, + 0x72, 0x5f, 0x63, 0x61, 0x66, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x70, 0x77, 0x72, 0x64, 0x43, 0x79, 0x62, 0x65, 0x72, 0x43, 0x61, 0x66, 0x65, 0x49, 0x64, + 0x12, 0x2f, 0x0a, 0x14, 0x70, 0x77, 0x72, 0x64, 0x5f, 0x63, 0x79, 0x62, 0x65, 0x72, 0x5f, 0x63, + 0x61, 0x66, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, + 0x70, 0x77, 0x72, 0x64, 0x43, 0x79, 0x62, 0x65, 0x72, 0x43, 0x61, 0x66, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x39, 0x0a, 0x19, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x72, 0x61, + 0x6e, 0x64, 0x6f, 0x6d, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x29, + 0x20, 0x03, 0x28, 0x07, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x52, 0x61, + 0x6e, 0x64, 0x6f, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x69, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, + 0x11, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x09, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x12, 0x35, 0x0a, 0x17, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x64, 0x75, + 0x63, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x14, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, + 0x64, 0x73, 0x12, 0x3b, 0x0a, 0x11, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, + 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x30, 0x0a, 0x14, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x23, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x66, + 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x65, + 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, 0x24, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, + 0x73, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, + 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, + 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x61, 0x6e, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x72, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x27, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x63, 0x61, 0x6e, + 0x45, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x42, 0x0a, 0x13, 0x6c, + 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x74, 0x65, + 0x61, 0x6d, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x11, 0x6c, 0x69, + 0x76, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x12, + 0x29, 0x0a, 0x11, 0x77, 0x61, 0x73, 0x5f, 0x6d, 0x76, 0x70, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x77, 0x61, 0x73, 0x4d, + 0x76, 0x70, 0x4c, 0x61, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x0e, 0x70, 0x65, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x2c, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x65, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, + 0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x56, + 0x0a, 0x19, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x77, 0x61, 0x72, 0x64, 0x73, + 0x5f, 0x6f, 0x6e, 0x5f, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x2d, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x16, + 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, 0x77, 0x61, 0x72, 0x64, 0x73, 0x4f, 0x6e, 0x56, + 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x46, 0x0a, 0x13, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, + 0x6d, 0x72, 0x5f, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x2e, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, + 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x10, 0x72, 0x61, + 0x6e, 0x6b, 0x4d, 0x6d, 0x72, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, + 0x0a, 0x16, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x64, + 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x11, 0x52, 0x14, + 0x71, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x69, 0x65, + 0x72, 0x18, 0x30, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x69, 0x65, + 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x69, 0x64, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x61, 0x76, + 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, + 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, + 0x61, 0x18, 0x36, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x43, 0x68, 0x69, 0x6e, 0x61, 0x12, 0x39, 0x0a, 0x19, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, + 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x6c, 0x69, 0x76, 0x65, 0x53, 0x70, + 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x36, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x73, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x38, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x41, + 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x61, 0x6e, 0x6e, + 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x39, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0d, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, + 0x22, 0x1a, 0x0a, 0x18, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x1a, 0x0a, 0x18, + 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x3b, 0x0a, 0x1e, 0x43, 0x53, 0x4f, 0x44, + 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x8f, 0x04, 0x0a, 0x11, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, + 0x54, 0x61, 0x67, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, + 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x61, 0x73, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x12, + 0x28, 0x0a, 0x10, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6c, + 0x6f, 0x67, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x42, + 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x61, + 0x6e, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x68, 0x6f, 0x6d, 0x65, 0x5f, 0x74, + 0x65, 0x61, 0x6d, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x48, 0x6f, 0x6d, + 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x12, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x10, 0x69, 0x73, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x12, 0x41, 0x0a, 0x1d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x04, 0x52, 0x1a, 0x63, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, + 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, + 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x2b, 0x0a, 0x11, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x61, 0x62, 0x62, 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x74, 0x65, 0x61, 0x6d, 0x41, 0x62, 0x62, 0x72, 0x65, + 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xcb, 0x03, 0x0a, 0x12, 0x43, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x19, + 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x72, 0x69, + 0x6d, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x32, 0x0a, 0x15, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6c, + 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x53, + 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x23, 0x0a, + 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x6f, 0x67, + 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x66, + 0x6c, 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x38, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x66, + 0x6f, 0x72, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, + 0x41, 0x4d, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x46, 0x6f, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x54, 0x61, 0x67, 0x12, 0x36, 0x0a, + 0x17, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x77, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x5f, 0x70, 0x65, + 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x57, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x50, 0x65, 0x72, 0x63, 0x65, + 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0xc3, 0x01, 0x0a, 0x18, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, + 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x73, + 0x75, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x63, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0d, 0x69, 0x73, 0x53, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x72, 0x61, 0x74, 0x65, + 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x64, 0x72, 0x6f, + 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x64, + 0x44, 0x72, 0x6f, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x22, 0xa5, 0x01, 0x0a, 0x1a, + 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, + 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, + 0x6f, 0x64, 0x65, 0x22, 0x99, 0x03, 0x0a, 0x14, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x32, 0x0a, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, + 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x12, 0x3d, + 0x0a, 0x1b, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x18, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, + 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, + 0x14, 0x65, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x12, 0x65, 0x6c, 0x69, + 0x67, 0x69, 0x62, 0x6c, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, + 0xbb, 0x01, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x27, + 0x0a, 0x0f, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x6c, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x6c, + 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, + 0x65, 0x61, 0x6d, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x6b, 0x69, 0x6c, + 0x6c, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0xde, 0x2a, + 0x0a, 0x0c, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x19, + 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, + 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x78, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x2e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x24, 0x0a, - 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, - 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x67, 0x69, - 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x47, - 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x63, 0x72, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0x3c, - 0x0a, 0x0b, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x85, 0x0e, 0x0a, - 0x12, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x04, - 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x04, - 0x74, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x19, 0x0a, 0x08, - 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, - 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x74, 0x61, 0x5f, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x65, 0x74, - 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x61, 0x5f, 0x78, - 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x61, 0x58, 0x70, 0x12, - 0x26, 0x0a, 0x0f, 0x6d, 0x65, 0x74, 0x61, 0x5f, 0x78, 0x70, 0x5f, 0x61, 0x77, 0x61, 0x72, 0x64, - 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x65, 0x74, 0x61, 0x58, 0x70, - 0x41, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x76, 0x65, - 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x74, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, - 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, - 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x10, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x0e, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, - 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x16, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x0a, 0x63, 0x6f, 0x61, - 0x63, 0x68, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, - 0x4d, 0x52, 0x09, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x2e, 0x0a, 0x13, - 0x63, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x73, 0x18, 0x35, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6f, 0x61, 0x63, 0x68, - 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, - 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x2a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x12, - 0x2b, 0x0a, 0x12, 0x70, 0x77, 0x72, 0x64, 0x5f, 0x63, 0x79, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x61, - 0x66, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x77, 0x72, - 0x64, 0x43, 0x79, 0x62, 0x65, 0x72, 0x43, 0x61, 0x66, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x14, - 0x70, 0x77, 0x72, 0x64, 0x5f, 0x63, 0x79, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x66, 0x65, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x77, 0x72, 0x64, - 0x43, 0x79, 0x62, 0x65, 0x72, 0x43, 0x61, 0x66, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, - 0x19, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, - 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x07, - 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, - 0x48, 0x65, 0x72, 0x6f, 0x42, 0x69, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x6b, - 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, 0x72, - 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6d, - 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, - 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x12, 0x35, 0x0a, 0x17, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x69, - 0x64, 0x73, 0x18, 0x1f, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x14, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x64, 0x73, 0x12, 0x3b, - 0x0a, 0x11, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, 0x73, 0x65, 0x61, 0x72, - 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x66, - 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x70, 0x61, 0x63, - 0x6b, 0x65, 0x64, 0x18, 0x23, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x66, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x2c, 0x0a, - 0x12, 0x69, 0x73, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x62, 0x65, 0x72, 0x18, 0x24, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x50, 0x6c, 0x75, - 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x14, 0x6c, - 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, - 0x61, 0x67, 0x73, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x28, 0x0a, - 0x10, 0x63, 0x61, 0x6e, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x73, 0x18, 0x27, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x63, 0x61, 0x6e, 0x45, 0x61, 0x72, 0x6e, - 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x42, 0x0a, 0x13, 0x6c, 0x69, 0x76, 0x65, 0x5f, - 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x28, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x11, 0x6c, 0x69, 0x76, 0x65, 0x53, 0x70, - 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x29, 0x0a, 0x11, 0x77, - 0x61, 0x73, 0x5f, 0x6d, 0x76, 0x70, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, - 0x18, 0x2b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x77, 0x61, 0x73, 0x4d, 0x76, 0x70, 0x4c, 0x61, - 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x0e, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x5f, 0x61, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x2c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x0d, 0x70, 0x65, 0x6e, - 0x64, 0x69, 0x6e, 0x67, 0x41, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x56, 0x0a, 0x19, 0x70, 0x65, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, - 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x2d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x16, 0x70, 0x65, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x41, 0x77, 0x61, 0x72, 0x64, 0x73, 0x4f, 0x6e, 0x56, 0x69, 0x63, 0x74, 0x6f, - 0x72, 0x79, 0x12, 0x46, 0x0a, 0x13, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x6d, 0x72, 0x5f, 0x62, - 0x6f, 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, - 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x10, 0x72, 0x61, 0x6e, 0x6b, 0x4d, 0x6d, - 0x72, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x71, 0x75, - 0x65, 0x75, 0x65, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, - 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x11, 0x52, 0x14, 0x71, 0x75, 0x65, 0x75, - 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x30, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x69, 0x65, 0x72, 0x12, 0x14, 0x0a, - 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x69, - 0x74, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, - 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2b, - 0x0a, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, - 0x62, 0x6c, 0x65, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x69, - 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, 0x36, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, - 0x61, 0x12, 0x39, 0x0a, 0x19, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, - 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x37, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x6c, 0x69, 0x76, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, - 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x17, - 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x61, 0x76, - 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x63, - 0x6f, 0x6d, 0x6d, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, - 0x61, 0x62, 0x6c, 0x65, 0x22, 0x1a, 0x0a, 0x18, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x22, 0x1a, 0x0a, 0x18, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x74, 0x61, 0x74, 0x69, - 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x20, 0x0a, 0x1e, - 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, - 0x74, 0x69, 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x8f, - 0x04, 0x0a, 0x11, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x54, 0x61, 0x67, 0x12, 0x17, 0x0a, 0x07, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, - 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, - 0x67, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, - 0x67, 0x6f, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, - 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, - 0x42, 0x61, 0x73, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x4c, 0x6f, - 0x67, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, - 0x65, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18, - 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x72, - 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x11, - 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x0c, - 0x69, 0x73, 0x5f, 0x68, 0x6f, 0x6d, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x11, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x48, 0x6f, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x2c, - 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x41, 0x0a, 0x1d, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x1a, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x22, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x6c, - 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x6f, - 0x55, 0x72, 0x6c, 0x12, 0x2b, 0x0a, 0x11, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x61, 0x62, 0x62, 0x72, - 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, - 0x74, 0x65, 0x61, 0x6d, 0x41, 0x62, 0x62, 0x72, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0xcb, 0x03, 0x0a, 0x12, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x6d, - 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x11, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6c, - 0x6f, 0x72, 0x12, 0x32, 0x0a, 0x15, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x13, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, - 0x79, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, - 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x0a, - 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, - 0x38, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0c, 0x74, 0x65, 0x61, - 0x6d, 0x46, 0x6f, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x75, 0x69, - 0x6c, 0x64, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x54, 0x61, 0x67, 0x12, 0x36, 0x0a, 0x17, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, - 0x77, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, - 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x57, 0x65, - 0x65, 0x6b, 0x6c, 0x79, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0xc3, - 0x01, 0x0a, 0x18, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x63, - 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x53, 0x75, - 0x70, 0x70, 0x6c, 0x79, 0x43, 0x72, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0b, 0x69, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x44, 0x72, 0x6f, 0x70, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, - 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x72, - 0x69, 0x67, 0x69, 0x6e, 0x22, 0xa5, 0x01, 0x0a, 0x1a, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x42, + 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, + 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x79, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x6c, + 0x65, 0x66, 0x74, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, + 0x65, 0x73, 0x18, 0x7a, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x65, 0x66, 0x74, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, + 0x72, 0x65, 0x65, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, + 0x65, 0x73, 0x18, 0x7b, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x72, 0x65, 0x65, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, + 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, + 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, + 0x64, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, + 0x76, 0x69, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0e, 0x70, 0x65, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x05, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x3b, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x68, 0x65, 0x61, + 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, + 0x68, 0x65, 0x61, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x69, 0x6c, 0x6c, 0x5f, 0x77, 0x69, + 0x74, 0x68, 0x5f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, + 0x69, 0x6c, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x42, 0x6f, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, + 0x6e, 0x74, 0x72, 0x6f, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x09, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, + 0x61, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x5f, + 0x6c, 0x65, 0x73, 0x73, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x75, + 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x4c, 0x65, 0x73, 0x73, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, + 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, + 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, + 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, + 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x09, + 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x75, 0x6d, + 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0d, 0x6e, 0x75, 0x6d, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x19, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x12, 0x2b, 0x0a, 0x07, 0x63, 0x6d, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, 0x1c, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, + 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x52, 0x06, 0x63, 0x6d, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x19, 0x0a, + 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x1f, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, + 0x69, 0x6e, 0x67, 0x12, 0x4d, 0x0a, 0x16, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, + 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x24, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, + 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x14, 0x62, 0x6f, + 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x61, 0x64, 0x69, 0x61, + 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x14, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x69, + 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x52, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, + 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, + 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x2a, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, + 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x72, 0x61, 0x64, + 0x69, 0x61, 0x6e, 0x74, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, 0x65, 0x6e, 0x61, + 0x6c, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, + 0x2c, 0x0a, 0x12, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x6e, + 0x61, 0x6c, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x44, 0x69, 0x72, 0x65, 0x12, 0x20, 0x0a, + 0x0c, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x2d, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, + 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x2e, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, + 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x57, 0x69, 0x6e, 0x73, + 0x12, 0x28, 0x0a, 0x10, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, + 0x77, 0x69, 0x6e, 0x73, 0x18, 0x30, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x69, 0x72, 0x65, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x57, 0x69, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, + 0x6f, 0x74, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x18, 0x31, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x6f, 0x6f, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, + 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x6f, 0x74, 0x5f, 0x61, 0x77, 0x61, 0x72, 0x64, 0x65, + 0x64, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x6f, 0x6f, 0x74, 0x41, 0x77, 0x61, + 0x72, 0x64, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x6c, 0x63, 0x68, 0x61, 0x74, 0x18, + 0x33, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x63, 0x68, 0x61, 0x74, 0x12, 0x3a, + 0x0a, 0x0d, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, + 0x35, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x0b, 0x64, + 0x6f, 0x74, 0x61, 0x54, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x36, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, + 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, + 0x79, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, + 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x61, 0x6e, + 0x18, 0x39, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x6c, 0x61, 0x6e, 0x12, 0x56, 0x0a, 0x16, 0x62, + 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x3a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, + 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x14, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, - 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, - 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, - 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x99, 0x03, 0x0a, - 0x14, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, - 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, - 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x65, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x2f, - 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, - 0x36, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x65, 0x72, - 0x69, 0x6f, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, - 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x12, 0x3d, 0x0a, 0x1b, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x74, - 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x63, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, - 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x65, 0x6c, 0x69, 0x67, 0x69, 0x62, - 0x6c, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x08, - 0x20, 0x03, 0x28, 0x0d, 0x52, 0x12, 0x65, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xc1, 0x2a, 0x0a, 0x0c, 0x43, 0x53, 0x4f, - 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, - 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, - 0x62, 0x79, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x18, 0x78, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, - 0x25, 0x0a, 0x0e, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, - 0x73, 0x18, 0x79, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, - 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x6d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x7a, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x65, 0x66, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, - 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x72, 0x65, 0x65, 0x5f, 0x6d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x7b, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x72, 0x65, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, - 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x64, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x27, 0x0a, - 0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, - 0x18, 0x0a, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0e, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, - 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, - 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x12, 0x3b, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, - 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x68, 0x65, 0x61, 0x74, 0x73, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x68, 0x65, 0x61, 0x74, 0x73, - 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x69, 0x6c, 0x6c, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x62, 0x6f, - 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x69, 0x6c, 0x6c, 0x57, 0x69, - 0x74, 0x68, 0x42, 0x6f, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x5f, - 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x72, - 0x6f, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x27, - 0x0a, 0x0f, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x6c, 0x65, 0x73, 0x73, 0x6f, - 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x4c, 0x65, 0x73, 0x73, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, - 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, - 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, - 0x33, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x16, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x70, 0x65, 0x63, - 0x74, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6e, 0x75, - 0x6d, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2b, 0x0a, 0x07, 0x63, - 0x6d, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x50, 0x49, 0x43, 0x4b, - 0x52, 0x06, 0x63, 0x6d, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x5f, 0x69, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x70, 0x65, - 0x63, 0x74, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x61, - 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x4d, - 0x0a, 0x16, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, - 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, - 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x14, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, - 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x50, 0x0a, - 0x14, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x26, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x12, 0x74, 0x69, 0x6d, - 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, - 0x19, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x27, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, - 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, - 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, - 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, - 0x2b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x65, - 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x64, 0x69, 0x72, 0x65, - 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x44, 0x69, 0x72, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x6c, 0x6f, 0x61, 0x64, - 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x6c, 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, - 0x72, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x72, - 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x77, 0x69, - 0x6e, 0x73, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x57, 0x69, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x64, - 0x69, 0x72, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x73, 0x18, - 0x30, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x57, 0x69, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x6f, 0x74, 0x5f, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, - 0x6f, 0x6f, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, - 0x6c, 0x6f, 0x6f, 0x74, 0x5f, 0x61, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x18, 0x32, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x6f, 0x6f, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x12, - 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x6c, 0x63, 0x68, 0x61, 0x74, 0x18, 0x33, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x63, 0x68, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x0d, 0x64, 0x6f, 0x74, - 0x61, 0x5f, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, - 0x61, 0x54, 0x56, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x0b, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x76, - 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x36, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, - 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x38, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, - 0x75, 0x6c, 0x74, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x61, 0x6e, 0x18, 0x39, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x03, 0x6c, 0x61, 0x6e, 0x12, 0x56, 0x0a, 0x16, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, - 0x18, 0x3a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x14, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x34, - 0x0a, 0x16, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, - 0x66, 0x69, 0x72, 0x73, 0x74, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x69, - 0x64, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x3e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x52, 0x0d, 0x65, 0x78, 0x74, 0x72, - 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x09, 0x73, 0x61, 0x76, - 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, - 0x65, 0x52, 0x08, 0x73, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x66, - 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x68, 0x61, 0x70, 0x70, 0x65, - 0x6e, 0x65, 0x64, 0x18, 0x41, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x66, 0x69, 0x72, 0x73, 0x74, - 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x48, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x12, 0x38, 0x0a, - 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x18, 0x46, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x73, 0x73, 0x5f, - 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x18, 0x43, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0e, 0x6d, 0x61, 0x73, 0x73, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x44, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x47, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x69, 0x6e, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, - 0x61, 0x78, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x61, 0x78, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, - 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x26, 0x0a, - 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x72, 0x63, - 0x18, 0x4c, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x42, 0x0a, 0x1e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x18, 0x50, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x36, 0x0a, - 0x17, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, - 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x51, 0x20, 0x03, 0x28, 0x04, 0x52, 0x15, - 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, - 0x73, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, - 0x18, 0x52, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x26, 0x0a, - 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x57, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0d, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x73, - 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x58, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x61, 0x75, - 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x70, 0x61, 0x75, 0x73, 0x65, - 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x3d, 0x0a, 0x1b, 0x77, 0x65, 0x65, 0x6b, 0x65, - 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x64, 0x69, 0x76, 0x69, 0x73, - 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x5a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x77, 0x65, - 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x44, 0x69, 0x76, 0x69, - 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x1b, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, - 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x5b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x77, 0x65, 0x65, - 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x53, 0x6b, 0x69, 0x6c, 0x6c, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x41, 0x0a, 0x1d, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, - 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, - 0x5f, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x5c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x77, 0x65, - 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x42, 0x72, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x47, 0x0a, 0x13, 0x62, 0x6f, 0x74, 0x5f, - 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, - 0x5d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, - 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x11, - 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x44, 0x69, 0x72, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, 0x74, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, - 0x18, 0x5e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x6f, 0x74, 0x52, 0x61, 0x64, 0x69, 0x61, - 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x5f, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x72, 0x65, 0x12, 0x48, 0x0a, - 0x19, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x60, 0x20, 0x03, 0x28, 0x0e, - 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x17, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x5a, 0x0a, 0x18, 0x73, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x75, - 0x6c, 0x65, 0x73, 0x18, 0x61, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, - 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x16, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, - 0x6c, 0x65, 0x73, 0x12, 0x59, 0x0a, 0x2a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x70, 0x72, - 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x62, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x25, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x50, - 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x57, - 0x0a, 0x29, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, - 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, - 0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x63, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x24, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, - 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x6f, 0x0a, 0x23, 0x73, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, - 0x74, 0x79, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x64, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, - 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x1f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x54, 0x65, - 0x61, 0x6d, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x76, 0x0a, 0x27, 0x73, 0x65, 0x72, 0x69, - 0x65, 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x5f, 0x70, + 0x6e, 0x66, 0x6f, 0x12, 0x34, 0x0a, 0x16, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6c, 0x65, 0x61, + 0x76, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x3b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x14, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, + 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, 0x6f, + 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0e, 0x65, 0x78, 0x74, + 0x72, 0x61, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x3e, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x52, + 0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x30, + 0x0a, 0x09, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x3f, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x61, + 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x08, 0x73, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, + 0x12, 0x30, 0x0a, 0x14, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, + 0x68, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x18, 0x41, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, + 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x48, 0x61, 0x70, 0x70, 0x65, 0x6e, + 0x65, 0x64, 0x12, 0x38, 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x75, 0x74, 0x63, + 0x6f, 0x6d, 0x65, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x0c, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, + 0x6d, 0x61, 0x73, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x18, + 0x43, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6d, 0x61, 0x73, 0x73, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x44, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x73, 0x18, 0x47, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, + 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, + 0x48, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x61, 0x78, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, + 0x65, 0x5f, 0x63, 0x72, 0x63, 0x18, 0x4c, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x63, 0x12, 0x42, 0x0a, 0x1e, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x18, 0x4d, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x1a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x41, 0x75, + 0x74, 0x6f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x32, + 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x50, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x17, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x73, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x51, 0x20, + 0x03, 0x28, 0x04, 0x52, 0x15, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x70, 0x72, + 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x76, 0x65, + 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x52, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x70, 0x72, 0x65, + 0x76, 0x69, 0x6f, 0x75, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, + 0x64, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x57, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x61, 0x6d, + 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0d, 0x70, 0x61, + 0x75, 0x73, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x58, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, + 0x74, 0x61, 0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x0c, + 0x70, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x3d, 0x0a, 0x1b, + 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, + 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x5a, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x18, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, + 0x79, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x1b, 0x77, + 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x73, + 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x5b, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x18, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, + 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x41, 0x0a, 0x1d, 0x77, 0x65, + 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x62, 0x72, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x5c, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x1a, 0x77, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, + 0x79, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x47, 0x0a, + 0x13, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, + 0x64, 0x69, 0x72, 0x65, 0x18, 0x5d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, + 0x6c, 0x74, 0x79, 0x52, 0x11, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, + 0x74, 0x79, 0x44, 0x69, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, 0x74, 0x5f, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x5e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x6f, 0x74, + 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x6f, 0x74, 0x5f, 0x64, + 0x69, 0x72, 0x65, 0x18, 0x5f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x62, 0x6f, 0x74, 0x44, 0x69, + 0x72, 0x65, 0x12, 0x48, 0x0a, 0x19, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, + 0x60, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x52, 0x17, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x5a, 0x0a, 0x18, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x61, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, + 0x52, 0x16, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x59, 0x0a, 0x2a, 0x73, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x62, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x25, 0x73, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x54, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x57, 0x0a, 0x29, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x63, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x24, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, + 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x6f, 0x0a, 0x23, + 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x6f, - 0x69, 0x63, 0x65, 0x18, 0x65, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x69, 0x63, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, - 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x22, 0x73, 0x65, - 0x72, 0x69, 0x65, 0x73, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x50, 0x72, - 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, - 0x12, 0x64, 0x0a, 0x30, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, - 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x5f, - 0x74, 0x6f, 0x73, 0x73, 0x18, 0x66, 0x20, 0x01, 0x28, 0x08, 0x52, 0x2a, 0x73, 0x65, 0x72, 0x69, - 0x65, 0x73, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x55, 0x73, 0x65, 0x64, 0x43, 0x6f, - 0x69, 0x6e, 0x54, 0x6f, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x15, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, - 0x67, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x52, 0x13, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x69, 0x6d, - 0x61, 0x72, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x1b, 0x65, 0x6d, 0x65, 0x72, - 0x67, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x69, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x18, 0x65, - 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x35, 0x0a, 0x17, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, - 0x65, 0x79, 0x18, 0x6a, 0x20, 0x01, 0x28, 0x06, 0x52, 0x14, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x32, - 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x65, - 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x18, 0x6b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, - 0x65, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x61, 0x6e, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, - 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x6d, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x48, 0x6f, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x4c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x6e, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, - 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x6f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x70, - 0x68, 0x61, 0x73, 0x65, 0x18, 0x71, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, - 0x18, 0x72, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x1d, 0x65, - 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x6d, 0x65, - 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x74, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x1b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, - 0x47, 0x61, 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, - 0x45, 0x0a, 0x10, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x73, 0x18, 0x75, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x0f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, - 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x76, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x48, 0x0a, 0x12, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x77, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x10, 0x6c, - 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x7c, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x55, 0x0a, - 0x15, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x7d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6f, 0x61, - 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, - 0x13, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x11, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x73, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, 0x7e, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0e, 0x69, 0x73, 0x49, 0x6e, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x12, - 0x2c, 0x0a, 0x12, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x73, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, - 0x5f, 0x73, 0x61, 0x76, 0x65, 0x18, 0x7f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x77, 0x69, 0x74, - 0x68, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x12, 0x2f, 0x0a, - 0x13, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x80, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x6f, 0x62, - 0x62, 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x33, - 0x0a, 0x15, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x65, 0x66, - 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x81, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x16, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x75, 0x70, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x82, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, - 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, - 0x73, 0x67, 0x52, 0x14, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x37, 0x0a, 0x09, 0x43, 0x45, 0x78, 0x74, - 0x72, 0x61, 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x73, 0x22, 0x64, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x06, 0x0a, 0x02, 0x55, 0x49, - 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x41, 0x44, 0x59, 0x55, 0x50, 0x10, 0x04, 0x12, - 0x0f, 0x0a, 0x0b, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x53, 0x45, 0x54, 0x55, 0x50, 0x10, 0x01, - 0x12, 0x07, 0x0a, 0x03, 0x52, 0x55, 0x4e, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x4f, 0x53, - 0x54, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x54, 0x52, 0x45, - 0x41, 0x44, 0x59, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x41, - 0x53, 0x53, 0x49, 0x47, 0x4e, 0x10, 0x06, 0x22, 0xe2, 0x01, 0x0a, 0x09, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x07, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, - 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x43, - 0x41, 0x53, 0x55, 0x41, 0x4c, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x00, 0x12, 0x0c, 0x0a, - 0x08, 0x50, 0x52, 0x41, 0x43, 0x54, 0x49, 0x43, 0x45, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x43, - 0x4f, 0x4f, 0x50, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x04, 0x12, - 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x4d, 0x50, 0x45, 0x54, 0x49, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x4d, - 0x41, 0x54, 0x43, 0x48, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x57, 0x45, 0x45, 0x4b, 0x45, 0x4e, - 0x44, 0x5f, 0x54, 0x4f, 0x55, 0x52, 0x4e, 0x45, 0x59, 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x4c, - 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x0a, - 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, 0x10, 0x0b, 0x12, - 0x0f, 0x0a, 0x0b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x0c, - 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x50, - 0x4f, 0x4f, 0x4c, 0x10, 0x0e, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x45, 0x41, 0x54, 0x55, 0x52, 0x45, - 0x44, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x0f, 0x22, 0x55, 0x0a, 0x12, - 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x12, 0x3f, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x22, 0x7d, 0x0a, 0x12, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x74, - 0x61, 0x74, 0x69, 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x3f, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, - 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x74, 0x61, - 0x74, 0x69, 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x0a, - 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x64, 0x72, 0x61, 0x66, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, - 0x66, 0x74, 0x22, 0x61, 0x0a, 0x18, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x45, - 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, - 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4c, 0x6f, + 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x1f, 0x73, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x69, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x76, 0x0a, + 0x27, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, + 0x6e, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x65, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x52, 0x22, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, + 0x4e, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x43, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x64, 0x0a, 0x30, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x5f, + 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x73, 0x73, 0x18, 0x66, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x2a, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x55, + 0x73, 0x65, 0x64, 0x43, 0x6f, 0x69, 0x6e, 0x54, 0x6f, 0x73, 0x73, 0x12, 0x40, 0x0a, 0x15, 0x63, + 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x18, 0x67, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x13, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x74, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3d, 0x0a, + 0x1b, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x69, 0x20, 0x03, + 0x28, 0x0d, 0x52, 0x18, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x44, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x35, 0x0a, 0x17, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x6a, 0x20, 0x01, 0x28, 0x06, 0x52, 0x14, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, + 0x4b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x18, 0x6b, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x65, + 0x6e, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x61, 0x6e, 0x5f, 0x68, + 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x6d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x6c, 0x61, 0x6e, 0x48, 0x6f, 0x73, 0x74, + 0x50, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, + 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x6e, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, + 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x64, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x6f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x5f, 0x70, 0x68, 0x61, 0x73, 0x65, 0x18, 0x71, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x1d, + 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x67, 0x61, 0x6d, + 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x74, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x1b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, + 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x12, 0x45, 0x0a, 0x10, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x73, 0x18, 0x75, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x0f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x76, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x48, 0x0a, 0x12, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x77, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x10, + 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x7c, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x55, + 0x0a, 0x15, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x7d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6f, + 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x52, 0x13, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x11, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x73, + 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, 0x7e, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0e, 0x69, 0x73, 0x49, 0x6e, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, + 0x12, 0x2c, 0x0a, 0x12, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x73, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, + 0x6f, 0x5f, 0x73, 0x61, 0x76, 0x65, 0x18, 0x7f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x77, 0x69, + 0x74, 0x68, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x12, 0x2f, + 0x0a, 0x13, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x80, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x6f, + 0x62, 0x62, 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x33, 0x0a, 0x15, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x81, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x13, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x16, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x82, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, + 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, + 0x4d, 0x73, 0x67, 0x52, 0x14, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, + 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x4f, 0x0a, 0x12, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x83, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x51, 0x75, 0x61, + 0x6c, 0x69, 0x74, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x51, + 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x37, 0x0a, 0x09, 0x43, 0x45, + 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x22, 0x64, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x06, 0x0a, 0x02, + 0x55, 0x49, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x41, 0x44, 0x59, 0x55, 0x50, 0x10, + 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x53, 0x45, 0x54, 0x55, 0x50, + 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x52, 0x55, 0x4e, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x50, + 0x4f, 0x53, 0x54, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x54, + 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x52, 0x56, 0x45, + 0x52, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x10, 0x06, 0x22, 0xe2, 0x01, 0x0a, 0x09, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x07, 0x49, 0x4e, 0x56, 0x41, 0x4c, + 0x49, 0x44, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x10, 0x0a, + 0x0c, 0x43, 0x41, 0x53, 0x55, 0x41, 0x4c, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x00, 0x12, + 0x0c, 0x0a, 0x08, 0x50, 0x52, 0x41, 0x43, 0x54, 0x49, 0x43, 0x45, 0x10, 0x01, 0x12, 0x12, 0x0a, + 0x0e, 0x43, 0x4f, 0x4f, 0x50, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, + 0x04, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x4d, 0x50, 0x45, 0x54, 0x49, 0x54, 0x49, 0x56, 0x45, + 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x57, 0x45, 0x45, 0x4b, + 0x45, 0x4e, 0x44, 0x5f, 0x54, 0x4f, 0x55, 0x52, 0x4e, 0x45, 0x59, 0x10, 0x09, 0x12, 0x13, 0x0a, + 0x0f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, + 0x10, 0x0a, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, 0x10, + 0x0b, 0x12, 0x0f, 0x0a, 0x0b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, + 0x10, 0x0c, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, + 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x10, 0x0e, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x45, 0x41, 0x54, 0x55, + 0x52, 0x45, 0x44, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x0f, 0x22, 0x55, + 0x0a, 0x12, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x12, 0x3f, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x80, 0x05, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x46, - 0x0a, 0x09, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x70, 0x6c, - 0x75, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x8d, 0x01, 0x0a, 0x22, 0x75, 0x6e, 0x6c, 0x6f, 0x63, - 0x6b, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x5f, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, - 0x2e, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x1e, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, - 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x8d, 0x01, 0x0a, 0x22, 0x75, 0x6e, 0x6c, 0x6f, 0x63, - 0x6b, 0x65, 0x64, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x5f, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, - 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x1e, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, - 0x50, 0x69, 0x6e, 0x67, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x1a, 0x67, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, - 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, - 0x28, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x5f, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x49, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x45, 0x6e, 0x64, 0x1a, - 0x67, 0x0a, 0x15, 0x50, 0x69, 0x6e, 0x67, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x12, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, + 0x41, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x3f, 0x0a, 0x0b, + 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, + 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, + 0x0f, 0x69, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x64, 0x72, 0x61, 0x66, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x44, 0x72, 0x61, 0x66, 0x74, 0x12, 0x34, 0x0a, 0x17, 0x69, 0x73, 0x5f, 0x6c, 0x61, 0x73, 0x74, + 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x69, 0x73, 0x4c, 0x61, 0x73, 0x74, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x49, 0x6e, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x61, 0x0a, 0x18, 0x43, + 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, + 0x69, 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x45, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x80, + 0x05, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x09, 0x70, 0x6c, 0x75, 0x73, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x70, 0x6c, 0x75, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x8d, 0x01, 0x0a, 0x22, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, + 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, + 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, + 0x1e, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, + 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, + 0x8d, 0x01, 0x0a, 0x22, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x70, 0x69, 0x6e, + 0x67, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x57, 0x68, + 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, + 0x1e, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x50, 0x69, 0x6e, 0x67, 0x57, 0x68, 0x65, + 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x1a, + 0x67, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x49, 0x64, 0x45, 0x6e, 0x64, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x22, 0x2e, 0x0a, 0x18, 0x43, - 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6a, 0x73, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6a, 0x73, 0x6f, 0x6e, 0x22, 0x82, 0x03, 0x0a, 0x18, - 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, - 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x1d, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x2e, - 0x0a, 0x13, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, - 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x75, 0x69, - 0x6c, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x32, - 0x0a, 0x15, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, - 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6c, - 0x6f, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x74, - 0x65, 0x72, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x5f, 0x77, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, - 0x69, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x57, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, - 0x22, 0xee, 0x03, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x46, 0x61, 0x6b, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x3d, 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, - 0x74, 0x73, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, - 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x50, - 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x28, 0x0a, - 0x10, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x32, 0x0a, 0x15, - 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x71, 0x75, - 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x66, 0x61, 0x76, - 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x12, 0x3d, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x2a, 0x0a, 0x11, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x78, 0x5f, 0x6c, - 0x65, 0x76, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x65, 0x6c, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x46, 0x78, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x54, 0x0a, 0x0f, 0x61, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, - 0x61, 0x52, 0x0e, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x44, 0x61, 0x74, - 0x61, 0x2a, 0xa5, 0x01, 0x0a, 0x1d, 0x45, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x2c, 0x0a, - 0x28, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, - 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x5f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2c, 0x0a, 0x28, 0x6b, - 0x5f, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x61, - 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x52, - 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0x02, 0x2a, 0x65, 0x0a, 0x10, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x12, 0x0a, - 0x0e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, 0x5f, 0x31, 0x30, 0x10, - 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, - 0x5f, 0x31, 0x32, 0x30, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, - 0x6f, 0x74, 0x61, 0x54, 0x56, 0x5f, 0x33, 0x30, 0x30, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, 0x5f, 0x39, 0x30, 0x30, 0x10, 0x03, - 0x2a, 0x83, 0x01, 0x0a, 0x15, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x61, - 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x1f, 0x4c, 0x6f, + 0x61, 0x67, 0x65, 0x49, 0x64, 0x45, 0x6e, 0x64, 0x1a, 0x67, 0x0a, 0x15, 0x50, 0x69, 0x6e, 0x67, + 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x5f, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x45, 0x6e, + 0x64, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x22, 0x2e, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x12, 0x12, 0x0a, 0x04, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6a, 0x73, 0x6f, 0x6e, 0x22, 0x82, 0x03, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x63, + 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x08, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x2e, 0x0a, 0x13, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, + 0x72, 0x79, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x32, 0x0a, 0x15, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, + 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x12, 0x36, 0x0a, 0x17, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x77, 0x65, 0x65, 0x6b, 0x6c, + 0x79, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x15, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x57, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x50, + 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x22, 0xee, 0x03, 0x0a, 0x1c, 0x43, 0x4d, + 0x73, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x46, 0x61, 0x6b, + 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x0c, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x70, + 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, + 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x65, 0x61, + 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, + 0x65, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x32, 0x0a, 0x15, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, + 0x65, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, + 0x61, 0x6d, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0a, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x65, 0x6c, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x78, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x78, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x12, 0x54, 0x0a, 0x0f, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x61, 0x64, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x2a, 0xa5, 0x01, 0x0a, 0x1d, 0x45, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x28, 0x0a, 0x24, + 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, + 0x61, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, + 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, + 0x65, 0x64, 0x10, 0x01, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, + 0x10, 0x02, 0x2a, 0x65, 0x0a, 0x10, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, + 0x56, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, + 0x6f, 0x74, 0x61, 0x54, 0x56, 0x5f, 0x31, 0x30, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, 0x5f, 0x31, 0x32, 0x30, 0x10, 0x01, 0x12, + 0x13, 0x0a, 0x0f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x54, 0x56, 0x5f, 0x33, + 0x30, 0x30, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, + 0x61, 0x54, 0x56, 0x5f, 0x39, 0x30, 0x30, 0x10, 0x03, 0x2a, 0x83, 0x01, 0x0a, 0x15, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, - 0x69, 0x6e, 0x67, 0x5f, 0x55, 0x6e, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x10, 0x00, 0x12, - 0x21, 0x0a, 0x1d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x61, 0x75, 0x73, - 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, - 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, - 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x44, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, - 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x1f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, + 0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x55, 0x6e, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, + 0x67, 0x5f, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x61, 0x75, 0x73, 0x65, 0x53, 0x65, 0x74, + 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x02, 0x42, + 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, + 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, + 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -4428,7 +4556,7 @@ func file_dota_gcmessages_common_lobby_proto_rawDescGZIP() []byte { } var file_dota_gcmessages_common_lobby_proto_enumTypes = make([]protoimpl.EnumInfo, 5) -var file_dota_gcmessages_common_lobby_proto_msgTypes = make([]protoimpl.MessageInfo, 31) +var file_dota_gcmessages_common_lobby_proto_msgTypes = make([]protoimpl.MessageInfo, 32) var file_dota_gcmessages_common_lobby_proto_goTypes = []interface{}{ (ELobbyMemberCoachRequestState)(0), // 0: dota.ELobbyMemberCoachRequestState (LobbyDotaTVDelay)(0), // 1: dota.LobbyDotaTVDelay @@ -4437,109 +4565,113 @@ var file_dota_gcmessages_common_lobby_proto_goTypes = []interface{}{ (CSODOTALobby_LobbyType)(0), // 4: dota.CSODOTALobby.LobbyType (*CMsgLobbyCoachFriendRequest)(nil), // 5: dota.CMsgLobbyCoachFriendRequest (*CMsgLobbyPlayerPlusSubscriptionData)(nil), // 6: dota.CMsgLobbyPlayerPlusSubscriptionData - (*CMsgLobbyEventPoints)(nil), // 7: dota.CMsgLobbyEventPoints - (*CMsgLobbyEventGameData)(nil), // 8: dota.CMsgLobbyEventGameData - (*CSODOTALobbyInvite)(nil), // 9: dota.CSODOTALobbyInvite - (*CSODOTALobbyMember)(nil), // 10: dota.CSODOTALobbyMember - (*CSODOTAServerLobbyMember)(nil), // 11: dota.CSODOTAServerLobbyMember - (*CSODOTAStaticLobbyMember)(nil), // 12: dota.CSODOTAStaticLobbyMember - (*CSODOTAServerStaticLobbyMember)(nil), // 13: dota.CSODOTAServerStaticLobbyMember - (*CLobbyTeamDetails)(nil), // 14: dota.CLobbyTeamDetails - (*CLobbyGuildDetails)(nil), // 15: dota.CLobbyGuildDetails - (*CLobbyTimedRewardDetails)(nil), // 16: dota.CLobbyTimedRewardDetails - (*CLobbyBroadcastChannelInfo)(nil), // 17: dota.CLobbyBroadcastChannelInfo - (*CLobbyGuildChallenge)(nil), // 18: dota.CLobbyGuildChallenge - (*CSODOTALobby)(nil), // 19: dota.CSODOTALobby - (*CSODOTAServerLobby)(nil), // 20: dota.CSODOTAServerLobby - (*CSODOTAStaticLobby)(nil), // 21: dota.CSODOTAStaticLobby - (*CSODOTAServerStaticLobby)(nil), // 22: dota.CSODOTAServerStaticLobby - (*CMsgAdditionalLobbyStartupAccountData)(nil), // 23: dota.CMsgAdditionalLobbyStartupAccountData - (*CMsgLobbyInitializationComplete)(nil), // 24: dota.CMsgLobbyInitializationComplete - (*CMsgLobbyPlaytestDetails)(nil), // 25: dota.CMsgLobbyPlaytestDetails - (*CMsgLocalServerGuildData)(nil), // 26: dota.CMsgLocalServerGuildData - (*CMsgLocalServerFakeLobbyData)(nil), // 27: dota.CMsgLocalServerFakeLobbyData - (*CMsgLobbyPlayerPlusSubscriptionData_HeroBadge)(nil), // 28: dota.CMsgLobbyPlayerPlusSubscriptionData.HeroBadge - (*CMsgLobbyEventPoints_PeriodicResourceData)(nil), // 29: dota.CMsgLobbyEventPoints.PeriodicResourceData - (*CMsgLobbyEventPoints_NetworkedEventAction)(nil), // 30: dota.CMsgLobbyEventPoints.NetworkedEventAction - (*CMsgLobbyEventPoints_AccountPoints)(nil), // 31: dota.CMsgLobbyEventPoints.AccountPoints - (*CSODOTALobbyInvite_LobbyMember)(nil), // 32: dota.CSODOTALobbyInvite.LobbyMember - (*CSODOTALobby_CExtraMsg)(nil), // 33: dota.CSODOTALobby.CExtraMsg - (*CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange)(nil), // 34: dota.CMsgAdditionalLobbyStartupAccountData.ChatWheelMessageRange - (*CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange)(nil), // 35: dota.CMsgAdditionalLobbyStartupAccountData.PingWheelMessageRange - (DOTA_GC_TEAM)(0), // 36: dota.DOTA_GC_TEAM - (DOTALeaverStatusT)(0), // 37: dota.DOTALeaverStatus_t - (MatchType)(0), // 38: dota.MatchType - (*CMsgPendingEventAward)(nil), // 39: dota.CMsgPendingEventAward - (EDOTAMMRBoostType)(0), // 40: dota.EDOTAMMRBoostType - (EEvent)(0), // 41: dota.EEvent - (DOTA_GameState)(0), // 42: dota.DOTA_GameState - (DOTA_CM_PICK)(0), // 43: dota.DOTA_CM_PICK - (DOTABotDifficulty)(0), // 44: dota.DOTABotDifficulty - (*CDOTASaveGame)(nil), // 45: dota.CDOTASaveGame - (EMatchOutcome)(0), // 46: dota.EMatchOutcome - (DOTALobbyVisibility)(0), // 47: dota.DOTALobbyVisibility - (DOTASelectionPriorityRules)(0), // 48: dota.DOTASelectionPriorityRules - (DOTASelectionPriorityChoice)(0), // 49: dota.DOTASelectionPriorityChoice + (*CMsgEventActionData)(nil), // 7: dota.CMsgEventActionData + (*CMsgPeriodicResourceData)(nil), // 8: dota.CMsgPeriodicResourceData + (*CMsgLobbyEventPoints)(nil), // 9: dota.CMsgLobbyEventPoints + (*CMsgLobbyEventGameData)(nil), // 10: dota.CMsgLobbyEventGameData + (*CSODOTALobbyInvite)(nil), // 11: dota.CSODOTALobbyInvite + (*CSODOTALobbyMember)(nil), // 12: dota.CSODOTALobbyMember + (*CSODOTAServerLobbyMember)(nil), // 13: dota.CSODOTAServerLobbyMember + (*CSODOTAStaticLobbyMember)(nil), // 14: dota.CSODOTAStaticLobbyMember + (*CSODOTAServerStaticLobbyMember)(nil), // 15: dota.CSODOTAServerStaticLobbyMember + (*CLobbyTeamDetails)(nil), // 16: dota.CLobbyTeamDetails + (*CLobbyGuildDetails)(nil), // 17: dota.CLobbyGuildDetails + (*CLobbyTimedRewardDetails)(nil), // 18: dota.CLobbyTimedRewardDetails + (*CLobbyBroadcastChannelInfo)(nil), // 19: dota.CLobbyBroadcastChannelInfo + (*CLobbyGuildChallenge)(nil), // 20: dota.CLobbyGuildChallenge + (*CDOTALobbyMatchQualityData)(nil), // 21: dota.CDOTALobbyMatchQualityData + (*CSODOTALobby)(nil), // 22: dota.CSODOTALobby + (*CSODOTAServerLobby)(nil), // 23: dota.CSODOTAServerLobby + (*CSODOTAStaticLobby)(nil), // 24: dota.CSODOTAStaticLobby + (*CSODOTAServerStaticLobby)(nil), // 25: dota.CSODOTAServerStaticLobby + (*CMsgAdditionalLobbyStartupAccountData)(nil), // 26: dota.CMsgAdditionalLobbyStartupAccountData + (*CMsgLobbyInitializationComplete)(nil), // 27: dota.CMsgLobbyInitializationComplete + (*CMsgLobbyPlaytestDetails)(nil), // 28: dota.CMsgLobbyPlaytestDetails + (*CMsgLocalServerGuildData)(nil), // 29: dota.CMsgLocalServerGuildData + (*CMsgLocalServerFakeLobbyData)(nil), // 30: dota.CMsgLocalServerFakeLobbyData + (*CMsgLobbyPlayerPlusSubscriptionData_HeroBadge)(nil), // 31: dota.CMsgLobbyPlayerPlusSubscriptionData.HeroBadge + (*CMsgLobbyEventPoints_AccountPoints)(nil), // 32: dota.CMsgLobbyEventPoints.AccountPoints + (*CSODOTALobbyInvite_LobbyMember)(nil), // 33: dota.CSODOTALobbyInvite.LobbyMember + (*CSODOTALobby_CExtraMsg)(nil), // 34: dota.CSODOTALobby.CExtraMsg + (*CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange)(nil), // 35: dota.CMsgAdditionalLobbyStartupAccountData.ChatWheelMessageRange + (*CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange)(nil), // 36: dota.CMsgAdditionalLobbyStartupAccountData.PingWheelMessageRange + (DOTA_GC_TEAM)(0), // 37: dota.DOTA_GC_TEAM + (DOTALeaverStatusT)(0), // 38: dota.DOTALeaverStatus_t + (MatchType)(0), // 39: dota.MatchType + (*CMsgPendingEventAward)(nil), // 40: dota.CMsgPendingEventAward + (EDOTAMMRBoostType)(0), // 41: dota.EDOTAMMRBoostType + (EEvent)(0), // 42: dota.EEvent + (DOTA_GameState)(0), // 43: dota.DOTA_GameState + (DOTA_CM_PICK)(0), // 44: dota.DOTA_CM_PICK + (DOTABotDifficulty)(0), // 45: dota.DOTABotDifficulty + (*CDOTASaveGame)(nil), // 46: dota.CDOTASaveGame + (EMatchOutcome)(0), // 47: dota.EMatchOutcome + (DOTALobbyVisibility)(0), // 48: dota.DOTALobbyVisibility + (DOTASelectionPriorityRules)(0), // 49: dota.DOTASelectionPriorityRules + (DOTASelectionPriorityChoice)(0), // 50: dota.DOTASelectionPriorityChoice + (*CExtraMsgBlock)(nil), // 51: dota.CExtraMsgBlock } var file_dota_gcmessages_common_lobby_proto_depIdxs = []int32{ 0, // 0: dota.CMsgLobbyCoachFriendRequest.request_state:type_name -> dota.ELobbyMemberCoachRequestState - 28, // 1: dota.CMsgLobbyPlayerPlusSubscriptionData.hero_badges:type_name -> dota.CMsgLobbyPlayerPlusSubscriptionData.HeroBadge - 31, // 2: dota.CMsgLobbyEventPoints.account_points:type_name -> dota.CMsgLobbyEventPoints.AccountPoints - 32, // 3: dota.CSODOTALobbyInvite.members:type_name -> dota.CSODOTALobbyInvite.LobbyMember - 36, // 4: dota.CSODOTALobbyMember.team:type_name -> dota.DOTA_GC_TEAM - 37, // 5: dota.CSODOTALobbyMember.leaver_status:type_name -> dota.DOTALeaverStatus_t - 36, // 6: dota.CSODOTALobbyMember.coach_team:type_name -> dota.DOTA_GC_TEAM - 38, // 7: dota.CSODOTALobbyMember.search_match_type:type_name -> dota.MatchType - 36, // 8: dota.CSODOTALobbyMember.live_spectator_team:type_name -> dota.DOTA_GC_TEAM - 39, // 9: dota.CSODOTALobbyMember.pending_awards:type_name -> dota.CMsgPendingEventAward - 39, // 10: dota.CSODOTALobbyMember.pending_awards_on_victory:type_name -> dota.CMsgPendingEventAward - 40, // 11: dota.CSODOTALobbyMember.rank_mmr_boost_type:type_name -> dota.EDOTAMMRBoostType - 36, // 12: dota.CLobbyGuildDetails.team_for_guild:type_name -> dota.DOTA_GC_TEAM - 41, // 13: dota.CLobbyGuildChallenge.event_id:type_name -> dota.EEvent - 10, // 14: dota.CSODOTALobby.all_members:type_name -> dota.CSODOTALobbyMember + 31, // 1: dota.CMsgLobbyPlayerPlusSubscriptionData.hero_badges:type_name -> dota.CMsgLobbyPlayerPlusSubscriptionData.HeroBadge + 32, // 2: dota.CMsgLobbyEventPoints.account_points:type_name -> dota.CMsgLobbyEventPoints.AccountPoints + 33, // 3: dota.CSODOTALobbyInvite.members:type_name -> dota.CSODOTALobbyInvite.LobbyMember + 37, // 4: dota.CSODOTALobbyMember.team:type_name -> dota.DOTA_GC_TEAM + 38, // 5: dota.CSODOTALobbyMember.leaver_status:type_name -> dota.DOTALeaverStatus_t + 37, // 6: dota.CSODOTALobbyMember.coach_team:type_name -> dota.DOTA_GC_TEAM + 39, // 7: dota.CSODOTALobbyMember.search_match_type:type_name -> dota.MatchType + 37, // 8: dota.CSODOTALobbyMember.live_spectator_team:type_name -> dota.DOTA_GC_TEAM + 40, // 9: dota.CSODOTALobbyMember.pending_awards:type_name -> dota.CMsgPendingEventAward + 40, // 10: dota.CSODOTALobbyMember.pending_awards_on_victory:type_name -> dota.CMsgPendingEventAward + 41, // 11: dota.CSODOTALobbyMember.rank_mmr_boost_type:type_name -> dota.EDOTAMMRBoostType + 37, // 12: dota.CLobbyGuildDetails.team_for_guild:type_name -> dota.DOTA_GC_TEAM + 42, // 13: dota.CLobbyGuildChallenge.event_id:type_name -> dota.EEvent + 12, // 14: dota.CSODOTALobby.all_members:type_name -> dota.CSODOTALobbyMember 3, // 15: dota.CSODOTALobby.state:type_name -> dota.CSODOTALobby.State 4, // 16: dota.CSODOTALobby.lobby_type:type_name -> dota.CSODOTALobby.LobbyType - 14, // 17: dota.CSODOTALobby.team_details:type_name -> dota.CLobbyTeamDetails - 42, // 18: dota.CSODOTALobby.game_state:type_name -> dota.DOTA_GameState - 43, // 19: dota.CSODOTALobby.cm_pick:type_name -> dota.DOTA_CM_PICK - 44, // 20: dota.CSODOTALobby.bot_difficulty_radiant:type_name -> dota.DOTABotDifficulty - 16, // 21: dota.CSODOTALobby.timed_reward_details:type_name -> dota.CLobbyTimedRewardDetails + 16, // 17: dota.CSODOTALobby.team_details:type_name -> dota.CLobbyTeamDetails + 43, // 18: dota.CSODOTALobby.game_state:type_name -> dota.DOTA_GameState + 44, // 19: dota.CSODOTALobby.cm_pick:type_name -> dota.DOTA_CM_PICK + 45, // 20: dota.CSODOTALobby.bot_difficulty_radiant:type_name -> dota.DOTABotDifficulty + 18, // 21: dota.CSODOTALobby.timed_reward_details:type_name -> dota.CLobbyTimedRewardDetails 1, // 22: dota.CSODOTALobby.dota_tv_delay:type_name -> dota.LobbyDotaTVDelay - 17, // 23: dota.CSODOTALobby.broadcast_channel_info:type_name -> dota.CLobbyBroadcastChannelInfo - 33, // 24: dota.CSODOTALobby.extra_messages:type_name -> dota.CSODOTALobby.CExtraMsg - 45, // 25: dota.CSODOTALobby.save_game:type_name -> dota.CDOTASaveGame - 46, // 26: dota.CSODOTALobby.match_outcome:type_name -> dota.EMatchOutcome - 47, // 27: dota.CSODOTALobby.visibility:type_name -> dota.DOTALobbyVisibility + 19, // 23: dota.CSODOTALobby.broadcast_channel_info:type_name -> dota.CLobbyBroadcastChannelInfo + 34, // 24: dota.CSODOTALobby.extra_messages:type_name -> dota.CSODOTALobby.CExtraMsg + 46, // 25: dota.CSODOTALobby.save_game:type_name -> dota.CDOTASaveGame + 47, // 26: dota.CSODOTALobby.match_outcome:type_name -> dota.EMatchOutcome + 48, // 27: dota.CSODOTALobby.visibility:type_name -> dota.DOTALobbyVisibility 2, // 28: dota.CSODOTALobby.pause_setting:type_name -> dota.LobbyDotaPauseSetting - 44, // 29: dota.CSODOTALobby.bot_difficulty_dire:type_name -> dota.DOTABotDifficulty - 41, // 30: dota.CSODOTALobby.event_progression_enabled:type_name -> dota.EEvent - 48, // 31: dota.CSODOTALobby.selection_priority_rules:type_name -> dota.DOTASelectionPriorityRules - 49, // 32: dota.CSODOTALobby.series_current_priority_team_choice:type_name -> dota.DOTASelectionPriorityChoice - 49, // 33: dota.CSODOTALobby.series_current_non_priority_team_choice:type_name -> dota.DOTASelectionPriorityChoice - 41, // 34: dota.CSODOTALobby.current_primary_event:type_name -> dota.EEvent - 18, // 35: dota.CSODOTALobby.guild_challenges:type_name -> dota.CLobbyGuildChallenge - 15, // 36: dota.CSODOTALobby.guild_details:type_name -> dota.CLobbyGuildDetails - 7, // 37: dota.CSODOTALobby.lobby_event_points:type_name -> dota.CMsgLobbyEventPoints + 45, // 29: dota.CSODOTALobby.bot_difficulty_dire:type_name -> dota.DOTABotDifficulty + 42, // 30: dota.CSODOTALobby.event_progression_enabled:type_name -> dota.EEvent + 49, // 31: dota.CSODOTALobby.selection_priority_rules:type_name -> dota.DOTASelectionPriorityRules + 50, // 32: dota.CSODOTALobby.series_current_priority_team_choice:type_name -> dota.DOTASelectionPriorityChoice + 50, // 33: dota.CSODOTALobby.series_current_non_priority_team_choice:type_name -> dota.DOTASelectionPriorityChoice + 42, // 34: dota.CSODOTALobby.current_primary_event:type_name -> dota.EEvent + 20, // 35: dota.CSODOTALobby.guild_challenges:type_name -> dota.CLobbyGuildChallenge + 17, // 36: dota.CSODOTALobby.guild_details:type_name -> dota.CLobbyGuildDetails + 9, // 37: dota.CSODOTALobby.lobby_event_points:type_name -> dota.CMsgLobbyEventPoints 5, // 38: dota.CSODOTALobby.coach_friend_requests:type_name -> dota.CMsgLobbyCoachFriendRequest - 33, // 39: dota.CSODOTALobby.extra_startup_messages:type_name -> dota.CSODOTALobby.CExtraMsg - 11, // 40: dota.CSODOTAServerLobby.all_members:type_name -> dota.CSODOTAServerLobbyMember - 12, // 41: dota.CSODOTAStaticLobby.all_members:type_name -> dota.CSODOTAStaticLobbyMember - 13, // 42: dota.CSODOTAServerStaticLobby.all_members:type_name -> dota.CSODOTAServerStaticLobbyMember - 6, // 43: dota.CMsgAdditionalLobbyStartupAccountData.plus_data:type_name -> dota.CMsgLobbyPlayerPlusSubscriptionData - 34, // 44: dota.CMsgAdditionalLobbyStartupAccountData.unlocked_chat_wheel_message_ranges:type_name -> dota.CMsgAdditionalLobbyStartupAccountData.ChatWheelMessageRange - 35, // 45: dota.CMsgAdditionalLobbyStartupAccountData.unlocked_ping_wheel_message_ranges:type_name -> dota.CMsgAdditionalLobbyStartupAccountData.PingWheelMessageRange - 41, // 46: dota.CMsgLocalServerGuildData.event_id:type_name -> dota.EEvent - 7, // 47: dota.CMsgLocalServerFakeLobbyData.event_points:type_name -> dota.CMsgLobbyEventPoints - 26, // 48: dota.CMsgLocalServerFakeLobbyData.guild_info:type_name -> dota.CMsgLocalServerGuildData - 23, // 49: dota.CMsgLocalServerFakeLobbyData.additional_data:type_name -> dota.CMsgAdditionalLobbyStartupAccountData - 30, // 50: dota.CMsgLobbyEventPoints.AccountPoints.event_game_custom_actions:type_name -> dota.CMsgLobbyEventPoints.NetworkedEventAction - 30, // 51: dota.CMsgLobbyEventPoints.AccountPoints.networked_event_actions:type_name -> dota.CMsgLobbyEventPoints.NetworkedEventAction - 29, // 52: dota.CMsgLobbyEventPoints.AccountPoints.periodic_resources:type_name -> dota.CMsgLobbyEventPoints.PeriodicResourceData - 53, // [53:53] is the sub-list for method output_type - 53, // [53:53] is the sub-list for method input_type - 53, // [53:53] is the sub-list for extension type_name - 53, // [53:53] is the sub-list for extension extendee - 0, // [0:53] is the sub-list for field type_name + 34, // 39: dota.CSODOTALobby.extra_startup_messages:type_name -> dota.CSODOTALobby.CExtraMsg + 21, // 40: dota.CSODOTALobby.match_quality_data:type_name -> dota.CDOTALobbyMatchQualityData + 13, // 41: dota.CSODOTAServerLobby.all_members:type_name -> dota.CSODOTAServerLobbyMember + 14, // 42: dota.CSODOTAStaticLobby.all_members:type_name -> dota.CSODOTAStaticLobbyMember + 15, // 43: dota.CSODOTAServerStaticLobby.all_members:type_name -> dota.CSODOTAServerStaticLobbyMember + 6, // 44: dota.CMsgAdditionalLobbyStartupAccountData.plus_data:type_name -> dota.CMsgLobbyPlayerPlusSubscriptionData + 35, // 45: dota.CMsgAdditionalLobbyStartupAccountData.unlocked_chat_wheel_message_ranges:type_name -> dota.CMsgAdditionalLobbyStartupAccountData.ChatWheelMessageRange + 36, // 46: dota.CMsgAdditionalLobbyStartupAccountData.unlocked_ping_wheel_message_ranges:type_name -> dota.CMsgAdditionalLobbyStartupAccountData.PingWheelMessageRange + 42, // 47: dota.CMsgLocalServerGuildData.event_id:type_name -> dota.EEvent + 9, // 48: dota.CMsgLocalServerFakeLobbyData.event_points:type_name -> dota.CMsgLobbyEventPoints + 29, // 49: dota.CMsgLocalServerFakeLobbyData.guild_info:type_name -> dota.CMsgLocalServerGuildData + 26, // 50: dota.CMsgLocalServerFakeLobbyData.additional_data:type_name -> dota.CMsgAdditionalLobbyStartupAccountData + 7, // 51: dota.CMsgLobbyEventPoints.AccountPoints.event_game_custom_actions:type_name -> dota.CMsgEventActionData + 7, // 52: dota.CMsgLobbyEventPoints.AccountPoints.networked_event_actions:type_name -> dota.CMsgEventActionData + 8, // 53: dota.CMsgLobbyEventPoints.AccountPoints.periodic_resources:type_name -> dota.CMsgPeriodicResourceData + 51, // 54: dota.CMsgLobbyEventPoints.AccountPoints.extra_event_messages:type_name -> dota.CExtraMsgBlock + 55, // [55:55] is the sub-list for method output_type + 55, // [55:55] is the sub-list for method input_type + 55, // [55:55] is the sub-list for extension type_name + 55, // [55:55] is the sub-list for extension extendee + 0, // [0:55] is the sub-list for field type_name } func init() { file_dota_gcmessages_common_lobby_proto_init() } @@ -4549,6 +4681,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } file_steammessages_proto_init() file_dota_shared_enums_proto_init() + file_gcsdk_gcmessages_proto_init() if !protoimpl.UnsafeEnabled { file_dota_gcmessages_common_lobby_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgLobbyCoachFriendRequest); i { @@ -4575,7 +4708,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyEventPoints); i { + switch v := v.(*CMsgEventActionData); i { case 0: return &v.state case 1: @@ -4587,7 +4720,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyEventGameData); i { + switch v := v.(*CMsgPeriodicResourceData); i { case 0: return &v.state case 1: @@ -4599,7 +4732,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTALobbyInvite); i { + switch v := v.(*CMsgLobbyEventPoints); i { case 0: return &v.state case 1: @@ -4611,7 +4744,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTALobbyMember); i { + switch v := v.(*CMsgLobbyEventGameData); i { case 0: return &v.state case 1: @@ -4623,7 +4756,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAServerLobbyMember); i { + switch v := v.(*CSODOTALobbyInvite); i { case 0: return &v.state case 1: @@ -4635,7 +4768,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAStaticLobbyMember); i { + switch v := v.(*CSODOTALobbyMember); i { case 0: return &v.state case 1: @@ -4647,7 +4780,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAServerStaticLobbyMember); i { + switch v := v.(*CSODOTAServerLobbyMember); i { case 0: return &v.state case 1: @@ -4659,7 +4792,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CLobbyTeamDetails); i { + switch v := v.(*CSODOTAStaticLobbyMember); i { case 0: return &v.state case 1: @@ -4671,7 +4804,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CLobbyGuildDetails); i { + switch v := v.(*CSODOTAServerStaticLobbyMember); i { case 0: return &v.state case 1: @@ -4683,7 +4816,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CLobbyTimedRewardDetails); i { + switch v := v.(*CLobbyTeamDetails); i { case 0: return &v.state case 1: @@ -4695,7 +4828,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CLobbyBroadcastChannelInfo); i { + switch v := v.(*CLobbyGuildDetails); i { case 0: return &v.state case 1: @@ -4707,7 +4840,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CLobbyGuildChallenge); i { + switch v := v.(*CLobbyTimedRewardDetails); i { case 0: return &v.state case 1: @@ -4719,7 +4852,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTALobby); i { + switch v := v.(*CLobbyBroadcastChannelInfo); i { case 0: return &v.state case 1: @@ -4731,7 +4864,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAServerLobby); i { + switch v := v.(*CLobbyGuildChallenge); i { case 0: return &v.state case 1: @@ -4743,7 +4876,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAStaticLobby); i { + switch v := v.(*CDOTALobbyMatchQualityData); i { case 0: return &v.state case 1: @@ -4755,7 +4888,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTAServerStaticLobby); i { + switch v := v.(*CSODOTALobby); i { case 0: return &v.state case 1: @@ -4767,7 +4900,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgAdditionalLobbyStartupAccountData); i { + switch v := v.(*CSODOTAServerLobby); i { case 0: return &v.state case 1: @@ -4779,7 +4912,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyInitializationComplete); i { + switch v := v.(*CSODOTAStaticLobby); i { case 0: return &v.state case 1: @@ -4791,7 +4924,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyPlaytestDetails); i { + switch v := v.(*CSODOTAServerStaticLobby); i { case 0: return &v.state case 1: @@ -4803,7 +4936,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLocalServerGuildData); i { + switch v := v.(*CMsgAdditionalLobbyStartupAccountData); i { case 0: return &v.state case 1: @@ -4815,7 +4948,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLocalServerFakeLobbyData); i { + switch v := v.(*CMsgLobbyInitializationComplete); i { case 0: return &v.state case 1: @@ -4827,7 +4960,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyPlayerPlusSubscriptionData_HeroBadge); i { + switch v := v.(*CMsgLobbyPlaytestDetails); i { case 0: return &v.state case 1: @@ -4839,7 +4972,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyEventPoints_PeriodicResourceData); i { + switch v := v.(*CMsgLocalServerGuildData); i { case 0: return &v.state case 1: @@ -4851,7 +4984,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyEventPoints_NetworkedEventAction); i { + switch v := v.(*CMsgLocalServerFakeLobbyData); i { case 0: return &v.state case 1: @@ -4863,7 +4996,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLobbyEventPoints_AccountPoints); i { + switch v := v.(*CMsgLobbyPlayerPlusSubscriptionData_HeroBadge); i { case 0: return &v.state case 1: @@ -4875,7 +5008,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTALobbyInvite_LobbyMember); i { + switch v := v.(*CMsgLobbyEventPoints_AccountPoints); i { case 0: return &v.state case 1: @@ -4887,7 +5020,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSODOTALobby_CExtraMsg); i { + switch v := v.(*CSODOTALobbyInvite_LobbyMember); i { case 0: return &v.state case 1: @@ -4899,7 +5032,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange); i { + switch v := v.(*CSODOTALobby_CExtraMsg); i { case 0: return &v.state case 1: @@ -4911,6 +5044,18 @@ func file_dota_gcmessages_common_lobby_proto_init() { } } file_dota_gcmessages_common_lobby_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_common_lobby_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange); i { case 0: return &v.state @@ -4929,7 +5074,7 @@ func file_dota_gcmessages_common_lobby_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_gcmessages_common_lobby_proto_rawDesc, NumEnums: 5, - NumMessages: 31, + NumMessages: 32, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_gcmessages_common_lobby.proto b/dota/dota_gcmessages_common_lobby.proto index 488d6822..4beabd6a 100644 --- a/dota/dota_gcmessages_common_lobby.proto +++ b/dota/dota_gcmessages_common_lobby.proto @@ -5,6 +5,7 @@ option go_package = "github.com/dotabuff/manta/dota;dota"; import "steammessages.proto"; import "dota_shared_enums.proto"; +import "gcsdk_gcmessages.proto"; enum ELobbyMemberCoachRequestState { k_eLobbyMemberCoachRequestState_None = 0; @@ -40,18 +41,18 @@ message CMsgLobbyPlayerPlusSubscriptionData { repeated CMsgLobbyPlayerPlusSubscriptionData.HeroBadge hero_badges = 1; } -message CMsgLobbyEventPoints { - message PeriodicResourceData { - optional uint32 periodic_resource_id = 1; - optional uint32 remaining = 2; - optional uint32 max = 3; - } +message CMsgEventActionData { + optional uint32 action_id = 1; + optional uint32 action_score = 2; +} - message NetworkedEventAction { - optional uint32 action_id = 1; - optional uint32 times_granted = 2; - } +message CMsgPeriodicResourceData { + optional uint32 periodic_resource_id = 1; + optional uint32 remaining = 2; + optional uint32 max = 3; +} +message CMsgLobbyEventPoints { message AccountPoints { optional uint32 account_id = 1; optional uint32 normal_points = 2; @@ -59,12 +60,13 @@ message CMsgLobbyEventPoints { optional bool owned = 4; optional uint64 active_effects_mask = 12; optional uint32 wager_streak = 23; - repeated CMsgLobbyEventPoints.NetworkedEventAction event_game_custom_actions = 25; + repeated CMsgEventActionData event_game_custom_actions = 25; optional uint32 tip_amount_index = 26; optional uint32 active_event_season_id = 27; optional uint32 teleport_fx_level = 28; - repeated CMsgLobbyEventPoints.NetworkedEventAction networked_event_actions = 30; - repeated CMsgLobbyEventPoints.PeriodicResourceData periodic_resources = 31; + repeated CMsgEventActionData networked_event_actions = 30; + repeated CMsgPeriodicResourceData periodic_resources = 31; + repeated CExtraMsgBlock extra_event_messages = 32; } optional uint32 event_id = 1; @@ -134,6 +136,7 @@ message CSODOTALobbyMember { optional bool is_steam_china = 54; optional uint32 live_spectator_account_id = 55; optional uint32 comms_reports_available = 56; + repeated uint32 banned_hero_ids = 57; } message CSODOTAServerLobbyMember { @@ -143,6 +146,7 @@ message CSODOTAStaticLobbyMember { } message CSODOTAServerStaticLobbyMember { + optional fixed64 steam_id = 1; } message CLobbyTeamDetails { @@ -202,6 +206,13 @@ message CLobbyGuildChallenge { repeated uint32 eligible_account_ids = 8; } +message CDOTALobbyMatchQualityData { + optional uint32 overall_quality = 1; + optional uint32 team_balance = 2; + optional uint32 match_skill_range = 3; + optional uint32 match_behavior = 4; +} + message CSODOTALobby { message CExtraMsg { optional uint32 id = 1; @@ -318,7 +329,6 @@ message CSODOTALobby { optional uint32 league_node_id = 110; optional uint32 match_duration = 111; optional uint32 league_phase = 113; - optional bool record_detailed_stats = 114; optional bool experimental_gameplay_enabled = 116; repeated CLobbyGuildChallenge guild_challenges = 117; repeated CLobbyGuildDetails guild_details = 118; @@ -330,6 +340,7 @@ message CSODOTALobby { optional uint32 lobby_creation_time = 128; optional string event_game_definition = 129; repeated CSODOTALobby.CExtraMsg extra_startup_messages = 130; + optional CDOTALobbyMatchQualityData match_quality_data = 131; } message CSODOTAServerLobby { @@ -339,6 +350,7 @@ message CSODOTAServerLobby { message CSODOTAStaticLobby { repeated CSODOTAStaticLobbyMember all_members = 1; optional bool is_player_draft = 2; + optional bool is_last_match_in_series = 3; } message CSODOTAServerStaticLobby { diff --git a/dota/dota_gcmessages_common_match_management.pb.go b/dota/dota_gcmessages_common_match_management.pb.go index 89ac0a1e..1b48277d 100644 --- a/dota/dota_gcmessages_common_match_management.pb.go +++ b/dota/dota_gcmessages_common_match_management.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_common_match_management.proto @@ -23,11 +23,11 @@ const ( type ELaneSelection int32 const ( - ELaneSelection_k_ELaneSelection_SAFELANE ELaneSelection = 0 - ELaneSelection_k_ELaneSelection_OFFLANE ELaneSelection = 1 - ELaneSelection_k_ELaneSelection_MIDLANE ELaneSelection = 2 - ELaneSelection_k_ELaneSelection_SUPPORT_SOFT ELaneSelection = 3 - ELaneSelection_k_ELaneSelection_SUPPORT_HARD ELaneSelection = 4 + ELaneSelection_k_ELaneSelection_SAFELANE ELaneSelection = 0 + ELaneSelection_k_ELaneSelection_OFFLANE ELaneSelection = 1 + ELaneSelection_k_ELaneSelection_MIDLANE ELaneSelection = 2 + ELaneSelection_k_ELaneSelection_SUPPORT ELaneSelection = 3 + ELaneSelection_k_ELaneSelection_HARDSUPPORT ELaneSelection = 4 ) // Enum value maps for ELaneSelection. @@ -36,15 +36,15 @@ var ( 0: "k_ELaneSelection_SAFELANE", 1: "k_ELaneSelection_OFFLANE", 2: "k_ELaneSelection_MIDLANE", - 3: "k_ELaneSelection_SUPPORT_SOFT", - 4: "k_ELaneSelection_SUPPORT_HARD", + 3: "k_ELaneSelection_SUPPORT", + 4: "k_ELaneSelection_HARDSUPPORT", } ELaneSelection_value = map[string]int32{ - "k_ELaneSelection_SAFELANE": 0, - "k_ELaneSelection_OFFLANE": 1, - "k_ELaneSelection_MIDLANE": 2, - "k_ELaneSelection_SUPPORT_SOFT": 3, - "k_ELaneSelection_SUPPORT_HARD": 4, + "k_ELaneSelection_SAFELANE": 0, + "k_ELaneSelection_OFFLANE": 1, + "k_ELaneSelection_MIDLANE": 2, + "k_ELaneSelection_SUPPORT": 3, + "k_ELaneSelection_HARDSUPPORT": 4, } ) @@ -88,40 +88,40 @@ func (ELaneSelection) EnumDescriptor() ([]byte, []int) { type ELaneSelectionFlags int32 const ( - ELaneSelectionFlags_k_ELaneSelectionFlags_None ELaneSelectionFlags = 0 - ELaneSelectionFlags_k_ELaneSelectionFlags_SAFELANE ELaneSelectionFlags = 1 - ELaneSelectionFlags_k_ELaneSelectionFlags_OFFLANE ELaneSelectionFlags = 2 - ELaneSelectionFlags_k_ELaneSelectionFlags_MIDLANE ELaneSelectionFlags = 4 - ELaneSelectionFlags_k_ELaneSelectionFlags_SUPPORT_SOFT ELaneSelectionFlags = 8 - ELaneSelectionFlags_k_ELaneSelectionFlags_SUPPORT_HARD ELaneSelectionFlags = 16 - ELaneSelectionFlags_k_ELaneSelectionFlags_CORE ELaneSelectionFlags = 7 - ELaneSelectionFlags_k_ELaneSelectionFlags_SUPPORT ELaneSelectionFlags = 24 - ELaneSelectionFlags_k_ELaneSelectionFlags_ALL ELaneSelectionFlags = 31 + ELaneSelectionFlags_k_ELaneSelectionFlags_SAFELANE ELaneSelectionFlags = 1 + ELaneSelectionFlags_k_ELaneSelectionFlags_OFFLANE ELaneSelectionFlags = 2 + ELaneSelectionFlags_k_ELaneSelectionFlags_MIDLANE ELaneSelectionFlags = 4 + ELaneSelectionFlags_k_ELaneSelectionFlags_SUPPORT ELaneSelectionFlags = 8 + ELaneSelectionFlags_k_ELaneSelectionFlags_HARDSUPPORT ELaneSelectionFlags = 16 + ELaneSelectionFlags_k_ELaneSelectionFlagGroup_None ELaneSelectionFlags = 0 + ELaneSelectionFlags_k_ELaneSelectionFlagGroup_CORE ELaneSelectionFlags = 7 + ELaneSelectionFlags_k_ELaneSelectionFlagGroup_SUPPORT ELaneSelectionFlags = 24 + ELaneSelectionFlags_k_ELaneSelectionFlagGroup_ALL ELaneSelectionFlags = 31 ) // Enum value maps for ELaneSelectionFlags. var ( ELaneSelectionFlags_name = map[int32]string{ - 0: "k_ELaneSelectionFlags_None", 1: "k_ELaneSelectionFlags_SAFELANE", 2: "k_ELaneSelectionFlags_OFFLANE", 4: "k_ELaneSelectionFlags_MIDLANE", - 8: "k_ELaneSelectionFlags_SUPPORT_SOFT", - 16: "k_ELaneSelectionFlags_SUPPORT_HARD", - 7: "k_ELaneSelectionFlags_CORE", - 24: "k_ELaneSelectionFlags_SUPPORT", - 31: "k_ELaneSelectionFlags_ALL", + 8: "k_ELaneSelectionFlags_SUPPORT", + 16: "k_ELaneSelectionFlags_HARDSUPPORT", + 0: "k_ELaneSelectionFlagGroup_None", + 7: "k_ELaneSelectionFlagGroup_CORE", + 24: "k_ELaneSelectionFlagGroup_SUPPORT", + 31: "k_ELaneSelectionFlagGroup_ALL", } ELaneSelectionFlags_value = map[string]int32{ - "k_ELaneSelectionFlags_None": 0, - "k_ELaneSelectionFlags_SAFELANE": 1, - "k_ELaneSelectionFlags_OFFLANE": 2, - "k_ELaneSelectionFlags_MIDLANE": 4, - "k_ELaneSelectionFlags_SUPPORT_SOFT": 8, - "k_ELaneSelectionFlags_SUPPORT_HARD": 16, - "k_ELaneSelectionFlags_CORE": 7, - "k_ELaneSelectionFlags_SUPPORT": 24, - "k_ELaneSelectionFlags_ALL": 31, + "k_ELaneSelectionFlags_SAFELANE": 1, + "k_ELaneSelectionFlags_OFFLANE": 2, + "k_ELaneSelectionFlags_MIDLANE": 4, + "k_ELaneSelectionFlags_SUPPORT": 8, + "k_ELaneSelectionFlags_HARDSUPPORT": 16, + "k_ELaneSelectionFlagGroup_None": 0, + "k_ELaneSelectionFlagGroup_CORE": 7, + "k_ELaneSelectionFlagGroup_SUPPORT": 24, + "k_ELaneSelectionFlagGroup_ALL": 31, } ) @@ -1425,6 +1425,7 @@ type CSODOTAPartyMember struct { HasHpResource *bool `protobuf:"varint,15,opt,name=has_hp_resource,json=hasHpResource" json:"has_hp_resource,omitempty"` JoinedFromPartyfinder *bool `protobuf:"varint,12,opt,name=joined_from_partyfinder,json=joinedFromPartyfinder" json:"joined_from_partyfinder,omitempty"` IsSteamChina *bool `protobuf:"varint,16,opt,name=is_steam_china,json=isSteamChina" json:"is_steam_china,omitempty"` + BannedHeroIds []uint32 `protobuf:"varint,17,rep,name=banned_hero_ids,json=bannedHeroIds" json:"banned_hero_ids,omitempty"` } func (x *CSODOTAPartyMember) Reset() { @@ -1557,6 +1558,13 @@ func (x *CSODOTAPartyMember) GetIsSteamChina() bool { return false } +func (x *CSODOTAPartyMember) GetBannedHeroIds() []uint32 { + if x != nil { + return x.BannedHeroIds + } + return nil +} + type CSODOTAParty struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1613,6 +1621,10 @@ type CSODOTAParty struct { IsSteamChina *bool `protobuf:"varint,71,opt,name=is_steam_china,json=isSteamChina" json:"is_steam_china,omitempty"` BotDifficultyMask *uint32 `protobuf:"varint,72,opt,name=bot_difficulty_mask,json=botDifficultyMask" json:"bot_difficulty_mask,omitempty"` BotScriptIndexMask *uint32 `protobuf:"varint,73,opt,name=bot_script_index_mask,json=botScriptIndexMask" json:"bot_script_index_mask,omitempty"` + RestrictedFromRanked *bool `protobuf:"varint,74,opt,name=restricted_from_ranked,json=restrictedFromRanked" json:"restricted_from_ranked,omitempty"` + RestrictedFromRankedAccountId *uint32 `protobuf:"varint,75,opt,name=restricted_from_ranked_account_id,json=restrictedFromRankedAccountId" json:"restricted_from_ranked_account_id,omitempty"` + RankSpreadLikertScale *uint32 `protobuf:"varint,76,opt,name=rank_spread_likert_scale,json=rankSpreadLikertScale" json:"rank_spread_likert_scale,omitempty"` + BehaviorScoreLikertScale *uint32 `protobuf:"varint,77,opt,name=behavior_score_likert_scale,json=behaviorScoreLikertScale" json:"behavior_score_likert_scale,omitempty"` } func (x *CSODOTAParty) Reset() { @@ -2004,6 +2016,34 @@ func (x *CSODOTAParty) GetBotScriptIndexMask() uint32 { return 0 } +func (x *CSODOTAParty) GetRestrictedFromRanked() bool { + if x != nil && x.RestrictedFromRanked != nil { + return *x.RestrictedFromRanked + } + return false +} + +func (x *CSODOTAParty) GetRestrictedFromRankedAccountId() uint32 { + if x != nil && x.RestrictedFromRankedAccountId != nil { + return *x.RestrictedFromRankedAccountId + } + return 0 +} + +func (x *CSODOTAParty) GetRankSpreadLikertScale() uint32 { + if x != nil && x.RankSpreadLikertScale != nil { + return *x.RankSpreadLikertScale + } + return 0 +} + +func (x *CSODOTAParty) GetBehaviorScoreLikertScale() uint32 { + if x != nil && x.BehaviorScoreLikertScale != nil { + return *x.BehaviorScoreLikertScale + } + return 0 +} + type CSODOTAPartyInvite struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2792,7 +2832,7 @@ var file_dota_gcmessages_common_match_management_proto_rawDesc = []byte{ 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x63, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, - 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8d, 0x05, 0x0a, 0x12, + 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb5, 0x05, 0x0a, 0x12, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x12, 0x2a, 0x0a, @@ -2833,172 +2873,190 @@ var file_dota_gcmessages_common_match_management_proto_rawDesc = []byte{ 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x74, 0x79, 0x66, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, - 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x22, 0xf9, 0x14, 0x0a, 0x0c, - 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, - 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, - 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x64, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x64, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x06, 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x49, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, - 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, - 0x50, 0x61, 0x72, 0x74, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x12, 0x4b, 0x0a, 0x22, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, - 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, - 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1f, - 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x3f, 0x0a, 0x1c, 0x72, 0x61, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x20, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x72, 0x61, 0x77, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, - 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x61, 0x74, - 0x74, 0x65, 0x6d, 0x70, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x22, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x4e, 0x75, 0x6d, 0x12, - 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x73, 0x12, 0x35, 0x0a, 0x17, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x14, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, - 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x33, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, - 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x75, 0x69, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x34, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x55, 0x69, 0x4c, 0x6f, 0x67, 0x6f, - 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6c, 0x6f, - 0x67, 0x6f, 0x18, 0x35, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x61, - 0x73, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x39, 0x0a, 0x19, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, - 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x64, - 0x61, 0x74, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x44, 0x61, 0x74, - 0x65, 0x12, 0x39, 0x0a, 0x19, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x19, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x1d, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x61, 0x78, 0x5f, - 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x18, 0x1a, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, - 0x4d, 0x61, 0x78, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x12, - 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, - 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6c, 0x61, - 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x3f, 0x0a, 0x1c, 0x6c, - 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x61, 0x6d, 0x65, - 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x23, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x19, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x47, 0x61, - 0x6d, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x16, - 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x28, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x6f, 0x70, - 0x65, 0x6e, 0x46, 0x6f, 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x52, 0x0b, 0x73, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x3b, - 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x18, 0x2a, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, - 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x0b, - 0x72, 0x65, 0x63, 0x76, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x2b, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, - 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, - 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, - 0x12, 0x36, 0x0a, 0x17, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x6f, - 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x2d, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x15, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x54, 0x6f, 0x75, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x75, 0x72, - 0x6e, 0x65, 0x79, 0x5f, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, - 0x2f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x44, 0x69, - 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x6f, 0x75, 0x72, - 0x6e, 0x65, 0x79, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, - 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, - 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x6c, 0x65, - 0x76, 0x65, 0x6c, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x74, 0x6f, 0x75, 0x72, 0x6e, - 0x65, 0x79, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x32, 0x0a, 0x15, - 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, - 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x6f, 0x75, - 0x72, 0x6e, 0x65, 0x79, 0x42, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, - 0x12, 0x3d, 0x0a, 0x1b, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x71, 0x75, 0x65, 0x75, - 0x65, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x36, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, - 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x61, 0x0a, 0x1c, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, - 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x37, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x54, 0x6f, - 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, - 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x19, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, - 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x12, 0x3c, 0x0a, 0x1b, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x62, 0x75, 0x69, 0x6c, - 0x64, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x69, 0x6c, - 0x6c, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x70, 0x61, 0x72, 0x74, 0x79, 0x42, 0x75, - 0x69, 0x6c, 0x64, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x54, 0x6f, 0x46, 0x69, 0x6c, 0x6c, - 0x12, 0x3b, 0x0a, 0x1a, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, - 0x72, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x39, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x70, 0x61, 0x72, 0x74, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, - 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x37, 0x0a, - 0x18, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x15, 0x70, 0x61, 0x72, 0x74, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6f, 0x6c, 0x6f, 0x5f, 0x71, - 0x75, 0x65, 0x75, 0x65, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x6f, 0x6c, 0x6f, - 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, - 0x6c, 0x61, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x3d, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x6c, 0x61, 0x6e, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x64, - 0x79, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x79, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x44, 0x0a, 0x1f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x75, 0x6e, - 0x74, 0x69, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x44, 0x61, 0x74, 0x65, 0x12, 0x44, 0x0a, 0x1f, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x40, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, - 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x41, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, - 0x73, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, - 0x3b, 0x0a, 0x1a, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, - 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x42, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x17, 0x70, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, - 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x2b, 0x0a, 0x11, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x6c, 0x61, 0x67, - 0x73, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, - 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x4a, 0x0a, 0x13, 0x68, 0x69, 0x67, - 0x68, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x44, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x48, - 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x52, 0x11, 0x68, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x18, 0x45, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x3d, 0x0a, - 0x1b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x66, - 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x46, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x18, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x69, - 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x24, 0x0a, 0x0e, - 0x69, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, 0x47, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, - 0x6e, 0x61, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, - 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x11, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x4d, 0x61, - 0x73, 0x6b, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x6f, 0x74, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x49, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x12, 0x62, 0x6f, 0x74, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x30, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x06, + 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x12, 0x26, 0x0a, 0x0f, 0x62, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x11, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, + 0x49, 0x64, 0x73, 0x22, 0xf1, 0x16, 0x0a, 0x0c, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, + 0x61, 0x72, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x06, + 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x05, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, 0x2e, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4b, 0x0a, 0x22, 0x65, 0x66, + 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, + 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x72, 0x61, 0x77, 0x5f, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, + 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x72, + 0x61, 0x77, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, + 0x6b, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x74, 0x74, 0x65, + 0x6d, 0x70, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x21, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, + 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x74, 0x74, + 0x65, 0x6d, 0x70, 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x35, 0x0a, 0x17, 0x6c, 0x6f, 0x77, + 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6c, 0x6f, 0x77, 0x50, + 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x2e, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x15, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x33, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, + 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x75, + 0x69, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x34, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x74, 0x65, + 0x61, 0x6d, 0x55, 0x69, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x18, 0x35, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x61, 0x73, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x12, 0x39, + 0x0a, 0x19, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x16, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x44, 0x61, 0x74, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x1d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, + 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x69, + 0x6e, 0x75, 0x74, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x78, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x12, + 0x32, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, + 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x12, 0x3f, 0x0a, 0x1c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, + 0x69, 0x6e, 0x67, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x6c, 0x6f, 0x77, 0x50, 0x72, + 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, + 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x16, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x66, 0x6f, 0x72, + 0x5f, 0x6a, 0x6f, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x28, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x6f, 0x70, 0x65, 0x6e, 0x46, 0x6f, 0x72, 0x4a, 0x6f, 0x69, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x73, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, + 0x72, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x0b, 0x73, 0x65, 0x6e, 0x74, 0x49, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x69, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x18, 0x2a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x61, 0x72, 0x74, 0x79, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x76, 0x49, 0x6e, 0x76, 0x69, + 0x74, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x66, + 0x6c, 0x61, 0x67, 0x73, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x69, + 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, + 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x65, 0x78, 0x63, 0x6c, + 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x65, 0x78, 0x63, 0x6c, 0x75, + 0x73, 0x69, 0x76, 0x65, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x64, 0x69, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x74, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x32, 0x0a, 0x15, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, 0x73, 0x63, 0x68, 0x65, + 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x13, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, + 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x31, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x11, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x5f, + 0x62, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x32, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x42, 0x72, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x3d, 0x0a, 0x1b, 0x74, 0x6f, 0x75, 0x72, + 0x6e, 0x65, 0x79, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, + 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x74, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, + 0x69, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x61, 0x0a, 0x1c, 0x74, 0x6f, 0x75, 0x72, 0x6e, + 0x65, 0x79, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, + 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, + 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, + 0x19, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, + 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3c, 0x0a, 0x1b, 0x70, 0x61, + 0x72, 0x74, 0x79, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, + 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x69, 0x6c, 0x6c, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x17, 0x70, 0x61, 0x72, 0x74, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x53, 0x6c, 0x6f, + 0x74, 0x73, 0x54, 0x6f, 0x46, 0x69, 0x6c, 0x6c, 0x12, 0x3b, 0x0a, 0x1a, 0x70, 0x61, 0x72, 0x74, + 0x79, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x39, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x70, 0x61, + 0x72, 0x74, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x62, + 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x70, 0x61, 0x72, 0x74, 0x79, 0x42, 0x75, + 0x69, 0x6c, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x73, 0x6f, 0x6c, 0x6f, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x18, 0x3b, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x09, 0x73, 0x6f, 0x6c, 0x6f, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x31, 0x0a, + 0x15, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x6c, 0x61, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x3b, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x64, 0x79, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, + 0x3e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x44, 0x0a, + 0x1f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x65, + 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, + 0x6d, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x44, 0x0a, 0x1f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, + 0x41, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x3b, 0x0a, 0x1a, 0x70, 0x61, 0x72, 0x74, 0x79, + 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x5f, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x42, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x70, 0x61, 0x72, + 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, + 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x12, 0x4a, 0x0a, 0x13, 0x68, 0x69, 0x67, 0x68, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x44, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x11, 0x68, 0x69, 0x67, 0x68, + 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, + 0x17, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x45, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, + 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x1b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, + 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, + 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, 0x47, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x6f, + 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x73, + 0x6b, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, + 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x6f, + 0x74, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6d, + 0x61, 0x73, 0x6b, 0x18, 0x49, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x62, 0x6f, 0x74, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x34, 0x0a, + 0x16, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x72, 0x6f, 0x6d, + 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x64, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x72, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x61, 0x6e, + 0x6b, 0x65, 0x64, 0x12, 0x48, 0x0a, 0x21, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, + 0x64, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x64, 0x5f, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1d, + 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x61, + 0x6e, 0x6b, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x37, 0x0a, + 0x18, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6c, 0x69, 0x6b, + 0x65, 0x72, 0x74, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x4c, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x15, 0x72, 0x61, 0x6e, 0x6b, 0x53, 0x70, 0x72, 0x65, 0x61, 0x64, 0x4c, 0x69, 0x6b, 0x65, 0x72, + 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x3d, 0x0a, 0x1b, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, + 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x72, 0x74, 0x5f, + 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x62, 0x65, 0x68, + 0x61, 0x76, 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x72, 0x74, + 0x53, 0x63, 0x61, 0x6c, 0x65, 0x22, 0x30, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x06, 0x0a, 0x02, 0x55, 0x49, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x46, 0x49, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x02, 0x22, 0x89, 0x03, 0x0a, 0x12, 0x43, 0x53, 0x4f, 0x44, @@ -3953,106 +4011,106 @@ var file_dota_gcmessages_common_match_management_proto_rawDesc = []byte{ 0x95, 0x02, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x4b, 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, 0x5f, 0x44, 0x65, 0x61, 0x64, 0x53, 0x68, 0x6f, 0x74, 0x73, 0x49, 0x6e, 0x74, 0x6f, 0x54, 0x68, - 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x10, 0x96, 0x02, 0x2a, 0xb1, 0x01, 0x0a, 0x0e, + 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x10, 0x96, 0x02, 0x2a, 0xab, 0x01, 0x0a, 0x0e, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x53, 0x41, 0x46, 0x45, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x4f, 0x46, 0x46, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x4d, 0x49, 0x44, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, + 0x4d, 0x49, 0x44, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x53, 0x55, - 0x50, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x4f, 0x46, 0x54, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, - 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x48, 0x41, 0x52, 0x44, 0x10, 0x04, 0x2a, - 0xd1, 0x02, 0x0a, 0x13, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4c, 0x61, - 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, - 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4c, 0x61, - 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, - 0x5f, 0x53, 0x41, 0x46, 0x45, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x6b, + 0x50, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4c, 0x61, + 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x48, 0x41, 0x52, 0x44, + 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x04, 0x2a, 0xdb, 0x02, 0x0a, 0x13, 0x45, 0x4c, + 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x53, 0x41, 0x46, 0x45, 0x4c, + 0x41, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x4f, + 0x46, 0x46, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4c, + 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x5f, 0x4d, 0x49, 0x44, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, - 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x4f, 0x46, 0x46, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x21, - 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x4d, 0x49, 0x44, 0x4c, 0x41, 0x4e, 0x45, 0x10, - 0x04, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, - 0x52, 0x54, 0x5f, 0x53, 0x4f, 0x46, 0x54, 0x10, 0x08, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, + 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x08, 0x12, 0x25, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x48, 0x41, 0x52, 0x44, 0x53, 0x55, 0x50, 0x50, + 0x4f, 0x52, 0x54, 0x10, 0x10, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, - 0x67, 0x73, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x48, 0x41, 0x52, 0x44, 0x10, - 0x10, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x43, 0x4f, 0x52, 0x45, 0x10, - 0x07, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, - 0x52, 0x54, 0x10, 0x18, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x41, 0x4c, - 0x4c, 0x10, 0x1f, 0x2a, 0x69, 0x0a, 0x16, 0x45, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x21, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, - 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, - 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x4c, 0x61, 0x72, - 0x67, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x70, 0x72, 0x65, 0x61, 0x64, 0x10, 0x01, 0x2a, 0xdc, - 0x02, 0x0a, 0x14, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x4d, 0x4d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x48, 0x69, - 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x55, 0x6e, 0x6b, - 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, - 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x4d, 0x69, 0x73, 0x73, - 0x69, 0x6e, 0x67, 0x4d, 0x4d, 0x44, 0x61, 0x74, 0x61, 0x10, 0x01, 0x12, 0x25, 0x0a, 0x21, 0x6b, + 0x67, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x43, 0x4f, 0x52, 0x45, 0x10, 0x07, 0x12, 0x25, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, + 0x52, 0x54, 0x10, 0x18, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x53, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x1f, 0x2a, 0x69, 0x0a, 0x16, 0x45, 0x50, 0x61, 0x72, 0x74, + 0x79, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x4e, 0x6f, + 0x6e, 0x65, 0x10, 0x00, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x50, 0x61, 0x72, 0x74, 0x79, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x6c, 0x61, 0x67, 0x73, + 0x5f, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x53, 0x70, 0x72, 0x65, 0x61, 0x64, + 0x10, 0x01, 0x2a, 0xdc, 0x02, 0x0a, 0x14, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, + 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, - 0x5f, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, - 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, - 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x6c, 0x79, - 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, - 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, - 0x4d, 0x69, 0x6e, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x40, 0x12, 0x26, 0x0a, - 0x22, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x4d, 0x4d, 0x5f, 0x41, 0x6c, 0x6c, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x53, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x65, 0x64, 0x10, 0x41, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, - 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x55, 0x73, 0x69, 0x6e, 0x67, - 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x10, 0x42, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, + 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, - 0x46, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x10, 0x43, 0x12, 0x20, 0x0a, 0x1c, 0x6b, - 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, - 0x5f, 0x48, 0x69, 0x67, 0x68, 0x44, 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x10, 0x44, 0x2a, 0x75, 0x0a, - 0x11, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, - 0x6e, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x6f, 0x74, 0x52, 0x65, - 0x61, 0x64, 0x79, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, - 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, 0x65, 0x61, - 0x64, 0x79, 0x10, 0x02, 0x2a, 0xf6, 0x01, 0x0a, 0x18, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, - 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, - 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, - 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x49, - 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x6b, - 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, 0x74, 0x49, 0x6e, 0x50, - 0x61, 0x72, 0x74, 0x79, 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, - 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, - 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x55, - 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x04, 0x2a, 0xc1, 0x01, - 0x0a, 0x1b, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x29, 0x0a, - 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, - 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x49, - 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, - 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x4c, 0x6f, 0x77, 0x10, 0x01, 0x12, - 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x63, 0x65, - 0x5f, 0x4d, 0x65, 0x64, 0x69, 0x75, 0x6d, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x10, - 0x03, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, - 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4d, 0x4d, 0x44, 0x61, 0x74, 0x61, 0x10, 0x01, 0x12, + 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, + 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x4d, 0x61, 0x6e, 0x75, + 0x61, 0x6c, 0x6c, 0x79, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x21, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, + 0x79, 0x4d, 0x4d, 0x5f, 0x4d, 0x69, 0x6e, 0x5f, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, + 0x40, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, + 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x41, 0x6c, 0x6c, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x53, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0x41, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x55, + 0x73, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x10, 0x42, 0x12, 0x1f, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, + 0x79, 0x4d, 0x4d, 0x5f, 0x46, 0x69, 0x76, 0x65, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x10, 0x43, 0x12, + 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x48, 0x69, 0x67, 0x68, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x4d, 0x4d, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x44, 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x10, + 0x44, 0x2a, 0x75, 0x0a, 0x11, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, + 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x55, 0x6e, + 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x52, 0x65, + 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, + 0x6f, 0x74, 0x52, 0x65, 0x61, 0x64, 0x79, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, + 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x5f, 0x52, 0x65, 0x61, 0x64, 0x79, 0x10, 0x02, 0x2a, 0xf6, 0x01, 0x0a, 0x18, 0x45, 0x52, 0x65, + 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, + 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x30, 0x0a, + 0x2c, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x41, 0x6c, 0x72, 0x65, + 0x61, 0x64, 0x79, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, + 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x4e, 0x6f, + 0x74, 0x49, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, + 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x03, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x52, 0x65, 0x61, 0x64, 0x79, + 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, + 0x04, 0x2a, 0xc1, 0x01, 0x0a, 0x1b, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, + 0x76, 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x63, + 0x65, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, + 0x61, 0x76, 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, + 0x63, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, + 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x4c, 0x6f, + 0x77, 0x10, 0x01, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, + 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, + 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x4d, 0x65, 0x64, 0x69, 0x75, 0x6d, 0x10, 0x02, 0x12, 0x26, 0x0a, + 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, + 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x48, + 0x69, 0x67, 0x68, 0x10, 0x03, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, + 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/dota_gcmessages_common_match_management.proto b/dota/dota_gcmessages_common_match_management.proto index 71095662..248e6808 100644 --- a/dota/dota_gcmessages_common_match_management.proto +++ b/dota/dota_gcmessages_common_match_management.proto @@ -11,20 +11,20 @@ enum ELaneSelection { k_ELaneSelection_SAFELANE = 0; k_ELaneSelection_OFFLANE = 1; k_ELaneSelection_MIDLANE = 2; - k_ELaneSelection_SUPPORT_SOFT = 3; - k_ELaneSelection_SUPPORT_HARD = 4; + k_ELaneSelection_SUPPORT = 3; + k_ELaneSelection_HARDSUPPORT = 4; } enum ELaneSelectionFlags { - k_ELaneSelectionFlags_None = 0; k_ELaneSelectionFlags_SAFELANE = 1; k_ELaneSelectionFlags_OFFLANE = 2; k_ELaneSelectionFlags_MIDLANE = 4; - k_ELaneSelectionFlags_SUPPORT_SOFT = 8; - k_ELaneSelectionFlags_SUPPORT_HARD = 16; - k_ELaneSelectionFlags_CORE = 7; - k_ELaneSelectionFlags_SUPPORT = 24; - k_ELaneSelectionFlags_ALL = 31; + k_ELaneSelectionFlags_SUPPORT = 8; + k_ELaneSelectionFlags_HARDSUPPORT = 16; + k_ELaneSelectionFlagGroup_None = 0; + k_ELaneSelectionFlagGroup_CORE = 7; + k_ELaneSelectionFlagGroup_SUPPORT = 24; + k_ELaneSelectionFlagGroup_ALL = 31; } enum EPartyMatchmakingFlags { @@ -80,6 +80,7 @@ message CSODOTAPartyMember { optional bool has_hp_resource = 15; optional bool joined_from_partyfinder = 12; optional bool is_steam_china = 16; + repeated uint32 banned_hero_ids = 17; } message CSODOTAParty { @@ -140,6 +141,10 @@ message CSODOTAParty { optional bool is_steam_china = 71; optional uint32 bot_difficulty_mask = 72; optional uint32 bot_script_index_mask = 73; + optional bool restricted_from_ranked = 74; + optional uint32 restricted_from_ranked_account_id = 75; + optional uint32 rank_spread_likert_scale = 76; + optional uint32 behavior_score_likert_scale = 77; } message CSODOTAPartyInvite { diff --git a/dota/dota_gcmessages_msgid.pb.go b/dota/dota_gcmessages_msgid.pb.go index 596bdf4e..0418af57 100644 --- a/dota/dota_gcmessages_msgid.pb.go +++ b/dota/dota_gcmessages_msgid.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_msgid.proto @@ -59,6 +59,8 @@ const ( EDOTAGCMsg_k_EMsgGCSubmitPlayerReport EDOTAGCMsg = 7078 EDOTAGCMsg_k_EMsgGCSubmitPlayerReportResponse EDOTAGCMsg = 7079 EDOTAGCMsg_k_EMsgGCPracticeLobbyKick EDOTAGCMsg = 7081 + EDOTAGCMsg_k_EMsgGCSubmitPlayerReportV2 EDOTAGCMsg = 7082 + EDOTAGCMsg_k_EMsgGCSubmitPlayerReportResponseV2 EDOTAGCMsg = 7083 EDOTAGCMsg_k_EMsgGCRequestSaveGames EDOTAGCMsg = 7084 EDOTAGCMsg_k_EMsgGCRequestSaveGamesServer EDOTAGCMsg = 7085 EDOTAGCMsg_k_EMsgGCRequestSaveGamesResponse EDOTAGCMsg = 7086 @@ -122,6 +124,8 @@ const ( EDOTAGCMsg_k_EMsgGCToGCCanInviteUserToTeamResponse EDOTAGCMsg = 7235 EDOTAGCMsg_k_EMsgGCToGCGetUserRank EDOTAGCMsg = 7236 EDOTAGCMsg_k_EMsgGCToGCGetUserRankResponse EDOTAGCMsg = 7237 + EDOTAGCMsg_k_EMsgGCToGCAdjustUserRank EDOTAGCMsg = 7238 + EDOTAGCMsg_k_EMsgGCToGCAdjustUserRankResponse EDOTAGCMsg = 7239 EDOTAGCMsg_k_EMsgGCToGCUpdateTeamStats EDOTAGCMsg = 7240 EDOTAGCMsg_k_EMsgGCToGCValidateTeam EDOTAGCMsg = 7241 EDOTAGCMsg_k_EMsgGCToGCValidateTeamResponse EDOTAGCMsg = 7242 @@ -141,6 +145,8 @@ const ( EDOTAGCMsg_k_EMsgGCFantasyLivePlayerStats EDOTAGCMsg = 7308 EDOTAGCMsg_k_EMsgGCFantasyFinalPlayerStats EDOTAGCMsg = 7309 EDOTAGCMsg_k_EMsgGCFlipLobbyTeams EDOTAGCMsg = 7320 + EDOTAGCMsg_k_EMsgGCToGCEvaluateReportedPlayer EDOTAGCMsg = 7322 + EDOTAGCMsg_k_EMsgGCToGCEvaluateReportedPlayerResponse EDOTAGCMsg = 7323 EDOTAGCMsg_k_EMsgGCToGCProcessPlayerReportForTarget EDOTAGCMsg = 7324 EDOTAGCMsg_k_EMsgGCToGCProcessReportSuccess EDOTAGCMsg = 7325 EDOTAGCMsg_k_EMsgGCNotifyAccountFlagsChange EDOTAGCMsg = 7326 @@ -177,6 +183,9 @@ const ( EDOTAGCMsg_k_EMsgGCToGCUpdateMatchmakingStats EDOTAGCMsg = 7415 EDOTAGCMsg_k_EMsgGCToServerPingRequest EDOTAGCMsg = 7416 EDOTAGCMsg_k_EMsgGCToServerPingResponse EDOTAGCMsg = 7417 + EDOTAGCMsg_k_EMsgGCToServerEvaluateToxicChat EDOTAGCMsg = 7418 + EDOTAGCMsg_k_EMsgServerToGCEvaluateToxicChat EDOTAGCMsg = 7419 + EDOTAGCMsg_k_EMsgServerToGCEvaluateToxicChatResponse EDOTAGCMsg = 7420 EDOTAGCMsg_k_EMsgGCToGCProcessMatchLeaver EDOTAGCMsg = 7426 EDOTAGCMsg_k_EMsgGCNotificationsRequest EDOTAGCMsg = 7427 EDOTAGCMsg_k_EMsgGCNotificationsResponse EDOTAGCMsg = 7428 @@ -282,7 +291,6 @@ const ( EDOTAGCMsg_k_EMsgServerToGCCavernCrawlIsHeroActiveResponse EDOTAGCMsg = 7626 EDOTAGCMsg_k_EMsgClientToGCPlayerCardSpecificPurchaseRequest EDOTAGCMsg = 7627 EDOTAGCMsg_k_EMsgClientToGCPlayerCardSpecificPurchaseResponse EDOTAGCMsg = 7628 - EDOTAGCMsg_k_EMsgGCtoServerTensorflowInstance EDOTAGCMsg = 7629 EDOTAGCMsg_k_EMsgSQLSetIsLeagueAdmin EDOTAGCMsg = 7630 EDOTAGCMsg_k_EMsgGCToGCGetLiveLeagueMatches EDOTAGCMsg = 7631 EDOTAGCMsg_k_EMsgGCToGCGetLiveLeagueMatchesResponse EDOTAGCMsg = 7632 @@ -601,7 +609,6 @@ const ( EDOTAGCMsg_k_EMsgClientToGCRequestContestVotesResponse EDOTAGCMsg = 8348 EDOTAGCMsg_k_EMsgClientToGCMVPVoteTimeout EDOTAGCMsg = 8349 EDOTAGCMsg_k_EMsgClientToGCMVPVoteTimeoutResponse EDOTAGCMsg = 8350 - EDOTAGCMsg_k_EMsgDetailedGameStats EDOTAGCMsg = 8353 EDOTAGCMsg_k_EMsgMatchMatchmakingStats EDOTAGCMsg = 8360 EDOTAGCMsg_k_EMsgClientToGCSubmitPlayerMatchSurvey EDOTAGCMsg = 8361 EDOTAGCMsg_k_EMsgClientToGCSubmitPlayerMatchSurveyResponse EDOTAGCMsg = 8362 @@ -683,6 +690,9 @@ const ( EDOTAGCMsg_k_EMsgClientToGCRequestActiveGuildChallenge EDOTAGCMsg = 8713 EDOTAGCMsg_k_EMsgClientToGCRequestActiveGuildChallengeResponse EDOTAGCMsg = 8714 EDOTAGCMsg_k_EMsgGCToClientActiveGuildChallengeUpdated EDOTAGCMsg = 8715 + EDOTAGCMsg_k_EMsgClientToGCRequestReporterUpdates EDOTAGCMsg = 8716 + EDOTAGCMsg_k_EMsgClientToGCRequestReporterUpdatesResponse EDOTAGCMsg = 8717 + EDOTAGCMsg_k_EMsgClientToGCAcknowledgeReporterUpdates EDOTAGCMsg = 8718 EDOTAGCMsg_k_EMsgSignOutGuildChallengeProgress EDOTAGCMsg = 8720 EDOTAGCMsg_k_EMsgClientToGCRequestGuildEventMembers EDOTAGCMsg = 8721 EDOTAGCMsg_k_EMsgClientToGCRequestGuildEventMembersResponse EDOTAGCMsg = 8722 @@ -833,8 +843,7 @@ const ( EDOTAGCMsg_k_EMsgGCToClientCollectorsCacheAvailableDataResponse EDOTAGCMsg = 8872 EDOTAGCMsg_k_EMsgClientToGCUploadMatchClip EDOTAGCMsg = 8873 EDOTAGCMsg_k_EMsgGCToClientUploadMatchClipResponse EDOTAGCMsg = 8874 - EDOTAGCMsg_k_EMsgGCToServerSetSteamLearnDisable EDOTAGCMsg = 8875 - EDOTAGCMsg_k_EMsgGCToServerSetSteamLearnKeysChanged EDOTAGCMsg = 8876 + EDOTAGCMsg_k_EMsgGCToServerSteamLearnAccessTokensChanged EDOTAGCMsg = 8876 EDOTAGCMsg_k_EMsgSignOutMuertaMinigame EDOTAGCMsg = 8877 EDOTAGCMsg_k_EMsgGCToServerLobbyHeroRoleStats EDOTAGCMsg = 8878 EDOTAGCMsg_k_EMsgClientToGCRankRequest EDOTAGCMsg = 8879 @@ -843,7 +852,68 @@ const ( EDOTAGCMsg_k_EMsgSignOutMapStats EDOTAGCMsg = 8882 EDOTAGCMsg_k_EMsgClientToGCMapStatsRequest EDOTAGCMsg = 8883 EDOTAGCMsg_k_EMsgGCToClientMapStatsResponse EDOTAGCMsg = 8884 - EDOTAGCMsg_k_EMsgGCToServerSetSteamLearnInferencing EDOTAGCMsg = 8885 + EDOTAGCMsg_k_EMsgClientToGCShowcaseGetUserData EDOTAGCMsg = 8886 + EDOTAGCMsg_k_EMsgClientToGCShowcaseGetUserDataResponse EDOTAGCMsg = 8887 + EDOTAGCMsg_k_EMsgClientToGCShowcaseSetUserData EDOTAGCMsg = 8888 + EDOTAGCMsg_k_EMsgClientToGCShowcaseSetUserDataResponse EDOTAGCMsg = 8889 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingGetData EDOTAGCMsg = 8890 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingGetDataResponse EDOTAGCMsg = 8891 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingPerformOperation EDOTAGCMsg = 8892 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingPerformOperationResponse EDOTAGCMsg = 8893 + EDOTAGCMsg_k_EMsgGCToClientFantasyCraftingGetDataUpdated EDOTAGCMsg = 8894 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingDevModifyTablet EDOTAGCMsg = 8895 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingDevModifyTabletResponse EDOTAGCMsg = 8896 + EDOTAGCMsg_k_EMsgClientToGCRoadToTIGetQuests EDOTAGCMsg = 8897 + EDOTAGCMsg_k_EMsgClientToGCRoadToTIGetQuestsResponse EDOTAGCMsg = 8898 + EDOTAGCMsg_k_EMsgClientToGCRoadToTIGetActiveQuest EDOTAGCMsg = 8899 + EDOTAGCMsg_k_EMsgClientToGCRoadToTIGetActiveQuestResponse EDOTAGCMsg = 8900 + EDOTAGCMsg_k_EMsgClientToGCBingoGetUserData EDOTAGCMsg = 8901 + EDOTAGCMsg_k_EMsgClientToGCBingoGetUserDataResponse EDOTAGCMsg = 8902 + EDOTAGCMsg_k_EMsgClientToGCBingoClaimRow EDOTAGCMsg = 8903 + EDOTAGCMsg_k_EMsgClientToGCBingoClaimRowResponse EDOTAGCMsg = 8904 + EDOTAGCMsg_k_EMsgClientToGCBingoDevRerollCard EDOTAGCMsg = 8905 + EDOTAGCMsg_k_EMsgClientToGCBingoDevRerollCardResponse EDOTAGCMsg = 8906 + EDOTAGCMsg_k_EMsgClientToGCBingoGetStatsData EDOTAGCMsg = 8907 + EDOTAGCMsg_k_EMsgClientToGCBingoGetStatsDataResponse EDOTAGCMsg = 8908 + EDOTAGCMsg_k_EMsgGCToClientBingoUserDataUpdated EDOTAGCMsg = 8909 + EDOTAGCMsg_k_EMsgGCToClientRoadToTIQuestDataUpdated EDOTAGCMsg = 8910 + EDOTAGCMsg_k_EMsgClientToGCRoadToTIUseItem EDOTAGCMsg = 8911 + EDOTAGCMsg_k_EMsgClientToGCRoadToTIUseItemResponse EDOTAGCMsg = 8912 + EDOTAGCMsg_k_EMsgClientToGCShowcaseSubmitReport EDOTAGCMsg = 8913 + EDOTAGCMsg_k_EMsgClientToGCShowcaseSubmitReportResponse EDOTAGCMsg = 8914 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminGetReportsRollupList EDOTAGCMsg = 8915 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminGetReportsRollupListResponse EDOTAGCMsg = 8916 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminGetReportsRollup EDOTAGCMsg = 8917 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminGetReportsRollupResponse EDOTAGCMsg = 8918 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminGetUserDetails EDOTAGCMsg = 8919 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminGetUserDetailsResponse EDOTAGCMsg = 8920 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminConvict EDOTAGCMsg = 8921 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminConvictResponse EDOTAGCMsg = 8922 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminExonerate EDOTAGCMsg = 8923 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminExonerateResponse EDOTAGCMsg = 8924 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminReset EDOTAGCMsg = 8925 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminResetResponse EDOTAGCMsg = 8926 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminLockAccount EDOTAGCMsg = 8927 + EDOTAGCMsg_k_EMsgClientToGCShowcaseAdminLockAccountResponse EDOTAGCMsg = 8928 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingSelectPlayer EDOTAGCMsg = 8929 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingSelectPlayerResponse EDOTAGCMsg = 8930 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingGenerateTablets EDOTAGCMsg = 8931 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingGenerateTabletsResponse EDOTAGCMsg = 8932 + EDOTAGCMsg_k_EMsgClientToGcFantasyCraftingUpgradeTablets EDOTAGCMsg = 8933 + EDOTAGCMsg_k_EMsgClientToGcFantasyCraftingUpgradeTabletsResponse EDOTAGCMsg = 8934 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingRerollOptions EDOTAGCMsg = 8936 + EDOTAGCMsg_k_EMsgClientToGCFantasyCraftingRerollOptionsResponse EDOTAGCMsg = 8937 + EDOTAGCMsg_k_EMsgClientToGCRoadToTIDevForceQuest EDOTAGCMsg = 8935 + EDOTAGCMsg_k_EMsgLobbyRoadToTIMatchQuestData EDOTAGCMsg = 8939 + EDOTAGCMsg_k_EMsgClientToGCShowcaseModerationGetQueue EDOTAGCMsg = 8940 + EDOTAGCMsg_k_EMsgClientToGCShowcaseModerationGetQueueResponse EDOTAGCMsg = 8941 + EDOTAGCMsg_k_EMsgClientToGCShowcaseModerationApplyModeration EDOTAGCMsg = 8942 + EDOTAGCMsg_k_EMsgClientToGCShowcaseModerationApplyModerationResponse EDOTAGCMsg = 8943 + EDOTAGCMsg_k_EMsgServerToGCNewBloomGift EDOTAGCMsg = 8960 + EDOTAGCMsg_k_EMsgServerToGCNewBloomGiftResponse EDOTAGCMsg = 8961 + EDOTAGCMsg_k_EMsgClientToGCNewBloomGift EDOTAGCMsg = 8965 + EDOTAGCMsg_k_EMsgClientToGCNewBloomGiftResponse EDOTAGCMsg = 8966 + EDOTAGCMsg_k_EMsgClientToGCSetBannedHeroes EDOTAGCMsg = 8969 ) // Enum value maps for EDOTAGCMsg. @@ -885,6 +955,8 @@ var ( 7078: "k_EMsgGCSubmitPlayerReport", 7079: "k_EMsgGCSubmitPlayerReportResponse", 7081: "k_EMsgGCPracticeLobbyKick", + 7082: "k_EMsgGCSubmitPlayerReportV2", + 7083: "k_EMsgGCSubmitPlayerReportResponseV2", 7084: "k_EMsgGCRequestSaveGames", 7085: "k_EMsgGCRequestSaveGamesServer", 7086: "k_EMsgGCRequestSaveGamesResponse", @@ -948,6 +1020,8 @@ var ( 7235: "k_EMsgGCToGCCanInviteUserToTeamResponse", 7236: "k_EMsgGCToGCGetUserRank", 7237: "k_EMsgGCToGCGetUserRankResponse", + 7238: "k_EMsgGCToGCAdjustUserRank", + 7239: "k_EMsgGCToGCAdjustUserRankResponse", 7240: "k_EMsgGCToGCUpdateTeamStats", 7241: "k_EMsgGCToGCValidateTeam", 7242: "k_EMsgGCToGCValidateTeamResponse", @@ -967,6 +1041,8 @@ var ( 7308: "k_EMsgGCFantasyLivePlayerStats", 7309: "k_EMsgGCFantasyFinalPlayerStats", 7320: "k_EMsgGCFlipLobbyTeams", + 7322: "k_EMsgGCToGCEvaluateReportedPlayer", + 7323: "k_EMsgGCToGCEvaluateReportedPlayerResponse", 7324: "k_EMsgGCToGCProcessPlayerReportForTarget", 7325: "k_EMsgGCToGCProcessReportSuccess", 7326: "k_EMsgGCNotifyAccountFlagsChange", @@ -1003,6 +1079,9 @@ var ( 7415: "k_EMsgGCToGCUpdateMatchmakingStats", 7416: "k_EMsgGCToServerPingRequest", 7417: "k_EMsgGCToServerPingResponse", + 7418: "k_EMsgGCToServerEvaluateToxicChat", + 7419: "k_EMsgServerToGCEvaluateToxicChat", + 7420: "k_EMsgServerToGCEvaluateToxicChatResponse", 7426: "k_EMsgGCToGCProcessMatchLeaver", 7427: "k_EMsgGCNotificationsRequest", 7428: "k_EMsgGCNotificationsResponse", @@ -1108,7 +1187,6 @@ var ( 7626: "k_EMsgServerToGCCavernCrawlIsHeroActiveResponse", 7627: "k_EMsgClientToGCPlayerCardSpecificPurchaseRequest", 7628: "k_EMsgClientToGCPlayerCardSpecificPurchaseResponse", - 7629: "k_EMsgGCtoServerTensorflowInstance", 7630: "k_EMsgSQLSetIsLeagueAdmin", 7631: "k_EMsgGCToGCGetLiveLeagueMatches", 7632: "k_EMsgGCToGCGetLiveLeagueMatchesResponse", @@ -1427,7 +1505,6 @@ var ( 8348: "k_EMsgClientToGCRequestContestVotesResponse", 8349: "k_EMsgClientToGCMVPVoteTimeout", 8350: "k_EMsgClientToGCMVPVoteTimeoutResponse", - 8353: "k_EMsgDetailedGameStats", 8360: "k_EMsgMatchMatchmakingStats", 8361: "k_EMsgClientToGCSubmitPlayerMatchSurvey", 8362: "k_EMsgClientToGCSubmitPlayerMatchSurveyResponse", @@ -1509,6 +1586,9 @@ var ( 8713: "k_EMsgClientToGCRequestActiveGuildChallenge", 8714: "k_EMsgClientToGCRequestActiveGuildChallengeResponse", 8715: "k_EMsgGCToClientActiveGuildChallengeUpdated", + 8716: "k_EMsgClientToGCRequestReporterUpdates", + 8717: "k_EMsgClientToGCRequestReporterUpdatesResponse", + 8718: "k_EMsgClientToGCAcknowledgeReporterUpdates", 8720: "k_EMsgSignOutGuildChallengeProgress", 8721: "k_EMsgClientToGCRequestGuildEventMembers", 8722: "k_EMsgClientToGCRequestGuildEventMembersResponse", @@ -1659,8 +1739,7 @@ var ( 8872: "k_EMsgGCToClientCollectorsCacheAvailableDataResponse", 8873: "k_EMsgClientToGCUploadMatchClip", 8874: "k_EMsgGCToClientUploadMatchClipResponse", - 8875: "k_EMsgGCToServerSetSteamLearnDisable", - 8876: "k_EMsgGCToServerSetSteamLearnKeysChanged", + 8876: "k_EMsgGCToServerSteamLearnAccessTokensChanged", 8877: "k_EMsgSignOutMuertaMinigame", 8878: "k_EMsgGCToServerLobbyHeroRoleStats", 8879: "k_EMsgClientToGCRankRequest", @@ -1669,7 +1748,68 @@ var ( 8882: "k_EMsgSignOutMapStats", 8883: "k_EMsgClientToGCMapStatsRequest", 8884: "k_EMsgGCToClientMapStatsResponse", - 8885: "k_EMsgGCToServerSetSteamLearnInferencing", + 8886: "k_EMsgClientToGCShowcaseGetUserData", + 8887: "k_EMsgClientToGCShowcaseGetUserDataResponse", + 8888: "k_EMsgClientToGCShowcaseSetUserData", + 8889: "k_EMsgClientToGCShowcaseSetUserDataResponse", + 8890: "k_EMsgClientToGCFantasyCraftingGetData", + 8891: "k_EMsgClientToGCFantasyCraftingGetDataResponse", + 8892: "k_EMsgClientToGCFantasyCraftingPerformOperation", + 8893: "k_EMsgClientToGCFantasyCraftingPerformOperationResponse", + 8894: "k_EMsgGCToClientFantasyCraftingGetDataUpdated", + 8895: "k_EMsgClientToGCFantasyCraftingDevModifyTablet", + 8896: "k_EMsgClientToGCFantasyCraftingDevModifyTabletResponse", + 8897: "k_EMsgClientToGCRoadToTIGetQuests", + 8898: "k_EMsgClientToGCRoadToTIGetQuestsResponse", + 8899: "k_EMsgClientToGCRoadToTIGetActiveQuest", + 8900: "k_EMsgClientToGCRoadToTIGetActiveQuestResponse", + 8901: "k_EMsgClientToGCBingoGetUserData", + 8902: "k_EMsgClientToGCBingoGetUserDataResponse", + 8903: "k_EMsgClientToGCBingoClaimRow", + 8904: "k_EMsgClientToGCBingoClaimRowResponse", + 8905: "k_EMsgClientToGCBingoDevRerollCard", + 8906: "k_EMsgClientToGCBingoDevRerollCardResponse", + 8907: "k_EMsgClientToGCBingoGetStatsData", + 8908: "k_EMsgClientToGCBingoGetStatsDataResponse", + 8909: "k_EMsgGCToClientBingoUserDataUpdated", + 8910: "k_EMsgGCToClientRoadToTIQuestDataUpdated", + 8911: "k_EMsgClientToGCRoadToTIUseItem", + 8912: "k_EMsgClientToGCRoadToTIUseItemResponse", + 8913: "k_EMsgClientToGCShowcaseSubmitReport", + 8914: "k_EMsgClientToGCShowcaseSubmitReportResponse", + 8915: "k_EMsgClientToGCShowcaseAdminGetReportsRollupList", + 8916: "k_EMsgClientToGCShowcaseAdminGetReportsRollupListResponse", + 8917: "k_EMsgClientToGCShowcaseAdminGetReportsRollup", + 8918: "k_EMsgClientToGCShowcaseAdminGetReportsRollupResponse", + 8919: "k_EMsgClientToGCShowcaseAdminGetUserDetails", + 8920: "k_EMsgClientToGCShowcaseAdminGetUserDetailsResponse", + 8921: "k_EMsgClientToGCShowcaseAdminConvict", + 8922: "k_EMsgClientToGCShowcaseAdminConvictResponse", + 8923: "k_EMsgClientToGCShowcaseAdminExonerate", + 8924: "k_EMsgClientToGCShowcaseAdminExonerateResponse", + 8925: "k_EMsgClientToGCShowcaseAdminReset", + 8926: "k_EMsgClientToGCShowcaseAdminResetResponse", + 8927: "k_EMsgClientToGCShowcaseAdminLockAccount", + 8928: "k_EMsgClientToGCShowcaseAdminLockAccountResponse", + 8929: "k_EMsgClientToGCFantasyCraftingSelectPlayer", + 8930: "k_EMsgClientToGCFantasyCraftingSelectPlayerResponse", + 8931: "k_EMsgClientToGCFantasyCraftingGenerateTablets", + 8932: "k_EMsgClientToGCFantasyCraftingGenerateTabletsResponse", + 8933: "k_EMsgClientToGcFantasyCraftingUpgradeTablets", + 8934: "k_EMsgClientToGcFantasyCraftingUpgradeTabletsResponse", + 8936: "k_EMsgClientToGCFantasyCraftingRerollOptions", + 8937: "k_EMsgClientToGCFantasyCraftingRerollOptionsResponse", + 8935: "k_EMsgClientToGCRoadToTIDevForceQuest", + 8939: "k_EMsgLobbyRoadToTIMatchQuestData", + 8940: "k_EMsgClientToGCShowcaseModerationGetQueue", + 8941: "k_EMsgClientToGCShowcaseModerationGetQueueResponse", + 8942: "k_EMsgClientToGCShowcaseModerationApplyModeration", + 8943: "k_EMsgClientToGCShowcaseModerationApplyModerationResponse", + 8960: "k_EMsgServerToGCNewBloomGift", + 8961: "k_EMsgServerToGCNewBloomGiftResponse", + 8965: "k_EMsgClientToGCNewBloomGift", + 8966: "k_EMsgClientToGCNewBloomGiftResponse", + 8969: "k_EMsgClientToGCSetBannedHeroes", } EDOTAGCMsg_value = map[string]int32{ "k_EMsgGCDOTABase": 7000, @@ -1708,6 +1848,8 @@ var ( "k_EMsgGCSubmitPlayerReport": 7078, "k_EMsgGCSubmitPlayerReportResponse": 7079, "k_EMsgGCPracticeLobbyKick": 7081, + "k_EMsgGCSubmitPlayerReportV2": 7082, + "k_EMsgGCSubmitPlayerReportResponseV2": 7083, "k_EMsgGCRequestSaveGames": 7084, "k_EMsgGCRequestSaveGamesServer": 7085, "k_EMsgGCRequestSaveGamesResponse": 7086, @@ -1771,6 +1913,8 @@ var ( "k_EMsgGCToGCCanInviteUserToTeamResponse": 7235, "k_EMsgGCToGCGetUserRank": 7236, "k_EMsgGCToGCGetUserRankResponse": 7237, + "k_EMsgGCToGCAdjustUserRank": 7238, + "k_EMsgGCToGCAdjustUserRankResponse": 7239, "k_EMsgGCToGCUpdateTeamStats": 7240, "k_EMsgGCToGCValidateTeam": 7241, "k_EMsgGCToGCValidateTeamResponse": 7242, @@ -1790,6 +1934,8 @@ var ( "k_EMsgGCFantasyLivePlayerStats": 7308, "k_EMsgGCFantasyFinalPlayerStats": 7309, "k_EMsgGCFlipLobbyTeams": 7320, + "k_EMsgGCToGCEvaluateReportedPlayer": 7322, + "k_EMsgGCToGCEvaluateReportedPlayerResponse": 7323, "k_EMsgGCToGCProcessPlayerReportForTarget": 7324, "k_EMsgGCToGCProcessReportSuccess": 7325, "k_EMsgGCNotifyAccountFlagsChange": 7326, @@ -1826,6 +1972,9 @@ var ( "k_EMsgGCToGCUpdateMatchmakingStats": 7415, "k_EMsgGCToServerPingRequest": 7416, "k_EMsgGCToServerPingResponse": 7417, + "k_EMsgGCToServerEvaluateToxicChat": 7418, + "k_EMsgServerToGCEvaluateToxicChat": 7419, + "k_EMsgServerToGCEvaluateToxicChatResponse": 7420, "k_EMsgGCToGCProcessMatchLeaver": 7426, "k_EMsgGCNotificationsRequest": 7427, "k_EMsgGCNotificationsResponse": 7428, @@ -1931,7 +2080,6 @@ var ( "k_EMsgServerToGCCavernCrawlIsHeroActiveResponse": 7626, "k_EMsgClientToGCPlayerCardSpecificPurchaseRequest": 7627, "k_EMsgClientToGCPlayerCardSpecificPurchaseResponse": 7628, - "k_EMsgGCtoServerTensorflowInstance": 7629, "k_EMsgSQLSetIsLeagueAdmin": 7630, "k_EMsgGCToGCGetLiveLeagueMatches": 7631, "k_EMsgGCToGCGetLiveLeagueMatchesResponse": 7632, @@ -2250,7 +2398,6 @@ var ( "k_EMsgClientToGCRequestContestVotesResponse": 8348, "k_EMsgClientToGCMVPVoteTimeout": 8349, "k_EMsgClientToGCMVPVoteTimeoutResponse": 8350, - "k_EMsgDetailedGameStats": 8353, "k_EMsgMatchMatchmakingStats": 8360, "k_EMsgClientToGCSubmitPlayerMatchSurvey": 8361, "k_EMsgClientToGCSubmitPlayerMatchSurveyResponse": 8362, @@ -2332,6 +2479,9 @@ var ( "k_EMsgClientToGCRequestActiveGuildChallenge": 8713, "k_EMsgClientToGCRequestActiveGuildChallengeResponse": 8714, "k_EMsgGCToClientActiveGuildChallengeUpdated": 8715, + "k_EMsgClientToGCRequestReporterUpdates": 8716, + "k_EMsgClientToGCRequestReporterUpdatesResponse": 8717, + "k_EMsgClientToGCAcknowledgeReporterUpdates": 8718, "k_EMsgSignOutGuildChallengeProgress": 8720, "k_EMsgClientToGCRequestGuildEventMembers": 8721, "k_EMsgClientToGCRequestGuildEventMembersResponse": 8722, @@ -2482,8 +2632,7 @@ var ( "k_EMsgGCToClientCollectorsCacheAvailableDataResponse": 8872, "k_EMsgClientToGCUploadMatchClip": 8873, "k_EMsgGCToClientUploadMatchClipResponse": 8874, - "k_EMsgGCToServerSetSteamLearnDisable": 8875, - "k_EMsgGCToServerSetSteamLearnKeysChanged": 8876, + "k_EMsgGCToServerSteamLearnAccessTokensChanged": 8876, "k_EMsgSignOutMuertaMinigame": 8877, "k_EMsgGCToServerLobbyHeroRoleStats": 8878, "k_EMsgClientToGCRankRequest": 8879, @@ -2492,7 +2641,68 @@ var ( "k_EMsgSignOutMapStats": 8882, "k_EMsgClientToGCMapStatsRequest": 8883, "k_EMsgGCToClientMapStatsResponse": 8884, - "k_EMsgGCToServerSetSteamLearnInferencing": 8885, + "k_EMsgClientToGCShowcaseGetUserData": 8886, + "k_EMsgClientToGCShowcaseGetUserDataResponse": 8887, + "k_EMsgClientToGCShowcaseSetUserData": 8888, + "k_EMsgClientToGCShowcaseSetUserDataResponse": 8889, + "k_EMsgClientToGCFantasyCraftingGetData": 8890, + "k_EMsgClientToGCFantasyCraftingGetDataResponse": 8891, + "k_EMsgClientToGCFantasyCraftingPerformOperation": 8892, + "k_EMsgClientToGCFantasyCraftingPerformOperationResponse": 8893, + "k_EMsgGCToClientFantasyCraftingGetDataUpdated": 8894, + "k_EMsgClientToGCFantasyCraftingDevModifyTablet": 8895, + "k_EMsgClientToGCFantasyCraftingDevModifyTabletResponse": 8896, + "k_EMsgClientToGCRoadToTIGetQuests": 8897, + "k_EMsgClientToGCRoadToTIGetQuestsResponse": 8898, + "k_EMsgClientToGCRoadToTIGetActiveQuest": 8899, + "k_EMsgClientToGCRoadToTIGetActiveQuestResponse": 8900, + "k_EMsgClientToGCBingoGetUserData": 8901, + "k_EMsgClientToGCBingoGetUserDataResponse": 8902, + "k_EMsgClientToGCBingoClaimRow": 8903, + "k_EMsgClientToGCBingoClaimRowResponse": 8904, + "k_EMsgClientToGCBingoDevRerollCard": 8905, + "k_EMsgClientToGCBingoDevRerollCardResponse": 8906, + "k_EMsgClientToGCBingoGetStatsData": 8907, + "k_EMsgClientToGCBingoGetStatsDataResponse": 8908, + "k_EMsgGCToClientBingoUserDataUpdated": 8909, + "k_EMsgGCToClientRoadToTIQuestDataUpdated": 8910, + "k_EMsgClientToGCRoadToTIUseItem": 8911, + "k_EMsgClientToGCRoadToTIUseItemResponse": 8912, + "k_EMsgClientToGCShowcaseSubmitReport": 8913, + "k_EMsgClientToGCShowcaseSubmitReportResponse": 8914, + "k_EMsgClientToGCShowcaseAdminGetReportsRollupList": 8915, + "k_EMsgClientToGCShowcaseAdminGetReportsRollupListResponse": 8916, + "k_EMsgClientToGCShowcaseAdminGetReportsRollup": 8917, + "k_EMsgClientToGCShowcaseAdminGetReportsRollupResponse": 8918, + "k_EMsgClientToGCShowcaseAdminGetUserDetails": 8919, + "k_EMsgClientToGCShowcaseAdminGetUserDetailsResponse": 8920, + "k_EMsgClientToGCShowcaseAdminConvict": 8921, + "k_EMsgClientToGCShowcaseAdminConvictResponse": 8922, + "k_EMsgClientToGCShowcaseAdminExonerate": 8923, + "k_EMsgClientToGCShowcaseAdminExonerateResponse": 8924, + "k_EMsgClientToGCShowcaseAdminReset": 8925, + "k_EMsgClientToGCShowcaseAdminResetResponse": 8926, + "k_EMsgClientToGCShowcaseAdminLockAccount": 8927, + "k_EMsgClientToGCShowcaseAdminLockAccountResponse": 8928, + "k_EMsgClientToGCFantasyCraftingSelectPlayer": 8929, + "k_EMsgClientToGCFantasyCraftingSelectPlayerResponse": 8930, + "k_EMsgClientToGCFantasyCraftingGenerateTablets": 8931, + "k_EMsgClientToGCFantasyCraftingGenerateTabletsResponse": 8932, + "k_EMsgClientToGcFantasyCraftingUpgradeTablets": 8933, + "k_EMsgClientToGcFantasyCraftingUpgradeTabletsResponse": 8934, + "k_EMsgClientToGCFantasyCraftingRerollOptions": 8936, + "k_EMsgClientToGCFantasyCraftingRerollOptionsResponse": 8937, + "k_EMsgClientToGCRoadToTIDevForceQuest": 8935, + "k_EMsgLobbyRoadToTIMatchQuestData": 8939, + "k_EMsgClientToGCShowcaseModerationGetQueue": 8940, + "k_EMsgClientToGCShowcaseModerationGetQueueResponse": 8941, + "k_EMsgClientToGCShowcaseModerationApplyModeration": 8942, + "k_EMsgClientToGCShowcaseModerationApplyModerationResponse": 8943, + "k_EMsgServerToGCNewBloomGift": 8960, + "k_EMsgServerToGCNewBloomGiftResponse": 8961, + "k_EMsgClientToGCNewBloomGift": 8965, + "k_EMsgClientToGCNewBloomGiftResponse": 8966, + "k_EMsgClientToGCSetBannedHeroes": 8969, } ) @@ -2538,7 +2748,7 @@ var File_dota_gcmessages_msgid_proto protoreflect.FileDescriptor var file_dota_gcmessages_msgid_proto_rawDesc = []byte{ 0x0a, 0x1b, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x6d, 0x73, 0x67, 0x69, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, - 0x6f, 0x74, 0x61, 0x2a, 0xf3, 0x91, 0x02, 0x0a, 0x0a, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, + 0x6f, 0x74, 0x61, 0x2a, 0xb6, 0xac, 0x02, 0x0a, 0x0a, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x61, 0x73, 0x65, 0x10, 0xd8, 0x36, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, @@ -2617,2122 +2827,2334 @@ var file_dota_gcmessages_msgid_proto_rawDesc = []byte{ 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4b, - 0x69, 0x63, 0x6b, 0x10, 0xa9, 0x37, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, - 0x65, 0x73, 0x10, 0xac, 0x37, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, - 0x73, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xad, 0x37, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x61, 0x76, - 0x65, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, - 0x37, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x65, 0x61, - 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x37, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0xb0, 0x37, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0xb1, 0x37, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb2, 0x37, - 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x57, 0x61, 0x74, 0x63, - 0x68, 0x47, 0x61, 0x6d, 0x65, 0x10, 0xb3, 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb4, 0x37, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xb5, 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb6, 0x37, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x69, 0x63, 0x6b, 0x10, 0xa9, 0x37, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x56, 0x32, 0x10, 0xaa, 0x37, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, + 0x32, 0x10, 0xab, 0x37, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x73, + 0x10, 0xac, 0x37, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xad, 0x37, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x61, 0x76, 0x65, 0x47, + 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x37, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, + 0x72, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xaf, 0x37, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x43, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0xb0, 0x37, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x10, 0xb1, 0x37, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb2, 0x37, 0x12, 0x16, + 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, + 0x61, 0x6d, 0x65, 0x10, 0xb3, 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x57, 0x61, 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xb4, 0x37, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0xb5, 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xb6, 0x37, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x10, 0xb7, 0x37, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb7, 0x37, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb8, 0x37, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x57, 0x61, - 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x10, 0xb9, 0x37, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x10, 0xbe, 0x37, 0x12, 0x2b, - 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc7, 0x37, 0x12, 0x2c, 0x0a, 0x27, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x37, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc9, - 0x37, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xcb, 0x37, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x37, 0x12, 0x23, 0x0a, 0x1e, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x10, 0xd2, 0x37, - 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, - 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x72, 0x10, 0xd3, 0x37, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x10, - 0xd4, 0x37, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, - 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x47, 0x43, 0x10, 0xd5, 0x37, 0x12, - 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x10, 0xd6, 0x37, 0x12, 0x2b, 0x0a, 0x26, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x5f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x10, 0xd7, 0x37, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x10, 0xd8, 0x37, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x37, 0x12, 0x16, 0x0a, 0x11, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x54, 0x65, 0x61, 0x6d, - 0x10, 0xda, 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, - 0x65, 0x61, 0x76, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xdb, 0x37, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, - 0x70, 0x70, 0x6c, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x6f, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, - 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xe6, 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x65, - 0x61, 0x6d, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x10, 0xe8, 0x37, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x10, 0xed, 0x37, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, - 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xee, 0x37, 0x12, 0x29, 0x0a, - 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, - 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x37, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x10, 0xf4, 0x37, - 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x10, 0xf5, 0x37, - 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x5f, 0x47, 0x61, 0x6d, - 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x61, 0x76, - 0x65, 0x47, 0x61, 0x6d, 0x65, 0x10, 0xf6, 0x37, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xf7, 0x37, - 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x5f, 0x47, 0x61, 0x6d, - 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x47, 0x61, - 0x6d, 0x65, 0x10, 0xf8, 0x37, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x4c, - 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xf9, 0x37, - 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x45, 0x64, 0x69, 0x74, - 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xfe, 0x37, 0x12, 0x24, - 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x45, 0x64, 0x69, 0x74, 0x54, 0x65, - 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xff, 0x37, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x52, 0x65, 0x61, 0x64, 0x79, 0x55, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x82, 0x38, - 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0x92, - 0x38, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x64, 0x53, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x10, 0x94, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9d, 0x38, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, - 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, - 0x38, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x6f, 0x74, - 0x47, 0x61, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x10, 0x9f, 0x38, 0x12, 0x22, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x74, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0xa0, - 0x38, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x74, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x41, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x38, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4c, 0x65, - 0x61, 0x67, 0x75, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xa3, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb8, 0x37, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x57, 0x61, 0x74, 0x63, + 0x68, 0x47, 0x61, 0x6d, 0x65, 0x10, 0xb9, 0x37, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x10, 0xbe, 0x37, 0x12, 0x2b, 0x0a, 0x26, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, + 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc7, 0x37, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, 0x61, 0x63, 0x74, + 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x37, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x4a, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc9, 0x37, 0x12, + 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xcb, 0x37, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x37, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x10, 0xd2, 0x37, 0x12, 0x34, + 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, + 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, + 0x72, 0x10, 0xd3, 0x37, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x10, 0xd4, 0x37, + 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x47, 0x43, 0x10, 0xd5, 0x37, 0x12, 0x2b, 0x0a, + 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x5f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x10, 0xd6, 0x37, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, + 0x5f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x6f, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x65, 0x10, 0xd7, 0x37, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x10, 0xd8, 0x37, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x4b, 0x69, 0x63, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x37, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xda, + 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x65, 0x61, + 0x76, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdb, + 0x37, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x6f, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xe6, 0x37, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x10, 0xe8, 0x37, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x10, 0xed, 0x37, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x74, 0x65, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xee, 0x37, 0x12, 0x29, 0x0a, 0x24, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xef, 0x37, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x10, 0xf4, 0x37, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x10, 0xf5, 0x37, 0x12, 0x26, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x61, 0x76, 0x65, 0x47, + 0x61, 0x6d, 0x65, 0x10, 0xf6, 0x37, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x61, 0x76, + 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xf7, 0x37, 0x12, 0x23, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, + 0x10, 0xf8, 0x37, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x5f, + 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x61, + 0x64, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xf9, 0x37, 0x12, 0x1c, + 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x45, 0x64, 0x69, 0x74, 0x54, 0x65, + 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xfe, 0x37, 0x12, 0x24, 0x0a, 0x1f, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x45, 0x64, 0x69, 0x74, 0x54, 0x65, 0x61, 0x6d, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xff, 0x37, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, + 0x61, 0x64, 0x79, 0x55, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x82, 0x38, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0x92, 0x38, 0x12, + 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, 0x6c, 0x61, 0x6e, + 0x63, 0x65, 0x64, 0x53, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, + 0x94, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9d, 0x38, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x38, 0x12, + 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x6f, 0x74, 0x47, 0x61, + 0x6d, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x10, 0x9f, 0x38, 0x12, 0x22, 0x0a, 0x1d, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0xa0, 0x38, 0x12, + 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x74, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x38, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, - 0x38, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x57, 0x61, 0x74, - 0x63, 0x68, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6c, - 0x61, 0x79, 0x10, 0xa6, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x6a, 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, - 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x10, 0xb1, 0x38, 0x12, 0x20, 0x0a, 0x1b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x43, 0x68, 0x61, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xb2, 0x38, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x43, 0x68, 0x61, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x38, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x43, - 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x10, 0xb4, 0x38, 0x12, 0x25, - 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x42, - 0x61, 0x6e, 0x10, 0xb5, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x54, 0x6f, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xc2, 0x38, 0x12, 0x2c, 0x0a, 0x27, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x49, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x38, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, + 0x75, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xa3, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, 0x38, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x57, 0x61, 0x74, 0x63, 0x68, + 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, + 0x10, 0xa6, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x6a, 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x10, 0xb1, 0x38, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x52, 0x61, 0x6e, 0x6b, 0x10, 0xc4, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x43, 0x68, 0x61, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xb2, 0x38, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, + 0x65, 0x72, 0x43, 0x68, 0x61, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xb3, 0x38, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x68, 0x61, + 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x10, 0xb4, 0x38, 0x12, 0x25, 0x0a, 0x20, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x42, 0x61, 0x6e, + 0x10, 0xb5, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, + 0x54, 0x6f, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xc2, 0x38, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x49, 0x6e, 0x76, 0x69, + 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x38, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x61, - 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x38, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc8, 0x38, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xc9, 0x38, 0x12, 0x25, - 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xca, 0x38, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x64, - 0x6d, 0x69, 0x6e, 0x10, 0xd7, 0x38, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, - 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x38, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, - 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x10, 0xe8, 0x38, 0x12, 0x18, - 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xe9, 0x38, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x73, 0x10, 0xea, 0x38, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x38, 0x12, 0x2a, - 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, - 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf3, 0x38, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, - 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf4, 0x38, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x10, 0xf5, 0x38, 0x12, 0x2d, - 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, - 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, - 0x65, 0x66, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf6, 0x38, 0x12, 0x29, 0x0a, - 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, - 0x74, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf7, 0x38, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, - 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf8, 0x38, 0x12, 0x21, 0x0a, 0x1c, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x54, 0x75, 0x74, - 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x7a, 0x65, 0x73, 0x10, 0xf9, 0x38, 0x12, 0x23, - 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, - 0x79, 0x4c, 0x69, 0x76, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x10, 0x8c, 0x39, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, - 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x8d, 0x39, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, 0x6c, 0x69, 0x70, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, - 0x61, 0x6d, 0x73, 0x10, 0x98, 0x39, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x54, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x10, 0x9c, 0x39, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x9d, 0x39, 0x12, 0x25, 0x0a, 0x20, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x10, 0x9e, 0x39, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, - 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, - 0x10, 0x9f, 0x39, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, - 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x39, 0x12, 0x1c, 0x0a, 0x17, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x73, - 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x10, 0xae, 0x39, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x53, 0x65, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0xaf, 0x39, 0x12, 0x22, 0x0a, 0x1d, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0xb2, 0x39, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x68, 0x61, 0x74, 0x4d, - 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6e, 0x10, 0xbf, 0x39, 0x12, 0x2c, - 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xc7, 0x39, 0x12, 0x24, 0x0a, 0x1f, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, - 0x74, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x10, - 0xcc, 0x39, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x54, 0x77, 0x69, 0x74, 0x63, 0x68, 0x56, - 0x69, 0x65, 0x77, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0xcf, 0x39, 0x12, 0x27, 0x0a, - 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x4c, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x66, 0x66, 0x69, 0x6c, 0x69, 0x61, - 0x74, 0x65, 0x73, 0x10, 0xd0, 0x39, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x41, 0x66, 0x66, 0x69, 0x6c, 0x69, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x39, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x50, 0x65, 0x6e, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x10, 0xd2, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x65, 0x6e, 0x6e, - 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x10, 0xd3, 0x39, 0x12, 0x2f, 0x0a, 0x2a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, + 0x6e, 0x6b, 0x10, 0xc4, 0x38, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x61, 0x6e, 0x6b, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x38, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x6a, 0x75, 0x73, + 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x61, 0x6e, 0x6b, 0x10, 0xc6, 0x38, 0x12, 0x27, 0x0a, 0x22, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x6a, 0x75, + 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xc7, 0x38, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x10, 0xc8, 0x38, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x54, + 0x65, 0x61, 0x6d, 0x10, 0xc9, 0x38, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, + 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x38, 0x12, 0x1f, 0x0a, + 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x10, 0xd7, 0x38, 0x12, 0x27, + 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x38, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x10, 0xe8, 0x38, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xe9, 0x38, + 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, + 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x10, 0xea, 0x38, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x38, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, + 0xf3, 0x38, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, + 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf4, 0x38, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, + 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, + 0x44, 0x65, 0x66, 0x10, 0xf5, 0x38, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xf6, 0x38, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf7, 0x38, + 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, + 0x45, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xf8, 0x38, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, + 0x7a, 0x65, 0x73, 0x10, 0xf9, 0x38, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, 0x69, 0x76, 0x65, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x8c, 0x39, 0x12, 0x24, 0x0a, 0x1f, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x46, 0x69, + 0x6e, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x8d, + 0x39, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x46, 0x6c, 0x69, + 0x70, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x10, 0x98, 0x39, 0x12, 0x27, + 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, + 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x10, 0x9a, 0x39, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x39, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x54, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x10, 0x9c, 0x39, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x9d, 0x39, 0x12, 0x25, + 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x10, 0x9e, 0x39, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, + 0x63, 0x79, 0x10, 0x9f, 0x39, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, + 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x39, 0x12, 0x1c, 0x0a, + 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, + 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x10, 0xae, 0x39, 0x12, 0x20, 0x0a, 0x1b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0xaf, 0x39, 0x12, 0x22, 0x0a, + 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, + 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0xb2, + 0x39, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x68, 0x61, + 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6e, 0x10, 0xbf, 0x39, + 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xc7, 0x39, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, + 0x61, 0x6e, 0x74, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, + 0x6d, 0x10, 0xcc, 0x39, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x54, 0x77, 0x69, 0x74, 0x63, + 0x68, 0x56, 0x69, 0x65, 0x77, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0xcf, 0x39, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x4c, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x66, 0x66, 0x69, 0x6c, + 0x69, 0x61, 0x74, 0x65, 0x73, 0x10, 0xd0, 0x39, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x76, 0x65, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x41, 0x66, 0x66, 0x69, 0x6c, 0x69, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x39, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x65, 0x6e, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd4, 0x39, 0x12, 0x2e, 0x0a, - 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd5, 0x39, 0x12, 0x2f, 0x0a, - 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd6, 0x39, 0x12, 0x1f, - 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x77, 0x61, 0x72, - 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xd8, 0x39, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xdb, 0x39, 0x12, 0x25, - 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xdc, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x57, 0x61, 0x74, 0x63, - 0x68, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x10, 0xe5, 0x39, 0x12, 0x23, - 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, - 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x10, 0xed, 0x39, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, - 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xee, 0x39, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x39, 0x12, 0x24, 0x0a, 0x1f, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, - 0xf0, 0x39, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x39, - 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x50, 0x61, - 0x72, 0x74, 0x79, 0x10, 0xf2, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, - 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0xf3, 0x39, 0x12, - 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x41, 0x6c, 0x6c, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x10, 0xf4, 0x39, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x10, 0xf5, 0x39, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, - 0xf6, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, - 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xf7, 0x39, 0x12, 0x20, 0x0a, 0x1b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf8, 0x39, 0x12, 0x21, 0x0a, - 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf9, 0x39, - 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x65, 0x61, 0x76, - 0x65, 0x72, 0x10, 0x82, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x83, 0x3a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x3a, 0x12, 0x23, 0x0a, 0x1e, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x6f, 0x64, 0x69, - 0x66, 0x79, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x85, - 0x3a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8a, 0x3a, 0x12, - 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x52, 0x65, 0x61, 0x64, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x8b, 0x3a, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x10, 0x9a, 0x3a, 0x12, 0x38, 0x0a, 0x33, + 0x74, 0x73, 0x10, 0xd2, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x65, + 0x6e, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x10, 0xd3, 0x39, 0x12, 0x2f, + 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x65, 0x6e, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd4, 0x39, 0x12, + 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd5, 0x39, 0x12, + 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd6, 0x39, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x77, + 0x61, 0x72, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xd8, + 0x39, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, + 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xdb, 0x39, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, + 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x57, 0x61, + 0x74, 0x63, 0x68, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x10, 0xe5, 0x39, + 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, + 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x10, 0xed, 0x39, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xee, 0x39, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x39, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x10, 0xf0, 0x39, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xf1, 0x39, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, + 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0xf2, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, + 0x69, 0x6e, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0xf3, + 0x39, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, + 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x10, 0xf4, 0x39, 0x12, + 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x46, + 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xf5, 0x39, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x10, 0xf6, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, + 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xf7, 0x39, 0x12, 0x20, 0x0a, + 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf8, 0x39, 0x12, + 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xf9, 0x39, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x54, 0x6f, + 0x78, 0x69, 0x63, 0x43, 0x68, 0x61, 0x74, 0x10, 0xfa, 0x39, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, + 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x78, 0x69, 0x63, 0x43, 0x68, 0x61, 0x74, 0x10, + 0xfb, 0x39, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x54, 0x6f, + 0x78, 0x69, 0x63, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xfc, 0x39, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x65, + 0x61, 0x76, 0x65, 0x72, 0x10, 0x82, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x83, 0x3a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x3a, 0x12, 0x23, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x6f, + 0x64, 0x69, 0x66, 0x79, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x10, 0x85, 0x3a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8a, + 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x6f, 0x74, + 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x61, 0x72, 0x6b, 0x52, 0x65, + 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x8b, 0x3a, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x74, 0x53, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x9d, 0x3a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x10, - 0xa0, 0x3a, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x10, 0xa2, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x10, 0x9a, 0x3a, 0x12, 0x38, + 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, + 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x9d, 0x3a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x10, 0xa0, 0x3a, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xa3, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, - 0x72, 0x6e, 0x65, 0x79, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x10, 0xa8, 0x3a, 0x12, - 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x57, 0x65, 0x65, - 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x53, 0x63, 0x68, 0x65, 0x64, - 0x75, 0x6c, 0x65, 0x10, 0xa9, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x10, 0xaa, 0x3a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4a, - 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, - 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, - 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4a, 0x6f, 0x69, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, - 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xac, 0x3a, 0x12, 0x2a, 0x0a, 0x25, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xae, 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x4a, 0x6f, 0x69, 0x6e, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x3a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xb0, 0x3a, 0x12, 0x27, - 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, - 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xb6, 0x3a, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x48, 0x61, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, - 0xbc, 0x3a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x61, - 0x73, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbd, 0x3a, - 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x10, 0xc0, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x6f, - 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x10, 0xc4, 0x3a, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, - 0x75, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, - 0xc6, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, - 0x49, 0x74, 0x65, 0x6d, 0x44, 0x72, 0x6f, 0x70, 0x10, 0xc7, 0x3a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x47, - 0x72, 0x61, 0x6e, 0x74, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x44, 0x72, 0x6f, 0x70, 0x10, 0xc8, - 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, - 0x6f, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xc9, 0x3a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, - 0x6f, 0x6e, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xcd, 0x3a, 0x12, 0x1b, 0x0a, 0x16, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x44, 0x72, 0x61, 0x66, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xce, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6d, 0x6f, 0x74, - 0x69, 0x63, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xcf, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x44, 0x61, - 0x74, 0x61, 0x10, 0xd0, 0x3a, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x6f, - 0x67, 0x67, 0x6c, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x10, 0xd1, 0x3a, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xde, - 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, - 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xdf, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, - 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xe1, 0x3a, 0x12, 0x2f, 0x0a, - 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x3a, 0x12, 0x23, - 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, - 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x10, 0xe3, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, 0x3a, - 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x50, 0x72, 0x6f, - 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x61, - 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x10, 0xe5, 0x3a, 0x12, 0x22, 0x0a, 0x1d, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x72, - 0x6f, 0x70, 0x68, 0x79, 0x54, 0x6f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe6, 0x3a, - 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x10, 0xe7, 0x3a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, - 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe8, 0x3a, - 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x41, 0x77, 0x61, 0x72, 0x64, 0x65, - 0x64, 0x10, 0xe9, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x47, 0x61, 0x6d, 0x65, 0x42, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x10, 0xea, 0x3a, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x10, 0xa2, 0x3a, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa3, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x10, 0xa8, + 0x3a, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x57, + 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x53, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x10, 0xa9, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0xaa, 0x3a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, + 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xab, 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4a, + 0x6f, 0x69, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, + 0x62, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xac, 0x3a, 0x12, 0x2a, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x69, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x4a, 0x6f, 0x69, 0x6e, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xae, 0x3a, 0x12, 0x29, 0x0a, + 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x4a, 0x6f, + 0x69, 0x6e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x3a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xb0, 0x3a, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xb6, 0x3a, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x61, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x10, 0xbc, 0x3a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x48, 0x61, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xbd, 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x10, 0xc0, 0x3a, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xc4, 0x3a, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, + 0x64, 0x69, 0x75, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x10, 0xc6, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x72, 0x6f, 0x70, 0x10, 0xc7, 0x3a, 0x12, 0x24, 0x0a, + 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x65, + 0x64, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x44, 0x72, 0x6f, 0x70, + 0x10, 0xc8, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, + 0x61, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xc9, 0x3a, 0x12, 0x1f, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6d, 0x6f, 0x74, + 0x69, 0x63, 0x6f, 0x6e, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xcd, 0x3a, 0x12, 0x1b, 0x0a, + 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x44, 0x72, + 0x61, 0x66, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xce, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6d, + 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xcf, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, + 0x44, 0x61, 0x74, 0x61, 0x10, 0xd0, 0x3a, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xd1, 0x3a, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, + 0x10, 0xde, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xdf, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, + 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xe1, 0x3a, 0x12, + 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x3a, + 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x10, 0xe3, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x46, 0x6f, + 0x72, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xe4, 0x3a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, + 0x47, 0x61, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x10, 0xe5, 0x3a, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x72, 0x61, 0x6e, 0x74, + 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x54, 0x6f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, + 0xe6, 0x3a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x4c, + 0x69, 0x73, 0x74, 0x10, 0xe7, 0x3a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x54, 0x72, 0x6f, + 0x70, 0x68, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xe8, 0x3a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x41, 0x77, 0x61, 0x72, + 0x64, 0x65, 0x64, 0x10, 0xe9, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xeb, 0x3a, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x6f, 0x74, 0x49, 0x6e, 0x66, - 0x6f, 0x10, 0xec, 0x3a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x43, 0x61, 0x72, 0x64, 0x73, 0x10, 0xed, 0x3a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x10, 0xee, 0x3a, 0x12, 0x2b, - 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x3a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, + 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x10, 0xea, 0x3a, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x42, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xeb, 0x3a, 0x12, 0x19, 0x0a, 0x14, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x6f, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x10, 0xec, 0x3a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x73, 0x10, 0xed, 0x3a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, - 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xf0, - 0x3a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x10, 0xee, 0x3a, + 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, + 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x3a, 0x12, 0x24, 0x0a, + 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x10, 0xf0, 0x3a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, + 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, + 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x10, 0xf2, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x10, 0xf3, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xf4, 0x3a, 0x12, 0x32, 0x0a, + 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xf5, + 0x3a, 0x12, 0x3a, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x3a, 0x12, - 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, - 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x10, 0xf2, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, - 0xf3, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xf4, 0x3a, 0x12, 0x32, 0x0a, 0x2d, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, - 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, - 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xf5, 0x3a, 0x12, - 0x3a, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf6, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, - 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, - 0x66, 0x6f, 0x10, 0xf7, 0x3a, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf8, 0x3a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xf9, 0x3a, 0x12, - 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x3a, 0x12, 0x25, 0x0a, 0x20, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, - 0x10, 0xfb, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xfc, 0x3a, - 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x43, 0x54, 0x6f, - 0x4c, 0x41, 0x4e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0xfd, 0x3a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, + 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf6, 0x3a, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xf7, 0x3a, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf8, 0x3a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xf9, + 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x3a, 0x12, 0x25, + 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x65, 0x10, 0xfb, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, + 0xfc, 0x3a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x43, + 0x54, 0x6f, 0x4c, 0x41, 0x4e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, + 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0xfd, 0x3a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, + 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xfe, 0x3a, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x10, 0xfe, 0x3a, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, - 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x3a, 0x12, 0x30, 0x0a, 0x2b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x80, 0x3b, 0x12, 0x38, - 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x3a, 0x12, 0x30, + 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, 0x73, 0x10, - 0x82, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x89, 0x3b, 0x12, 0x25, 0x0a, 0x20, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x10, 0x8a, 0x3b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, - 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x10, 0x91, - 0x3b, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x94, 0x3b, 0x12, 0x25, - 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, - 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, - 0x74, 0x73, 0x10, 0x95, 0x3b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x96, 0x3b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x64, 0x10, 0x98, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x10, 0x99, 0x3b, - 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x61, 0x73, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, - 0x9b, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, + 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x80, 0x3b, + 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, + 0x73, 0x10, 0x82, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x89, 0x3b, 0x12, 0x25, + 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x10, 0x8a, 0x3b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x6e, 0x69, 0x74, + 0x6f, 0x72, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, + 0x10, 0x91, 0x3b, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x94, 0x3b, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x63, + 0x6b, 0x65, 0x74, 0x73, 0x10, 0x95, 0x3b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x96, 0x3b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x10, 0x98, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x10, + 0x99, 0x3b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x61, 0x73, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x3b, 0x12, 0x28, 0x0a, 0x23, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x54, 0x69, 0x63, - 0x6b, 0x65, 0x74, 0x10, 0x9d, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0x9f, 0x3b, - 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xa0, 0x3b, 0x12, 0x2a, 0x0a, 0x25, + 0x74, 0x10, 0x9b, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x61, 0x73, 0x68, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x3b, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x54, + 0x69, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x9d, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, + 0x9f, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xa0, 0x3b, 0x12, 0x2a, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xa1, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xa3, 0x3b, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4c, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x10, 0xa4, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x50, 0x61, + 0x72, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x10, 0xa5, 0x3b, 0x12, 0x2d, 0x0a, + 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x6f, 0x54, 0x69, 0x63, 0x6b, + 0x65, 0x74, 0x48, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x10, 0xa8, 0x3b, 0x12, 0x29, 0x0a, 0x24, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6d, 0x6f, 0x74, + 0x69, 0x63, 0x6f, 0x6e, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x6f, 0x52, 0x6f, 0x6c, 0x6c, + 0x62, 0x61, 0x63, 0x6b, 0x10, 0xaa, 0x3b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, + 0x47, 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x72, 0x10, 0xb3, 0x3b, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x10, 0xb6, 0x3b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, + 0x72, 0x6f, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xb7, 0x3b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x42, 0x61, 0x64, 0x67, 0x65, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xb8, 0x3b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x77, 0x6e, + 0x73, 0x45, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x52, + 0x61, 0x6e, 0x67, 0x65, 0x10, 0xbb, 0x3b, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x77, 0x6e, 0x73, + 0x45, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x52, 0x61, + 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbc, 0x3b, 0x12, 0x29, + 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xc7, 0x3b, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x3b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, - 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xa1, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xa2, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xa3, 0x3b, 0x12, 0x23, 0x0a, - 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x10, - 0xa4, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x50, 0x61, 0x72, 0x74, - 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x10, 0xa5, 0x3b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x6f, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, - 0x48, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x10, 0xa8, 0x3b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, - 0x6f, 0x6e, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x6f, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, - 0x63, 0x6b, 0x10, 0xaa, 0x3b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x65, - 0x6d, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x72, 0x10, 0xb3, 0x3b, 0x12, 0x24, 0x0a, 0x1f, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x10, - 0xb6, 0x3b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x3b, - 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x42, 0x61, 0x64, 0x67, 0x65, 0x50, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x10, 0xb8, 0x3b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x77, 0x6e, 0x73, 0x45, - 0x6e, 0x74, 0x69, 0x72, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x10, 0xbb, 0x3b, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4f, 0x77, 0x6e, 0x73, 0x45, 0x6e, - 0x74, 0x69, 0x72, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbc, 0x3b, 0x12, 0x29, 0x0a, 0x24, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xc7, 0x3b, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x3b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, + 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x49, 0x73, 0x48, 0x65, 0x72, + 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x10, 0xc9, 0x3b, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x49, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x10, 0xc9, 0x3b, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, - 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x49, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x3b, 0x12, 0x36, - 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x53, 0x70, 0x65, 0x63, - 0x69, 0x66, 0x69, 0x63, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x10, 0xcb, 0x3b, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x61, 0x72, 0x64, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x50, 0x75, 0x72, 0x63, - 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x3b, 0x12, - 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, 0x6f, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x66, 0x6c, 0x6f, 0x77, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x10, 0xcd, 0x3b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x53, 0x51, 0x4c, 0x53, 0x65, 0x74, 0x49, 0x73, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, - 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x10, 0xce, 0x3b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x3b, + 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x53, 0x70, + 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xcb, 0x3b, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x50, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, + 0x3b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x53, 0x65, + 0x74, 0x49, 0x73, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x10, 0xce, + 0x3b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x65, 0x73, 0x10, 0xcf, 0x3b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x76, 0x65, 0x4c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x10, 0xcf, 0x3b, 0x12, - 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, - 0x65, 0x74, 0x4c, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x3b, 0x12, 0x2a, - 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd1, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x3b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0xdd, 0x3b, 0x12, 0x25, 0x0a, 0x20, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, - 0xde, 0x3b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdf, 0x3b, 0x12, - 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe2, 0x3b, - 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, - 0x61, 0x67, 0x75, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x10, 0xe3, 0x3b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe4, 0x3b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe5, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x4c, + 0x69, 0x73, 0x74, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x10, 0xd1, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x41, + 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x3b, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, + 0x64, 0x10, 0xdd, 0x3b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0xde, 0x3b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xe6, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdf, 0x3b, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x76, 0x61, 0x69, + 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe2, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x76, 0x61, + 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x73, + 0x10, 0xe3, 0x3b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x10, 0xe4, 0x3b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xe5, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe7, 0x3b, 0x12, 0x22, - 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, - 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xe8, 0x3b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe9, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x10, 0xea, 0x3b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x54, 0x65, 0x72, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x3b, - 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xec, 0x3b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xed, 0x3b, 0x12, - 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x73, 0x10, 0xee, 0x3b, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x46, - 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x3b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x10, 0xf0, 0x3b, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x69, - 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x3b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xf2, 0x3b, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x10, 0xf3, 0x3b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, - 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xf4, 0x3b, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x42, 0x65, - 0x61, 0x63, 0x6f, 0x6e, 0x10, 0xf5, 0x3b, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x65, 0x73, 0x10, 0xf6, 0x3b, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, - 0x3b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x46, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x73, 0x10, 0xf8, 0x3b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xf9, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x72, - 0x74, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x10, 0xfa, 0x3b, 0x12, - 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x79, 0x46, 0x72, 0x6f, 0x6d, - 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, - 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x10, 0xfc, 0x3b, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, + 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe6, 0x3b, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe7, 0x3b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe8, 0x3b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe9, 0x3b, + 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, + 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xea, 0x3b, 0x12, 0x2b, 0x0a, 0x26, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x61, 0x6c, + 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x3b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xec, 0x3b, + 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xed, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x10, 0xee, + 0x3b, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xef, 0x3b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0xf0, 0x3b, 0x12, 0x31, 0x0a, + 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x3b, + 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xf2, 0x3b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, + 0x79, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xf3, 0x3b, + 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xf4, 0x3b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x10, 0xf5, 0x3b, + 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x10, 0xf6, + 0x3b, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x3b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x10, 0xf8, 0x3b, + 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, + 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf9, 0x3b, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, + 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x10, 0xfa, 0x3b, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4a, 0x6f, 0x69, 0x6e, + 0x50, 0x61, 0x72, 0x74, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfd, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, - 0x65, 0x72, 0x69, 0x66, 0x79, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x73, 0x10, 0xfe, 0x3b, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, - 0x79, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, - 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x73, 0x10, 0x80, 0x3c, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, - 0x4d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x81, 0x3c, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x4d, 0x49, 0x6e, - 0x66, 0x6f, 0x10, 0x82, 0x3c, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, - 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x10, 0x83, 0x3c, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x4c, 0x61, 0x62, 0x79, 0x72, 0x69, 0x6e, 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x73, 0x10, 0x84, 0x3c, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, - 0x73, 0x65, 0x4c, 0x61, 0x62, 0x79, 0x72, 0x69, 0x6e, 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, - 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x85, 0x3c, 0x12, - 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, - 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x10, 0x86, 0x3c, - 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6c, 0x74, - 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x87, 0x3c, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x10, 0x88, 0x3c, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x4e, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x89, 0x3c, 0x12, - 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x53, 0x77, 0x61, 0x67, 0x10, 0x8a, 0x3c, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x53, 0x77, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8b, 0x3c, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x63, 0x6b, 0x43, - 0x68, 0x61, 0x72, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x10, 0xc4, 0x3e, 0x12, 0x27, - 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xc6, 0x3e, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, - 0x3e, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x65, - 0x61, 0x72, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, - 0x65, 0x61, 0x6d, 0x10, 0xc8, 0x3e, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x6f, - 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x10, 0xc9, - 0x3e, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x6f, 0x70, 0x53, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xca, 0x3e, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xcb, 0x3e, 0x12, 0x1e, 0x0a, 0x19, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x3e, 0x12, 0x24, 0x0a, 0x1f, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x10, - 0xcd, 0x3e, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, - 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0xd0, 0x3e, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, - 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x3e, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd2, 0x3e, 0x12, - 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xd3, 0x3e, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd4, 0x3e, 0x12, 0x34, 0x0a, 0x2f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, - 0x3e, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x70, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x10, - 0xd8, 0x3e, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4f, 0x70, - 0x65, 0x6e, 0x10, 0xdd, 0x3e, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x50, 0x61, - 0x72, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xde, 0x3e, 0x12, 0x2a, 0x0a, 0x25, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x65, 0x72, 0x67, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0xdf, 0x3e, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x65, 0x72, 0x67, - 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe0, - 0x3e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0xe1, 0x3e, 0x12, - 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, - 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xe2, 0x3e, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe3, 0x3e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, - 0x6f, 0x70, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe4, 0x3e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x6f, 0x70, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xe5, 0x3e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x10, 0xe8, 0x3e, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, - 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xe9, 0x3e, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x61, - 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, - 0x74, 0x6f, 0x70, 0x10, 0xea, 0x3e, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x10, 0xfc, 0x3b, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, + 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xfd, 0x3b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x46, 0x61, + 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x10, 0xfe, 0x3b, + 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, + 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xff, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x53, 0x65, 0x61, + 0x72, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x10, 0x80, 0x3c, 0x12, 0x22, 0x0a, + 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x4d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x81, + 0x3c, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x4d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x82, 0x3c, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x54, + 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x83, 0x3c, 0x12, 0x2f, + 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4c, 0x61, 0x62, 0x79, 0x72, 0x69, + 0x6e, 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x73, 0x10, 0x84, 0x3c, 0x12, + 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4c, 0x61, 0x62, 0x79, 0x72, + 0x69, 0x6e, 0x74, 0x68, 0x42, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x85, 0x3c, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x10, 0x86, 0x3c, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x87, 0x3c, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x10, 0x88, + 0x3c, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x89, 0x3c, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x53, 0x77, 0x61, 0x67, 0x10, 0x8a, 0x3c, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x53, 0x77, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8b, 0x3c, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x63, 0x6b, 0x43, 0x68, 0x61, 0x72, 0x6d, 0x54, 0x72, 0x61, + 0x64, 0x69, 0x6e, 0x67, 0x10, 0xc4, 0x3e, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc6, 0x3e, + 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x3e, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x50, 0x72, 0x61, 0x63, 0x74, + 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xc8, 0x3e, 0x12, + 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x6f, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x54, 0x56, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x10, 0xc9, 0x3e, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x69, + 0x6e, 0x64, 0x54, 0x6f, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x56, 0x47, 0x61, 0x6d, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x3e, 0x12, 0x16, 0x0a, + 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, + 0x73, 0x74, 0x10, 0xcb, 0x3e, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xcc, 0x3e, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x10, 0xcd, 0x3e, 0x12, 0x31, 0x0a, 0x2c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd0, 0x3e, 0x12, 0x32, + 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xd1, 0x3e, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd2, 0x3e, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd3, 0x3e, 0x12, + 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xd4, 0x3e, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, 0x3e, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x70, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, + 0x61, 0x6d, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xd8, 0x3e, 0x12, 0x21, 0x0a, 0x1c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x4f, 0x70, 0x65, 0x6e, 0x10, 0xdd, 0x3e, 0x12, 0x25, + 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x69, + 0x74, 0x65, 0x10, 0xde, 0x3e, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0xdf, + 0x3e, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe0, 0x3e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, + 0x72, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0xe1, 0x3e, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, + 0xe2, 0x3e, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x43, 0x61, 0x72, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xe3, 0x3e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x6f, 0x70, 0x4c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, + 0xe4, 0x3e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x6f, 0x70, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe5, 0x3e, + 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xe8, 0x3e, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, + 0xe9, 0x3e, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x74, 0x6f, 0x70, 0x10, 0xea, 0x3e, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x46, 0x6f, 0x72, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x73, 0x10, 0xed, 0x3e, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, - 0x46, 0x6f, 0x72, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xed, 0x3e, 0x12, 0x2d, 0x0a, - 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x46, 0x6f, 0x72, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xee, 0x3e, 0x12, 0x26, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4b, 0x69, 0x63, 0x6b, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x65, 0x61, - 0x6d, 0x10, 0xef, 0x3e, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf0, 0x3e, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xf1, 0x3e, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, - 0x50, 0x6f, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0xf2, 0x3e, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, - 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x3e, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, - 0x74, 0x65, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, - 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x10, 0xf4, 0x3e, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4c, 0x6f, 0x61, 0x64, - 0x69, 0x6e, 0x67, 0x10, 0xf5, 0x3e, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, - 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x10, 0xf6, 0x3e, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x53, 0x74, 0x61, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x3e, 0x12, - 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, - 0x61, 0x67, 0x10, 0xf9, 0x3e, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x70, 0x4c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xfd, 0x3e, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x70, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xfe, 0x3e, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x4d, 0x69, - 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xff, 0x3e, 0x12, - 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, - 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x80, 0x3f, 0x12, 0x27, 0x0a, 0x22, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x10, 0x83, 0x3f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, - 0x61, 0x10, 0x84, 0x3f, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x46, 0x6f, 0x72, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xee, 0x3e, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4b, 0x69, + 0x63, 0x6b, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xef, 0x3e, 0x12, 0x21, 0x0a, + 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x47, + 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf0, 0x3e, + 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, + 0x61, 0x74, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x3e, 0x12, 0x31, 0x0a, 0x2c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf2, 0x3e, 0x12, 0x32, + 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xf3, 0x3e, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x10, 0xf4, 0x3e, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x69, 0x6e, + 0x69, 0x73, 0x68, 0x65, 0x64, 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x10, 0xf5, 0x3e, 0x12, + 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x72, 0x61, 0x63, 0x74, + 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x72, 0x6f, + 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x10, 0xf6, 0x3e, + 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x3e, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x10, 0xf9, 0x3e, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x70, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfd, 0x3e, 0x12, 0x2d, 0x0a, + 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x70, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfe, 0x3e, 0x12, 0x2a, 0x0a, 0x25, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xff, 0x3e, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x80, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x67, + 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x83, 0x3f, 0x12, 0x1d, + 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x10, 0x84, 0x3f, 0x12, 0x25, 0x0a, + 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6e, 0x73, + 0x75, 0x72, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x50, 0x61, 0x72, 0x74, + 0x79, 0x10, 0x87, 0x3f, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6e, 0x73, 0x75, 0x72, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0x87, 0x3f, 0x12, 0x2d, 0x0a, 0x28, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x6e, 0x73, 0x75, 0x72, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x88, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x74, 0x49, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x88, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x10, 0x89, 0x3f, 0x12, 0x2e, 0x0a, 0x29, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x10, 0x8b, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x32, 0x36, 0x34, 0x55, 0x6e, 0x73, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x10, 0x8c, 0x3f, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, - 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x10, - 0x89, 0x3f, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x8a, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x8b, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, - 0x32, 0x36, 0x34, 0x55, 0x6e, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x10, 0x8c, - 0x3f, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x8e, + 0x3f, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, - 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x8e, 0x3f, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x51, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x3f, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x58, 0x50, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x10, - 0x90, 0x3f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x65, - 0x64, 0x4f, 0x75, 0x74, 0x10, 0x91, 0x3f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x92, 0x3f, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x93, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, - 0x61, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0x94, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, - 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x4b, 0x69, 0x63, 0x6b, 0x10, 0x98, - 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, - 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x10, 0x99, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x10, - 0x9a, 0x3f, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x3f, 0x12, 0x32, 0x0a, 0x2d, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x3f, + 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, + 0x74, 0x58, 0x50, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x10, 0x90, 0x3f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x10, 0x91, 0x3f, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, + 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, + 0x92, 0x3f, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x93, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9f, 0x3f, - 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x64, 0x75, 0x63, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x72, 0x64, 0x10, 0xa0, 0x3f, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x10, 0xa3, 0x3f, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xa7, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa8, 0x3f, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x10, 0xac, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x50, 0x6f, - 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x68, 0x61, 0x74, 0x10, 0xae, 0x3f, 0x12, 0x29, 0x0a, - 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x48, 0x61, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x46, - 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x10, 0xaf, 0x3f, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x61, 0x73, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x3f, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, - 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x10, 0xb1, 0x3f, 0x12, 0x27, 0x0a, 0x22, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xb2, 0x3f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4f, 0x77, 0x6e, - 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x10, 0xb3, 0x3f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xb4, 0x3f, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, - 0x65, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xb5, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x65, - 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4f, 0x70, 0x74, 0x73, - 0x10, 0xb6, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, + 0x65, 0x10, 0x94, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, + 0x68, 0x61, 0x74, 0x4b, 0x69, 0x63, 0x6b, 0x10, 0x98, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, + 0x10, 0x99, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, + 0x61, 0x74, 0x44, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x10, 0x9a, 0x3f, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, + 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x9b, 0x3f, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x43, + 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x72, 0x64, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9f, 0x3f, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x61, 0x74, + 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x63, + 0x61, 0x72, 0x64, 0x10, 0xa0, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, + 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa3, 0x3f, 0x12, 0x25, 0x0a, 0x20, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xa4, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa7, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xa8, 0x3f, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xac, 0x3f, 0x12, 0x26, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, + 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, + 0x68, 0x61, 0x74, 0x10, 0xae, 0x3f, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x61, 0x73, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x56, 0x6f, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x10, 0xaf, + 0x3f, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x48, 0x61, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, + 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x4d, 0x56, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xb0, 0x3f, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x4d, + 0x56, 0x50, 0x10, 0xb1, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, + 0x4d, 0x56, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb2, 0x3f, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x10, + 0xb3, 0x3f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, + 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb4, 0x3f, 0x12, 0x33, + 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, + 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x10, 0xb5, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, - 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4f, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xb7, 0x3f, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, - 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x10, 0xb8, 0x3f, 0x12, 0x30, - 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, - 0x4c, 0x65, 0x61, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb9, 0x3f, - 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xbc, 0x3f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, - 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbd, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x69, - 0x66, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xbe, 0x3f, - 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4f, 0x70, 0x74, 0x73, 0x10, 0xb6, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4f, 0x70, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x3f, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4c, + 0x65, 0x61, 0x76, 0x65, 0x10, 0xb8, 0x3f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x65, 0x65, 0x6b, 0x65, + 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb9, 0x3f, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x65, 0x61, + 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xbc, 0x3f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbd, 0x3f, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x69, 0x66, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, - 0x3f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x63, 0x61, - 0x6e, 0x61, 0x10, 0xc0, 0x3f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, - 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, - 0x3f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x72, 0x63, 0x61, - 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x10, 0xc2, 0x3f, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x72, - 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x3f, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, - 0x72, 0x54, 0x65, 0x61, 0x6d, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xc4, 0x3f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, - 0x6f, 0x10, 0xc7, 0x3f, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x49, 0x6e, 0x66, - 0x6f, 0x10, 0xc8, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc9, 0x3f, 0x12, 0x24, 0x0a, 0x1f, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xbe, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x47, 0x69, 0x66, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, 0x3f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x6f, + 0x74, 0x65, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x10, 0xc0, 0x3f, 0x12, 0x2a, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x56, 0x6f, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, 0x3f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, + 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x10, 0xc2, 0x3f, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x10, - 0xcc, 0x3f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x57, 0x61, - 0x67, 0x65, 0x72, 0x10, 0xcd, 0x3f, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, - 0x56, 0x6f, 0x74, 0x65, 0x10, 0xd0, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, - 0x50, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x3f, - 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, - 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x47, 0x6f, 0x61, 0x6c, 0x50, 0x72, - 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xd6, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x4d, 0x56, 0x50, 0x41, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x10, 0xd8, 0x3f, 0x12, - 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd9, 0x3f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x61, - 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xda, 0x3f, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x10, 0xdb, 0x3f, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x53, 0x70, - 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x10, 0xdd, 0x3f, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x53, 0x70, 0x65, - 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x3f, 0x12, 0x29, 0x0a, - 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xdf, 0x3f, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe0, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, - 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x10, 0xe1, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x56, 0x6f, 0x74, + 0x65, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x41, 0x64, + 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc4, 0x3f, 0x12, 0x1d, + 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xc7, 0x3f, 0x12, 0x1e, 0x0a, + 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x65, 0x61, 0x6d, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xc8, 0x3f, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x4d, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0xc9, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x10, 0xcc, 0x3f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x69, 0x67, 0x6e, 0x6f, + 0x75, 0x74, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x57, 0x61, 0x67, 0x65, 0x72, 0x10, 0xcd, 0x3f, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x10, 0xd0, 0x3f, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, + 0x69, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, + 0x69, 0x74, 0x79, 0x47, 0x6f, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, + 0xd6, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x56, 0x50, 0x41, 0x77, + 0x61, 0x72, 0x64, 0x65, 0x64, 0x10, 0xd8, 0x3f, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x73, + 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x10, 0xd9, 0x3f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x67, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xda, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x72, 0x63, 0x61, + 0x6e, 0x61, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xdb, 0x3f, + 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xdd, 0x3f, 0x12, + 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xde, 0x3f, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xdf, + 0x3f, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, + 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xe0, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, - 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xe2, 0x3f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, - 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, - 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xe3, 0x3f, 0x12, 0x36, 0x0a, 0x31, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, - 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, - 0x10, 0xe6, 0x3f, 0x12, 0x3a, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x70, - 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xe7, 0x3f, 0x12, - 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x4f, 0x70, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, - 0x64, 0x50, 0x61, 0x63, 0x6b, 0x10, 0xe8, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xe1, 0x3f, 0x12, 0x2f, 0x0a, + 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x3f, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, + 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x10, 0xe3, 0x3f, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, + 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, 0xe6, 0x3f, 0x12, 0x3a, 0x0a, 0x35, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, + 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, + 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, + 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xe7, 0x3f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x70, 0x65, 0x6e, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe9, 0x3f, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x10, 0xe8, + 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x70, 0x65, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xe9, 0x3f, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, + 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xea, 0x3f, 0x12, 0x3d, 0x0a, 0x38, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, - 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xea, 0x3f, - 0x12, 0x3d, 0x0a, 0x38, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, - 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x3f, 0x12, - 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, - 0x79, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, - 0xec, 0x3f, 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, - 0x72, 0x6e, 0x65, 0x79, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xed, 0x3f, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, - 0x72, 0x64, 0x10, 0xee, 0x3f, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xef, 0x3f, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x10, 0xf0, 0x3f, - 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xf1, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xf2, 0x3f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xf4, 0x3f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf5, 0x3f, 0x12, 0x42, 0x0a, 0x3d, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x6f, - 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, - 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x3f, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xfa, 0x3f, 0x12, - 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, - 0x10, 0xfb, 0x3f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, - 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, 0x3f, 0x12, + 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x3f, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x65, 0x65, 0x6b, + 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xec, 0x3f, 0x12, 0x39, 0x0a, 0x34, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, + 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x47, 0x65, 0x74, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xed, 0x3f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, + 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x10, 0xee, 0x3f, 0x12, 0x2e, + 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x3f, 0x12, 0x29, + 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, + 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x10, 0xf0, 0x3f, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x73, + 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf2, 0x3f, 0x12, 0x30, 0x0a, + 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x6f, + 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, - 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x10, 0xfd, 0x3f, - 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfe, 0x3f, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xff, 0x3f, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x80, 0x40, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0x81, 0x40, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x66, 0x65, 0x72, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x4d, 0x52, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x40, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, - 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x42, 0x61, 0x6e, 0x10, 0x83, 0x40, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x84, 0x40, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x53, 0x70, 0x61, 0x6d, 0x10, 0x85, 0x40, 0x12, 0x2b, 0x0a, - 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x86, 0x40, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, - 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x87, 0x40, 0x12, - 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x10, 0x88, 0x40, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, - 0x74, 0x65, 0x73, 0x74, 0x10, 0x89, 0x40, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, - 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x8a, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x10, 0x8b, 0x40, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, - 0x41, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, - 0x10, 0x8c, 0x40, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, - 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0x8d, 0x40, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, - 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x91, 0x40, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x92, 0x40, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, - 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x10, 0x93, 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x94, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, + 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf4, 0x3f, + 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, + 0x64, 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xf5, 0x3f, 0x12, 0x42, 0x0a, 0x3d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x65, + 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x3f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, 0x56, 0x69, + 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xfa, 0x3f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, + 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xfb, 0x3f, 0x12, 0x2a, 0x0a, 0x25, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, 0x3f, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x10, 0xfd, 0x3f, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xfe, 0x3f, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, + 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xff, 0x3f, + 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, + 0x6c, 0x6c, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x80, 0x40, 0x12, + 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x65, 0x61, 0x73, 0x6f, + 0x6e, 0x61, 0x6c, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x81, 0x40, + 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x65, 0x61, 0x73, + 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x82, 0x40, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6d, 0x6d, + 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x10, 0x83, 0x40, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x10, 0x84, 0x40, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, + 0x68, 0x61, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x53, + 0x70, 0x61, 0x6d, 0x10, 0x85, 0x40, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, + 0x74, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x10, 0x86, 0x40, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x42, + 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x87, 0x40, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, + 0x74, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x88, 0x40, 0x12, 0x21, 0x0a, + 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, 0x10, 0x89, 0x40, + 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x74, 0x65, + 0x73, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x8b, 0x40, 0x12, 0x1e, 0x0a, 0x19, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, + 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x8c, 0x40, 0x12, 0x30, 0x0a, 0x2b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x8d, 0x40, 0x12, 0x31, + 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x52, 0x6f, 0x6c, 0x6c, + 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, + 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, + 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, + 0x91, 0x40, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x40, 0x12, 0x22, 0x0a, 0x1d, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x10, 0x93, 0x40, 0x12, + 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0x95, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x70, - 0x65, 0x6e, 0x64, 0x57, 0x61, 0x67, 0x65, 0x72, 0x10, 0x96, 0x40, 0x12, 0x27, 0x0a, 0x22, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x69, 0x67, 0x6e, 0x6f, - 0x75, 0x74, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x57, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x10, 0x97, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x75, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x94, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, + 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x10, 0x95, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x57, 0x61, 0x67, 0x65, + 0x72, 0x10, 0x96, 0x40, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x53, 0x70, 0x65, 0x6e, 0x64, + 0x57, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x10, 0x97, 0x40, 0x12, 0x25, 0x0a, + 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x69, + 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, + 0x72, 0x10, 0x98, 0x40, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, - 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x10, 0x98, 0x40, 0x12, 0x2d, 0x0a, 0x28, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, - 0x61, 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x40, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x69, - 0x76, 0x65, 0x54, 0x69, 0x70, 0x10, 0x9a, 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x69, 0x76, 0x65, - 0x54, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x40, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x72, 0x69, - 0x76, 0x69, 0x61, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x9c, 0x40, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x72, 0x69, 0x76, - 0x69, 0x61, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x9d, 0x40, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x6e, - 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9e, 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9f, 0x40, 0x12, - 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, - 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x10, 0xa0, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x55, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x40, 0x12, 0x26, - 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x69, - 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x57, 0x61, - 0x67, 0x65, 0x72, 0x10, 0xa5, 0x40, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, - 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xa6, 0x40, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, - 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xa7, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, - 0x10, 0xa8, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xae, 0x40, 0x12, 0x27, 0x0a, 0x22, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x51, - 0x75, 0x69, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xaf, 0x40, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x74, 0x72, 0x61, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x46, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x10, - 0xb0, 0x40, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, - 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb1, 0x40, 0x12, 0x2a, 0x0a, - 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb2, 0x40, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, - 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, 0xb3, 0x40, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xb4, 0x40, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xb5, 0x40, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0xb6, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x57, 0x69, 0x74, 0x68, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xb8, 0x40, 0x12, 0x2e, - 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x49, 0x74, 0x65, 0x6d, 0x57, 0x69, 0x74, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb9, 0x40, 0x12, 0x33, - 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, - 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x74, 0x65, - 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, - 0x10, 0xba, 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x73, 0x48, 0x65, 0x72, 0x6f, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, 0xbb, 0x40, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, - 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, - 0x74, 0x6f, 0x72, 0x79, 0x10, 0xbf, 0x40, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x61, 0x6e, - 0x64, 0x6f, 0x6d, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x10, 0xc2, 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, - 0x6f, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x40, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, 0x67, - 0x49, 0x74, 0x65, 0x6d, 0x10, 0xc4, 0x40, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, 0x67, - 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x40, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x65, - 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xc6, 0x40, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x61, 0x72, 0x74, - 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, - 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x10, 0xc8, 0x40, 0x12, 0x2a, 0x0a, - 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc9, 0x40, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, - 0x54, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xca, 0x40, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xcb, 0x40, - 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xcc, 0x40, 0x12, 0x1a, 0x0a, 0x15, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcd, 0x40, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xce, - 0x40, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xcf, 0x40, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, - 0x6f, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0xd2, 0x40, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x48, - 0x65, 0x72, 0x6f, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd3, 0x40, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, + 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x99, 0x40, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x69, 0x76, 0x65, 0x54, 0x69, 0x70, 0x10, 0x9a, + 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x69, 0x76, 0x65, 0x54, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x40, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x53, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x10, 0x9c, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x40, 0x12, 0x23, 0x0a, + 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, + 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, + 0x9e, 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x6e, 0x63, 0x68, + 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9f, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x55, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa0, 0x40, 0x12, + 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, + 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x53, 0x70, + 0x65, 0x6e, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x57, 0x61, 0x67, 0x65, 0x72, 0x10, 0xa5, 0x40, 0x12, + 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, 0xa6, + 0x40, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0xa8, 0x40, 0x12, 0x26, 0x0a, 0x21, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x51, 0x75, 0x69, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xae, 0x40, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x40, 0x12, 0x2c, 0x0a, + 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x46, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x10, 0xb0, 0x40, 0x12, 0x29, 0x0a, 0x24, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, + 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0xb1, 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, + 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xb2, 0x40, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, + 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x73, 0x10, 0xb3, 0x40, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x61, 0x6d, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x10, 0xb4, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x61, 0x6d, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb5, 0x40, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb6, 0x40, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x40, 0x12, + 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x57, 0x69, 0x74, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x73, 0x10, 0xb8, 0x40, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x57, 0x69, 0x74, + 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb9, 0x40, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xba, 0x40, 0x12, 0x2a, 0x0a, 0x25, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, + 0x74, 0x50, 0x6c, 0x75, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, 0xbb, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xbf, 0x40, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x52, 0x65, 0x6c, 0x69, + 0x63, 0x10, 0xc2, 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, + 0x52, 0x65, 0x6c, 0x69, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x40, + 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xc4, 0x40, + 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x40, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc6, 0x40, 0x12, 0x22, 0x0a, 0x1d, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x40, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x61, 0x72, 0x74, 0x79, 0x52, 0x65, + 0x61, 0x64, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, + 0x64, 0x67, 0x65, 0x10, 0xc8, 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x65, 0x74, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, + 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, + 0xc9, 0x40, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x52, + 0x65, 0x63, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x40, 0x12, + 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xcb, 0x40, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xcc, 0x40, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcd, 0x40, + 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xce, 0x40, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcf, 0x40, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd2, 0x40, 0x12, 0x21, + 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x47, 0x6c, 0x6f, 0x62, + 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd3, + 0x40, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x73, + 0x57, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xd4, 0x40, 0x12, 0x3d, 0x0a, 0x38, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x73, 0x57, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xd4, 0x40, 0x12, - 0x3d, 0x0a, 0x38, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x73, 0x57, 0x65, - 0x65, 0x6b, 0x6c, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, 0x40, 0x12, 0x25, - 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, - 0x61, 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x73, 0x50, 0x72, 0x65, 0x70, 0x61, 0x69, 0x64, 0x54, 0x69, - 0x6d, 0x65, 0x10, 0xd6, 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, - 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, - 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd7, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xd8, 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x73, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xd9, 0x40, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6c, 0x75, - 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xda, 0x40, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, - 0x6c, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xdb, 0x40, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x50, 0x6c, 0x75, - 0x73, 0x41, 0x75, 0x74, 0x6f, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, - 0xdc, 0x40, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x73, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x6e, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x10, - 0xdd, 0x40, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, - 0x6c, 0x4d, 0x61, 0x70, 0x50, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x10, 0xe0, 0x40, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, - 0x61, 0x77, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x6f, 0x6f, 0x6d, 0x10, 0xe1, 0x40, 0x12, - 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x43, 0x6c, - 0x61, 0x69, 0x6d, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xe2, 0x40, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, - 0x6c, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4f, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x10, 0xe3, - 0x40, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, - 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4f, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, 0x40, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x73, + 0x50, 0x72, 0x65, 0x70, 0x61, 0x69, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x10, 0xd6, 0x40, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xd7, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, + 0x63, 0x69, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xd9, + 0x40, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, + 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x10, 0xda, 0x40, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdb, 0x40, 0x12, 0x2c, 0x0a, + 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, + 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x47, 0x72, + 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0xdc, 0x40, 0x12, 0x2e, 0x0a, 0x29, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, + 0x63, 0x69, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x6e, + 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xdd, 0x40, 0x12, 0x30, 0x0a, 0x2b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, + 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x4d, 0x61, 0x70, 0x50, 0x61, 0x74, + 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0xe0, 0x40, 0x12, 0x29, 0x0a, + 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x52, 0x6f, 0x6f, 0x6d, 0x10, 0xe1, 0x40, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, - 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4f, 0x6e, - 0x50, 0x61, 0x74, 0x68, 0x10, 0xe5, 0x40, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x6f, 0x6f, 0x6d, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x40, 0x12, 0x2d, 0x0a, 0x28, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, + 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x4f, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x10, 0xe3, 0x40, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, + 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, + 0x4f, 0x6e, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, + 0x40, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, + 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4f, 0x6e, 0x50, 0x61, 0x74, 0x68, 0x10, 0xe5, 0x40, + 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x55, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4f, 0x6e, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x40, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, - 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4f, 0x6e, 0x50, - 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x40, 0x12, 0x2f, - 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xe7, 0x40, 0x12, - 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe8, 0x40, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x54, 0x69, 0x70, 0x73, 0x10, 0xe9, 0x40, - 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x56, 0x32, 0x10, 0xea, 0x40, 0x12, 0x33, 0x0a, - 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, - 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, 0x32, 0x10, - 0xeb, 0x40, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x54, 0x69, 0x70, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xec, 0x40, - 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x54, 0x69, 0x70, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xed, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x70, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xe7, 0x40, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, + 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, + 0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe8, + 0x40, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, + 0x75, 0x74, 0x54, 0x69, 0x70, 0x73, 0x10, 0xe9, 0x40, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x6f, + 0x67, 0x56, 0x32, 0x10, 0xea, 0x40, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x10, 0xef, 0x40, 0x12, 0x2e, - 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, - 0x65, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf0, 0x40, 0x12, 0x2e, - 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, - 0x65, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xf1, 0x40, 0x12, 0x36, - 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, - 0x65, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xf2, 0x40, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, - 0x43, 0x72, 0x61, 0x77, 0x6c, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x52, - 0x6f, 0x6f, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf4, 0x40, 0x12, 0x3b, 0x0a, 0x36, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, - 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, - 0x69, 0x6d, 0x65, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf5, 0x40, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, - 0x65, 0x50, 0x6c, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, - 0x65, 0x6d, 0x73, 0x55, 0x6e, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xf6, 0x40, - 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xf7, 0x40, - 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x42, - 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xf8, 0x40, 0x12, 0x26, - 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x56, - 0x6f, 0x74, 0x65, 0x10, 0xf9, 0x40, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x40, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x70, 0x68, 0x10, 0xfb, 0x40, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x6f, - 0x67, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, 0x40, - 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, - 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, - 0x10, 0xfd, 0x40, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x10, 0xfe, 0x40, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, - 0x74, 0x73, 0x10, 0xff, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x80, 0x41, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x81, 0x41, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0x82, 0x41, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x65, 0x76, 0x52, 0x65, 0x73, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x10, 0x83, 0x41, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, - 0x76, 0x52, 0x65, 0x73, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x41, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, - 0x63, 0x69, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, - 0x69, 0x70, 0x10, 0x85, 0x41, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, - 0x72, 0x74, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x86, 0x41, 0x12, 0x2f, - 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x45, + 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, 0x32, 0x10, 0xeb, 0x40, 0x12, 0x2c, 0x0a, 0x27, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x70, 0x73, 0x53, + 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xec, 0x40, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x70, 0x73, 0x53, 0x75, 0x6d, + 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xed, 0x40, 0x12, + 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, + 0x46, 0x65, 0x65, 0x64, 0x10, 0xef, 0x40, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf0, 0x40, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x10, 0xf1, 0x40, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf2, 0x40, 0x12, + 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x47, 0x65, + 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x10, 0xf4, 0x40, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, + 0x61, 0x77, 0x6c, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x6f, 0x6f, + 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf5, + 0x40, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, + 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x73, 0x41, 0x75, + 0x74, 0x6f, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x55, 0x6e, 0x72, 0x65, + 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xf6, 0x40, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, + 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6c, 0x69, 0x6e, + 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xf7, 0x40, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, + 0x74, 0x69, 0x6e, 0x67, 0x10, 0xf8, 0x40, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x74, 0x65, 0x10, 0xf9, 0x40, 0x12, + 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, + 0x56, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x40, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x10, 0xfb, 0x40, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, 0x40, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, + 0x61, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x10, 0xfd, 0x40, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x47, 0x61, 0x6d, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xfe, 0x40, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xff, 0x40, 0x12, 0x26, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x80, 0x41, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x10, 0x81, 0x41, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x41, 0x12, 0x1d, + 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x52, 0x65, 0x73, 0x65, 0x74, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x83, 0x41, 0x12, 0x25, 0x0a, + 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x52, 0x65, 0x73, 0x65, 0x74, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0x84, 0x41, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x69, 0x6c, 0x65, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x10, 0x85, 0x41, 0x12, 0x27, + 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x72, 0x61, 0x6e, 0x74, - 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x87, 0x41, 0x12, - 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0x88, 0x41, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x76, 0x65, - 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x4d, 0x61, 0x70, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x10, 0x89, 0x41, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, - 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x8a, 0x41, 0x12, 0x3f, 0x0a, - 0x3a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, + 0x49, 0x74, 0x65, 0x6d, 0x10, 0x86, 0x41, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x70, + 0x70, 0x6f, 0x72, 0x74, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x87, 0x41, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x69, 0x6e, + 0x67, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0x88, + 0x41, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, + 0x4d, 0x61, 0x70, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0x89, 0x41, 0x12, 0x37, 0x0a, + 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8b, 0x41, 0x12, 0x37, - 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, - 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x10, 0x8c, 0x41, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x6e, 0x74, 0x73, 0x10, 0x8a, 0x41, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8b, 0x41, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, - 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8d, 0x41, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, - 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x10, 0x8e, 0x41, 0x12, 0x43, 0x0a, 0x3e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, - 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x41, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x10, 0x90, 0x41, 0x12, - 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x6f, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x10, 0x91, 0x41, 0x12, - 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x6f, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x41, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, - 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x52, 0x61, - 0x74, 0x69, 0x6e, 0x67, 0x10, 0x95, 0x41, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, - 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x52, 0x61, - 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x96, 0x41, 0x12, - 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, - 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x97, - 0x41, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x8c, 0x41, + 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x73, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8d, + 0x41, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x99, 0x41, 0x12, - 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x6f, 0x61, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0x9a, 0x41, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x10, 0x9b, 0x41, 0x12, - 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x73, - 0x74, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, - 0x41, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x6f, 0x75, 0x74, 0x10, 0x9d, 0x41, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x9e, 0x41, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xa1, - 0x41, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x10, 0xa8, 0x41, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x10, 0xa9, - 0x41, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaa, 0x41, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, - 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xab, 0x41, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, - 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x56, - 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xac, 0x41, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xad, 0x41, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xae, 0x41, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x43, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x10, 0xbb, 0x43, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, - 0x65, 0x72, 0x6f, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xbc, 0x43, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x76, 0x6f, - 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xbd, 0x43, 0x12, 0x2d, 0x0a, 0x28, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x41, 0x76, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbe, 0x43, 0x12, 0x29, 0x0a, 0x24, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, - 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x10, 0xbf, 0x43, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x74, 0x6f, 0x47, 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, - 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xc0, 0x43, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x74, 0x6f, 0x47, 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, - 0x64, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, 0x43, - 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, 0x6f, 0x47, 0x43, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x10, 0xc2, 0x43, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x56, 0x41, 0x43, 0x52, 0x65, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x10, 0xc3, 0x43, 0x12, 0x22, + 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x8e, 0x41, 0x12, 0x43, + 0x0a, 0x3e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, + 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x8f, 0x41, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, + 0x6e, 0x4f, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x73, 0x10, 0x90, 0x41, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x65, 0x73, 0x10, 0x91, 0x41, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x41, + 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x54, + 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x10, 0x95, 0x41, + 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x54, + 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x96, 0x41, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x61, 0x63, + 0x68, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x73, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0x97, 0x41, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x10, 0x99, 0x41, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x41, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, + 0x56, 0x6f, 0x74, 0x65, 0x73, 0x10, 0x9b, 0x41, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x41, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x56, + 0x50, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x9d, 0x41, 0x12, + 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x4d, 0x56, 0x50, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x41, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xa8, 0x41, 0x12, 0x2c, + 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x10, 0xa9, 0x41, 0x12, 0x34, 0x0a, 0x2f, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xaa, 0x41, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, + 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x10, 0xab, 0x41, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, + 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, + 0x79, 0x10, 0xac, 0x41, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, + 0x76, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x10, 0xad, 0x41, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x44, 0x65, 0x76, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x41, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x74, 0x10, 0xbb, 0x43, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x43, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbc, 0x43, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, + 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x76, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x10, 0xbd, 0x43, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, + 0x76, 0x6f, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xbe, 0x43, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xbf, + 0x43, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, 0x6f, 0x47, + 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x45, 0x78, 0x70, 0x6c, 0x6f, + 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, + 0xc0, 0x43, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, 0x6f, + 0x47, 0x43, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x45, 0x78, 0x70, 0x6c, + 0x6f, 0x69, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, 0x43, 0x12, 0x2a, 0x0a, 0x25, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x74, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x10, 0xc2, 0x43, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x41, 0x43, 0x52, 0x65, + 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x72, 0x10, 0xc3, 0x43, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, + 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x42, 0x75, 0x79, 0x10, 0xc4, 0x43, 0x12, 0x2a, 0x0a, + 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x42, 0x75, 0x79, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x43, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, + 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x10, 0xc6, 0x43, + 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, + 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x43, 0x12, + 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, + 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc8, 0x43, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xc9, 0x43, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x43, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xcb, 0x43, 0x12, 0x29, 0x0a, 0x24, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x43, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xcd, 0x43, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xce, 0x43, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xcf, 0x43, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x6f, + 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x43, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xd1, 0x43, 0x12, 0x2c, + 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x43, 0x12, 0x1e, 0x0a, 0x19, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xd3, 0x43, 0x12, 0x26, 0x0a, 0x21, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xd4, 0x43, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x10, 0xd5, 0x43, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd6, 0x43, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x42, 0x75, 0x79, 0x10, - 0xc4, 0x43, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, - 0x42, 0x75, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x43, 0x12, 0x25, - 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x72, 0x6f, - 0x6c, 0x6c, 0x10, 0xc6, 0x43, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, - 0x61, 0x66, 0x74, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xc7, 0x43, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x65, - 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc8, - 0x43, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x10, 0xc9, 0x43, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x43, 0x12, 0x21, 0x0a, - 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xcb, 0x43, - 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x43, 0x12, 0x21, 0x0a, 0x1c, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, - 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xcd, 0x43, 0x12, 0x29, + 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, + 0xd7, 0x43, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x43, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xce, 0x43, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x6f, 0x64, - 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xcf, 0x43, 0x12, - 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x43, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, - 0x10, 0xd1, 0x43, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, - 0x43, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xd3, - 0x43, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd4, 0x43, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, 0x61, - 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xd5, 0x43, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, - 0x61, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xd6, 0x43, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x10, 0xd7, 0x43, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xd8, 0x43, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xd9, 0x43, 0x12, 0x31, - 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, - 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, - 0x43, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xdb, 0x43, 0x12, 0x30, 0x0a, 0x2b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x43, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x10, 0xdd, 0x43, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, - 0x43, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xdf, 0x43, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, - 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe0, 0x43, 0x12, 0x25, 0x0a, 0x20, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x10, - 0xe1, 0x43, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, - 0x43, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xe3, 0x43, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, - 0x69, 0x70, 0x10, 0xe4, 0x43, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe5, 0x43, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x10, 0xe6, 0x43, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xe9, - 0x43, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xea, 0x43, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, - 0x6f, 0x6c, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x10, 0xeb, 0x43, 0x12, 0x2e, 0x0a, 0x29, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, - 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xec, 0x43, 0x12, 0x25, 0x0a, 0x20, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x10, - 0xed, 0x43, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xee, - 0x43, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, - 0x61, 0x10, 0xef, 0x43, 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf0, 0x43, 0x12, - 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, - 0xf1, 0x43, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, + 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xd9, 0x43, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x63, + 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, 0x43, 0x12, 0x28, 0x0a, 0x23, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x10, 0xdb, 0x43, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x43, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0xdd, 0x43, 0x12, 0x2c, + 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x4b, 0x69, 0x63, 0x6b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x43, 0x12, 0x27, 0x0a, 0x22, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, + 0x6c, 0x65, 0x10, 0xdf, 0x43, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xe0, 0x43, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x10, 0xe1, 0x43, 0x12, 0x2d, 0x0a, + 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x43, 0x12, 0x25, 0x0a, 0x20, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x10, 0xe3, 0x43, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x10, 0xe4, 0x43, + 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xe5, 0x43, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, + 0xe6, 0x43, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x49, 0x6e, 0x76, 0x69, + 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0xe9, 0x43, 0x12, 0x30, 0x0a, 0x2b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xea, 0x43, 0x12, 0x26, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x10, 0xeb, 0x43, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xec, 0x43, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x10, 0xed, 0x43, 0x12, 0x2d, 0x0a, + 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xee, 0x43, 0x12, 0x31, 0x0a, 0x2c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xef, 0x43, 0x12, + 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf0, 0x43, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xf1, 0x43, 0x12, 0x30, 0x0a, + 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x10, 0xf2, 0x43, 0x12, + 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x43, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x73, 0x10, 0xf2, 0x43, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x43, 0x12, 0x30, - 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xf4, 0x43, - 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x10, 0xf5, 0x43, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, - 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x10, 0xf6, - 0x43, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xf7, 0x43, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x10, 0xf8, 0x43, 0x12, 0x29, 0x0a, 0x24, + 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xf4, 0x43, 0x12, 0x25, 0x0a, 0x20, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x46, 0x65, 0x65, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, + 0xf5, 0x43, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x10, 0xf6, 0x43, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x41, 0x64, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x43, 0x68, 0x61, 0x74, 0x10, 0xfa, 0x43, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x43, 0x12, 0x27, + 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x73, 0x10, 0xf8, 0x43, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x43, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, - 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x65, 0x6c, 0x6c, 0x10, 0xfc, 0x43, 0x12, - 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x65, 0x6c, - 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfd, 0x43, 0x12, 0x26, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xfe, 0x43, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, - 0x66, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x43, 0x12, 0x2b, 0x0a, - 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x64, 0x65, 0x65, - 0x6d, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x80, 0x44, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, + 0x61, 0x79, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x10, + 0xfa, 0x43, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, + 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xfb, 0x43, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, + 0x61, 0x66, 0x74, 0x53, 0x65, 0x6c, 0x6c, 0x10, 0xfc, 0x43, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, - 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x52, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x44, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x52, - 0x61, 0x74, 0x65, 0x73, 0x10, 0x84, 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x87, 0x44, - 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, - 0x74, 0x4d, 0x56, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x88, 0x44, 0x12, 0x30, 0x0a, 0x2b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0x89, 0x44, 0x12, 0x38, - 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x44, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0x8b, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, - 0x73, 0x10, 0x90, 0x44, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x10, 0x91, 0x44, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x10, 0x95, 0x44, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x96, 0x44, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfd, 0x43, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, + 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfe, 0x43, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x43, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, + 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x10, 0x80, 0x44, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, + 0x61, 0x66, 0x74, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x44, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x73, 0x10, + 0x84, 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, + 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x87, 0x44, 0x12, 0x1a, 0x0a, 0x15, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x56, 0x50, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x10, 0x88, 0x44, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0x89, 0x44, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x8a, 0x44, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x10, 0x8b, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x10, + 0x8c, 0x44, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8d, 0x44, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x6b, 0x6e, 0x6f, + 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x73, 0x10, 0x8e, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, + 0x90, 0x44, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x10, 0x91, + 0x44, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x10, 0x95, + 0x44, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x96, 0x44, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, + 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x97, 0x44, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, + 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0x98, 0x44, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, - 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x97, 0x44, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x98, 0x44, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, - 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x10, 0x99, 0x44, - 0x12, 0x40, 0x0a, 0x3b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, - 0x66, 0x6f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x9a, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, - 0x47, 0x6f, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0x9b, 0x44, 0x12, 0x27, - 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x10, 0x9c, 0x44, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, - 0x10, 0x9d, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, - 0x64, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x9e, 0x44, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x75, 0x6e, - 0x74, 0x6c, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x9f, 0x44, 0x12, - 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, - 0x69, 0x76, 0x69, 0x61, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x10, - 0xa0, 0x44, 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x44, 0x72, 0x61, 0x66, - 0x74, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x73, 0x77, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x44, 0x12, 0x23, 0x0a, - 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x69, 0x67, - 0x6e, 0x6f, 0x75, 0x74, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x10, - 0xa2, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x61, 0x75, 0x6e, 0x74, - 0x6c, 0x65, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x10, 0xa3, 0x44, 0x12, 0x2c, 0x0a, 0x27, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x42, 0x61, - 0x63, 0x6b, 0x42, 0x65, 0x6e, 0x63, 0x68, 0x10, 0xa4, 0x44, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, + 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x10, 0x99, 0x44, 0x12, 0x40, + 0x0a, 0x3b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x49, 0x6e, 0x66, 0x6f, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x44, + 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x47, 0x6f, + 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0x9b, 0x44, 0x12, 0x27, 0x0a, 0x22, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, + 0x74, 0x61, 0x10, 0x9c, 0x44, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, + 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x10, 0x9d, + 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x9e, 0x44, 0x12, 0x20, 0x0a, 0x1b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x75, 0x6e, 0x74, 0x6c, + 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x9f, 0x44, 0x12, 0x31, 0x0a, + 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x72, 0x69, 0x76, + 0x69, 0x61, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x10, 0xa0, 0x44, + 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, + 0x72, 0x69, 0x76, 0x69, 0x61, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x44, 0x12, 0x23, 0x0a, 0x1e, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x69, 0x67, 0x6e, 0x6f, + 0x75, 0x74, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x10, 0xa2, 0x44, + 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x61, 0x75, 0x6e, 0x74, 0x6c, 0x65, + 0x74, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x10, 0xa3, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x42, 0x61, 0x63, 0x6b, - 0x42, 0x65, 0x6e, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x44, - 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x10, 0xa6, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xa7, 0x44, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x10, 0xa8, 0x44, 0x12, 0x2e, 0x0a, 0x29, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa9, 0x44, 0x12, 0x1d, 0x0a, 0x18, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0xaa, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x44, 0x61, 0x74, 0x61, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xab, 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x10, - 0xac, 0x44, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x44, 0x69, 0x72, 0x65, 0x74, 0x69, 0x64, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x79, - 0x10, 0xad, 0x44, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, - 0x74, 0x65, 0x6d, 0x41, 0x77, 0x61, 0x72, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xae, 0x44, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xaf, 0x44, 0x12, - 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x44, 0x12, - 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x57, 0x43, 0x6f, 0x6e, 0x76, 0x69, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xb1, 0x44, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x4f, 0x57, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb2, 0x44, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x10, 0xb3, 0x44, - 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, - 0x68, 0x69, 0x6e, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb4, 0x44, 0x12, - 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x10, 0xb5, 0x44, 0x12, 0x34, 0x0a, - 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x42, 0x65, 0x6e, 0x63, 0x68, 0x10, 0xa4, 0x44, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x64, 0x65, + 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x42, 0x65, + 0x6e, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x44, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x10, 0xa6, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xa7, 0x44, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x10, 0xa8, 0x44, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa9, 0x44, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, + 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0xaa, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x10, 0xab, 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x10, 0xac, 0x44, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, + 0x74, 0x44, 0x69, 0x72, 0x65, 0x74, 0x69, 0x64, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x10, 0xad, + 0x44, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x41, 0x77, 0x61, 0x72, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x10, 0xae, 0x44, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xaf, 0x44, 0x12, 0x2e, 0x0a, + 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x4f, 0x57, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x44, 0x12, 0x27, 0x0a, + 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x4f, 0x57, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x10, 0xb1, 0x44, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x4f, 0x57, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb2, 0x44, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x10, 0xb3, 0x44, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, + 0x6e, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb4, 0x44, 0x12, 0x2c, 0x0a, + 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, - 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xb6, 0x44, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, - 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x10, 0xb7, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x61, - 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xb8, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xb9, - 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x55, 0x52, 0x4c, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xbc, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, - 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xbd, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, - 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xbe, 0x44, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x10, 0xb5, 0x44, 0x12, 0x34, 0x0a, 0x2f, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, + 0x6c, 0x61, 0x69, 0x6d, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb6, + 0x44, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, + 0x4d, 0x4d, 0x52, 0x10, 0xb7, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x69, + 0x62, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x4d, 0x52, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xb8, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xb9, 0x44, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x55, 0x52, 0x4c, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xbc, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, + 0x61, 0x53, 0x53, 0x41, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xbd, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x41, 0x63, - 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, - 0x44, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, - 0x75, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x53, 0x75, 0x73, 0x70, 0x69, - 0x63, 0x69, 0x6f, 0x6e, 0x10, 0xc0, 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x75, - 0x73, 0x70, 0x69, 0x63, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xc1, 0x44, - 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x75, 0x73, 0x70, 0x69, 0x63, 0x69, 0x6f, 0x6e, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc2, - 0x44, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x73, 0x10, 0xc3, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, - 0x74, 0x63, 0x68, 0x43, 0x61, 0x73, 0x65, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, - 0x65, 0x10, 0xc4, 0x44, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x10, 0xc5, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x57, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, - 0x68, 0x10, 0xc6, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x70, 0x57, 0x61, 0x74, 0x63, - 0x68, 0x69, 0x6e, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x10, 0xc7, 0x44, - 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, - 0x74, 0x50, 0x65, 0x72, 0x66, 0x44, 0x61, 0x74, 0x61, 0x10, 0xc8, 0x44, 0x12, 0x24, 0x0a, 0x1f, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x10, - 0xc9, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, - 0x72, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x44, - 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, - 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xcb, 0x44, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, - 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x44, 0x12, 0x29, 0x0a, 0x24, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x10, 0xcd, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, - 0x79, 0x10, 0xce, 0x44, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x61, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x10, 0xcf, 0x44, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x61, 0x70, 0x69, 0x44, - 0x50, 0x43, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, - 0xd0, 0x44, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xbe, 0x44, + 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x53, 0x41, 0x41, 0x63, 0x63, 0x65, + 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, 0x44, 0x12, + 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, + 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x53, 0x75, 0x73, 0x70, 0x69, 0x63, 0x69, + 0x6f, 0x6e, 0x10, 0xc0, 0x44, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x75, 0x73, 0x70, + 0x69, 0x63, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xc1, 0x44, 0x12, 0x2f, + 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x75, 0x73, 0x70, 0x69, 0x63, 0x69, 0x6f, 0x6e, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc2, 0x44, 0x12, + 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x43, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x73, 0x10, 0xc3, 0x44, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, + 0x68, 0x43, 0x61, 0x73, 0x65, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, + 0xc4, 0x44, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, + 0x63, 0x6b, 0x10, 0xc5, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x61, 0x72, 0x74, 0x57, 0x61, + 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x10, + 0xc6, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x70, 0x57, 0x61, 0x74, 0x63, 0x68, 0x69, + 0x6e, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x10, 0xc7, 0x44, 0x12, 0x1a, + 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, + 0x65, 0x72, 0x66, 0x44, 0x61, 0x74, 0x61, 0x10, 0xc8, 0x44, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x73, 0x10, 0xc9, 0x44, + 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, + 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x44, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xcb, 0x44, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x44, + 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x44, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x76, + 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0xcd, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, + 0xce, 0x44, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, + 0x4f, 0x75, 0x74, 0x42, 0x61, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x10, 0xcf, 0x44, 0x12, 0x21, 0x0a, + 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x61, 0x70, 0x69, 0x44, 0x50, 0x43, + 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, 0xd0, 0x44, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, + 0xd1, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x10, 0xd1, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x44, 0x12, 0x32, - 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, - 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, - 0xd3, 0x44, 0x12, 0x3a, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd4, 0x44, 0x12, 0x31, - 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, - 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xd5, - 0x44, 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x44, 0x12, 0x32, 0x0a, 0x2d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, + 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xd3, 0x44, + 0x12, 0x3a, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd6, 0x44, 0x12, 0x30, 0x0a, 0x2b, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd4, 0x44, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4c, 0x65, 0x61, 0x76, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, - 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xd7, 0x44, 0x12, 0x38, - 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, - 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x44, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, - 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xd9, 0x44, 0x12, - 0x3d, 0x0a, 0x38, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, 0x44, 0x12, 0x32, - 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, - 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, - 0xdb, 0x44, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xdc, 0x44, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, - 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, - 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x69, 0x6e, - 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdd, 0x44, 0x12, 0x38, 0x0a, 0x33, + 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, + 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xd5, 0x44, 0x12, + 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, + 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd6, 0x44, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x65, + 0x61, 0x76, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, + 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xd7, 0x44, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x10, 0xde, 0x44, 0x12, 0x40, 0x0a, 0x3b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x4c, 0x65, 0x61, 0x76, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, + 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x44, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, + 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, + 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xd9, 0x44, 0x12, 0x3d, 0x0a, + 0x38, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, 0x44, 0x12, 0x32, 0x0a, 0x2d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xdb, 0x44, + 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xdc, 0x44, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, + 0x6d, 0x69, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, + 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdd, 0x44, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x10, 0xde, 0x44, 0x12, 0x40, 0x0a, 0x3b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, + 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, + 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xdf, 0x44, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, - 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdf, 0x44, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, - 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, - 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x53, - 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xe0, 0x44, 0x12, 0x47, 0x0a, 0x42, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, - 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xe1, 0x44, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, - 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xe2, 0x44, 0x12, 0x3c, 0x0a, 0x37, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, - 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xe3, 0x44, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x75, 0x6d, + 0x6d, 0x61, 0x72, 0x79, 0x10, 0xe0, 0x44, 0x12, 0x47, 0x0a, 0x42, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x76, + 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, + 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x53, 0x75, + 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe1, 0x44, + 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, + 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x10, 0xe2, 0x44, 0x12, 0x3c, 0x0a, 0x37, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x72, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xe3, 0x44, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x54, + 0x6f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0xe4, 0x44, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x54, 0x6f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe4, 0x44, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x64, 0x54, 0x6f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xe5, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x10, 0xe6, 0x44, 0x12, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe5, 0x44, + 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x10, 0xe6, 0x44, 0x12, 0x33, 0x0a, + 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xe7, 0x44, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, + 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xe8, 0x44, 0x12, 0x36, 0x0a, 0x31, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, + 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x43, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x49, + 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x10, 0xe9, 0x44, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, + 0x6d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x10, + 0xea, 0x44, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x61, 0x6d, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x44, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x75, 0x62, + 0x6d, 0x69, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xec, 0x44, 0x12, + 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xed, + 0x44, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x10, 0xee, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xef, 0x44, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x42, 0x79, 0x49, 0x44, 0x10, 0xf0, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, 0x65, + 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x73, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x10, + 0xf1, 0x44, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x10, 0xf2, 0x44, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xf3, 0x44, 0x12, 0x21, 0x0a, + 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x10, 0xf4, 0x44, + 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x61, 0x74, 0x61, 0x10, 0xf5, 0x44, 0x12, 0x26, 0x0a, 0x21, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x10, 0xf6, 0x44, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf7, 0x44, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, + 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf8, + 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, + 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf9, 0x44, 0x12, 0x2b, 0x0a, + 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x44, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfb, 0x44, 0x12, 0x32, 0x0a, + 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, + 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, + 0x44, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xfd, 0x44, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, + 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfe, 0x44, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, + 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x10, 0xff, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x53, 0x74, 0x69, 0x63, + 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x80, 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xe7, 0x44, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, - 0x75, 0x69, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xe8, 0x44, 0x12, 0x36, 0x0a, - 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, - 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x43, 0x68, 0x6f, 0x73, 0x65, - 0x6e, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x10, 0xe9, 0x44, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x65, 0x61, 0x6d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, - 0x6b, 0x10, 0xea, 0x44, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, - 0x61, 0x6d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x50, 0x61, 0x63, 0x6b, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x44, 0x12, 0x24, 0x0a, 0x1f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x75, 0x62, 0x6d, 0x69, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xec, - 0x44, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x10, 0xed, 0x44, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xee, 0x44, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, - 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xef, 0x44, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, - 0x61, 0x70, 0x68, 0x42, 0x79, 0x49, 0x44, 0x10, 0xf0, 0x44, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, - 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x73, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, - 0x65, 0x10, 0xf1, 0x44, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xf2, 0x44, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xf3, 0x44, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x10, - 0xf4, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, - 0x66, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x61, 0x74, 0x61, 0x10, 0xf5, 0x44, 0x12, 0x26, - 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x10, 0xf6, 0x44, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, - 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x73, 0x74, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf7, 0x44, 0x12, 0x35, 0x0a, 0x30, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, - 0x72, 0x64, 0x52, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xf8, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf9, 0x44, 0x12, - 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x44, 0x12, 0x31, 0x0a, 0x2c, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, - 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfb, 0x44, 0x12, - 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xfc, 0x44, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x69, - 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x10, 0xfd, 0x44, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfe, 0x44, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, - 0x61, 0x63, 0x65, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0xff, 0x44, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x53, 0x74, - 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x80, - 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x10, 0x81, 0x45, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x43, - 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x45, 0x12, 0x34, 0x0a, 0x2f, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, - 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0x83, 0x45, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x69, 0x63, 0x6b, - 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x45, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x10, 0x85, 0x45, - 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, - 0x72, 0x6f, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x45, 0x12, - 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x47, 0x65, 0x74, 0x55, - 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0x88, 0x45, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, - 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x89, 0x45, 0x12, 0x2d, 0x0a, - 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, - 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0x8a, 0x45, 0x12, 0x2c, 0x0a, 0x27, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x8b, 0x45, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, + 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0x81, 0x45, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x45, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, + 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x83, 0x45, + 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, + 0x62, 0x6f, 0x6f, 0x6b, 0x54, 0x65, 0x61, 0x6d, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x45, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, + 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x10, 0x85, 0x45, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x45, 0x12, 0x29, 0x0a, + 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0x88, 0x45, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, + 0x79, 0x53, 0x68, 0x6f, 0x70, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x89, 0x45, 0x12, 0x2d, 0x0a, 0x28, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, + 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0x8a, 0x45, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x45, - 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x6f, 0x45, - 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x8d, 0x45, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x8b, 0x45, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, + 0x79, 0x53, 0x68, 0x6f, 0x70, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x45, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x6f, 0x45, 0x78, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x8d, 0x45, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, + 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x6f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x45, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, - 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x6f, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x45, 0x12, 0x30, 0x0a, 0x2b, + 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x6f, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, + 0x65, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x8f, 0x45, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x6f, 0x56, 0x61, 0x72, 0x69, 0x61, - 0x62, 0x6c, 0x65, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x8f, 0x45, 0x12, 0x38, - 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x6f, 0x56, 0x61, 0x72, - 0x69, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x90, 0x45, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, - 0x79, 0x53, 0x68, 0x6f, 0x70, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x73, 0x10, 0x91, 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, - 0x6f, 0x70, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x45, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, - 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x10, 0x93, 0x45, 0x12, - 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x94, 0x45, 0x12, 0x24, 0x0a, 0x1f, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x10, - 0x95, 0x45, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, - 0x63, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x96, 0x45, - 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, - 0x61, 0x67, 0x65, 0x10, 0x97, 0x45, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, - 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x98, 0x45, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x62, 0x6c, 0x65, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x90, 0x45, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, + 0x68, 0x6f, 0x70, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, + 0x10, 0x91, 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, + 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x45, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x48, + 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x10, 0x93, 0x45, 0x12, 0x2b, 0x0a, + 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x94, 0x45, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x10, 0x95, 0x45, + 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x96, 0x45, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x50, 0x61, 0x67, + 0x65, 0x10, 0x97, 0x45, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x46, 0x61, 0x76, 0x6f, 0x72, + 0x69, 0x74, 0x65, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x98, 0x45, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, + 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x10, 0x99, 0x45, 0x12, + 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0x9a, 0x45, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, - 0x70, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x10, 0x99, - 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, - 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x45, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x70, 0x44, 0x65, 0x76, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x10, 0x9b, 0x45, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, + 0x6f, 0x70, 0x44, 0x65, 0x76, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x45, 0x12, 0x26, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x4f, 0x70, 0x65, 0x6e, 0x42, + 0x61, 0x67, 0x73, 0x10, 0x9d, 0x45, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, + 0x68, 0x6f, 0x70, 0x4f, 0x70, 0x65, 0x6e, 0x42, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x45, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, - 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x49, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x10, 0x9b, 0x45, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x61, 0x6e, 0x64, 0x79, + 0x42, 0x61, 0x67, 0x73, 0x10, 0x9f, 0x45, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, - 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x49, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x45, - 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x4f, 0x70, 0x65, - 0x6e, 0x42, 0x61, 0x67, 0x73, 0x10, 0x9d, 0x45, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, - 0x79, 0x53, 0x68, 0x6f, 0x70, 0x4f, 0x70, 0x65, 0x6e, 0x42, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x45, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, - 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x61, 0x6e, - 0x64, 0x79, 0x42, 0x61, 0x67, 0x73, 0x10, 0x9f, 0x45, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, - 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x61, - 0x6e, 0x64, 0x79, 0x42, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xa0, 0x45, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x61, 0x6e, 0x64, + 0x79, 0x42, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x45, + 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, + 0x53, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, + 0xa1, 0x45, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x53, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x45, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x10, 0xa1, 0x45, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, - 0x70, 0x44, 0x65, 0x76, 0x53, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x45, 0x78, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x45, 0x12, 0x33, - 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x47, 0x72, - 0x61, 0x6e, 0x74, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, - 0x10, 0xa3, 0x45, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, - 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x68, - 0x61, 0x72, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, 0x45, - 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x41, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x44, 0x61, 0x74, 0x61, 0x10, 0xa5, 0x45, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x10, 0xa6, 0x45, 0x12, 0x38, - 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, - 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa7, 0x45, 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, - 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xa8, 0x45, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x10, 0xa9, 0x45, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x6c, - 0x6f, 0x61, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaa, 0x45, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x74, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x10, - 0xab, 0x45, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, - 0x61, 0x72, 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0xac, - 0x45, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, - 0x75, 0x74, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, 0x4d, 0x69, 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, - 0x10, 0xad, 0x45, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, - 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xae, 0x45, 0x12, 0x20, 0x0a, 0x1b, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xaf, 0x45, 0x12, 0x21, - 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, - 0x45, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, - 0xb1, 0x45, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xb2, 0x45, 0x12, 0x24, - 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xb3, 0x45, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb4, 0x45, 0x12, 0x2d, 0x0a, 0x28, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x65, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x49, 0x6e, 0x66, 0x65, - 0x72, 0x65, 0x6e, 0x63, 0x69, 0x6e, 0x67, 0x10, 0xb5, 0x45, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, - 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, - 0x61, + 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, 0x76, 0x47, 0x72, 0x61, 0x6e, + 0x74, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x10, 0xa3, + 0x45, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x53, 0x68, 0x6f, 0x70, 0x44, 0x65, + 0x76, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x72, + 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, 0x45, 0x12, 0x25, + 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x41, 0x64, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, + 0x74, 0x61, 0x10, 0xa5, 0x45, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x10, 0xa6, 0x45, 0x12, 0x38, 0x0a, 0x33, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, + 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0xa7, 0x45, 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, + 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa8, + 0x45, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x43, 0x6c, 0x69, 0x70, 0x10, 0xa9, 0x45, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, + 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6c, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xaa, 0x45, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0xac, 0x45, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, + 0x4d, 0x69, 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, 0x10, 0xad, 0x45, 0x12, 0x27, 0x0a, 0x22, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, + 0x6f, 0x62, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x10, 0xae, 0x45, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0xaf, 0x45, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x45, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, + 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xb1, 0x45, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x10, 0xb2, 0x45, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb3, 0x45, 0x12, 0x25, 0x0a, 0x20, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xb4, 0x45, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x47, + 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xb6, 0x45, 0x12, 0x30, 0x0a, + 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x45, 0x12, + 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x55, 0x73, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xb8, 0x45, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb9, 0x45, 0x12, 0x2b, 0x0a, 0x26, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xba, 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, + 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x74, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbb, 0x45, 0x12, 0x34, 0x0a, + 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x10, 0xbc, 0x45, 0x12, 0x3c, 0x0a, 0x37, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, + 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x4f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbd, + 0x45, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, + 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x10, 0xbe, 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x76, 0x4d, 0x6f, 0x64, 0x69, 0x66, + 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x10, 0xbf, 0x45, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, + 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x76, + 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc0, 0x45, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, + 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x73, 0x74, 0x73, 0x10, 0xc1, 0x45, 0x12, + 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x51, 0x75, + 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc2, 0x45, 0x12, + 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc3, 0x45, 0x12, 0x33, 0x0a, 0x2e, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc4, + 0x45, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xc5, 0x45, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, + 0x6f, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x45, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, + 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x6f, 0x77, 0x10, 0xc7, 0x45, 0x12, 0x2a, 0x0a, 0x25, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, + 0x69, 0x6e, 0x67, 0x6f, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x45, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, + 0x44, 0x65, 0x76, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x10, 0xc9, 0x45, + 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x44, 0x65, 0x76, 0x52, 0x65, 0x72, 0x6f, + 0x6c, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, + 0x45, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, 0x67, 0x6f, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x44, 0x61, 0x74, 0x61, 0x10, 0xcb, 0x45, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x69, 0x6e, + 0x67, 0x6f, 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x45, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x69, 0x6e, + 0x67, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x10, 0xcd, 0x45, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, + 0x51, 0x75, 0x65, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x10, 0xce, 0x45, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x55, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xcf, 0x45, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, + 0x64, 0x54, 0x6f, 0x54, 0x49, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x45, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, + 0xd1, 0x45, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x53, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xd2, 0x45, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, + 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, + 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xd3, 0x45, 0x12, 0x3e, 0x0a, + 0x39, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, + 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd4, 0x45, 0x12, 0x32, 0x0a, + 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, + 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, 0x75, 0x70, 0x10, 0xd5, + 0x45, 0x12, 0x3a, 0x0a, 0x35, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, + 0x69, 0x6e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x6f, 0x6c, 0x6c, + 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd6, 0x45, 0x12, 0x30, 0x0a, + 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x65, + 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xd7, 0x45, 0x12, + 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, + 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x45, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, + 0x74, 0x10, 0xd9, 0x45, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x76, 0x69, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, 0x45, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, + 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x6f, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x65, 0x10, 0xdb, 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x45, 0x78, 0x6f, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x45, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x10, + 0xdd, 0x45, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, + 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xde, 0x45, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, + 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, + 0xdf, 0x45, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x41, 0x64, + 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe0, 0x45, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0xe1, 0x45, 0x12, 0x38, 0x0a, 0x33, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xe2, 0x45, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x10, 0xe3, 0x45, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, + 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, 0x45, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x63, 0x46, 0x61, 0x6e, 0x74, 0x61, + 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, + 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x10, 0xe5, 0x45, 0x12, 0x3a, 0x0a, 0x35, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x63, 0x46, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x70, + 0x67, 0x72, 0x61, 0x64, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x45, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, 0x6e, 0x74, 0x61, + 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xe8, 0x45, 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x61, + 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x72, + 0x6f, 0x6c, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xe9, 0x45, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, + 0x49, 0x44, 0x65, 0x76, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe7, + 0x45, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x52, 0x6f, 0x61, 0x64, 0x54, 0x6f, 0x54, 0x49, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x51, 0x75, 0x65, + 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xeb, 0x45, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, + 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x47, + 0x65, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x10, 0xec, 0x45, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, + 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x47, 0x65, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xed, 0x45, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, + 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x6f, + 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xee, 0x45, 0x12, 0x3e, 0x0a, 0x39, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x45, 0x12, 0x21, 0x0a, 0x1c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4e, + 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x10, 0x80, 0x46, 0x12, 0x29, + 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x46, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4e, 0x65, 0x77, + 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x10, 0x85, 0x46, 0x12, 0x29, 0x0a, 0x24, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x46, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x42, 0x61, + 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x10, 0x89, 0x46, 0x42, 0x25, 0x5a, + 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, + 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, + 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/dota_gcmessages_msgid.proto b/dota/dota_gcmessages_msgid.proto index 2ba361de..71f67532 100644 --- a/dota/dota_gcmessages_msgid.proto +++ b/dota/dota_gcmessages_msgid.proto @@ -40,6 +40,8 @@ enum EDOTAGCMsg { k_EMsgGCSubmitPlayerReport = 7078; k_EMsgGCSubmitPlayerReportResponse = 7079; k_EMsgGCPracticeLobbyKick = 7081; + k_EMsgGCSubmitPlayerReportV2 = 7082; + k_EMsgGCSubmitPlayerReportResponseV2 = 7083; k_EMsgGCRequestSaveGames = 7084; k_EMsgGCRequestSaveGamesServer = 7085; k_EMsgGCRequestSaveGamesResponse = 7086; @@ -103,6 +105,8 @@ enum EDOTAGCMsg { k_EMsgGCToGCCanInviteUserToTeamResponse = 7235; k_EMsgGCToGCGetUserRank = 7236; k_EMsgGCToGCGetUserRankResponse = 7237; + k_EMsgGCToGCAdjustUserRank = 7238; + k_EMsgGCToGCAdjustUserRankResponse = 7239; k_EMsgGCToGCUpdateTeamStats = 7240; k_EMsgGCToGCValidateTeam = 7241; k_EMsgGCToGCValidateTeamResponse = 7242; @@ -122,6 +126,8 @@ enum EDOTAGCMsg { k_EMsgGCFantasyLivePlayerStats = 7308; k_EMsgGCFantasyFinalPlayerStats = 7309; k_EMsgGCFlipLobbyTeams = 7320; + k_EMsgGCToGCEvaluateReportedPlayer = 7322; + k_EMsgGCToGCEvaluateReportedPlayerResponse = 7323; k_EMsgGCToGCProcessPlayerReportForTarget = 7324; k_EMsgGCToGCProcessReportSuccess = 7325; k_EMsgGCNotifyAccountFlagsChange = 7326; @@ -158,6 +164,9 @@ enum EDOTAGCMsg { k_EMsgGCToGCUpdateMatchmakingStats = 7415; k_EMsgGCToServerPingRequest = 7416; k_EMsgGCToServerPingResponse = 7417; + k_EMsgGCToServerEvaluateToxicChat = 7418; + k_EMsgServerToGCEvaluateToxicChat = 7419; + k_EMsgServerToGCEvaluateToxicChatResponse = 7420; k_EMsgGCToGCProcessMatchLeaver = 7426; k_EMsgGCNotificationsRequest = 7427; k_EMsgGCNotificationsResponse = 7428; @@ -263,7 +272,6 @@ enum EDOTAGCMsg { k_EMsgServerToGCCavernCrawlIsHeroActiveResponse = 7626; k_EMsgClientToGCPlayerCardSpecificPurchaseRequest = 7627; k_EMsgClientToGCPlayerCardSpecificPurchaseResponse = 7628; - k_EMsgGCtoServerTensorflowInstance = 7629; k_EMsgSQLSetIsLeagueAdmin = 7630; k_EMsgGCToGCGetLiveLeagueMatches = 7631; k_EMsgGCToGCGetLiveLeagueMatchesResponse = 7632; @@ -582,7 +590,6 @@ enum EDOTAGCMsg { k_EMsgClientToGCRequestContestVotesResponse = 8348; k_EMsgClientToGCMVPVoteTimeout = 8349; k_EMsgClientToGCMVPVoteTimeoutResponse = 8350; - k_EMsgDetailedGameStats = 8353; k_EMsgMatchMatchmakingStats = 8360; k_EMsgClientToGCSubmitPlayerMatchSurvey = 8361; k_EMsgClientToGCSubmitPlayerMatchSurveyResponse = 8362; @@ -664,6 +671,9 @@ enum EDOTAGCMsg { k_EMsgClientToGCRequestActiveGuildChallenge = 8713; k_EMsgClientToGCRequestActiveGuildChallengeResponse = 8714; k_EMsgGCToClientActiveGuildChallengeUpdated = 8715; + k_EMsgClientToGCRequestReporterUpdates = 8716; + k_EMsgClientToGCRequestReporterUpdatesResponse = 8717; + k_EMsgClientToGCAcknowledgeReporterUpdates = 8718; k_EMsgSignOutGuildChallengeProgress = 8720; k_EMsgClientToGCRequestGuildEventMembers = 8721; k_EMsgClientToGCRequestGuildEventMembersResponse = 8722; @@ -814,8 +824,7 @@ enum EDOTAGCMsg { k_EMsgGCToClientCollectorsCacheAvailableDataResponse = 8872; k_EMsgClientToGCUploadMatchClip = 8873; k_EMsgGCToClientUploadMatchClipResponse = 8874; - k_EMsgGCToServerSetSteamLearnDisable = 8875; - k_EMsgGCToServerSetSteamLearnKeysChanged = 8876; + k_EMsgGCToServerSteamLearnAccessTokensChanged = 8876; k_EMsgSignOutMuertaMinigame = 8877; k_EMsgGCToServerLobbyHeroRoleStats = 8878; k_EMsgClientToGCRankRequest = 8879; @@ -824,5 +833,66 @@ enum EDOTAGCMsg { k_EMsgSignOutMapStats = 8882; k_EMsgClientToGCMapStatsRequest = 8883; k_EMsgGCToClientMapStatsResponse = 8884; - k_EMsgGCToServerSetSteamLearnInferencing = 8885; + k_EMsgClientToGCShowcaseGetUserData = 8886; + k_EMsgClientToGCShowcaseGetUserDataResponse = 8887; + k_EMsgClientToGCShowcaseSetUserData = 8888; + k_EMsgClientToGCShowcaseSetUserDataResponse = 8889; + k_EMsgClientToGCFantasyCraftingGetData = 8890; + k_EMsgClientToGCFantasyCraftingGetDataResponse = 8891; + k_EMsgClientToGCFantasyCraftingPerformOperation = 8892; + k_EMsgClientToGCFantasyCraftingPerformOperationResponse = 8893; + k_EMsgGCToClientFantasyCraftingGetDataUpdated = 8894; + k_EMsgClientToGCFantasyCraftingDevModifyTablet = 8895; + k_EMsgClientToGCFantasyCraftingDevModifyTabletResponse = 8896; + k_EMsgClientToGCRoadToTIGetQuests = 8897; + k_EMsgClientToGCRoadToTIGetQuestsResponse = 8898; + k_EMsgClientToGCRoadToTIGetActiveQuest = 8899; + k_EMsgClientToGCRoadToTIGetActiveQuestResponse = 8900; + k_EMsgClientToGCBingoGetUserData = 8901; + k_EMsgClientToGCBingoGetUserDataResponse = 8902; + k_EMsgClientToGCBingoClaimRow = 8903; + k_EMsgClientToGCBingoClaimRowResponse = 8904; + k_EMsgClientToGCBingoDevRerollCard = 8905; + k_EMsgClientToGCBingoDevRerollCardResponse = 8906; + k_EMsgClientToGCBingoGetStatsData = 8907; + k_EMsgClientToGCBingoGetStatsDataResponse = 8908; + k_EMsgGCToClientBingoUserDataUpdated = 8909; + k_EMsgGCToClientRoadToTIQuestDataUpdated = 8910; + k_EMsgClientToGCRoadToTIUseItem = 8911; + k_EMsgClientToGCRoadToTIUseItemResponse = 8912; + k_EMsgClientToGCShowcaseSubmitReport = 8913; + k_EMsgClientToGCShowcaseSubmitReportResponse = 8914; + k_EMsgClientToGCShowcaseAdminGetReportsRollupList = 8915; + k_EMsgClientToGCShowcaseAdminGetReportsRollupListResponse = 8916; + k_EMsgClientToGCShowcaseAdminGetReportsRollup = 8917; + k_EMsgClientToGCShowcaseAdminGetReportsRollupResponse = 8918; + k_EMsgClientToGCShowcaseAdminGetUserDetails = 8919; + k_EMsgClientToGCShowcaseAdminGetUserDetailsResponse = 8920; + k_EMsgClientToGCShowcaseAdminConvict = 8921; + k_EMsgClientToGCShowcaseAdminConvictResponse = 8922; + k_EMsgClientToGCShowcaseAdminExonerate = 8923; + k_EMsgClientToGCShowcaseAdminExonerateResponse = 8924; + k_EMsgClientToGCShowcaseAdminReset = 8925; + k_EMsgClientToGCShowcaseAdminResetResponse = 8926; + k_EMsgClientToGCShowcaseAdminLockAccount = 8927; + k_EMsgClientToGCShowcaseAdminLockAccountResponse = 8928; + k_EMsgClientToGCFantasyCraftingSelectPlayer = 8929; + k_EMsgClientToGCFantasyCraftingSelectPlayerResponse = 8930; + k_EMsgClientToGCFantasyCraftingGenerateTablets = 8931; + k_EMsgClientToGCFantasyCraftingGenerateTabletsResponse = 8932; + k_EMsgClientToGcFantasyCraftingUpgradeTablets = 8933; + k_EMsgClientToGcFantasyCraftingUpgradeTabletsResponse = 8934; + k_EMsgClientToGCFantasyCraftingRerollOptions = 8936; + k_EMsgClientToGCFantasyCraftingRerollOptionsResponse = 8937; + k_EMsgClientToGCRoadToTIDevForceQuest = 8935; + k_EMsgLobbyRoadToTIMatchQuestData = 8939; + k_EMsgClientToGCShowcaseModerationGetQueue = 8940; + k_EMsgClientToGCShowcaseModerationGetQueueResponse = 8941; + k_EMsgClientToGCShowcaseModerationApplyModeration = 8942; + k_EMsgClientToGCShowcaseModerationApplyModerationResponse = 8943; + k_EMsgServerToGCNewBloomGift = 8960; + k_EMsgServerToGCNewBloomGiftResponse = 8961; + k_EMsgClientToGCNewBloomGift = 8965; + k_EMsgClientToGCNewBloomGiftResponse = 8966; + k_EMsgClientToGCSetBannedHeroes = 8969; } diff --git a/dota/dota_gcmessages_server.pb.go b/dota/dota_gcmessages_server.pb.go index 9306f4aa..89e8561f 100644 --- a/dota/dota_gcmessages_server.pb.go +++ b/dota/dota_gcmessages_server.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_server.proto @@ -174,7 +174,6 @@ const ( CMsgGameServerInfo_UNSPECIFIED CMsgGameServerInfo_ServerType = 0 CMsgGameServerInfo_GAME CMsgGameServerInfo_ServerType = 1 CMsgGameServerInfo_PROXY CMsgGameServerInfo_ServerType = 2 - CMsgGameServerInfo_TENSORFLOW CMsgGameServerInfo_ServerType = 3 CMsgGameServerInfo_DOTA_ONLY CMsgGameServerInfo_ServerType = 4 CMsgGameServerInfo_CUSTOM_GAME_ONLY CMsgGameServerInfo_ServerType = 5 CMsgGameServerInfo_EVENT_GAME_ONLY CMsgGameServerInfo_ServerType = 6 @@ -186,7 +185,6 @@ var ( 0: "UNSPECIFIED", 1: "GAME", 2: "PROXY", - 3: "TENSORFLOW", 4: "DOTA_ONLY", 5: "CUSTOM_GAME_ONLY", 6: "EVENT_GAME_ONLY", @@ -195,7 +193,6 @@ var ( "UNSPECIFIED": 0, "GAME": 1, "PROXY": 2, - "TENSORFLOW": 3, "DOTA_ONLY": 4, "CUSTOM_GAME_ONLY": 5, "EVENT_GAME_ONLY": 6, @@ -537,7 +534,7 @@ func (x *CMsgGCToServerPredictionResult_Prediction_EResult) UnmarshalJSON(b []by // Deprecated: Use CMsgGCToServerPredictionResult_Prediction_EResult.Descriptor instead. func (CMsgGCToServerPredictionResult_Prediction_EResult) EnumDescriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{52, 0, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{55, 0, 0} } type CMsgPoorNetworkConditions struct { @@ -886,7 +883,6 @@ type CMsgGameServerInfo struct { ServerCluster *uint32 `protobuf:"varint,20,opt,name=server_cluster,json=serverCluster" json:"server_cluster,omitempty"` AllowCustomGames *CMsgGameServerInfo_CustomGames `protobuf:"varint,23,opt,name=allow_custom_games,json=allowCustomGames,enum=dota.CMsgGameServerInfo_CustomGames" json:"allow_custom_games,omitempty"` BuildVersion *uint32 `protobuf:"varint,24,opt,name=build_version,json=buildVersion" json:"build_version,omitempty"` - TfServerCount *uint32 `protobuf:"varint,25,opt,name=tf_server_count,json=tfServerCount" json:"tf_server_count,omitempty"` SrcdsInstance *uint32 `protobuf:"varint,26,opt,name=srcds_instance,json=srcdsInstance" json:"srcds_instance,omitempty"` DevForceServerType *bool `protobuf:"varint,28,opt,name=dev_force_server_type,json=devForceServerType" json:"dev_force_server_type,omitempty"` IsRecordingMatchTrainingData *bool `protobuf:"varint,29,opt,name=is_recording_match_training_data,json=isRecordingMatchTrainingData" json:"is_recording_match_training_data,omitempty"` @@ -1092,13 +1088,6 @@ func (x *CMsgGameServerInfo) GetBuildVersion() uint32 { return 0 } -func (x *CMsgGameServerInfo) GetTfServerCount() uint32 { - if x != nil && x.TfServerCount != nil { - return *x.TfServerCount - } - return 0 -} - func (x *CMsgGameServerInfo) GetSrcdsInstance() uint32 { if x != nil && x.SrcdsInstance != nil { return *x.SrcdsInstance @@ -1572,6 +1561,7 @@ type CMsgGameMatchSignOut struct { TrainingDataRecorded *bool `protobuf:"varint,55,opt,name=training_data_recorded,json=trainingDataRecorded" json:"training_data_recorded,omitempty"` WinningTeam *DOTA_GC_TEAM `protobuf:"varint,56,opt,name=winning_team,json=winningTeam,enum=dota.DOTA_GC_TEAM" json:"winning_team,omitempty"` NormalizedWinProbabilityDiff *float32 `protobuf:"fixed32,57,opt,name=normalized_win_probability_diff,json=normalizedWinProbabilityDiff" json:"normalized_win_probability_diff,omitempty"` + MatchTrackedStats []*CMsgTrackedStat `protobuf:"bytes,58,rep,name=match_tracked_stats,json=matchTrackedStats" json:"match_tracked_stats,omitempty"` } func (x *CMsgGameMatchSignOut) Reset() { @@ -1823,6 +1813,13 @@ func (x *CMsgGameMatchSignOut) GetNormalizedWinProbabilityDiff() float32 { return 0 } +func (x *CMsgGameMatchSignOut) GetMatchTrackedStats() []*CMsgTrackedStat { + if x != nil { + return x.MatchTrackedStats + } + return nil +} + type CMsgSignOutDraftInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3113,6 +3110,7 @@ type CMsgServerToGCRequestBatchPlayerResources struct { AccountIds []uint32 `protobuf:"varint,1,rep,name=account_ids,json=accountIds" json:"account_ids,omitempty"` RankTypes []uint32 `protobuf:"varint,4,rep,name=rank_types,json=rankTypes" json:"rank_types,omitempty"` + LobbyType *int32 `protobuf:"varint,5,opt,name=lobby_type,json=lobbyType" json:"lobby_type,omitempty"` } func (x *CMsgServerToGCRequestBatchPlayerResources) Reset() { @@ -3161,6 +3159,13 @@ func (x *CMsgServerToGCRequestBatchPlayerResources) GetRankTypes() []uint32 { return nil } +func (x *CMsgServerToGCRequestBatchPlayerResources) GetLobbyType() int32 { + if x != nil && x.LobbyType != nil { + return *x.LobbyType + } + return 0 +} + type CMsgServerToGCRequestBatchPlayerResourcesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4545,6 +4550,219 @@ func (x *CMsgServerToGCRequestStatus_Response) GetResponse() uint32 { return 0 } +type CMsgGCToServerEvaluateToxicChat struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ReporterAccountId *uint32 `protobuf:"varint,2,opt,name=reporter_account_id,json=reporterAccountId" json:"reporter_account_id,omitempty"` +} + +func (x *CMsgGCToServerEvaluateToxicChat) Reset() { + *x = CMsgGCToServerEvaluateToxicChat{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_server_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgGCToServerEvaluateToxicChat) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgGCToServerEvaluateToxicChat) ProtoMessage() {} + +func (x *CMsgGCToServerEvaluateToxicChat) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[50] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgGCToServerEvaluateToxicChat.ProtoReflect.Descriptor instead. +func (*CMsgGCToServerEvaluateToxicChat) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{50} +} + +func (x *CMsgGCToServerEvaluateToxicChat) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgGCToServerEvaluateToxicChat) GetReporterAccountId() uint32 { + if x != nil && x.ReporterAccountId != nil { + return *x.ReporterAccountId + } + return 0 +} + +type CMsgServerToGCEvaluateToxicChat struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ReporterAccountId *uint32 `protobuf:"varint,2,opt,name=reporter_account_id,json=reporterAccountId" json:"reporter_account_id,omitempty"` + MatchId *uint64 `protobuf:"fixed64,3,opt,name=match_id,json=matchId" json:"match_id,omitempty"` + Timestamp []uint32 `protobuf:"varint,4,rep,name=timestamp" json:"timestamp,omitempty"` + Line []string `protobuf:"bytes,5,rep,name=line" json:"line,omitempty"` +} + +func (x *CMsgServerToGCEvaluateToxicChat) Reset() { + *x = CMsgServerToGCEvaluateToxicChat{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_server_proto_msgTypes[51] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgServerToGCEvaluateToxicChat) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgServerToGCEvaluateToxicChat) ProtoMessage() {} + +func (x *CMsgServerToGCEvaluateToxicChat) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[51] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgServerToGCEvaluateToxicChat.ProtoReflect.Descriptor instead. +func (*CMsgServerToGCEvaluateToxicChat) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{51} +} + +func (x *CMsgServerToGCEvaluateToxicChat) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgServerToGCEvaluateToxicChat) GetReporterAccountId() uint32 { + if x != nil && x.ReporterAccountId != nil { + return *x.ReporterAccountId + } + return 0 +} + +func (x *CMsgServerToGCEvaluateToxicChat) GetMatchId() uint64 { + if x != nil && x.MatchId != nil { + return *x.MatchId + } + return 0 +} + +func (x *CMsgServerToGCEvaluateToxicChat) GetTimestamp() []uint32 { + if x != nil { + return x.Timestamp + } + return nil +} + +func (x *CMsgServerToGCEvaluateToxicChat) GetLine() []string { + if x != nil { + return x.Line + } + return nil +} + +type CMsgServerToGCEvaluateToxicChatResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TargetAccountId *uint32 `protobuf:"varint,1,opt,name=target_account_id,json=targetAccountId" json:"target_account_id,omitempty"` + ReporterAccountId *uint32 `protobuf:"varint,2,opt,name=reporter_account_id,json=reporterAccountId" json:"reporter_account_id,omitempty"` + BanReason *uint32 `protobuf:"varint,3,opt,name=ban_reason,json=banReason" json:"ban_reason,omitempty"` + BanDuration *uint32 `protobuf:"varint,4,opt,name=ban_duration,json=banDuration" json:"ban_duration,omitempty"` + ToxicityScore *float32 `protobuf:"fixed32,5,opt,name=toxicity_score,json=toxicityScore" json:"toxicity_score,omitempty"` +} + +func (x *CMsgServerToGCEvaluateToxicChatResponse) Reset() { + *x = CMsgServerToGCEvaluateToxicChatResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_server_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgServerToGCEvaluateToxicChatResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgServerToGCEvaluateToxicChatResponse) ProtoMessage() {} + +func (x *CMsgServerToGCEvaluateToxicChatResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[52] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgServerToGCEvaluateToxicChatResponse.ProtoReflect.Descriptor instead. +func (*CMsgServerToGCEvaluateToxicChatResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{52} +} + +func (x *CMsgServerToGCEvaluateToxicChatResponse) GetTargetAccountId() uint32 { + if x != nil && x.TargetAccountId != nil { + return *x.TargetAccountId + } + return 0 +} + +func (x *CMsgServerToGCEvaluateToxicChatResponse) GetReporterAccountId() uint32 { + if x != nil && x.ReporterAccountId != nil { + return *x.ReporterAccountId + } + return 0 +} + +func (x *CMsgServerToGCEvaluateToxicChatResponse) GetBanReason() uint32 { + if x != nil && x.BanReason != nil { + return *x.BanReason + } + return 0 +} + +func (x *CMsgServerToGCEvaluateToxicChatResponse) GetBanDuration() uint32 { + if x != nil && x.BanDuration != nil { + return *x.BanDuration + } + return 0 +} + +func (x *CMsgServerToGCEvaluateToxicChatResponse) GetToxicityScore() float32 { + if x != nil && x.ToxicityScore != nil { + return *x.ToxicityScore + } + return 0 +} + type CMsgSignOutAssassinMiniGameInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4563,7 +4781,7 @@ type CMsgSignOutAssassinMiniGameInfo struct { func (x *CMsgSignOutAssassinMiniGameInfo) Reset() { *x = CMsgSignOutAssassinMiniGameInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[50] + mi := &file_dota_gcmessages_server_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4576,7 +4794,7 @@ func (x *CMsgSignOutAssassinMiniGameInfo) String() string { func (*CMsgSignOutAssassinMiniGameInfo) ProtoMessage() {} func (x *CMsgSignOutAssassinMiniGameInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[50] + mi := &file_dota_gcmessages_server_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4589,7 +4807,7 @@ func (x *CMsgSignOutAssassinMiniGameInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutAssassinMiniGameInfo.ProtoReflect.Descriptor instead. func (*CMsgSignOutAssassinMiniGameInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{50} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{53} } func (x *CMsgSignOutAssassinMiniGameInfo) GetWinningPlayers() []uint64 { @@ -4660,7 +4878,7 @@ type CMsgServerToGCKillSummaries struct { func (x *CMsgServerToGCKillSummaries) Reset() { *x = CMsgServerToGCKillSummaries{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[51] + mi := &file_dota_gcmessages_server_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4673,7 +4891,7 @@ func (x *CMsgServerToGCKillSummaries) String() string { func (*CMsgServerToGCKillSummaries) ProtoMessage() {} func (x *CMsgServerToGCKillSummaries) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[51] + mi := &file_dota_gcmessages_server_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4686,7 +4904,7 @@ func (x *CMsgServerToGCKillSummaries) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerToGCKillSummaries.ProtoReflect.Descriptor instead. func (*CMsgServerToGCKillSummaries) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{51} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{54} } func (x *CMsgServerToGCKillSummaries) GetIngameeventId() uint32 { @@ -4717,7 +4935,7 @@ type CMsgGCToServerPredictionResult struct { func (x *CMsgGCToServerPredictionResult) Reset() { *x = CMsgGCToServerPredictionResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[52] + mi := &file_dota_gcmessages_server_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4730,7 +4948,7 @@ func (x *CMsgGCToServerPredictionResult) String() string { func (*CMsgGCToServerPredictionResult) ProtoMessage() {} func (x *CMsgGCToServerPredictionResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[52] + mi := &file_dota_gcmessages_server_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4743,7 +4961,7 @@ func (x *CMsgGCToServerPredictionResult) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToServerPredictionResult.ProtoReflect.Descriptor instead. func (*CMsgGCToServerPredictionResult) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{52} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{55} } func (x *CMsgGCToServerPredictionResult) GetAccountId() uint32 { @@ -4786,7 +5004,7 @@ type CMsgServerToGCLockCharmTrading struct { func (x *CMsgServerToGCLockCharmTrading) Reset() { *x = CMsgServerToGCLockCharmTrading{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[53] + mi := &file_dota_gcmessages_server_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4799,7 +5017,7 @@ func (x *CMsgServerToGCLockCharmTrading) String() string { func (*CMsgServerToGCLockCharmTrading) ProtoMessage() {} func (x *CMsgServerToGCLockCharmTrading) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[53] + mi := &file_dota_gcmessages_server_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4812,7 +5030,7 @@ func (x *CMsgServerToGCLockCharmTrading) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerToGCLockCharmTrading.ProtoReflect.Descriptor instead. func (*CMsgServerToGCLockCharmTrading) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{53} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{56} } func (x *CMsgServerToGCLockCharmTrading) GetAccountId() uint32 { @@ -4844,7 +5062,7 @@ type CMsgSignOutUpdatePlayerChallenge struct { func (x *CMsgSignOutUpdatePlayerChallenge) Reset() { *x = CMsgSignOutUpdatePlayerChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[54] + mi := &file_dota_gcmessages_server_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4857,7 +5075,7 @@ func (x *CMsgSignOutUpdatePlayerChallenge) String() string { func (*CMsgSignOutUpdatePlayerChallenge) ProtoMessage() {} func (x *CMsgSignOutUpdatePlayerChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[54] + mi := &file_dota_gcmessages_server_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4870,7 +5088,7 @@ func (x *CMsgSignOutUpdatePlayerChallenge) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutUpdatePlayerChallenge.ProtoReflect.Descriptor instead. func (*CMsgSignOutUpdatePlayerChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{54} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{57} } func (x *CMsgSignOutUpdatePlayerChallenge) GetAccountId() uint32 { @@ -4920,7 +5138,7 @@ type CMsgServerToGCRerollPlayerChallenge struct { func (x *CMsgServerToGCRerollPlayerChallenge) Reset() { *x = CMsgServerToGCRerollPlayerChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[55] + mi := &file_dota_gcmessages_server_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4933,7 +5151,7 @@ func (x *CMsgServerToGCRerollPlayerChallenge) String() string { func (*CMsgServerToGCRerollPlayerChallenge) ProtoMessage() {} func (x *CMsgServerToGCRerollPlayerChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[55] + mi := &file_dota_gcmessages_server_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4946,7 +5164,7 @@ func (x *CMsgServerToGCRerollPlayerChallenge) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgServerToGCRerollPlayerChallenge.ProtoReflect.Descriptor instead. func (*CMsgServerToGCRerollPlayerChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{55} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{58} } func (x *CMsgServerToGCRerollPlayerChallenge) GetAccountId() uint32 { @@ -4978,7 +5196,7 @@ type CMsgSpendWager struct { func (x *CMsgSpendWager) Reset() { *x = CMsgSpendWager{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[56] + mi := &file_dota_gcmessages_server_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4991,7 +5209,7 @@ func (x *CMsgSpendWager) String() string { func (*CMsgSpendWager) ProtoMessage() {} func (x *CMsgSpendWager) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[56] + mi := &file_dota_gcmessages_server_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5004,7 +5222,7 @@ func (x *CMsgSpendWager) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSpendWager.ProtoReflect.Descriptor instead. func (*CMsgSpendWager) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{56} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{59} } func (x *CMsgSpendWager) GetPlayers() []*CMsgSpendWager_Player { @@ -5056,7 +5274,7 @@ type CMsgSignOutXPCoins struct { func (x *CMsgSignOutXPCoins) Reset() { *x = CMsgSignOutXPCoins{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[57] + mi := &file_dota_gcmessages_server_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5069,7 +5287,7 @@ func (x *CMsgSignOutXPCoins) String() string { func (*CMsgSignOutXPCoins) ProtoMessage() {} func (x *CMsgSignOutXPCoins) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[57] + mi := &file_dota_gcmessages_server_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5082,7 +5300,7 @@ func (x *CMsgSignOutXPCoins) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutXPCoins.ProtoReflect.Descriptor instead. func (*CMsgSignOutXPCoins) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{57} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{60} } func (x *CMsgSignOutXPCoins) GetPlayers() []*CMsgSignOutXPCoins_Player { @@ -5127,7 +5345,7 @@ type CMsgSignOutBounties struct { func (x *CMsgSignOutBounties) Reset() { *x = CMsgSignOutBounties{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[58] + mi := &file_dota_gcmessages_server_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5140,7 +5358,7 @@ func (x *CMsgSignOutBounties) String() string { func (*CMsgSignOutBounties) ProtoMessage() {} func (x *CMsgSignOutBounties) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[58] + mi := &file_dota_gcmessages_server_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5153,7 +5371,7 @@ func (x *CMsgSignOutBounties) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutBounties.ProtoReflect.Descriptor instead. func (*CMsgSignOutBounties) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{58} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{61} } func (x *CMsgSignOutBounties) GetBounties() []*CMsgSignOutBounties_Bounty { @@ -5196,7 +5414,7 @@ type CMsgSignOutCommunityGoalProgress struct { func (x *CMsgSignOutCommunityGoalProgress) Reset() { *x = CMsgSignOutCommunityGoalProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[59] + mi := &file_dota_gcmessages_server_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5209,7 +5427,7 @@ func (x *CMsgSignOutCommunityGoalProgress) String() string { func (*CMsgSignOutCommunityGoalProgress) ProtoMessage() {} func (x *CMsgSignOutCommunityGoalProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[59] + mi := &file_dota_gcmessages_server_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5222,7 +5440,7 @@ func (x *CMsgSignOutCommunityGoalProgress) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutCommunityGoalProgress.ProtoReflect.Descriptor instead. func (*CMsgSignOutCommunityGoalProgress) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{59} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{62} } func (x *CMsgSignOutCommunityGoalProgress) GetEventId() EEvent { @@ -5252,7 +5470,7 @@ type CMsgServerToGCCloseCompendiumInGamePredictionVoting struct { func (x *CMsgServerToGCCloseCompendiumInGamePredictionVoting) Reset() { *x = CMsgServerToGCCloseCompendiumInGamePredictionVoting{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[60] + mi := &file_dota_gcmessages_server_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5265,7 +5483,7 @@ func (x *CMsgServerToGCCloseCompendiumInGamePredictionVoting) String() string { func (*CMsgServerToGCCloseCompendiumInGamePredictionVoting) ProtoMessage() {} func (x *CMsgServerToGCCloseCompendiumInGamePredictionVoting) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[60] + mi := &file_dota_gcmessages_server_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5278,7 +5496,7 @@ func (x *CMsgServerToGCCloseCompendiumInGamePredictionVoting) ProtoReflect() pro // Deprecated: Use CMsgServerToGCCloseCompendiumInGamePredictionVoting.ProtoReflect.Descriptor instead. func (*CMsgServerToGCCloseCompendiumInGamePredictionVoting) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{60} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{63} } func (x *CMsgServerToGCCloseCompendiumInGamePredictionVoting) GetMatchId() uint64 { @@ -5313,7 +5531,7 @@ type CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse struct { func (x *CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse) Reset() { *x = CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[61] + mi := &file_dota_gcmessages_server_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5326,7 +5544,7 @@ func (x *CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse) String() s func (*CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse) ProtoMessage() {} func (x *CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[61] + mi := &file_dota_gcmessages_server_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5339,7 +5557,7 @@ func (x *CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse) ProtoRefle // Deprecated: Use CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse.ProtoReflect.Descriptor instead. func (*CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{61} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{64} } func (x *CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse) GetResult() bool { @@ -5363,7 +5581,7 @@ type CMsgServerToGCCompendiumInGamePredictionResults struct { func (x *CMsgServerToGCCompendiumInGamePredictionResults) Reset() { *x = CMsgServerToGCCompendiumInGamePredictionResults{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[62] + mi := &file_dota_gcmessages_server_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5376,7 +5594,7 @@ func (x *CMsgServerToGCCompendiumInGamePredictionResults) String() string { func (*CMsgServerToGCCompendiumInGamePredictionResults) ProtoMessage() {} func (x *CMsgServerToGCCompendiumInGamePredictionResults) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[62] + mi := &file_dota_gcmessages_server_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5389,7 +5607,7 @@ func (x *CMsgServerToGCCompendiumInGamePredictionResults) ProtoReflect() protore // Deprecated: Use CMsgServerToGCCompendiumInGamePredictionResults.ProtoReflect.Descriptor instead. func (*CMsgServerToGCCompendiumInGamePredictionResults) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{62} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{65} } func (x *CMsgServerToGCCompendiumInGamePredictionResults) GetMatchId() uint64 { @@ -5433,7 +5651,7 @@ type CMsgServerToGCCompendiumChosenInGamePredictions struct { func (x *CMsgServerToGCCompendiumChosenInGamePredictions) Reset() { *x = CMsgServerToGCCompendiumChosenInGamePredictions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[63] + mi := &file_dota_gcmessages_server_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5446,7 +5664,7 @@ func (x *CMsgServerToGCCompendiumChosenInGamePredictions) String() string { func (*CMsgServerToGCCompendiumChosenInGamePredictions) ProtoMessage() {} func (x *CMsgServerToGCCompendiumChosenInGamePredictions) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[63] + mi := &file_dota_gcmessages_server_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5459,7 +5677,7 @@ func (x *CMsgServerToGCCompendiumChosenInGamePredictions) ProtoReflect() protore // Deprecated: Use CMsgServerToGCCompendiumChosenInGamePredictions.ProtoReflect.Descriptor instead. func (*CMsgServerToGCCompendiumChosenInGamePredictions) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{63} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{66} } func (x *CMsgServerToGCCompendiumChosenInGamePredictions) GetMatchId() uint64 { @@ -5494,7 +5712,7 @@ type CMsgGCToGCCompendiumInGamePredictionResults struct { func (x *CMsgGCToGCCompendiumInGamePredictionResults) Reset() { *x = CMsgGCToGCCompendiumInGamePredictionResults{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[64] + mi := &file_dota_gcmessages_server_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5507,7 +5725,7 @@ func (x *CMsgGCToGCCompendiumInGamePredictionResults) String() string { func (*CMsgGCToGCCompendiumInGamePredictionResults) ProtoMessage() {} func (x *CMsgGCToGCCompendiumInGamePredictionResults) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[64] + mi := &file_dota_gcmessages_server_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5520,7 +5738,7 @@ func (x *CMsgGCToGCCompendiumInGamePredictionResults) ProtoReflect() protoreflec // Deprecated: Use CMsgGCToGCCompendiumInGamePredictionResults.ProtoReflect.Descriptor instead. func (*CMsgGCToGCCompendiumInGamePredictionResults) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{64} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{67} } func (x *CMsgGCToGCCompendiumInGamePredictionResults) GetResults() *CMsgServerToGCCompendiumInGamePredictionResults { @@ -5543,7 +5761,7 @@ type CMsgServerToGCMatchPlayerItemPurchaseHistory struct { func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory) Reset() { *x = CMsgServerToGCMatchPlayerItemPurchaseHistory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[65] + mi := &file_dota_gcmessages_server_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5556,7 +5774,7 @@ func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory) String() string { func (*CMsgServerToGCMatchPlayerItemPurchaseHistory) ProtoMessage() {} func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[65] + mi := &file_dota_gcmessages_server_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5569,7 +5787,7 @@ func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory) ProtoReflect() protorefle // Deprecated: Use CMsgServerToGCMatchPlayerItemPurchaseHistory.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchPlayerItemPurchaseHistory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{65} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{68} } func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory) GetMatchId() uint64 { @@ -5605,7 +5823,7 @@ type CMsgServerToGCMatchPlayerNeutralItemEquipHistory struct { func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory) Reset() { *x = CMsgServerToGCMatchPlayerNeutralItemEquipHistory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[66] + mi := &file_dota_gcmessages_server_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5618,7 +5836,7 @@ func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory) String() string { func (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory) ProtoMessage() {} func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[66] + mi := &file_dota_gcmessages_server_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5631,7 +5849,7 @@ func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory) ProtoReflect() protor // Deprecated: Use CMsgServerToGCMatchPlayerNeutralItemEquipHistory.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{66} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{69} } func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory) GetMatchId() uint64 { @@ -5662,7 +5880,7 @@ type CMsgServerToGCMatchStateHistory struct { func (x *CMsgServerToGCMatchStateHistory) Reset() { *x = CMsgServerToGCMatchStateHistory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[67] + mi := &file_dota_gcmessages_server_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5675,7 +5893,7 @@ func (x *CMsgServerToGCMatchStateHistory) String() string { func (*CMsgServerToGCMatchStateHistory) ProtoMessage() {} func (x *CMsgServerToGCMatchStateHistory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[67] + mi := &file_dota_gcmessages_server_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5688,7 +5906,7 @@ func (x *CMsgServerToGCMatchStateHistory) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerToGCMatchStateHistory.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchStateHistory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{67} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{70} } func (x *CMsgServerToGCMatchStateHistory) GetMatchId() uint64 { @@ -5732,7 +5950,7 @@ type CMsgMatchStateSteamMLEntry struct { func (x *CMsgMatchStateSteamMLEntry) Reset() { *x = CMsgMatchStateSteamMLEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[68] + mi := &file_dota_gcmessages_server_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5745,7 +5963,7 @@ func (x *CMsgMatchStateSteamMLEntry) String() string { func (*CMsgMatchStateSteamMLEntry) ProtoMessage() {} func (x *CMsgMatchStateSteamMLEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[68] + mi := &file_dota_gcmessages_server_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5758,7 +5976,7 @@ func (x *CMsgMatchStateSteamMLEntry) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgMatchStateSteamMLEntry.ProtoReflect.Descriptor instead. func (*CMsgMatchStateSteamMLEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{68} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{71} } func (x *CMsgMatchStateSteamMLEntry) GetMatchState() *CMsgServerToGCMatchStateHistory_MatchState { @@ -5794,7 +6012,7 @@ type CMsgLaneSelectionSteamMLEntry struct { func (x *CMsgLaneSelectionSteamMLEntry) Reset() { *x = CMsgLaneSelectionSteamMLEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[69] + mi := &file_dota_gcmessages_server_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5807,7 +6025,7 @@ func (x *CMsgLaneSelectionSteamMLEntry) String() string { func (*CMsgLaneSelectionSteamMLEntry) ProtoMessage() {} func (x *CMsgLaneSelectionSteamMLEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[69] + mi := &file_dota_gcmessages_server_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5820,7 +6038,7 @@ func (x *CMsgLaneSelectionSteamMLEntry) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgLaneSelectionSteamMLEntry.ProtoReflect.Descriptor instead. func (*CMsgLaneSelectionSteamMLEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{69} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{72} } func (x *CMsgLaneSelectionSteamMLEntry) GetHeroIds() []uint32 { @@ -5853,7 +6071,7 @@ type CMsgAbilitySelectionSteamMLEntry struct { func (x *CMsgAbilitySelectionSteamMLEntry) Reset() { *x = CMsgAbilitySelectionSteamMLEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[70] + mi := &file_dota_gcmessages_server_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5866,7 +6084,7 @@ func (x *CMsgAbilitySelectionSteamMLEntry) String() string { func (*CMsgAbilitySelectionSteamMLEntry) ProtoMessage() {} func (x *CMsgAbilitySelectionSteamMLEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[70] + mi := &file_dota_gcmessages_server_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5879,7 +6097,7 @@ func (x *CMsgAbilitySelectionSteamMLEntry) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgAbilitySelectionSteamMLEntry.ProtoReflect.Descriptor instead. func (*CMsgAbilitySelectionSteamMLEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{70} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{73} } func (x *CMsgAbilitySelectionSteamMLEntry) GetMmr() uint32 { @@ -5941,7 +6159,7 @@ type CMsgItemPurchasePregameSteamMLEntry struct { func (x *CMsgItemPurchasePregameSteamMLEntry) Reset() { *x = CMsgItemPurchasePregameSteamMLEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[71] + mi := &file_dota_gcmessages_server_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5954,7 +6172,7 @@ func (x *CMsgItemPurchasePregameSteamMLEntry) String() string { func (*CMsgItemPurchasePregameSteamMLEntry) ProtoMessage() {} func (x *CMsgItemPurchasePregameSteamMLEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[71] + mi := &file_dota_gcmessages_server_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5967,7 +6185,7 @@ func (x *CMsgItemPurchasePregameSteamMLEntry) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgItemPurchasePregameSteamMLEntry.ProtoReflect.Descriptor instead. func (*CMsgItemPurchasePregameSteamMLEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{71} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{74} } func (x *CMsgItemPurchasePregameSteamMLEntry) GetMmr() uint32 { @@ -6036,7 +6254,7 @@ type CMsgItemPurchaseSteamMLEntry struct { func (x *CMsgItemPurchaseSteamMLEntry) Reset() { *x = CMsgItemPurchaseSteamMLEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[72] + mi := &file_dota_gcmessages_server_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6049,7 +6267,7 @@ func (x *CMsgItemPurchaseSteamMLEntry) String() string { func (*CMsgItemPurchaseSteamMLEntry) ProtoMessage() {} func (x *CMsgItemPurchaseSteamMLEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[72] + mi := &file_dota_gcmessages_server_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6062,7 +6280,7 @@ func (x *CMsgItemPurchaseSteamMLEntry) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgItemPurchaseSteamMLEntry.ProtoReflect.Descriptor instead. func (*CMsgItemPurchaseSteamMLEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{72} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{75} } func (x *CMsgItemPurchaseSteamMLEntry) GetMmr() uint32 { @@ -6131,7 +6349,7 @@ type CMsgItemPurchaseSequenceSteamMLEntry struct { func (x *CMsgItemPurchaseSequenceSteamMLEntry) Reset() { *x = CMsgItemPurchaseSequenceSteamMLEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[73] + mi := &file_dota_gcmessages_server_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6144,7 +6362,7 @@ func (x *CMsgItemPurchaseSequenceSteamMLEntry) String() string { func (*CMsgItemPurchaseSequenceSteamMLEntry) ProtoMessage() {} func (x *CMsgItemPurchaseSequenceSteamMLEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[73] + mi := &file_dota_gcmessages_server_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6157,7 +6375,7 @@ func (x *CMsgItemPurchaseSequenceSteamMLEntry) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgItemPurchaseSequenceSteamMLEntry.ProtoReflect.Descriptor instead. func (*CMsgItemPurchaseSequenceSteamMLEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{73} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{76} } func (x *CMsgItemPurchaseSequenceSteamMLEntry) GetMmr() uint32 { @@ -6224,7 +6442,7 @@ type CMsgServerToGCCavernCrawlIsHeroActive struct { func (x *CMsgServerToGCCavernCrawlIsHeroActive) Reset() { *x = CMsgServerToGCCavernCrawlIsHeroActive{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[74] + mi := &file_dota_gcmessages_server_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6237,7 +6455,7 @@ func (x *CMsgServerToGCCavernCrawlIsHeroActive) String() string { func (*CMsgServerToGCCavernCrawlIsHeroActive) ProtoMessage() {} func (x *CMsgServerToGCCavernCrawlIsHeroActive) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[74] + mi := &file_dota_gcmessages_server_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6250,7 +6468,7 @@ func (x *CMsgServerToGCCavernCrawlIsHeroActive) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgServerToGCCavernCrawlIsHeroActive.ProtoReflect.Descriptor instead. func (*CMsgServerToGCCavernCrawlIsHeroActive) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{74} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{77} } func (x *CMsgServerToGCCavernCrawlIsHeroActive) GetEventId() uint32 { @@ -6301,7 +6519,7 @@ type CMsgServerToGCPlayerChallengeHistory struct { func (x *CMsgServerToGCPlayerChallengeHistory) Reset() { *x = CMsgServerToGCPlayerChallengeHistory{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[75] + mi := &file_dota_gcmessages_server_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6314,7 +6532,7 @@ func (x *CMsgServerToGCPlayerChallengeHistory) String() string { func (*CMsgServerToGCPlayerChallengeHistory) ProtoMessage() {} func (x *CMsgServerToGCPlayerChallengeHistory) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[75] + mi := &file_dota_gcmessages_server_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6327,7 +6545,7 @@ func (x *CMsgServerToGCPlayerChallengeHistory) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgServerToGCPlayerChallengeHistory.ProtoReflect.Descriptor instead. func (*CMsgServerToGCPlayerChallengeHistory) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{75} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{78} } func (x *CMsgServerToGCPlayerChallengeHistory) GetMatchId() uint64 { @@ -6366,7 +6584,7 @@ type CMsgServerToGCCavernCrawlIsHeroActiveResponse struct { func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse) Reset() { *x = CMsgServerToGCCavernCrawlIsHeroActiveResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[76] + mi := &file_dota_gcmessages_server_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6379,7 +6597,7 @@ func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse) String() string { func (*CMsgServerToGCCavernCrawlIsHeroActiveResponse) ProtoMessage() {} func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[76] + mi := &file_dota_gcmessages_server_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6392,7 +6610,7 @@ func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse) ProtoReflect() protorefl // Deprecated: Use CMsgServerToGCCavernCrawlIsHeroActiveResponse.ProtoReflect.Descriptor instead. func (*CMsgServerToGCCavernCrawlIsHeroActiveResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{76} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{79} } func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse) GetResult() bool { @@ -6430,116 +6648,6 @@ func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse) GetPotentialPlusShardWin return 0 } -type CMsgGCtoServerTensorflowInstance struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ServerInstance *uint32 `protobuf:"varint,1,opt,name=server_instance,json=serverInstance" json:"server_instance,omitempty"` -} - -func (x *CMsgGCtoServerTensorflowInstance) Reset() { - *x = CMsgGCtoServerTensorflowInstance{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[77] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgGCtoServerTensorflowInstance) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgGCtoServerTensorflowInstance) ProtoMessage() {} - -func (x *CMsgGCtoServerTensorflowInstance) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[77] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgGCtoServerTensorflowInstance.ProtoReflect.Descriptor instead. -func (*CMsgGCtoServerTensorflowInstance) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{77} -} - -func (x *CMsgGCtoServerTensorflowInstance) GetServerInstance() uint32 { - if x != nil && x.ServerInstance != nil { - return *x.ServerInstance - } - return 0 -} - -type CMsgDetailedGameStats struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Minutes []*CMsgDetailedGameStats_MinuteEntry `protobuf:"bytes,1,rep,name=minutes" json:"minutes,omitempty"` - PlayerInfo []*CMsgDetailedGameStats_PlayerInfo `protobuf:"bytes,2,rep,name=player_info,json=playerInfo" json:"player_info,omitempty"` - GameStats *CMsgDetailedGameStats_GameStats `protobuf:"bytes,3,opt,name=game_stats,json=gameStats" json:"game_stats,omitempty"` -} - -func (x *CMsgDetailedGameStats) Reset() { - *x = CMsgDetailedGameStats{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[78] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgDetailedGameStats) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgDetailedGameStats) ProtoMessage() {} - -func (x *CMsgDetailedGameStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[78] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgDetailedGameStats.ProtoReflect.Descriptor instead. -func (*CMsgDetailedGameStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{78} -} - -func (x *CMsgDetailedGameStats) GetMinutes() []*CMsgDetailedGameStats_MinuteEntry { - if x != nil { - return x.Minutes - } - return nil -} - -func (x *CMsgDetailedGameStats) GetPlayerInfo() []*CMsgDetailedGameStats_PlayerInfo { - if x != nil { - return x.PlayerInfo - } - return nil -} - -func (x *CMsgDetailedGameStats) GetGameStats() *CMsgDetailedGameStats_GameStats { - if x != nil { - return x.GameStats - } - return nil -} - type CMsgNeutralItemStats struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6551,7 +6659,7 @@ type CMsgNeutralItemStats struct { func (x *CMsgNeutralItemStats) Reset() { *x = CMsgNeutralItemStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[79] + mi := &file_dota_gcmessages_server_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6564,7 +6672,7 @@ func (x *CMsgNeutralItemStats) String() string { func (*CMsgNeutralItemStats) ProtoMessage() {} func (x *CMsgNeutralItemStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[79] + mi := &file_dota_gcmessages_server_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6577,7 +6685,7 @@ func (x *CMsgNeutralItemStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgNeutralItemStats.ProtoReflect.Descriptor instead. func (*CMsgNeutralItemStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{79} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{80} } func (x *CMsgNeutralItemStats) GetNeutralItems() []*CMsgNeutralItemStats_NeutralItem { @@ -6598,7 +6706,7 @@ type CMsgGCToServerLobbyHeroBanRates struct { func (x *CMsgGCToServerLobbyHeroBanRates) Reset() { *x = CMsgGCToServerLobbyHeroBanRates{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[80] + mi := &file_dota_gcmessages_server_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6611,7 +6719,7 @@ func (x *CMsgGCToServerLobbyHeroBanRates) String() string { func (*CMsgGCToServerLobbyHeroBanRates) ProtoMessage() {} func (x *CMsgGCToServerLobbyHeroBanRates) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[80] + mi := &file_dota_gcmessages_server_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6624,7 +6732,7 @@ func (x *CMsgGCToServerLobbyHeroBanRates) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToServerLobbyHeroBanRates.ProtoReflect.Descriptor instead. func (*CMsgGCToServerLobbyHeroBanRates) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{80} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{81} } func (x *CMsgGCToServerLobbyHeroBanRates) GetBanData() []*CMsgGCToServerLobbyHeroBanRates_HeroBanEntry { @@ -6645,7 +6753,7 @@ type CMsgSignOutGuildContractProgress struct { func (x *CMsgSignOutGuildContractProgress) Reset() { *x = CMsgSignOutGuildContractProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[81] + mi := &file_dota_gcmessages_server_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6658,7 +6766,7 @@ func (x *CMsgSignOutGuildContractProgress) String() string { func (*CMsgSignOutGuildContractProgress) ProtoMessage() {} func (x *CMsgSignOutGuildContractProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[81] + mi := &file_dota_gcmessages_server_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6671,7 +6779,7 @@ func (x *CMsgSignOutGuildContractProgress) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutGuildContractProgress.ProtoReflect.Descriptor instead. func (*CMsgSignOutGuildContractProgress) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{81} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{82} } func (x *CMsgSignOutGuildContractProgress) GetPlayerContracts() []*CMsgSignOutGuildContractProgress_PlayerContract { @@ -6692,7 +6800,7 @@ type CMsgSignOutGuildChallengeProgress struct { func (x *CMsgSignOutGuildChallengeProgress) Reset() { *x = CMsgSignOutGuildChallengeProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[82] + mi := &file_dota_gcmessages_server_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6705,7 +6813,7 @@ func (x *CMsgSignOutGuildChallengeProgress) String() string { func (*CMsgSignOutGuildChallengeProgress) ProtoMessage() {} func (x *CMsgSignOutGuildChallengeProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[82] + mi := &file_dota_gcmessages_server_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6718,7 +6826,7 @@ func (x *CMsgSignOutGuildChallengeProgress) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgSignOutGuildChallengeProgress.ProtoReflect.Descriptor instead. func (*CMsgSignOutGuildChallengeProgress) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{82} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{83} } func (x *CMsgSignOutGuildChallengeProgress) GetGuildChallengesProgresses() []*CMsgSignOutGuildChallengeProgress_ChallengeProgress { @@ -6743,7 +6851,7 @@ type CMsgSignOutMVPStats struct { func (x *CMsgSignOutMVPStats) Reset() { *x = CMsgSignOutMVPStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[83] + mi := &file_dota_gcmessages_server_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6756,7 +6864,7 @@ func (x *CMsgSignOutMVPStats) String() string { func (*CMsgSignOutMVPStats) ProtoMessage() {} func (x *CMsgSignOutMVPStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[83] + mi := &file_dota_gcmessages_server_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6769,7 +6877,7 @@ func (x *CMsgSignOutMVPStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutMVPStats.ProtoReflect.Descriptor instead. func (*CMsgSignOutMVPStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{83} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{84} } func (x *CMsgSignOutMVPStats) GetMatchId() uint64 { @@ -6818,7 +6926,7 @@ type CMsgGCToServerRecordTrainingData struct { func (x *CMsgGCToServerRecordTrainingData) Reset() { *x = CMsgGCToServerRecordTrainingData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[84] + mi := &file_dota_gcmessages_server_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6831,7 +6939,7 @@ func (x *CMsgGCToServerRecordTrainingData) String() string { func (*CMsgGCToServerRecordTrainingData) ProtoMessage() {} func (x *CMsgGCToServerRecordTrainingData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[84] + mi := &file_dota_gcmessages_server_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6844,7 +6952,7 @@ func (x *CMsgGCToServerRecordTrainingData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToServerRecordTrainingData.ProtoReflect.Descriptor instead. func (*CMsgGCToServerRecordTrainingData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{84} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{85} } func (x *CMsgGCToServerRecordTrainingData) GetEnable() bool { @@ -6865,7 +6973,7 @@ type CMsgServerToGCGetGuildContracts struct { func (x *CMsgServerToGCGetGuildContracts) Reset() { *x = CMsgServerToGCGetGuildContracts{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[85] + mi := &file_dota_gcmessages_server_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6878,7 +6986,7 @@ func (x *CMsgServerToGCGetGuildContracts) String() string { func (*CMsgServerToGCGetGuildContracts) ProtoMessage() {} func (x *CMsgServerToGCGetGuildContracts) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[85] + mi := &file_dota_gcmessages_server_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6891,7 +6999,7 @@ func (x *CMsgServerToGCGetGuildContracts) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerToGCGetGuildContracts.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetGuildContracts) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{85} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{86} } func (x *CMsgServerToGCGetGuildContracts) GetAccountIds() []uint32 { @@ -6912,7 +7020,7 @@ type CMsgServerToGCGetGuildContractsResponse struct { func (x *CMsgServerToGCGetGuildContractsResponse) Reset() { *x = CMsgServerToGCGetGuildContractsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[86] + mi := &file_dota_gcmessages_server_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6925,7 +7033,7 @@ func (x *CMsgServerToGCGetGuildContractsResponse) String() string { func (*CMsgServerToGCGetGuildContractsResponse) ProtoMessage() {} func (x *CMsgServerToGCGetGuildContractsResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[86] + mi := &file_dota_gcmessages_server_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6938,7 +7046,7 @@ func (x *CMsgServerToGCGetGuildContractsResponse) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgServerToGCGetGuildContractsResponse.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetGuildContractsResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{86} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{87} } func (x *CMsgServerToGCGetGuildContractsResponse) GetPlayerContracts() []*CMsgServerToGCGetGuildContractsResponse_Player { @@ -6960,7 +7068,7 @@ type CMsgMatchDiretideCandy struct { func (x *CMsgMatchDiretideCandy) Reset() { *x = CMsgMatchDiretideCandy{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[87] + mi := &file_dota_gcmessages_server_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6973,7 +7081,7 @@ func (x *CMsgMatchDiretideCandy) String() string { func (*CMsgMatchDiretideCandy) ProtoMessage() {} func (x *CMsgMatchDiretideCandy) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[87] + mi := &file_dota_gcmessages_server_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6986,7 +7094,7 @@ func (x *CMsgMatchDiretideCandy) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgMatchDiretideCandy.ProtoReflect.Descriptor instead. func (*CMsgMatchDiretideCandy) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{87} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{88} } func (x *CMsgMatchDiretideCandy) GetPlayerCandyData() []*CMsgMatchDiretideCandy_PlayerCandy { @@ -7014,7 +7122,7 @@ type CMsgGCToServerCheerData struct { func (x *CMsgGCToServerCheerData) Reset() { *x = CMsgGCToServerCheerData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[88] + mi := &file_dota_gcmessages_server_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7027,7 +7135,7 @@ func (x *CMsgGCToServerCheerData) String() string { func (*CMsgGCToServerCheerData) ProtoMessage() {} func (x *CMsgGCToServerCheerData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[88] + mi := &file_dota_gcmessages_server_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7040,7 +7148,7 @@ func (x *CMsgGCToServerCheerData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToServerCheerData.ProtoReflect.Descriptor instead. func (*CMsgGCToServerCheerData) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{88} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{89} } func (x *CMsgGCToServerCheerData) GetCheerTypes() []*CMsgGCToServerCheerData_CheerTypeCount { @@ -7078,7 +7186,7 @@ type CMsgCheerConfig struct { func (x *CMsgCheerConfig) Reset() { *x = CMsgCheerConfig{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[89] + mi := &file_dota_gcmessages_server_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7091,7 +7199,7 @@ func (x *CMsgCheerConfig) String() string { func (*CMsgCheerConfig) ProtoMessage() {} func (x *CMsgCheerConfig) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[89] + mi := &file_dota_gcmessages_server_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7104,7 +7212,7 @@ func (x *CMsgCheerConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgCheerConfig.ProtoReflect.Descriptor instead. func (*CMsgCheerConfig) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{89} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{90} } func (x *CMsgCheerConfig) GetCheersEnabled() bool { @@ -7244,7 +7352,7 @@ type CMsgGCToServerCheerConfig struct { func (x *CMsgGCToServerCheerConfig) Reset() { *x = CMsgGCToServerCheerConfig{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[90] + mi := &file_dota_gcmessages_server_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7257,7 +7365,7 @@ func (x *CMsgGCToServerCheerConfig) String() string { func (*CMsgGCToServerCheerConfig) ProtoMessage() {} func (x *CMsgGCToServerCheerConfig) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[90] + mi := &file_dota_gcmessages_server_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7270,7 +7378,7 @@ func (x *CMsgGCToServerCheerConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToServerCheerConfig.ProtoReflect.Descriptor instead. func (*CMsgGCToServerCheerConfig) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{90} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{91} } func (x *CMsgGCToServerCheerConfig) GetCheerConfig() *CMsgCheerConfig { @@ -7291,7 +7399,7 @@ type CMsgServerToGCGetCheerConfig struct { func (x *CMsgServerToGCGetCheerConfig) Reset() { *x = CMsgServerToGCGetCheerConfig{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[91] + mi := &file_dota_gcmessages_server_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7304,7 +7412,7 @@ func (x *CMsgServerToGCGetCheerConfig) String() string { func (*CMsgServerToGCGetCheerConfig) ProtoMessage() {} func (x *CMsgServerToGCGetCheerConfig) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[91] + mi := &file_dota_gcmessages_server_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7317,7 +7425,7 @@ func (x *CMsgServerToGCGetCheerConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerToGCGetCheerConfig.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetCheerConfig) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{91} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{92} } func (x *CMsgServerToGCGetCheerConfig) GetLeagueId() uint32 { @@ -7338,7 +7446,7 @@ type CMsgServerToGCGetCheerConfigResponse struct { func (x *CMsgServerToGCGetCheerConfigResponse) Reset() { *x = CMsgServerToGCGetCheerConfigResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[92] + mi := &file_dota_gcmessages_server_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7351,7 +7459,7 @@ func (x *CMsgServerToGCGetCheerConfigResponse) String() string { func (*CMsgServerToGCGetCheerConfigResponse) ProtoMessage() {} func (x *CMsgServerToGCGetCheerConfigResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[92] + mi := &file_dota_gcmessages_server_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7364,7 +7472,7 @@ func (x *CMsgServerToGCGetCheerConfigResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgServerToGCGetCheerConfigResponse.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetCheerConfigResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{92} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{93} } func (x *CMsgServerToGCGetCheerConfigResponse) GetCheerConfig() *CMsgCheerConfig { @@ -7385,7 +7493,7 @@ type CMsgGCToServerCheerScalesOverride struct { func (x *CMsgGCToServerCheerScalesOverride) Reset() { *x = CMsgGCToServerCheerScalesOverride{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[93] + mi := &file_dota_gcmessages_server_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7398,7 +7506,7 @@ func (x *CMsgGCToServerCheerScalesOverride) String() string { func (*CMsgGCToServerCheerScalesOverride) ProtoMessage() {} func (x *CMsgGCToServerCheerScalesOverride) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[93] + mi := &file_dota_gcmessages_server_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7411,7 +7519,7 @@ func (x *CMsgGCToServerCheerScalesOverride) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToServerCheerScalesOverride.ProtoReflect.Descriptor instead. func (*CMsgGCToServerCheerScalesOverride) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{93} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{94} } func (x *CMsgGCToServerCheerScalesOverride) GetScales() []float32 { @@ -7430,7 +7538,7 @@ type CMsgGCToServerGetCheerState struct { func (x *CMsgGCToServerGetCheerState) Reset() { *x = CMsgGCToServerGetCheerState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[94] + mi := &file_dota_gcmessages_server_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7443,7 +7551,7 @@ func (x *CMsgGCToServerGetCheerState) String() string { func (*CMsgGCToServerGetCheerState) ProtoMessage() {} func (x *CMsgGCToServerGetCheerState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[94] + mi := &file_dota_gcmessages_server_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7456,7 +7564,7 @@ func (x *CMsgGCToServerGetCheerState) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToServerGetCheerState.ProtoReflect.Descriptor instead. func (*CMsgGCToServerGetCheerState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{94} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{95} } type CMsgCheerTypeState struct { @@ -7473,7 +7581,7 @@ type CMsgCheerTypeState struct { func (x *CMsgCheerTypeState) Reset() { *x = CMsgCheerTypeState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[95] + mi := &file_dota_gcmessages_server_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7486,7 +7594,7 @@ func (x *CMsgCheerTypeState) String() string { func (*CMsgCheerTypeState) ProtoMessage() {} func (x *CMsgCheerTypeState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[95] + mi := &file_dota_gcmessages_server_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7499,7 +7607,7 @@ func (x *CMsgCheerTypeState) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgCheerTypeState.ProtoReflect.Descriptor instead. func (*CMsgCheerTypeState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{95} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{96} } func (x *CMsgCheerTypeState) GetCheerCounts() []uint32 { @@ -7543,7 +7651,7 @@ type CMsgCheerState struct { func (x *CMsgCheerState) Reset() { *x = CMsgCheerState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[96] + mi := &file_dota_gcmessages_server_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7556,7 +7664,7 @@ func (x *CMsgCheerState) String() string { func (*CMsgCheerState) ProtoMessage() {} func (x *CMsgCheerState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[96] + mi := &file_dota_gcmessages_server_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7569,7 +7677,7 @@ func (x *CMsgCheerState) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgCheerState.ProtoReflect.Descriptor instead. func (*CMsgCheerState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{96} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{97} } func (x *CMsgCheerState) GetCheerTypes() []*CMsgCheerTypeState { @@ -7605,7 +7713,7 @@ type CMsgServerToGCReportCheerState struct { func (x *CMsgServerToGCReportCheerState) Reset() { *x = CMsgServerToGCReportCheerState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[97] + mi := &file_dota_gcmessages_server_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7618,7 +7726,7 @@ func (x *CMsgServerToGCReportCheerState) String() string { func (*CMsgServerToGCReportCheerState) ProtoMessage() {} func (x *CMsgServerToGCReportCheerState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[97] + mi := &file_dota_gcmessages_server_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7631,7 +7739,7 @@ func (x *CMsgServerToGCReportCheerState) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerToGCReportCheerState.ProtoReflect.Descriptor instead. func (*CMsgServerToGCReportCheerState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{97} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{98} } func (x *CMsgServerToGCReportCheerState) GetCheerConfig() *CMsgCheerConfig { @@ -7659,7 +7767,7 @@ type CMsgServerToGCGetStickerHeroes struct { func (x *CMsgServerToGCGetStickerHeroes) Reset() { *x = CMsgServerToGCGetStickerHeroes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[98] + mi := &file_dota_gcmessages_server_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7672,7 +7780,7 @@ func (x *CMsgServerToGCGetStickerHeroes) String() string { func (*CMsgServerToGCGetStickerHeroes) ProtoMessage() {} func (x *CMsgServerToGCGetStickerHeroes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[98] + mi := &file_dota_gcmessages_server_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7685,7 +7793,7 @@ func (x *CMsgServerToGCGetStickerHeroes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerToGCGetStickerHeroes.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetStickerHeroes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{98} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{99} } func (x *CMsgServerToGCGetStickerHeroes) GetAccountIds() []uint32 { @@ -7706,7 +7814,7 @@ type CMsgServerToGCGetStickerHeroesResponse struct { func (x *CMsgServerToGCGetStickerHeroesResponse) Reset() { *x = CMsgServerToGCGetStickerHeroesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[99] + mi := &file_dota_gcmessages_server_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7719,7 +7827,7 @@ func (x *CMsgServerToGCGetStickerHeroesResponse) String() string { func (*CMsgServerToGCGetStickerHeroesResponse) ProtoMessage() {} func (x *CMsgServerToGCGetStickerHeroesResponse) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[99] + mi := &file_dota_gcmessages_server_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7732,7 +7840,7 @@ func (x *CMsgServerToGCGetStickerHeroesResponse) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgServerToGCGetStickerHeroesResponse.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetStickerHeroesResponse) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{99} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{100} } func (x *CMsgServerToGCGetStickerHeroesResponse) GetPlayers() []*CMsgServerToGCGetStickerHeroesResponse_Player { @@ -7742,57 +7850,16 @@ func (x *CMsgServerToGCGetStickerHeroesResponse) GetPlayers() []*CMsgServerToGCG return nil } -type CMsgGCToServerSetSteamLearnDisable struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CMsgGCToServerSetSteamLearnDisable) Reset() { - *x = CMsgGCToServerSetSteamLearnDisable{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[100] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgGCToServerSetSteamLearnDisable) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgGCToServerSetSteamLearnDisable) ProtoMessage() {} - -func (x *CMsgGCToServerSetSteamLearnDisable) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[100] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgGCToServerSetSteamLearnDisable.ProtoReflect.Descriptor instead. -func (*CMsgGCToServerSetSteamLearnDisable) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{100} -} - -type CMsgGCToServerSetSteamLearnInferencing struct { +type CMsgGCToServerSteamLearnAccessTokensChanged struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Enable *bool `protobuf:"varint,1,opt,name=enable" json:"enable,omitempty"` - ProjectId *uint32 `protobuf:"varint,2,opt,name=project_id,json=projectId" json:"project_id,omitempty"` - PublishedVersion *uint32 `protobuf:"varint,3,opt,name=published_version,json=publishedVersion" json:"published_version,omitempty"` - HmacKey *string `protobuf:"bytes,4,opt,name=hmac_key,json=hmacKey" json:"hmac_key,omitempty"` + AccessTokens *CMsgSteamLearnAccessTokens `protobuf:"bytes,1,opt,name=access_tokens,json=accessTokens" json:"access_tokens,omitempty"` } -func (x *CMsgGCToServerSetSteamLearnInferencing) Reset() { - *x = CMsgGCToServerSetSteamLearnInferencing{} +func (x *CMsgGCToServerSteamLearnAccessTokensChanged) Reset() { + *x = CMsgGCToServerSteamLearnAccessTokensChanged{} if protoimpl.UnsafeEnabled { mi := &file_dota_gcmessages_server_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -7800,13 +7867,13 @@ func (x *CMsgGCToServerSetSteamLearnInferencing) Reset() { } } -func (x *CMsgGCToServerSetSteamLearnInferencing) String() string { +func (x *CMsgGCToServerSteamLearnAccessTokensChanged) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgGCToServerSetSteamLearnInferencing) ProtoMessage() {} +func (*CMsgGCToServerSteamLearnAccessTokensChanged) ProtoMessage() {} -func (x *CMsgGCToServerSetSteamLearnInferencing) ProtoReflect() protoreflect.Message { +func (x *CMsgGCToServerSteamLearnAccessTokensChanged) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_server_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -7818,82 +7885,14 @@ func (x *CMsgGCToServerSetSteamLearnInferencing) ProtoReflect() protoreflect.Mes return mi.MessageOf(x) } -// Deprecated: Use CMsgGCToServerSetSteamLearnInferencing.ProtoReflect.Descriptor instead. -func (*CMsgGCToServerSetSteamLearnInferencing) Descriptor() ([]byte, []int) { +// Deprecated: Use CMsgGCToServerSteamLearnAccessTokensChanged.ProtoReflect.Descriptor instead. +func (*CMsgGCToServerSteamLearnAccessTokensChanged) Descriptor() ([]byte, []int) { return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{101} } -func (x *CMsgGCToServerSetSteamLearnInferencing) GetEnable() bool { - if x != nil && x.Enable != nil { - return *x.Enable - } - return false -} - -func (x *CMsgGCToServerSetSteamLearnInferencing) GetProjectId() uint32 { - if x != nil && x.ProjectId != nil { - return *x.ProjectId - } - return 0 -} - -func (x *CMsgGCToServerSetSteamLearnInferencing) GetPublishedVersion() uint32 { - if x != nil && x.PublishedVersion != nil { - return *x.PublishedVersion - } - return 0 -} - -func (x *CMsgGCToServerSetSteamLearnInferencing) GetHmacKey() string { - if x != nil && x.HmacKey != nil { - return *x.HmacKey - } - return "" -} - -type CMsgGCToServerSetSteamLearnKeysChanged struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Keys *CMsgSteamLearnHMACKeys `protobuf:"bytes,1,opt,name=keys" json:"keys,omitempty"` -} - -func (x *CMsgGCToServerSetSteamLearnKeysChanged) Reset() { - *x = CMsgGCToServerSetSteamLearnKeysChanged{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[102] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgGCToServerSetSteamLearnKeysChanged) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgGCToServerSetSteamLearnKeysChanged) ProtoMessage() {} - -func (x *CMsgGCToServerSetSteamLearnKeysChanged) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[102] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgGCToServerSetSteamLearnKeysChanged.ProtoReflect.Descriptor instead. -func (*CMsgGCToServerSetSteamLearnKeysChanged) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{102} -} - -func (x *CMsgGCToServerSetSteamLearnKeysChanged) GetKeys() *CMsgSteamLearnHMACKeys { +func (x *CMsgGCToServerSteamLearnAccessTokensChanged) GetAccessTokens() *CMsgSteamLearnAccessTokens { if x != nil { - return x.Keys + return x.AccessTokens } return nil } @@ -7913,7 +7912,7 @@ type CMsgSteamLearnMatchInfo struct { func (x *CMsgSteamLearnMatchInfo) Reset() { *x = CMsgSteamLearnMatchInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[103] + mi := &file_dota_gcmessages_server_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7926,7 +7925,7 @@ func (x *CMsgSteamLearnMatchInfo) String() string { func (*CMsgSteamLearnMatchInfo) ProtoMessage() {} func (x *CMsgSteamLearnMatchInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[103] + mi := &file_dota_gcmessages_server_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7939,7 +7938,7 @@ func (x *CMsgSteamLearnMatchInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSteamLearnMatchInfo.ProtoReflect.Descriptor instead. func (*CMsgSteamLearnMatchInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{103} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{102} } func (x *CMsgSteamLearnMatchInfo) GetAverageMmr() uint32 { @@ -7987,12 +7986,13 @@ type CMsgSteamLearnMatchInfoPlayer struct { Duration *uint32 `protobuf:"varint,3,opt,name=duration" json:"duration,omitempty"` GameMode *uint32 `protobuf:"varint,4,opt,name=game_mode,json=gameMode" json:"game_mode,omitempty"` LobbyType *uint32 `protobuf:"varint,5,opt,name=lobby_type,json=lobbyType" json:"lobby_type,omitempty"` + PlayerMmr *uint32 `protobuf:"varint,6,opt,name=player_mmr,json=playerMmr" json:"player_mmr,omitempty"` } func (x *CMsgSteamLearnMatchInfoPlayer) Reset() { *x = CMsgSteamLearnMatchInfoPlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[104] + mi := &file_dota_gcmessages_server_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8005,7 +8005,7 @@ func (x *CMsgSteamLearnMatchInfoPlayer) String() string { func (*CMsgSteamLearnMatchInfoPlayer) ProtoMessage() {} func (x *CMsgSteamLearnMatchInfoPlayer) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[104] + mi := &file_dota_gcmessages_server_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8018,7 +8018,7 @@ func (x *CMsgSteamLearnMatchInfoPlayer) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSteamLearnMatchInfoPlayer.ProtoReflect.Descriptor instead. func (*CMsgSteamLearnMatchInfoPlayer) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{104} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{103} } func (x *CMsgSteamLearnMatchInfoPlayer) GetAverageMmr() uint32 { @@ -8056,6 +8056,13 @@ func (x *CMsgSteamLearnMatchInfoPlayer) GetLobbyType() uint32 { return 0 } +func (x *CMsgSteamLearnMatchInfoPlayer) GetPlayerMmr() uint32 { + if x != nil && x.PlayerMmr != nil { + return *x.PlayerMmr + } + return 0 +} + type CMsgSteamLearnMatchHeroes struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -8070,7 +8077,7 @@ type CMsgSteamLearnMatchHeroes struct { func (x *CMsgSteamLearnMatchHeroes) Reset() { *x = CMsgSteamLearnMatchHeroes{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[105] + mi := &file_dota_gcmessages_server_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8083,7 +8090,7 @@ func (x *CMsgSteamLearnMatchHeroes) String() string { func (*CMsgSteamLearnMatchHeroes) ProtoMessage() {} func (x *CMsgSteamLearnMatchHeroes) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[105] + mi := &file_dota_gcmessages_server_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8096,7 +8103,7 @@ func (x *CMsgSteamLearnMatchHeroes) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSteamLearnMatchHeroes.ProtoReflect.Descriptor instead. func (*CMsgSteamLearnMatchHeroes) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{105} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{104} } func (x *CMsgSteamLearnMatchHeroes) GetRadiantHeroIds() []uint32 { @@ -8141,7 +8148,7 @@ type CMsgSteamLearnMatchHero struct { func (x *CMsgSteamLearnMatchHero) Reset() { *x = CMsgSteamLearnMatchHero{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[106] + mi := &file_dota_gcmessages_server_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8154,7 +8161,7 @@ func (x *CMsgSteamLearnMatchHero) String() string { func (*CMsgSteamLearnMatchHero) ProtoMessage() {} func (x *CMsgSteamLearnMatchHero) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[106] + mi := &file_dota_gcmessages_server_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8167,7 +8174,7 @@ func (x *CMsgSteamLearnMatchHero) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSteamLearnMatchHero.ProtoReflect.Descriptor instead. func (*CMsgSteamLearnMatchHero) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{106} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{105} } func (x *CMsgSteamLearnMatchHero) GetHeroId() uint32 { @@ -8198,6 +8205,53 @@ func (x *CMsgSteamLearnMatchHero) GetEnemyHeroIds() []uint32 { return nil } +type CMsgSteamLearnPlayerTimedStats struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + StatBuckets []*CMsgSteamLearnPlayerTimedStats_StatBucket `protobuf:"bytes,1,rep,name=stat_buckets,json=statBuckets" json:"stat_buckets,omitempty"` +} + +func (x *CMsgSteamLearnPlayerTimedStats) Reset() { + *x = CMsgSteamLearnPlayerTimedStats{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_server_proto_msgTypes[106] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearnPlayerTimedStats) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearnPlayerTimedStats) ProtoMessage() {} + +func (x *CMsgSteamLearnPlayerTimedStats) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[106] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearnPlayerTimedStats.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnPlayerTimedStats) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{106} +} + +func (x *CMsgSteamLearnPlayerTimedStats) GetStatBuckets() []*CMsgSteamLearnPlayerTimedStats_StatBucket { + if x != nil { + return x.StatBuckets + } + return nil +} + type CMsgSteamLearnMatchState struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -8427,6 +8481,77 @@ func (x *CMsgSteamLearnPreGameItemPurchases) GetIsUsingDotaPlus() bool { return false } +type CMsgSteamLearnNeutralItemPurchase struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ItemId *int32 `protobuf:"varint,1,opt,name=item_id,json=itemId" json:"item_id,omitempty"` + Tier *uint32 `protobuf:"varint,2,opt,name=tier" json:"tier,omitempty"` + IsRadiantTeam *uint32 `protobuf:"varint,3,opt,name=is_radiant_team,json=isRadiantTeam" json:"is_radiant_team,omitempty"` + IsUsingDotaPlus *bool `protobuf:"varint,4,opt,name=is_using_dota_plus,json=isUsingDotaPlus" json:"is_using_dota_plus,omitempty"` +} + +func (x *CMsgSteamLearnNeutralItemPurchase) Reset() { + *x = CMsgSteamLearnNeutralItemPurchase{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_server_proto_msgTypes[110] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearnNeutralItemPurchase) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearnNeutralItemPurchase) ProtoMessage() {} + +func (x *CMsgSteamLearnNeutralItemPurchase) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[110] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearnNeutralItemPurchase.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnNeutralItemPurchase) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{110} +} + +func (x *CMsgSteamLearnNeutralItemPurchase) GetItemId() int32 { + if x != nil && x.ItemId != nil { + return *x.ItemId + } + return 0 +} + +func (x *CMsgSteamLearnNeutralItemPurchase) GetTier() uint32 { + if x != nil && x.Tier != nil { + return *x.Tier + } + return 0 +} + +func (x *CMsgSteamLearnNeutralItemPurchase) GetIsRadiantTeam() uint32 { + if x != nil && x.IsRadiantTeam != nil { + return *x.IsRadiantTeam + } + return 0 +} + +func (x *CMsgSteamLearnNeutralItemPurchase) GetIsUsingDotaPlus() bool { + if x != nil && x.IsUsingDotaPlus != nil { + return *x.IsUsingDotaPlus + } + return false +} + type CMsgSteamLearnAbilitySkill struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -8441,7 +8566,7 @@ type CMsgSteamLearnAbilitySkill struct { func (x *CMsgSteamLearnAbilitySkill) Reset() { *x = CMsgSteamLearnAbilitySkill{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[110] + mi := &file_dota_gcmessages_server_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8454,7 +8579,7 @@ func (x *CMsgSteamLearnAbilitySkill) String() string { func (*CMsgSteamLearnAbilitySkill) ProtoMessage() {} func (x *CMsgSteamLearnAbilitySkill) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[110] + mi := &file_dota_gcmessages_server_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8467,7 +8592,7 @@ func (x *CMsgSteamLearnAbilitySkill) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSteamLearnAbilitySkill.ProtoReflect.Descriptor instead. func (*CMsgSteamLearnAbilitySkill) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{110} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{111} } func (x *CMsgSteamLearnAbilitySkill) GetAbilityId() int32 { @@ -8511,7 +8636,7 @@ type CMsgSteamLearnWardPlacement struct { func (x *CMsgSteamLearnWardPlacement) Reset() { *x = CMsgSteamLearnWardPlacement{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[111] + mi := &file_dota_gcmessages_server_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8524,7 +8649,7 @@ func (x *CMsgSteamLearnWardPlacement) String() string { func (*CMsgSteamLearnWardPlacement) ProtoMessage() {} func (x *CMsgSteamLearnWardPlacement) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[111] + mi := &file_dota_gcmessages_server_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8537,7 +8662,7 @@ func (x *CMsgSteamLearnWardPlacement) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSteamLearnWardPlacement.ProtoReflect.Descriptor instead. func (*CMsgSteamLearnWardPlacement) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{111} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{112} } func (x *CMsgSteamLearnWardPlacement) GetWardLoc() *CMsgSteamLearnWardPlacement_Location { @@ -8572,7 +8697,7 @@ type CMsgSignOutMuertaMinigame struct { func (x *CMsgSignOutMuertaMinigame) Reset() { *x = CMsgSignOutMuertaMinigame{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[112] + mi := &file_dota_gcmessages_server_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8585,7 +8710,7 @@ func (x *CMsgSignOutMuertaMinigame) String() string { func (*CMsgSignOutMuertaMinigame) ProtoMessage() {} func (x *CMsgSignOutMuertaMinigame) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[112] + mi := &file_dota_gcmessages_server_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8598,7 +8723,7 @@ func (x *CMsgSignOutMuertaMinigame) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutMuertaMinigame.ProtoReflect.Descriptor instead. func (*CMsgSignOutMuertaMinigame) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{112} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{113} } func (x *CMsgSignOutMuertaMinigame) GetEventGameData() []byte { @@ -8620,7 +8745,7 @@ type CMsgSignOutMapStats struct { func (x *CMsgSignOutMapStats) Reset() { *x = CMsgSignOutMapStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[113] + mi := &file_dota_gcmessages_server_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8633,7 +8758,7 @@ func (x *CMsgSignOutMapStats) String() string { func (*CMsgSignOutMapStats) ProtoMessage() {} func (x *CMsgSignOutMapStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[113] + mi := &file_dota_gcmessages_server_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8646,7 +8771,7 @@ func (x *CMsgSignOutMapStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutMapStats.ProtoReflect.Descriptor instead. func (*CMsgSignOutMapStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{113} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{114} } func (x *CMsgSignOutMapStats) GetPlayers() []*CMsgSignOutMapStats_Player { @@ -8663,34 +8788,152 @@ func (x *CMsgSignOutMapStats) GetGlobalStats() *CMsgMapStatsSnapshot { return nil } -type CMsgPoorNetworkConditions_Player struct { +type CMsgServerToGCNewBloomGift struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` - DisconnectReason *ENetworkDisconnectionReason `protobuf:"varint,2,opt,name=disconnect_reason,json=disconnectReason,enum=dota.ENetworkDisconnectionReason" json:"disconnect_reason,omitempty"` - NumBadIntervals *uint32 `protobuf:"varint,3,opt,name=num_bad_intervals,json=numBadIntervals" json:"num_bad_intervals,omitempty"` - PeakLossPct *uint32 `protobuf:"varint,4,opt,name=peak_loss_pct,json=peakLossPct" json:"peak_loss_pct,omitempty"` + Defindex *uint32 `protobuf:"varint,1,opt,name=defindex" json:"defindex,omitempty"` + GifterAccountId *uint32 `protobuf:"varint,2,opt,name=gifter_account_id,json=gifterAccountId" json:"gifter_account_id,omitempty"` + TargetAccountIds []uint32 `protobuf:"varint,3,rep,name=target_account_ids,json=targetAccountIds" json:"target_account_ids,omitempty"` } -func (x *CMsgPoorNetworkConditions_Player) Reset() { - *x = CMsgPoorNetworkConditions_Player{} +func (x *CMsgServerToGCNewBloomGift) Reset() { + *x = CMsgServerToGCNewBloomGift{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[114] + mi := &file_dota_gcmessages_server_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgPoorNetworkConditions_Player) String() string { +func (x *CMsgServerToGCNewBloomGift) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgPoorNetworkConditions_Player) ProtoMessage() {} +func (*CMsgServerToGCNewBloomGift) ProtoMessage() {} -func (x *CMsgPoorNetworkConditions_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[114] +func (x *CMsgServerToGCNewBloomGift) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[115] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgServerToGCNewBloomGift.ProtoReflect.Descriptor instead. +func (*CMsgServerToGCNewBloomGift) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{115} +} + +func (x *CMsgServerToGCNewBloomGift) GetDefindex() uint32 { + if x != nil && x.Defindex != nil { + return *x.Defindex + } + return 0 +} + +func (x *CMsgServerToGCNewBloomGift) GetGifterAccountId() uint32 { + if x != nil && x.GifterAccountId != nil { + return *x.GifterAccountId + } + return 0 +} + +func (x *CMsgServerToGCNewBloomGift) GetTargetAccountIds() []uint32 { + if x != nil { + return x.TargetAccountIds + } + return nil +} + +type CMsgServerToGCNewBloomGiftResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Result *ENewBloomGiftingResponse `protobuf:"varint,1,opt,name=result,enum=dota.ENewBloomGiftingResponse" json:"result,omitempty"` + ReceivedAccountIds []uint32 `protobuf:"varint,2,rep,name=received_account_ids,json=receivedAccountIds" json:"received_account_ids,omitempty"` +} + +func (x *CMsgServerToGCNewBloomGiftResponse) Reset() { + *x = CMsgServerToGCNewBloomGiftResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_server_proto_msgTypes[116] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgServerToGCNewBloomGiftResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgServerToGCNewBloomGiftResponse) ProtoMessage() {} + +func (x *CMsgServerToGCNewBloomGiftResponse) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[116] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgServerToGCNewBloomGiftResponse.ProtoReflect.Descriptor instead. +func (*CMsgServerToGCNewBloomGiftResponse) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{116} +} + +func (x *CMsgServerToGCNewBloomGiftResponse) GetResult() ENewBloomGiftingResponse { + if x != nil && x.Result != nil { + return *x.Result + } + return ENewBloomGiftingResponse_kENewBloomGifting_Success +} + +func (x *CMsgServerToGCNewBloomGiftResponse) GetReceivedAccountIds() []uint32 { + if x != nil { + return x.ReceivedAccountIds + } + return nil +} + +type CMsgPoorNetworkConditions_Player struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + DisconnectReason *ENetworkDisconnectionReason `protobuf:"varint,2,opt,name=disconnect_reason,json=disconnectReason,enum=dota.ENetworkDisconnectionReason" json:"disconnect_reason,omitempty"` + NumBadIntervals *uint32 `protobuf:"varint,3,opt,name=num_bad_intervals,json=numBadIntervals" json:"num_bad_intervals,omitempty"` + PeakLossPct *uint32 `protobuf:"varint,4,opt,name=peak_loss_pct,json=peakLossPct" json:"peak_loss_pct,omitempty"` +} + +func (x *CMsgPoorNetworkConditions_Player) Reset() { + *x = CMsgPoorNetworkConditions_Player{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_server_proto_msgTypes[117] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgPoorNetworkConditions_Player) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgPoorNetworkConditions_Player) ProtoMessage() {} + +func (x *CMsgPoorNetworkConditions_Player) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8748,7 +8991,7 @@ type CMsgConnectedPlayers_Player struct { func (x *CMsgConnectedPlayers_Player) Reset() { *x = CMsgConnectedPlayers_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[115] + mi := &file_dota_gcmessages_server_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8761,7 +9004,7 @@ func (x *CMsgConnectedPlayers_Player) String() string { func (*CMsgConnectedPlayers_Player) ProtoMessage() {} func (x *CMsgConnectedPlayers_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[115] + mi := &file_dota_gcmessages_server_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8818,7 +9061,7 @@ type CMsgConnectedPlayers_PlayerDraft struct { func (x *CMsgConnectedPlayers_PlayerDraft) Reset() { *x = CMsgConnectedPlayers_PlayerDraft{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[116] + mi := &file_dota_gcmessages_server_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8831,7 +9074,7 @@ func (x *CMsgConnectedPlayers_PlayerDraft) String() string { func (*CMsgConnectedPlayers_PlayerDraft) ProtoMessage() {} func (x *CMsgConnectedPlayers_PlayerDraft) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[116] + mi := &file_dota_gcmessages_server_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8882,7 +9125,7 @@ type CMsgSignOutGameplayStats_CPlayer struct { func (x *CMsgSignOutGameplayStats_CPlayer) Reset() { *x = CMsgSignOutGameplayStats_CPlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[117] + mi := &file_dota_gcmessages_server_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8895,7 +9138,7 @@ func (x *CMsgSignOutGameplayStats_CPlayer) String() string { func (*CMsgSignOutGameplayStats_CPlayer) ProtoMessage() {} func (x *CMsgSignOutGameplayStats_CPlayer) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[117] + mi := &file_dota_gcmessages_server_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8953,7 +9196,7 @@ type CMsgSignOutGameplayStats_CTeam struct { func (x *CMsgSignOutGameplayStats_CTeam) Reset() { *x = CMsgSignOutGameplayStats_CTeam{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[118] + mi := &file_dota_gcmessages_server_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8966,7 +9209,7 @@ func (x *CMsgSignOutGameplayStats_CTeam) String() string { func (*CMsgSignOutGameplayStats_CTeam) ProtoMessage() {} func (x *CMsgSignOutGameplayStats_CTeam) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[118] + mi := &file_dota_gcmessages_server_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9015,13 +9258,14 @@ type CMsgGameMatchSignOut_CTeam struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Players []*CMsgGameMatchSignOut_CTeam_CPlayer `protobuf:"bytes,1,rep,name=players" json:"players,omitempty"` + Players []*CMsgGameMatchSignOut_CTeam_CPlayer `protobuf:"bytes,1,rep,name=players" json:"players,omitempty"` + TeamTrackedStats []*CMsgTrackedStat `protobuf:"bytes,2,rep,name=team_tracked_stats,json=teamTrackedStats" json:"team_tracked_stats,omitempty"` } func (x *CMsgGameMatchSignOut_CTeam) Reset() { *x = CMsgGameMatchSignOut_CTeam{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[119] + mi := &file_dota_gcmessages_server_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9034,7 +9278,7 @@ func (x *CMsgGameMatchSignOut_CTeam) String() string { func (*CMsgGameMatchSignOut_CTeam) ProtoMessage() {} func (x *CMsgGameMatchSignOut_CTeam) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[119] + mi := &file_dota_gcmessages_server_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9057,6 +9301,13 @@ func (x *CMsgGameMatchSignOut_CTeam) GetPlayers() []*CMsgGameMatchSignOut_CTeam_ return nil } +func (x *CMsgGameMatchSignOut_CTeam) GetTeamTrackedStats() []*CMsgTrackedStat { + if x != nil { + return x.TeamTrackedStats + } + return nil +} + type CMsgGameMatchSignOut_CAdditionalSignoutMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -9069,7 +9320,7 @@ type CMsgGameMatchSignOut_CAdditionalSignoutMsg struct { func (x *CMsgGameMatchSignOut_CAdditionalSignoutMsg) Reset() { *x = CMsgGameMatchSignOut_CAdditionalSignoutMsg{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[120] + mi := &file_dota_gcmessages_server_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9082,7 +9333,7 @@ func (x *CMsgGameMatchSignOut_CAdditionalSignoutMsg) String() string { func (*CMsgGameMatchSignOut_CAdditionalSignoutMsg) ProtoMessage() {} func (x *CMsgGameMatchSignOut_CAdditionalSignoutMsg) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[120] + mi := &file_dota_gcmessages_server_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9127,7 +9378,7 @@ type CMsgGameMatchSignOut_CSocialFeedMatchEvent struct { func (x *CMsgGameMatchSignOut_CSocialFeedMatchEvent) Reset() { *x = CMsgGameMatchSignOut_CSocialFeedMatchEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[121] + mi := &file_dota_gcmessages_server_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9140,7 +9391,7 @@ func (x *CMsgGameMatchSignOut_CSocialFeedMatchEvent) String() string { func (*CMsgGameMatchSignOut_CSocialFeedMatchEvent) ProtoMessage() {} func (x *CMsgGameMatchSignOut_CSocialFeedMatchEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[121] + mi := &file_dota_gcmessages_server_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9202,7 +9453,7 @@ type CMsgGameMatchSignOut_CCustomGameData struct { func (x *CMsgGameMatchSignOut_CCustomGameData) Reset() { *x = CMsgGameMatchSignOut_CCustomGameData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[122] + mi := &file_dota_gcmessages_server_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9215,7 +9466,7 @@ func (x *CMsgGameMatchSignOut_CCustomGameData) String() string { func (*CMsgGameMatchSignOut_CCustomGameData) ProtoMessage() {} func (x *CMsgGameMatchSignOut_CCustomGameData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[122] + mi := &file_dota_gcmessages_server_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9255,7 +9506,7 @@ type CMsgGameMatchSignOut_EventGameLeaderboardEntry struct { func (x *CMsgGameMatchSignOut_EventGameLeaderboardEntry) Reset() { *x = CMsgGameMatchSignOut_EventGameLeaderboardEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[123] + mi := &file_dota_gcmessages_server_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9268,7 +9519,7 @@ func (x *CMsgGameMatchSignOut_EventGameLeaderboardEntry) String() string { func (*CMsgGameMatchSignOut_EventGameLeaderboardEntry) ProtoMessage() {} func (x *CMsgGameMatchSignOut_EventGameLeaderboardEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[123] + mi := &file_dota_gcmessages_server_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9351,7 +9602,7 @@ type CMsgGameMatchSignOut_WardPlacement struct { func (x *CMsgGameMatchSignOut_WardPlacement) Reset() { *x = CMsgGameMatchSignOut_WardPlacement{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[124] + mi := &file_dota_gcmessages_server_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9364,7 +9615,7 @@ func (x *CMsgGameMatchSignOut_WardPlacement) String() string { func (*CMsgGameMatchSignOut_WardPlacement) ProtoMessage() {} func (x *CMsgGameMatchSignOut_WardPlacement) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[124] + mi := &file_dota_gcmessages_server_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9510,12 +9761,14 @@ type CMsgGameMatchSignOut_CTeam_CPlayer struct { TimePurchasedShard *uint32 `protobuf:"varint,77,opt,name=time_purchased_shard,json=timePurchasedShard" json:"time_purchased_shard,omitempty"` TimePurchasedAghs *uint32 `protobuf:"varint,78,opt,name=time_purchased_aghs,json=timePurchasedAghs" json:"time_purchased_aghs,omitempty"` AbilityDraftAbilities []int32 `protobuf:"varint,79,rep,name=ability_draft_abilities,json=abilityDraftAbilities" json:"ability_draft_abilities,omitempty"` + PlayerTrackedStats []*CMsgTrackedStat `protobuf:"bytes,80,rep,name=player_tracked_stats,json=playerTrackedStats" json:"player_tracked_stats,omitempty"` + PredictedRank *uint32 `protobuf:"varint,81,opt,name=predicted_rank,json=predictedRank" json:"predicted_rank,omitempty"` } func (x *CMsgGameMatchSignOut_CTeam_CPlayer) Reset() { *x = CMsgGameMatchSignOut_CTeam_CPlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[125] + mi := &file_dota_gcmessages_server_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9528,7 +9781,7 @@ func (x *CMsgGameMatchSignOut_CTeam_CPlayer) String() string { func (*CMsgGameMatchSignOut_CTeam_CPlayer) ProtoMessage() {} func (x *CMsgGameMatchSignOut_CTeam_CPlayer) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[125] + mi := &file_dota_gcmessages_server_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10027,6 +10280,20 @@ func (x *CMsgGameMatchSignOut_CTeam_CPlayer) GetAbilityDraftAbilities() []int32 return nil } +func (x *CMsgGameMatchSignOut_CTeam_CPlayer) GetPlayerTrackedStats() []*CMsgTrackedStat { + if x != nil { + return x.PlayerTrackedStats + } + return nil +} + +func (x *CMsgGameMatchSignOut_CTeam_CPlayer) GetPredictedRank() uint32 { + if x != nil && x.PredictedRank != nil { + return *x.PredictedRank + } + return 0 +} + type CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -10039,7 +10306,7 @@ type CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData struct { func (x *CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData) Reset() { *x = CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[126] + mi := &file_dota_gcmessages_server_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10052,7 +10319,7 @@ func (x *CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData) String() string { func (*CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData) ProtoMessage() {} func (x *CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[126] + mi := &file_dota_gcmessages_server_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10095,7 +10362,7 @@ type CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived struct { func (x *CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived) Reset() { *x = CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[127] + mi := &file_dota_gcmessages_server_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10108,7 +10375,7 @@ func (x *CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived) String() string func (*CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived) ProtoMessage() {} func (x *CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[127] + mi := &file_dota_gcmessages_server_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10158,7 +10425,7 @@ type CMsgSignOutTextMuteInfo_TextMuteMessage struct { func (x *CMsgSignOutTextMuteInfo_TextMuteMessage) Reset() { *x = CMsgSignOutTextMuteInfo_TextMuteMessage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[128] + mi := &file_dota_gcmessages_server_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10171,7 +10438,7 @@ func (x *CMsgSignOutTextMuteInfo_TextMuteMessage) String() string { func (*CMsgSignOutTextMuteInfo_TextMuteMessage) ProtoMessage() {} func (x *CMsgSignOutTextMuteInfo_TextMuteMessage) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[128] + mi := &file_dota_gcmessages_server_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10230,12 +10497,13 @@ type CMsgSignOutCommunicationSummary_PlayerCommunication struct { PingDetails []*CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail `protobuf:"bytes,15,rep,name=ping_details,json=pingDetails" json:"ping_details,omitempty"` CommsBlocksSolo *uint32 `protobuf:"varint,16,opt,name=comms_blocks_solo,json=commsBlocksSolo" json:"comms_blocks_solo,omitempty"` CommsBlocksMass *uint32 `protobuf:"varint,17,opt,name=comms_blocks_mass,json=commsBlocksMass" json:"comms_blocks_mass,omitempty"` + ChatLog []string `protobuf:"bytes,18,rep,name=chat_log,json=chatLog" json:"chat_log,omitempty"` } func (x *CMsgSignOutCommunicationSummary_PlayerCommunication) Reset() { *x = CMsgSignOutCommunicationSummary_PlayerCommunication{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[129] + mi := &file_dota_gcmessages_server_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10248,7 +10516,7 @@ func (x *CMsgSignOutCommunicationSummary_PlayerCommunication) String() string { func (*CMsgSignOutCommunicationSummary_PlayerCommunication) ProtoMessage() {} func (x *CMsgSignOutCommunicationSummary_PlayerCommunication) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[129] + mi := &file_dota_gcmessages_server_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10383,6 +10651,13 @@ func (x *CMsgSignOutCommunicationSummary_PlayerCommunication) GetCommsBlocksMass return 0 } +func (x *CMsgSignOutCommunicationSummary_PlayerCommunication) GetChatLog() []string { + if x != nil { + return x.ChatLog + } + return nil +} + type CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -10395,7 +10670,7 @@ type CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail struct { func (x *CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail) Reset() { *x = CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[130] + mi := &file_dota_gcmessages_server_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10408,7 +10683,7 @@ func (x *CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail) String( func (*CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail) ProtoMessage() {} func (x *CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[130] + mi := &file_dota_gcmessages_server_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10461,7 +10736,7 @@ type CMsgGameMatchSignoutResponse_PlayerMetadata struct { func (x *CMsgGameMatchSignoutResponse_PlayerMetadata) Reset() { *x = CMsgGameMatchSignoutResponse_PlayerMetadata{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[131] + mi := &file_dota_gcmessages_server_proto_msgTypes[134] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10474,7 +10749,7 @@ func (x *CMsgGameMatchSignoutResponse_PlayerMetadata) String() string { func (*CMsgGameMatchSignoutResponse_PlayerMetadata) ProtoMessage() {} func (x *CMsgGameMatchSignoutResponse_PlayerMetadata) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[131] + mi := &file_dota_gcmessages_server_proto_msgTypes[134] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10597,7 +10872,7 @@ type CMsgDOTALiveScoreboardUpdate_Team struct { func (x *CMsgDOTALiveScoreboardUpdate_Team) Reset() { *x = CMsgDOTALiveScoreboardUpdate_Team{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[132] + mi := &file_dota_gcmessages_server_proto_msgTypes[135] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10610,7 +10885,7 @@ func (x *CMsgDOTALiveScoreboardUpdate_Team) String() string { func (*CMsgDOTALiveScoreboardUpdate_Team) ProtoMessage() {} func (x *CMsgDOTALiveScoreboardUpdate_Team) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[132] + mi := &file_dota_gcmessages_server_proto_msgTypes[135] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10705,7 +10980,7 @@ type CMsgDOTALiveScoreboardUpdate_Team_Player struct { func (x *CMsgDOTALiveScoreboardUpdate_Team_Player) Reset() { *x = CMsgDOTALiveScoreboardUpdate_Team_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[133] + mi := &file_dota_gcmessages_server_proto_msgTypes[136] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10718,7 +10993,7 @@ func (x *CMsgDOTALiveScoreboardUpdate_Team_Player) String() string { func (*CMsgDOTALiveScoreboardUpdate_Team_Player) ProtoMessage() {} func (x *CMsgDOTALiveScoreboardUpdate_Team_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[133] + mi := &file_dota_gcmessages_server_proto_msgTypes[136] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10935,7 +11210,7 @@ type CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility struct { func (x *CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility) Reset() { *x = CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[134] + mi := &file_dota_gcmessages_server_proto_msgTypes[137] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10948,7 +11223,7 @@ func (x *CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility) String() string { func (*CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility) ProtoMessage() {} func (x *CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[134] + mi := &file_dota_gcmessages_server_proto_msgTypes[137] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10983,20 +11258,23 @@ type CMsgServerToGCRequestBatchPlayerResourcesResponse_Result struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` - PreventTextChat *bool `protobuf:"varint,2,opt,name=prevent_text_chat,json=preventTextChat" json:"prevent_text_chat,omitempty"` - PreventVoiceChat *bool `protobuf:"varint,3,opt,name=prevent_voice_chat,json=preventVoiceChat" json:"prevent_voice_chat,omitempty"` - Rank *uint32 `protobuf:"varint,4,opt,name=rank" json:"rank,omitempty"` - RankCalibrated *bool `protobuf:"varint,5,opt,name=rank_calibrated,json=rankCalibrated" json:"rank_calibrated,omitempty"` - LowPriority *bool `protobuf:"varint,6,opt,name=low_priority,json=lowPriority" json:"low_priority,omitempty"` - IsNewPlayer *bool `protobuf:"varint,7,opt,name=is_new_player,json=isNewPlayer" json:"is_new_player,omitempty"` - IsGuidePlayer *bool `protobuf:"varint,8,opt,name=is_guide_player,json=isGuidePlayer" json:"is_guide_player,omitempty"` + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + Rank *uint32 `protobuf:"varint,4,opt,name=rank" json:"rank,omitempty"` + RankCalibrated *bool `protobuf:"varint,5,opt,name=rank_calibrated,json=rankCalibrated" json:"rank_calibrated,omitempty"` + LowPriority *bool `protobuf:"varint,6,opt,name=low_priority,json=lowPriority" json:"low_priority,omitempty"` + IsNewPlayer *bool `protobuf:"varint,7,opt,name=is_new_player,json=isNewPlayer" json:"is_new_player,omitempty"` + IsGuidePlayer *bool `protobuf:"varint,8,opt,name=is_guide_player,json=isGuidePlayer" json:"is_guide_player,omitempty"` + CommLevel *int32 `protobuf:"varint,9,opt,name=comm_level,json=commLevel" json:"comm_level,omitempty"` + BehaviorLevel *int32 `protobuf:"varint,10,opt,name=behavior_level,json=behaviorLevel" json:"behavior_level,omitempty"` + Wins *int32 `protobuf:"varint,11,opt,name=wins" json:"wins,omitempty"` + Losses *int32 `protobuf:"varint,12,opt,name=losses" json:"losses,omitempty"` + SmurfCategory *int32 `protobuf:"varint,13,opt,name=smurf_category,json=smurfCategory" json:"smurf_category,omitempty"` } func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) Reset() { *x = CMsgServerToGCRequestBatchPlayerResourcesResponse_Result{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[135] + mi := &file_dota_gcmessages_server_proto_msgTypes[138] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11009,7 +11287,7 @@ func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) String() stri func (*CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) ProtoMessage() {} func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[135] + mi := &file_dota_gcmessages_server_proto_msgTypes[138] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11032,20 +11310,6 @@ func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetAccountId( return 0 } -func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetPreventTextChat() bool { - if x != nil && x.PreventTextChat != nil { - return *x.PreventTextChat - } - return false -} - -func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetPreventVoiceChat() bool { - if x != nil && x.PreventVoiceChat != nil { - return *x.PreventVoiceChat - } - return false -} - func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetRank() uint32 { if x != nil && x.Rank != nil { return *x.Rank @@ -11081,6 +11345,41 @@ func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetIsGuidePla return false } +func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetCommLevel() int32 { + if x != nil && x.CommLevel != nil { + return *x.CommLevel + } + return 0 +} + +func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetBehaviorLevel() int32 { + if x != nil && x.BehaviorLevel != nil { + return *x.BehaviorLevel + } + return 0 +} + +func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetWins() int32 { + if x != nil && x.Wins != nil { + return *x.Wins + } + return 0 +} + +func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetLosses() int32 { + if x != nil && x.Losses != nil { + return *x.Losses + } + return 0 +} + +func (x *CMsgServerToGCRequestBatchPlayerResourcesResponse_Result) GetSmurfCategory() int32 { + if x != nil && x.SmurfCategory != nil { + return *x.SmurfCategory + } + return 0 +} + type CMsgDOTAAwardEventPoints_AwardPoints struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -11097,7 +11396,7 @@ type CMsgDOTAAwardEventPoints_AwardPoints struct { func (x *CMsgDOTAAwardEventPoints_AwardPoints) Reset() { *x = CMsgDOTAAwardEventPoints_AwardPoints{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[136] + mi := &file_dota_gcmessages_server_proto_msgTypes[139] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11110,7 +11409,7 @@ func (x *CMsgDOTAAwardEventPoints_AwardPoints) String() string { func (*CMsgDOTAAwardEventPoints_AwardPoints) ProtoMessage() {} func (x *CMsgDOTAAwardEventPoints_AwardPoints) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[136] + mi := &file_dota_gcmessages_server_proto_msgTypes[139] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11184,7 +11483,7 @@ type CMsgServerToGCMatchConnectionStats_Player struct { func (x *CMsgServerToGCMatchConnectionStats_Player) Reset() { *x = CMsgServerToGCMatchConnectionStats_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[137] + mi := &file_dota_gcmessages_server_proto_msgTypes[140] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11197,7 +11496,7 @@ func (x *CMsgServerToGCMatchConnectionStats_Player) String() string { func (*CMsgServerToGCMatchConnectionStats_Player) ProtoMessage() {} func (x *CMsgServerToGCMatchConnectionStats_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[137] + mi := &file_dota_gcmessages_server_proto_msgTypes[140] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11266,7 +11565,7 @@ type CSerializedCombatLog_Dictionary struct { func (x *CSerializedCombatLog_Dictionary) Reset() { *x = CSerializedCombatLog_Dictionary{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[138] + mi := &file_dota_gcmessages_server_proto_msgTypes[141] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11279,7 +11578,7 @@ func (x *CSerializedCombatLog_Dictionary) String() string { func (*CSerializedCombatLog_Dictionary) ProtoMessage() {} func (x *CSerializedCombatLog_Dictionary) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[138] + mi := &file_dota_gcmessages_server_proto_msgTypes[141] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11314,7 +11613,7 @@ type CSerializedCombatLog_Dictionary_DictString struct { func (x *CSerializedCombatLog_Dictionary_DictString) Reset() { *x = CSerializedCombatLog_Dictionary_DictString{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[139] + mi := &file_dota_gcmessages_server_proto_msgTypes[142] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11327,7 +11626,7 @@ func (x *CSerializedCombatLog_Dictionary_DictString) String() string { func (*CSerializedCombatLog_Dictionary_DictString) ProtoMessage() {} func (x *CSerializedCombatLog_Dictionary_DictString) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[139] + mi := &file_dota_gcmessages_server_proto_msgTypes[142] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11370,7 +11669,7 @@ type CMsgServerToGCVictoryPredictions_Record struct { func (x *CMsgServerToGCVictoryPredictions_Record) Reset() { *x = CMsgServerToGCVictoryPredictions_Record{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[140] + mi := &file_dota_gcmessages_server_proto_msgTypes[143] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11383,7 +11682,7 @@ func (x *CMsgServerToGCVictoryPredictions_Record) String() string { func (*CMsgServerToGCVictoryPredictions_Record) ProtoMessage() {} func (x *CMsgServerToGCVictoryPredictions_Record) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[140] + mi := &file_dota_gcmessages_server_proto_msgTypes[143] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11433,7 +11732,7 @@ type CMsgServerToGCKillSummaries_KillSummary struct { func (x *CMsgServerToGCKillSummaries_KillSummary) Reset() { *x = CMsgServerToGCKillSummaries_KillSummary{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[141] + mi := &file_dota_gcmessages_server_proto_msgTypes[144] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11446,7 +11745,7 @@ func (x *CMsgServerToGCKillSummaries_KillSummary) String() string { func (*CMsgServerToGCKillSummaries_KillSummary) ProtoMessage() {} func (x *CMsgServerToGCKillSummaries_KillSummary) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[141] + mi := &file_dota_gcmessages_server_proto_msgTypes[144] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11459,7 +11758,7 @@ func (x *CMsgServerToGCKillSummaries_KillSummary) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgServerToGCKillSummaries_KillSummary.ProtoReflect.Descriptor instead. func (*CMsgServerToGCKillSummaries_KillSummary) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{51, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{54, 0} } func (x *CMsgServerToGCKillSummaries_KillSummary) GetKillerHeroId() uint32 { @@ -11498,7 +11797,7 @@ type CMsgGCToServerPredictionResult_Prediction struct { func (x *CMsgGCToServerPredictionResult_Prediction) Reset() { *x = CMsgGCToServerPredictionResult_Prediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[142] + mi := &file_dota_gcmessages_server_proto_msgTypes[145] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11511,7 +11810,7 @@ func (x *CMsgGCToServerPredictionResult_Prediction) String() string { func (*CMsgGCToServerPredictionResult_Prediction) ProtoMessage() {} func (x *CMsgGCToServerPredictionResult_Prediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[142] + mi := &file_dota_gcmessages_server_proto_msgTypes[145] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11524,7 +11823,7 @@ func (x *CMsgGCToServerPredictionResult_Prediction) ProtoReflect() protoreflect. // Deprecated: Use CMsgGCToServerPredictionResult_Prediction.ProtoReflect.Descriptor instead. func (*CMsgGCToServerPredictionResult_Prediction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{52, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{55, 0} } func (x *CMsgGCToServerPredictionResult_Prediction) GetItemDef() uint32 { @@ -11577,7 +11876,7 @@ type CMsgSignOutUpdatePlayerChallenge_Challenge struct { func (x *CMsgSignOutUpdatePlayerChallenge_Challenge) Reset() { *x = CMsgSignOutUpdatePlayerChallenge_Challenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[143] + mi := &file_dota_gcmessages_server_proto_msgTypes[146] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11590,7 +11889,7 @@ func (x *CMsgSignOutUpdatePlayerChallenge_Challenge) String() string { func (*CMsgSignOutUpdatePlayerChallenge_Challenge) ProtoMessage() {} func (x *CMsgSignOutUpdatePlayerChallenge_Challenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[143] + mi := &file_dota_gcmessages_server_proto_msgTypes[146] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11603,7 +11902,7 @@ func (x *CMsgSignOutUpdatePlayerChallenge_Challenge) ProtoReflect() protoreflect // Deprecated: Use CMsgSignOutUpdatePlayerChallenge_Challenge.ProtoReflect.Descriptor instead. func (*CMsgSignOutUpdatePlayerChallenge_Challenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{54, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{57, 0} } func (x *CMsgSignOutUpdatePlayerChallenge_Challenge) GetEventId() EEvent { @@ -11654,7 +11953,7 @@ type CMsgSpendWager_Player struct { func (x *CMsgSpendWager_Player) Reset() { *x = CMsgSpendWager_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[144] + mi := &file_dota_gcmessages_server_proto_msgTypes[147] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11667,7 +11966,7 @@ func (x *CMsgSpendWager_Player) String() string { func (*CMsgSpendWager_Player) ProtoMessage() {} func (x *CMsgSpendWager_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[144] + mi := &file_dota_gcmessages_server_proto_msgTypes[147] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11680,7 +11979,7 @@ func (x *CMsgSpendWager_Player) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSpendWager_Player.ProtoReflect.Descriptor instead. func (*CMsgSpendWager_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{56, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{59, 0} } func (x *CMsgSpendWager_Player) GetAccountId() uint32 { @@ -11720,7 +12019,7 @@ type CMsgSignOutXPCoins_Player struct { func (x *CMsgSignOutXPCoins_Player) Reset() { *x = CMsgSignOutXPCoins_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[145] + mi := &file_dota_gcmessages_server_proto_msgTypes[148] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11733,7 +12032,7 @@ func (x *CMsgSignOutXPCoins_Player) String() string { func (*CMsgSignOutXPCoins_Player) ProtoMessage() {} func (x *CMsgSignOutXPCoins_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[145] + mi := &file_dota_gcmessages_server_proto_msgTypes[148] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11746,7 +12045,7 @@ func (x *CMsgSignOutXPCoins_Player) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutXPCoins_Player.ProtoReflect.Descriptor instead. func (*CMsgSignOutXPCoins_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{57, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{60, 0} } func (x *CMsgSignOutXPCoins_Player) GetAccountId() uint32 { @@ -11804,7 +12103,7 @@ type CMsgSignOutBounties_Bounty struct { func (x *CMsgSignOutBounties_Bounty) Reset() { *x = CMsgSignOutBounties_Bounty{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[146] + mi := &file_dota_gcmessages_server_proto_msgTypes[149] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11817,7 +12116,7 @@ func (x *CMsgSignOutBounties_Bounty) String() string { func (*CMsgSignOutBounties_Bounty) ProtoMessage() {} func (x *CMsgSignOutBounties_Bounty) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[146] + mi := &file_dota_gcmessages_server_proto_msgTypes[149] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11830,7 +12129,7 @@ func (x *CMsgSignOutBounties_Bounty) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutBounties_Bounty.ProtoReflect.Descriptor instead. func (*CMsgSignOutBounties_Bounty) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{58, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{61, 0} } func (x *CMsgSignOutBounties_Bounty) GetIssuerAccountId() uint32 { @@ -11866,7 +12165,7 @@ type CMsgSignOutCommunityGoalProgress_EventGoalIncrement struct { func (x *CMsgSignOutCommunityGoalProgress_EventGoalIncrement) Reset() { *x = CMsgSignOutCommunityGoalProgress_EventGoalIncrement{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[147] + mi := &file_dota_gcmessages_server_proto_msgTypes[150] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11879,7 +12178,7 @@ func (x *CMsgSignOutCommunityGoalProgress_EventGoalIncrement) String() string { func (*CMsgSignOutCommunityGoalProgress_EventGoalIncrement) ProtoMessage() {} func (x *CMsgSignOutCommunityGoalProgress_EventGoalIncrement) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[147] + mi := &file_dota_gcmessages_server_proto_msgTypes[150] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11892,7 +12191,7 @@ func (x *CMsgSignOutCommunityGoalProgress_EventGoalIncrement) ProtoReflect() pro // Deprecated: Use CMsgSignOutCommunityGoalProgress_EventGoalIncrement.ProtoReflect.Descriptor instead. func (*CMsgSignOutCommunityGoalProgress_EventGoalIncrement) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{59, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{62, 0} } func (x *CMsgSignOutCommunityGoalProgress_EventGoalIncrement) GetEventGoalId() uint32 { @@ -11922,7 +12221,7 @@ type CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult struct { func (x *CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult) Reset() { *x = CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[148] + mi := &file_dota_gcmessages_server_proto_msgTypes[151] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11935,7 +12234,7 @@ func (x *CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult) Strin func (*CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult) ProtoMessage() {} func (x *CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[148] + mi := &file_dota_gcmessages_server_proto_msgTypes[151] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11948,7 +12247,7 @@ func (x *CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult) Proto // Deprecated: Use CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult.ProtoReflect.Descriptor instead. func (*CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{62, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{65, 0} } func (x *CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult) GetPredictionId() uint32 { @@ -11983,7 +12282,7 @@ type CMsgServerToGCCompendiumChosenInGamePredictions_Prediction struct { func (x *CMsgServerToGCCompendiumChosenInGamePredictions_Prediction) Reset() { *x = CMsgServerToGCCompendiumChosenInGamePredictions_Prediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[149] + mi := &file_dota_gcmessages_server_proto_msgTypes[152] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11996,7 +12295,7 @@ func (x *CMsgServerToGCCompendiumChosenInGamePredictions_Prediction) String() st func (*CMsgServerToGCCompendiumChosenInGamePredictions_Prediction) ProtoMessage() {} func (x *CMsgServerToGCCompendiumChosenInGamePredictions_Prediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[149] + mi := &file_dota_gcmessages_server_proto_msgTypes[152] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12009,7 +12308,7 @@ func (x *CMsgServerToGCCompendiumChosenInGamePredictions_Prediction) ProtoReflec // Deprecated: Use CMsgServerToGCCompendiumChosenInGamePredictions_Prediction.ProtoReflect.Descriptor instead. func (*CMsgServerToGCCompendiumChosenInGamePredictions_Prediction) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{63, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{66, 0} } func (x *CMsgServerToGCCompendiumChosenInGamePredictions_Prediction) GetPredictionId() uint32 { @@ -12035,7 +12334,7 @@ type CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase struct { func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase) Reset() { *x = CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[150] + mi := &file_dota_gcmessages_server_proto_msgTypes[153] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12048,7 +12347,7 @@ func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase) String() str func (*CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase) ProtoMessage() {} func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[150] + mi := &file_dota_gcmessages_server_proto_msgTypes[153] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12061,7 +12360,7 @@ func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase) ProtoReflect // Deprecated: Use CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{65, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{68, 0} } func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase) GetItem() int32 { @@ -12124,7 +12423,7 @@ type CMsgServerToGCMatchPlayerItemPurchaseHistory_Player struct { func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_Player) Reset() { *x = CMsgServerToGCMatchPlayerItemPurchaseHistory_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[151] + mi := &file_dota_gcmessages_server_proto_msgTypes[154] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12137,7 +12436,7 @@ func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_Player) String() string { func (*CMsgServerToGCMatchPlayerItemPurchaseHistory_Player) ProtoMessage() {} func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[151] + mi := &file_dota_gcmessages_server_proto_msgTypes[154] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12150,7 +12449,7 @@ func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_Player) ProtoReflect() pro // Deprecated: Use CMsgServerToGCMatchPlayerItemPurchaseHistory_Player.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchPlayerItemPurchaseHistory_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{65, 1} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{68, 1} } func (x *CMsgServerToGCMatchPlayerItemPurchaseHistory_Player) GetPlayerSlot() uint32 { @@ -12224,7 +12523,7 @@ type CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip struct { func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip) Reset() { *x = CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[152] + mi := &file_dota_gcmessages_server_proto_msgTypes[155] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12237,7 +12536,7 @@ func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip) String() st func (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip) ProtoMessage() {} func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[152] + mi := &file_dota_gcmessages_server_proto_msgTypes[155] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12250,7 +12549,7 @@ func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip) ProtoReflec // Deprecated: Use CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{66, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{69, 0} } func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip) GetItem() int32 { @@ -12303,7 +12602,7 @@ type CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player struct { func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player) Reset() { *x = CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[153] + mi := &file_dota_gcmessages_server_proto_msgTypes[156] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12316,7 +12615,7 @@ func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player) String() strin func (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player) ProtoMessage() {} func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[153] + mi := &file_dota_gcmessages_server_proto_msgTypes[156] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12329,7 +12628,7 @@ func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player) ProtoReflect() // Deprecated: Use CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{66, 1} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{69, 1} } func (x *CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player) GetAccountId() uint32 { @@ -12386,7 +12685,7 @@ type CMsgServerToGCMatchStateHistory_PlayerState struct { func (x *CMsgServerToGCMatchStateHistory_PlayerState) Reset() { *x = CMsgServerToGCMatchStateHistory_PlayerState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[154] + mi := &file_dota_gcmessages_server_proto_msgTypes[157] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12399,7 +12698,7 @@ func (x *CMsgServerToGCMatchStateHistory_PlayerState) String() string { func (*CMsgServerToGCMatchStateHistory_PlayerState) ProtoMessage() {} func (x *CMsgServerToGCMatchStateHistory_PlayerState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[154] + mi := &file_dota_gcmessages_server_proto_msgTypes[157] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12412,7 +12711,7 @@ func (x *CMsgServerToGCMatchStateHistory_PlayerState) ProtoReflect() protoreflec // Deprecated: Use CMsgServerToGCMatchStateHistory_PlayerState.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchStateHistory_PlayerState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{67, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{70, 0} } func (x *CMsgServerToGCMatchStateHistory_PlayerState) GetHeroId() uint32 { @@ -12498,7 +12797,7 @@ type CMsgServerToGCMatchStateHistory_TeamState struct { func (x *CMsgServerToGCMatchStateHistory_TeamState) Reset() { *x = CMsgServerToGCMatchStateHistory_TeamState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[155] + mi := &file_dota_gcmessages_server_proto_msgTypes[158] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12511,7 +12810,7 @@ func (x *CMsgServerToGCMatchStateHistory_TeamState) String() string { func (*CMsgServerToGCMatchStateHistory_TeamState) ProtoMessage() {} func (x *CMsgServerToGCMatchStateHistory_TeamState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[155] + mi := &file_dota_gcmessages_server_proto_msgTypes[158] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12524,7 +12823,7 @@ func (x *CMsgServerToGCMatchStateHistory_TeamState) ProtoReflect() protoreflect. // Deprecated: Use CMsgServerToGCMatchStateHistory_TeamState.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchStateHistory_TeamState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{67, 1} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{70, 1} } func (x *CMsgServerToGCMatchStateHistory_TeamState) GetTeam() uint32 { @@ -12610,7 +12909,7 @@ type CMsgServerToGCMatchStateHistory_MatchState struct { func (x *CMsgServerToGCMatchStateHistory_MatchState) Reset() { *x = CMsgServerToGCMatchStateHistory_MatchState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[156] + mi := &file_dota_gcmessages_server_proto_msgTypes[159] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12623,7 +12922,7 @@ func (x *CMsgServerToGCMatchStateHistory_MatchState) String() string { func (*CMsgServerToGCMatchStateHistory_MatchState) ProtoMessage() {} func (x *CMsgServerToGCMatchStateHistory_MatchState) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[156] + mi := &file_dota_gcmessages_server_proto_msgTypes[159] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12636,7 +12935,7 @@ func (x *CMsgServerToGCMatchStateHistory_MatchState) ProtoReflect() protoreflect // Deprecated: Use CMsgServerToGCMatchStateHistory_MatchState.ProtoReflect.Descriptor instead. func (*CMsgServerToGCMatchStateHistory_MatchState) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{67, 2} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{70, 2} } func (x *CMsgServerToGCMatchStateHistory_MatchState) GetGameTime() uint32 { @@ -12680,7 +12979,7 @@ type CMsgServerToGCPlayerChallengeHistory_PlayerChallenge struct { func (x *CMsgServerToGCPlayerChallengeHistory_PlayerChallenge) Reset() { *x = CMsgServerToGCPlayerChallengeHistory_PlayerChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[157] + mi := &file_dota_gcmessages_server_proto_msgTypes[160] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12693,7 +12992,7 @@ func (x *CMsgServerToGCPlayerChallengeHistory_PlayerChallenge) String() string { func (*CMsgServerToGCPlayerChallengeHistory_PlayerChallenge) ProtoMessage() {} func (x *CMsgServerToGCPlayerChallengeHistory_PlayerChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[157] + mi := &file_dota_gcmessages_server_proto_msgTypes[160] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12706,7 +13005,7 @@ func (x *CMsgServerToGCPlayerChallengeHistory_PlayerChallenge) ProtoReflect() pr // Deprecated: Use CMsgServerToGCPlayerChallengeHistory_PlayerChallenge.ProtoReflect.Descriptor instead. func (*CMsgServerToGCPlayerChallengeHistory_PlayerChallenge) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{75, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{78, 0} } func (x *CMsgServerToGCPlayerChallengeHistory_PlayerChallenge) GetAccountId() uint32 { @@ -12791,7 +13090,7 @@ type CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults struct { func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) Reset() { *x = CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[158] + mi := &file_dota_gcmessages_server_proto_msgTypes[161] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12804,411 +13103,6 @@ func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) String() stri func (*CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) ProtoMessage() {} func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[158] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults.ProtoReflect.Descriptor instead. -func (*CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{76, 0} -} - -func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) GetPathIdCompleted() uint32 { - if x != nil && x.PathIdCompleted != nil { - return *x.PathIdCompleted - } - return 0 -} - -func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) GetRoomIdClaimed() uint32 { - if x != nil && x.RoomIdClaimed != nil { - return *x.RoomIdClaimed - } - return 0 -} - -type CMsgDetailedGameStats_PlayerStatEntry struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TotalEarnedGold *uint32 `protobuf:"varint,1,opt,name=total_earned_gold,json=totalEarnedGold" json:"total_earned_gold,omitempty"` - TotalNetworth *uint32 `protobuf:"varint,2,opt,name=total_networth,json=totalNetworth" json:"total_networth,omitempty"` - Level *uint32 `protobuf:"varint,3,opt,name=level" json:"level,omitempty"` - TotalDps *uint32 `protobuf:"varint,4,opt,name=total_dps,json=totalDps" json:"total_dps,omitempty"` - AverageDps *uint32 `protobuf:"varint,5,opt,name=average_dps,json=averageDps" json:"average_dps,omitempty"` - AbilityDamageOutput *uint32 `protobuf:"varint,6,opt,name=ability_damage_output,json=abilityDamageOutput" json:"ability_damage_output,omitempty"` - BaseHealth *uint32 `protobuf:"varint,7,opt,name=base_health,json=baseHealth" json:"base_health,omitempty"` - TotalHealth *uint32 `protobuf:"varint,8,opt,name=total_health,json=totalHealth" json:"total_health,omitempty"` - TotalMana *uint32 `protobuf:"varint,9,opt,name=total_mana,json=totalMana" json:"total_mana,omitempty"` - BasePhysicalDamageReductionPct *float32 `protobuf:"fixed32,10,opt,name=base_physical_damage_reduction_pct,json=basePhysicalDamageReductionPct" json:"base_physical_damage_reduction_pct,omitempty"` - TotalPhysicalDamageReductionPct *float32 `protobuf:"fixed32,11,opt,name=total_physical_damage_reduction_pct,json=totalPhysicalDamageReductionPct" json:"total_physical_damage_reduction_pct,omitempty"` - BaseAbilityDamageReductionPct *float32 `protobuf:"fixed32,12,opt,name=base_ability_damage_reduction_pct,json=baseAbilityDamageReductionPct" json:"base_ability_damage_reduction_pct,omitempty"` - TotalAbilityDamageReductionPct *float32 `protobuf:"fixed32,13,opt,name=total_ability_damage_reduction_pct,json=totalAbilityDamageReductionPct" json:"total_ability_damage_reduction_pct,omitempty"` - AbilityDamageBlock *float32 `protobuf:"fixed32,14,opt,name=ability_damage_block,json=abilityDamageBlock" json:"ability_damage_block,omitempty"` - PhysicalDamageBlock *float32 `protobuf:"fixed32,15,opt,name=physical_damage_block,json=physicalDamageBlock" json:"physical_damage_block,omitempty"` - ManaRegen *uint32 `protobuf:"varint,16,opt,name=mana_regen,json=manaRegen" json:"mana_regen,omitempty"` - HealthRegen *uint32 `protobuf:"varint,17,opt,name=health_regen,json=healthRegen" json:"health_regen,omitempty"` - PhysicalMagicDmgPct *float32 `protobuf:"fixed32,18,opt,name=physical_magic_dmg_pct,json=physicalMagicDmgPct" json:"physical_magic_dmg_pct,omitempty"` - Kills *uint32 `protobuf:"varint,19,opt,name=kills" json:"kills,omitempty"` - Deaths *uint32 `protobuf:"varint,20,opt,name=deaths" json:"deaths,omitempty"` - Assists *uint32 `protobuf:"varint,21,opt,name=assists" json:"assists,omitempty"` - GoldFromKills *uint32 `protobuf:"varint,22,opt,name=gold_from_kills,json=goldFromKills" json:"gold_from_kills,omitempty"` - GoldFromCreeps *uint32 `protobuf:"varint,23,opt,name=gold_from_creeps,json=goldFromCreeps" json:"gold_from_creeps,omitempty"` - GoldShared *uint32 `protobuf:"varint,24,opt,name=gold_shared,json=goldShared" json:"gold_shared,omitempty"` - XpFromKills *uint32 `protobuf:"varint,25,opt,name=xp_from_kills,json=xpFromKills" json:"xp_from_kills,omitempty"` - XpFromCreeps *uint32 `protobuf:"varint,26,opt,name=xp_from_creeps,json=xpFromCreeps" json:"xp_from_creeps,omitempty"` - TotalXp *uint32 `protobuf:"varint,27,opt,name=total_xp,json=totalXp" json:"total_xp,omitempty"` - AbilityCasts *uint32 `protobuf:"varint,28,opt,name=ability_casts,json=abilityCasts" json:"ability_casts,omitempty"` - ItemCasts *uint32 `protobuf:"varint,29,opt,name=item_casts,json=itemCasts" json:"item_casts,omitempty"` - TotalTimeStunned *float32 `protobuf:"fixed32,30,opt,name=total_time_stunned,json=totalTimeStunned" json:"total_time_stunned,omitempty"` - ItemCount *uint32 `protobuf:"varint,31,opt,name=item_count,json=itemCount" json:"item_count,omitempty"` -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) Reset() { - *x = CMsgDetailedGameStats_PlayerStatEntry{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[159] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgDetailedGameStats_PlayerStatEntry) ProtoMessage() {} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[159] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgDetailedGameStats_PlayerStatEntry.ProtoReflect.Descriptor instead. -func (*CMsgDetailedGameStats_PlayerStatEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{78, 0} -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalEarnedGold() uint32 { - if x != nil && x.TotalEarnedGold != nil { - return *x.TotalEarnedGold - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalNetworth() uint32 { - if x != nil && x.TotalNetworth != nil { - return *x.TotalNetworth - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetLevel() uint32 { - if x != nil && x.Level != nil { - return *x.Level - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalDps() uint32 { - if x != nil && x.TotalDps != nil { - return *x.TotalDps - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetAverageDps() uint32 { - if x != nil && x.AverageDps != nil { - return *x.AverageDps - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetAbilityDamageOutput() uint32 { - if x != nil && x.AbilityDamageOutput != nil { - return *x.AbilityDamageOutput - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetBaseHealth() uint32 { - if x != nil && x.BaseHealth != nil { - return *x.BaseHealth - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalHealth() uint32 { - if x != nil && x.TotalHealth != nil { - return *x.TotalHealth - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalMana() uint32 { - if x != nil && x.TotalMana != nil { - return *x.TotalMana - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetBasePhysicalDamageReductionPct() float32 { - if x != nil && x.BasePhysicalDamageReductionPct != nil { - return *x.BasePhysicalDamageReductionPct - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalPhysicalDamageReductionPct() float32 { - if x != nil && x.TotalPhysicalDamageReductionPct != nil { - return *x.TotalPhysicalDamageReductionPct - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetBaseAbilityDamageReductionPct() float32 { - if x != nil && x.BaseAbilityDamageReductionPct != nil { - return *x.BaseAbilityDamageReductionPct - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalAbilityDamageReductionPct() float32 { - if x != nil && x.TotalAbilityDamageReductionPct != nil { - return *x.TotalAbilityDamageReductionPct - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetAbilityDamageBlock() float32 { - if x != nil && x.AbilityDamageBlock != nil { - return *x.AbilityDamageBlock - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetPhysicalDamageBlock() float32 { - if x != nil && x.PhysicalDamageBlock != nil { - return *x.PhysicalDamageBlock - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetManaRegen() uint32 { - if x != nil && x.ManaRegen != nil { - return *x.ManaRegen - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetHealthRegen() uint32 { - if x != nil && x.HealthRegen != nil { - return *x.HealthRegen - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetPhysicalMagicDmgPct() float32 { - if x != nil && x.PhysicalMagicDmgPct != nil { - return *x.PhysicalMagicDmgPct - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetKills() uint32 { - if x != nil && x.Kills != nil { - return *x.Kills - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetDeaths() uint32 { - if x != nil && x.Deaths != nil { - return *x.Deaths - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetAssists() uint32 { - if x != nil && x.Assists != nil { - return *x.Assists - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetGoldFromKills() uint32 { - if x != nil && x.GoldFromKills != nil { - return *x.GoldFromKills - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetGoldFromCreeps() uint32 { - if x != nil && x.GoldFromCreeps != nil { - return *x.GoldFromCreeps - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetGoldShared() uint32 { - if x != nil && x.GoldShared != nil { - return *x.GoldShared - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetXpFromKills() uint32 { - if x != nil && x.XpFromKills != nil { - return *x.XpFromKills - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetXpFromCreeps() uint32 { - if x != nil && x.XpFromCreeps != nil { - return *x.XpFromCreeps - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalXp() uint32 { - if x != nil && x.TotalXp != nil { - return *x.TotalXp - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetAbilityCasts() uint32 { - if x != nil && x.AbilityCasts != nil { - return *x.AbilityCasts - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetItemCasts() uint32 { - if x != nil && x.ItemCasts != nil { - return *x.ItemCasts - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetTotalTimeStunned() float32 { - if x != nil && x.TotalTimeStunned != nil { - return *x.TotalTimeStunned - } - return 0 -} - -func (x *CMsgDetailedGameStats_PlayerStatEntry) GetItemCount() uint32 { - if x != nil && x.ItemCount != nil { - return *x.ItemCount - } - return 0 -} - -type CMsgDetailedGameStats_GameStats struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TowerDeathTimeT1 *uint32 `protobuf:"varint,1,opt,name=tower_death_time_t1,json=towerDeathTimeT1" json:"tower_death_time_t1,omitempty"` - TowerDeathTimeT2 *uint32 `protobuf:"varint,2,opt,name=tower_death_time_t2,json=towerDeathTimeT2" json:"tower_death_time_t2,omitempty"` - TowerDeathTimeT3 *uint32 `protobuf:"varint,3,opt,name=tower_death_time_t3,json=towerDeathTimeT3" json:"tower_death_time_t3,omitempty"` -} - -func (x *CMsgDetailedGameStats_GameStats) Reset() { - *x = CMsgDetailedGameStats_GameStats{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[160] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgDetailedGameStats_GameStats) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgDetailedGameStats_GameStats) ProtoMessage() {} - -func (x *CMsgDetailedGameStats_GameStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[160] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgDetailedGameStats_GameStats.ProtoReflect.Descriptor instead. -func (*CMsgDetailedGameStats_GameStats) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{78, 1} -} - -func (x *CMsgDetailedGameStats_GameStats) GetTowerDeathTimeT1() uint32 { - if x != nil && x.TowerDeathTimeT1 != nil { - return *x.TowerDeathTimeT1 - } - return 0 -} - -func (x *CMsgDetailedGameStats_GameStats) GetTowerDeathTimeT2() uint32 { - if x != nil && x.TowerDeathTimeT2 != nil { - return *x.TowerDeathTimeT2 - } - return 0 -} - -func (x *CMsgDetailedGameStats_GameStats) GetTowerDeathTimeT3() uint32 { - if x != nil && x.TowerDeathTimeT3 != nil { - return *x.TowerDeathTimeT3 - } - return 0 -} - -type CMsgDetailedGameStats_MinuteEntry struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Minute *uint32 `protobuf:"varint,1,opt,name=minute" json:"minute,omitempty"` - Stats []*CMsgDetailedGameStats_PlayerStatEntry `protobuf:"bytes,2,rep,name=stats" json:"stats,omitempty"` -} - -func (x *CMsgDetailedGameStats_MinuteEntry) Reset() { - *x = CMsgDetailedGameStats_MinuteEntry{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[161] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgDetailedGameStats_MinuteEntry) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgDetailedGameStats_MinuteEntry) ProtoMessage() {} - -func (x *CMsgDetailedGameStats_MinuteEntry) ProtoReflect() protoreflect.Message { mi := &file_dota_gcmessages_server_proto_msgTypes[161] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -13220,84 +13114,21 @@ func (x *CMsgDetailedGameStats_MinuteEntry) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use CMsgDetailedGameStats_MinuteEntry.ProtoReflect.Descriptor instead. -func (*CMsgDetailedGameStats_MinuteEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{78, 2} -} - -func (x *CMsgDetailedGameStats_MinuteEntry) GetMinute() uint32 { - if x != nil && x.Minute != nil { - return *x.Minute - } - return 0 -} - -func (x *CMsgDetailedGameStats_MinuteEntry) GetStats() []*CMsgDetailedGameStats_PlayerStatEntry { - if x != nil { - return x.Stats - } - return nil -} - -type CMsgDetailedGameStats_PlayerInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` - HeroId *uint32 `protobuf:"varint,2,opt,name=hero_id,json=heroId" json:"hero_id,omitempty"` - PlayerSlot *uint32 `protobuf:"varint,3,opt,name=player_slot,json=playerSlot" json:"player_slot,omitempty"` -} - -func (x *CMsgDetailedGameStats_PlayerInfo) Reset() { - *x = CMsgDetailedGameStats_PlayerInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[162] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgDetailedGameStats_PlayerInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgDetailedGameStats_PlayerInfo) ProtoMessage() {} - -func (x *CMsgDetailedGameStats_PlayerInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[162] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgDetailedGameStats_PlayerInfo.ProtoReflect.Descriptor instead. -func (*CMsgDetailedGameStats_PlayerInfo) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{78, 3} -} - -func (x *CMsgDetailedGameStats_PlayerInfo) GetAccountId() uint32 { - if x != nil && x.AccountId != nil { - return *x.AccountId - } - return 0 +// Deprecated: Use CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults.ProtoReflect.Descriptor instead. +func (*CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{79, 0} } -func (x *CMsgDetailedGameStats_PlayerInfo) GetHeroId() uint32 { - if x != nil && x.HeroId != nil { - return *x.HeroId +func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) GetPathIdCompleted() uint32 { + if x != nil && x.PathIdCompleted != nil { + return *x.PathIdCompleted } return 0 } -func (x *CMsgDetailedGameStats_PlayerInfo) GetPlayerSlot() uint32 { - if x != nil && x.PlayerSlot != nil { - return *x.PlayerSlot +func (x *CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults) GetRoomIdClaimed() uint32 { + if x != nil && x.RoomIdClaimed != nil { + return *x.RoomIdClaimed } return 0 } @@ -13318,7 +13149,7 @@ type CMsgNeutralItemStats_NeutralItem struct { func (x *CMsgNeutralItemStats_NeutralItem) Reset() { *x = CMsgNeutralItemStats_NeutralItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[163] + mi := &file_dota_gcmessages_server_proto_msgTypes[162] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13331,7 +13162,7 @@ func (x *CMsgNeutralItemStats_NeutralItem) String() string { func (*CMsgNeutralItemStats_NeutralItem) ProtoMessage() {} func (x *CMsgNeutralItemStats_NeutralItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[163] + mi := &file_dota_gcmessages_server_proto_msgTypes[162] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13344,7 +13175,7 @@ func (x *CMsgNeutralItemStats_NeutralItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgNeutralItemStats_NeutralItem.ProtoReflect.Descriptor instead. func (*CMsgNeutralItemStats_NeutralItem) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{79, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{80, 0} } func (x *CMsgNeutralItemStats_NeutralItem) GetItemId() int32 { @@ -13402,7 +13233,7 @@ type CMsgGCToServerLobbyHeroBanRates_HeroBanEntry struct { func (x *CMsgGCToServerLobbyHeroBanRates_HeroBanEntry) Reset() { *x = CMsgGCToServerLobbyHeroBanRates_HeroBanEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[164] + mi := &file_dota_gcmessages_server_proto_msgTypes[163] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13415,7 +13246,7 @@ func (x *CMsgGCToServerLobbyHeroBanRates_HeroBanEntry) String() string { func (*CMsgGCToServerLobbyHeroBanRates_HeroBanEntry) ProtoMessage() {} func (x *CMsgGCToServerLobbyHeroBanRates_HeroBanEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[164] + mi := &file_dota_gcmessages_server_proto_msgTypes[163] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13428,7 +13259,7 @@ func (x *CMsgGCToServerLobbyHeroBanRates_HeroBanEntry) ProtoReflect() protorefle // Deprecated: Use CMsgGCToServerLobbyHeroBanRates_HeroBanEntry.ProtoReflect.Descriptor instead. func (*CMsgGCToServerLobbyHeroBanRates_HeroBanEntry) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{80, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{81, 0} } func (x *CMsgGCToServerLobbyHeroBanRates_HeroBanEntry) GetHeroId() uint32 { @@ -13465,7 +13296,7 @@ type CMsgSignOutGuildContractProgress_CompletedGuildEventContracts struct { func (x *CMsgSignOutGuildContractProgress_CompletedGuildEventContracts) Reset() { *x = CMsgSignOutGuildContractProgress_CompletedGuildEventContracts{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[165] + mi := &file_dota_gcmessages_server_proto_msgTypes[164] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13478,7 +13309,7 @@ func (x *CMsgSignOutGuildContractProgress_CompletedGuildEventContracts) String() func (*CMsgSignOutGuildContractProgress_CompletedGuildEventContracts) ProtoMessage() {} func (x *CMsgSignOutGuildContractProgress_CompletedGuildEventContracts) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[165] + mi := &file_dota_gcmessages_server_proto_msgTypes[164] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13491,7 +13322,7 @@ func (x *CMsgSignOutGuildContractProgress_CompletedGuildEventContracts) ProtoRef // Deprecated: Use CMsgSignOutGuildContractProgress_CompletedGuildEventContracts.ProtoReflect.Descriptor instead. func (*CMsgSignOutGuildContractProgress_CompletedGuildEventContracts) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{81, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{82, 0} } func (x *CMsgSignOutGuildContractProgress_CompletedGuildEventContracts) GetGuildId() uint32 { @@ -13527,7 +13358,7 @@ type CMsgSignOutGuildContractProgress_PlayerContract struct { func (x *CMsgSignOutGuildContractProgress_PlayerContract) Reset() { *x = CMsgSignOutGuildContractProgress_PlayerContract{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[166] + mi := &file_dota_gcmessages_server_proto_msgTypes[165] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13540,7 +13371,7 @@ func (x *CMsgSignOutGuildContractProgress_PlayerContract) String() string { func (*CMsgSignOutGuildContractProgress_PlayerContract) ProtoMessage() {} func (x *CMsgSignOutGuildContractProgress_PlayerContract) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[166] + mi := &file_dota_gcmessages_server_proto_msgTypes[165] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13553,7 +13384,7 @@ func (x *CMsgSignOutGuildContractProgress_PlayerContract) ProtoReflect() protore // Deprecated: Use CMsgSignOutGuildContractProgress_PlayerContract.ProtoReflect.Descriptor instead. func (*CMsgSignOutGuildContractProgress_PlayerContract) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{81, 1} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{82, 1} } func (x *CMsgSignOutGuildContractProgress_PlayerContract) GetAccountId() uint32 { @@ -13587,7 +13418,7 @@ type CMsgSignOutGuildChallengeProgress_ChallengeProgress struct { func (x *CMsgSignOutGuildChallengeProgress_ChallengeProgress) Reset() { *x = CMsgSignOutGuildChallengeProgress_ChallengeProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[167] + mi := &file_dota_gcmessages_server_proto_msgTypes[166] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13600,7 +13431,7 @@ func (x *CMsgSignOutGuildChallengeProgress_ChallengeProgress) String() string { func (*CMsgSignOutGuildChallengeProgress_ChallengeProgress) ProtoMessage() {} func (x *CMsgSignOutGuildChallengeProgress_ChallengeProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[167] + mi := &file_dota_gcmessages_server_proto_msgTypes[166] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13613,7 +13444,7 @@ func (x *CMsgSignOutGuildChallengeProgress_ChallengeProgress) ProtoReflect() pro // Deprecated: Use CMsgSignOutGuildChallengeProgress_ChallengeProgress.ProtoReflect.Descriptor instead. func (*CMsgSignOutGuildChallengeProgress_ChallengeProgress) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{82, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{83, 0} } func (x *CMsgSignOutGuildChallengeProgress_ChallengeProgress) GetGuildId() uint32 { @@ -13700,7 +13531,7 @@ type CMsgSignOutMVPStats_Player struct { func (x *CMsgSignOutMVPStats_Player) Reset() { *x = CMsgSignOutMVPStats_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[168] + mi := &file_dota_gcmessages_server_proto_msgTypes[167] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13713,7 +13544,7 @@ func (x *CMsgSignOutMVPStats_Player) String() string { func (*CMsgSignOutMVPStats_Player) ProtoMessage() {} func (x *CMsgSignOutMVPStats_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[168] + mi := &file_dota_gcmessages_server_proto_msgTypes[167] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13726,7 +13557,7 @@ func (x *CMsgSignOutMVPStats_Player) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutMVPStats_Player.ProtoReflect.Descriptor instead. func (*CMsgSignOutMVPStats_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{83, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{84, 0} } func (x *CMsgSignOutMVPStats_Player) GetTeamId() uint32 { @@ -13916,7 +13747,7 @@ type CMsgSignOutMVPStats_Player_KillEaterEvent struct { func (x *CMsgSignOutMVPStats_Player_KillEaterEvent) Reset() { *x = CMsgSignOutMVPStats_Player_KillEaterEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[169] + mi := &file_dota_gcmessages_server_proto_msgTypes[168] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13929,7 +13760,7 @@ func (x *CMsgSignOutMVPStats_Player_KillEaterEvent) String() string { func (*CMsgSignOutMVPStats_Player_KillEaterEvent) ProtoMessage() {} func (x *CMsgSignOutMVPStats_Player_KillEaterEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[169] + mi := &file_dota_gcmessages_server_proto_msgTypes[168] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13942,7 +13773,7 @@ func (x *CMsgSignOutMVPStats_Player_KillEaterEvent) ProtoReflect() protoreflect. // Deprecated: Use CMsgSignOutMVPStats_Player_KillEaterEvent.ProtoReflect.Descriptor instead. func (*CMsgSignOutMVPStats_Player_KillEaterEvent) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{83, 0, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{84, 0, 0} } func (x *CMsgSignOutMVPStats_Player_KillEaterEvent) GetEventType() uint32 { @@ -13974,7 +13805,7 @@ type CMsgServerToGCGetGuildContractsResponse_ContractDetails struct { func (x *CMsgServerToGCGetGuildContractsResponse_ContractDetails) Reset() { *x = CMsgServerToGCGetGuildContractsResponse_ContractDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[170] + mi := &file_dota_gcmessages_server_proto_msgTypes[169] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13987,7 +13818,7 @@ func (x *CMsgServerToGCGetGuildContractsResponse_ContractDetails) String() strin func (*CMsgServerToGCGetGuildContractsResponse_ContractDetails) ProtoMessage() {} func (x *CMsgServerToGCGetGuildContractsResponse_ContractDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[170] + mi := &file_dota_gcmessages_server_proto_msgTypes[169] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14000,7 +13831,7 @@ func (x *CMsgServerToGCGetGuildContractsResponse_ContractDetails) ProtoReflect() // Deprecated: Use CMsgServerToGCGetGuildContractsResponse_ContractDetails.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetGuildContractsResponse_ContractDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{86, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{87, 0} } func (x *CMsgServerToGCGetGuildContractsResponse_ContractDetails) GetContractId() uint64 { @@ -14052,7 +13883,7 @@ type CMsgServerToGCGetGuildContractsResponse_Player struct { func (x *CMsgServerToGCGetGuildContractsResponse_Player) Reset() { *x = CMsgServerToGCGetGuildContractsResponse_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[171] + mi := &file_dota_gcmessages_server_proto_msgTypes[170] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14065,7 +13896,7 @@ func (x *CMsgServerToGCGetGuildContractsResponse_Player) String() string { func (*CMsgServerToGCGetGuildContractsResponse_Player) ProtoMessage() {} func (x *CMsgServerToGCGetGuildContractsResponse_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[171] + mi := &file_dota_gcmessages_server_proto_msgTypes[170] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14078,7 +13909,7 @@ func (x *CMsgServerToGCGetGuildContractsResponse_Player) ProtoReflect() protoref // Deprecated: Use CMsgServerToGCGetGuildContractsResponse_Player.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetGuildContractsResponse_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{86, 1} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{87, 1} } func (x *CMsgServerToGCGetGuildContractsResponse_Player) GetAccountId() uint32 { @@ -14121,7 +13952,7 @@ type CMsgMatchDiretideCandy_CandyDetails struct { func (x *CMsgMatchDiretideCandy_CandyDetails) Reset() { *x = CMsgMatchDiretideCandy_CandyDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[172] + mi := &file_dota_gcmessages_server_proto_msgTypes[171] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14134,7 +13965,7 @@ func (x *CMsgMatchDiretideCandy_CandyDetails) String() string { func (*CMsgMatchDiretideCandy_CandyDetails) ProtoMessage() {} func (x *CMsgMatchDiretideCandy_CandyDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[172] + mi := &file_dota_gcmessages_server_proto_msgTypes[171] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14147,7 +13978,7 @@ func (x *CMsgMatchDiretideCandy_CandyDetails) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgMatchDiretideCandy_CandyDetails.ProtoReflect.Descriptor instead. func (*CMsgMatchDiretideCandy_CandyDetails) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{87, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{88, 0} } func (x *CMsgMatchDiretideCandy_CandyDetails) GetAmount() uint32 { @@ -14178,7 +14009,7 @@ type CMsgMatchDiretideCandy_PlayerCandy struct { func (x *CMsgMatchDiretideCandy_PlayerCandy) Reset() { *x = CMsgMatchDiretideCandy_PlayerCandy{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[173] + mi := &file_dota_gcmessages_server_proto_msgTypes[172] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14191,7 +14022,7 @@ func (x *CMsgMatchDiretideCandy_PlayerCandy) String() string { func (*CMsgMatchDiretideCandy_PlayerCandy) ProtoMessage() {} func (x *CMsgMatchDiretideCandy_PlayerCandy) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[173] + mi := &file_dota_gcmessages_server_proto_msgTypes[172] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14204,7 +14035,7 @@ func (x *CMsgMatchDiretideCandy_PlayerCandy) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgMatchDiretideCandy_PlayerCandy.ProtoReflect.Descriptor instead. func (*CMsgMatchDiretideCandy_PlayerCandy) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{87, 1} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{88, 1} } func (x *CMsgMatchDiretideCandy_PlayerCandy) GetAccountId() uint32 { @@ -14247,7 +14078,7 @@ type CMsgGCToServerCheerData_CheerTypeCount struct { func (x *CMsgGCToServerCheerData_CheerTypeCount) Reset() { *x = CMsgGCToServerCheerData_CheerTypeCount{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[174] + mi := &file_dota_gcmessages_server_proto_msgTypes[173] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14260,7 +14091,7 @@ func (x *CMsgGCToServerCheerData_CheerTypeCount) String() string { func (*CMsgGCToServerCheerData_CheerTypeCount) ProtoMessage() {} func (x *CMsgGCToServerCheerData_CheerTypeCount) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[174] + mi := &file_dota_gcmessages_server_proto_msgTypes[173] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14273,7 +14104,7 @@ func (x *CMsgGCToServerCheerData_CheerTypeCount) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgGCToServerCheerData_CheerTypeCount.ProtoReflect.Descriptor instead. func (*CMsgGCToServerCheerData_CheerTypeCount) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{88, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{89, 0} } func (x *CMsgGCToServerCheerData_CheerTypeCount) GetCheerType() uint32 { @@ -14302,7 +14133,7 @@ type CMsgServerToGCGetStickerHeroesResponse_Player struct { func (x *CMsgServerToGCGetStickerHeroesResponse_Player) Reset() { *x = CMsgServerToGCGetStickerHeroesResponse_Player{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_server_proto_msgTypes[175] + mi := &file_dota_gcmessages_server_proto_msgTypes[174] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14315,7 +14146,7 @@ func (x *CMsgServerToGCGetStickerHeroesResponse_Player) String() string { func (*CMsgServerToGCGetStickerHeroesResponse_Player) ProtoMessage() {} func (x *CMsgServerToGCGetStickerHeroesResponse_Player) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_server_proto_msgTypes[175] + mi := &file_dota_gcmessages_server_proto_msgTypes[174] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14328,7 +14159,7 @@ func (x *CMsgServerToGCGetStickerHeroesResponse_Player) ProtoReflect() protorefl // Deprecated: Use CMsgServerToGCGetStickerHeroesResponse_Player.ProtoReflect.Descriptor instead. func (*CMsgServerToGCGetStickerHeroesResponse_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{99, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{100, 0} } func (x *CMsgServerToGCGetStickerHeroesResponse_Player) GetAccountId() uint32 { @@ -14345,6 +14176,141 @@ func (x *CMsgServerToGCGetStickerHeroesResponse_Player) GetStickers() *CMsgStick return nil } +type CMsgSteamLearnPlayerTimedStats_StatBucket struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GameTime *float32 `protobuf:"fixed32,1,opt,name=game_time,json=gameTime" json:"game_time,omitempty"` + Kills *uint32 `protobuf:"varint,2,opt,name=kills" json:"kills,omitempty"` + Deaths *uint32 `protobuf:"varint,3,opt,name=deaths" json:"deaths,omitempty"` + Assists *uint32 `protobuf:"varint,4,opt,name=assists" json:"assists,omitempty"` + Experience *uint32 `protobuf:"varint,5,opt,name=experience" json:"experience,omitempty"` + LastHits *uint32 `protobuf:"varint,6,opt,name=last_hits,json=lastHits" json:"last_hits,omitempty"` + Denies *uint32 `protobuf:"varint,7,opt,name=denies" json:"denies,omitempty"` + NetWorth *uint32 `protobuf:"varint,8,opt,name=net_worth,json=netWorth" json:"net_worth,omitempty"` + IdleTime *float32 `protobuf:"fixed32,9,opt,name=idle_time,json=idleTime" json:"idle_time,omitempty"` + CommandsIssued *uint32 `protobuf:"varint,10,opt,name=commands_issued,json=commandsIssued" json:"commands_issued,omitempty"` + SentryWardsPlaced *uint32 `protobuf:"varint,11,opt,name=sentry_wards_placed,json=sentryWardsPlaced" json:"sentry_wards_placed,omitempty"` + ObserverWardsPlaced *uint32 `protobuf:"varint,12,opt,name=observer_wards_placed,json=observerWardsPlaced" json:"observer_wards_placed,omitempty"` +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) Reset() { + *x = CMsgSteamLearnPlayerTimedStats_StatBucket{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_server_proto_msgTypes[175] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearnPlayerTimedStats_StatBucket) ProtoMessage() {} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_server_proto_msgTypes[175] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearnPlayerTimedStats_StatBucket.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnPlayerTimedStats_StatBucket) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{106, 0} +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetGameTime() float32 { + if x != nil && x.GameTime != nil { + return *x.GameTime + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetKills() uint32 { + if x != nil && x.Kills != nil { + return *x.Kills + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetDeaths() uint32 { + if x != nil && x.Deaths != nil { + return *x.Deaths + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetAssists() uint32 { + if x != nil && x.Assists != nil { + return *x.Assists + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetExperience() uint32 { + if x != nil && x.Experience != nil { + return *x.Experience + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetLastHits() uint32 { + if x != nil && x.LastHits != nil { + return *x.LastHits + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetDenies() uint32 { + if x != nil && x.Denies != nil { + return *x.Denies + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetNetWorth() uint32 { + if x != nil && x.NetWorth != nil { + return *x.NetWorth + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetIdleTime() float32 { + if x != nil && x.IdleTime != nil { + return *x.IdleTime + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetCommandsIssued() uint32 { + if x != nil && x.CommandsIssued != nil { + return *x.CommandsIssued + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetSentryWardsPlaced() uint32 { + if x != nil && x.SentryWardsPlaced != nil { + return *x.SentryWardsPlaced + } + return 0 +} + +func (x *CMsgSteamLearnPlayerTimedStats_StatBucket) GetObserverWardsPlaced() uint32 { + if x != nil && x.ObserverWardsPlaced != nil { + return *x.ObserverWardsPlaced + } + return 0 +} + type CMsgSteamLearnMatchState_PlayerState struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -14613,7 +14579,7 @@ func (x *CMsgSteamLearnWardPlacement_Location) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgSteamLearnWardPlacement_Location.ProtoReflect.Descriptor instead. func (*CMsgSteamLearnWardPlacement_Location) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{111, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{112, 0} } func (x *CMsgSteamLearnWardPlacement_Location) GetX() float32 { @@ -14668,7 +14634,7 @@ func (x *CMsgSignOutMapStats_Player) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSignOutMapStats_Player.ProtoReflect.Descriptor instead. func (*CMsgSignOutMapStats_Player) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{113, 0} + return file_dota_gcmessages_server_proto_rawDescGZIP(), []int{114, 0} } func (x *CMsgSignOutMapStats_Player) GetAccountId() uint32 { @@ -14839,7 +14805,7 @@ var file_dota_gcmessages_server_proto_rawDesc = []byte{ 0x0f, 0x4d, 0x41, 0x53, 0x53, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x0b, 0x12, 0x09, 0x0a, 0x05, 0x4b, 0x49, 0x4c, 0x4c, 0x53, 0x10, 0x0d, 0x12, 0x12, 0x0a, 0x0e, 0x42, 0x55, 0x49, 0x4c, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, - 0x0e, 0x22, 0xb8, 0x0c, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, + 0x0e, 0x22, 0x80, 0x0c, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x31, 0x0a, 0x15, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, @@ -14914,2324 +14880,2245 @@ var file_dota_gcmessages_server_proto_rawDesc = []byte{ 0x47, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x62, 0x75, 0x69, 0x6c, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0f, - 0x74, 0x66, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x66, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x72, 0x63, 0x64, 0x73, 0x5f, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x72, - 0x63, 0x64, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x64, - 0x65, 0x76, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, 0x65, 0x76, 0x46, - 0x6f, 0x72, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x46, - 0x0a, 0x20, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1c, 0x69, 0x73, 0x52, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, - 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x22, 0x7c, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, - 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x01, 0x12, - 0x09, 0x0a, 0x05, 0x50, 0x52, 0x4f, 0x58, 0x59, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x45, - 0x4e, 0x53, 0x4f, 0x52, 0x46, 0x4c, 0x4f, 0x57, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x55, 0x53, - 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x05, 0x12, - 0x13, 0x0a, 0x0f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x4f, 0x4e, - 0x4c, 0x59, 0x10, 0x06, 0x22, 0x36, 0x0a, 0x0b, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x4f, 0x54, 0x48, 0x10, 0x00, 0x12, 0x08, 0x0a, - 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4f, 0x4e, 0x4c, 0x59, 0x10, - 0x02, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x03, 0x22, 0xf8, 0x02, 0x0a, - 0x12, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x65, 0x63, - 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x3d, - 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, - 0x41, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x74, 0x52, - 0x0c, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x38, 0x0a, - 0x0c, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, - 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x6c, 0x65, 0x61, 0x76, - 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x4e, - 0x0a, 0x11, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x61, - 0x73, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x10, 0x64, 0x69, - 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x57, - 0x0a, 0x17, 0x70, 0x6f, 0x6f, 0x72, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, - 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6f, 0x6f, 0x72, 0x4e, - 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x15, 0x70, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x34, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x4c, - 0x65, 0x61, 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x59, 0x0a, - 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, - 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x12, 0x36, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, - 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x58, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4c, 0x69, 0x76, 0x65, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x36, 0x0a, 0x05, 0x73, 0x74, - 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, - 0x74, 0x73, 0x22, 0x5d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x12, 0x3e, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, - 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, - 0x64, 0x22, 0x40, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, - 0x61, 0x79, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x61, - 0x79, 0x65, 0x64, 0x22, 0x3f, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, - 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x22, 0xe5, 0x03, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, - 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x12, 0x3a, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x1a, 0xaa, 0x01, - 0x0a, 0x07, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, - 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, - 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x4a, - 0x0a, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, - 0x74, 0x61, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, - 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x10, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, 0xdf, 0x01, 0x0a, 0x05, 0x43, - 0x54, 0x65, 0x61, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x69, - 0x6e, 0x67, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, - 0x73, 0x57, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x26, 0x0a, 0x0f, - 0x69, 0x73, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, - 0x54, 0x65, 0x61, 0x6d, 0x12, 0x44, 0x0a, 0x10, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, - 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, - 0x64, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x40, 0x0a, 0x07, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x61, - 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x43, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0xc5, 0x2f, 0x0a, - 0x14, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, - 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0d, - 0x67, 0x6f, 0x6f, 0x64, 0x5f, 0x67, 0x75, 0x79, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x67, 0x6f, 0x6f, 0x64, 0x47, 0x75, 0x79, 0x73, 0x57, 0x69, 0x6e, - 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, - 0x43, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x21, 0x0a, 0x0c, - 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x03, - 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x27, 0x0a, 0x0f, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, - 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, - 0x64, 0x64, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, - 0x6f, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, - 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, - 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x3a, - 0x0a, 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x5f, 0x62, 0x61, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, - 0x09, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x42, 0x61, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x0d, 0x66, 0x61, - 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, + 0x62, 0x75, 0x69, 0x6c, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, + 0x73, 0x72, 0x63, 0x64, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x1a, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x72, 0x63, 0x64, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x64, 0x65, 0x76, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, + 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1c, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x12, 0x64, 0x65, 0x76, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x46, 0x0a, 0x20, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x72, 0x61, + 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x1c, 0x69, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x22, 0x6c, + 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, + 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, + 0x04, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x52, 0x4f, 0x58, 0x59, + 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, + 0x04, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x56, 0x45, 0x4e, 0x54, + 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x06, 0x22, 0x36, 0x0a, 0x0b, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x42, + 0x4f, 0x54, 0x48, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, + 0x08, 0x0a, 0x04, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x10, 0x03, 0x22, 0xf8, 0x02, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, + 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x73, + 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, + 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x74, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x38, 0x0a, 0x0c, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x5f, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x52, 0x0b, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, + 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x4e, 0x0a, 0x11, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x10, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x57, 0x0a, 0x17, 0x70, 0x6f, 0x6f, 0x72, 0x5f, 0x6e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x15, 0x70, 0x6f, 0x6f, 0x72, 0x4e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, + 0x34, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, + 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x59, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x36, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, + 0x22, 0x58, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, + 0x61, 0x73, 0x79, 0x4c, 0x69, 0x76, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x12, 0x36, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x52, 0x0c, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x12, 0x73, 0x0a, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, - 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, - 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x1d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, - 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, - 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, - 0x74, 0x69, 0x63, 0x5f, 0x73, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x53, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x57, - 0x0a, 0x17, 0x70, 0x6f, 0x6f, 0x72, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, - 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x6f, 0x6f, 0x72, 0x4e, - 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x15, 0x70, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x59, 0x0a, 0x0f, 0x61, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x41, 0x64, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x4d, - 0x73, 0x67, 0x52, 0x0e, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x73, - 0x67, 0x73, 0x12, 0x5e, 0x0a, 0x12, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, - 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x24, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x53, 0x6f, 0x63, 0x69, - 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x52, 0x10, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x16, 0x20, 0x01, - 0x28, 0x11, 0x52, 0x14, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, - 0x72, 0x74, 0x68, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x54, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x25, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, - 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, - 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x26, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x27, - 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, - 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, - 0x47, 0x61, 0x6d, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x79, 0x0a, 0x1e, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6c, 0x65, 0x61, 0x64, 0x65, - 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x2a, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, - 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, - 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x1b, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, - 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x51, 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x64, 0x5f, - 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x57, 0x61, 0x72, - 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x77, 0x61, 0x72, 0x64, - 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x45, 0x0a, 0x0e, 0x67, 0x61, - 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x2c, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x52, 0x0d, 0x67, 0x61, 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x73, 0x18, 0x36, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, - 0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x34, - 0x0a, 0x16, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, - 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x65, 0x64, 0x18, 0x37, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, - 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x0c, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x5f, - 0x74, 0x65, 0x61, 0x6d, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0b, - 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x45, 0x0a, 0x1f, 0x6e, - 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x77, 0x69, 0x6e, 0x5f, 0x70, 0x72, - 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x18, 0x39, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x1c, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, - 0x57, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x69, - 0x66, 0x66, 0x1a, 0x85, 0x1b, 0x0a, 0x05, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x42, 0x0a, 0x07, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x2e, - 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x1a, 0xb7, 0x1a, 0x0a, 0x07, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, - 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, - 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x70, - 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x3f, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x11, 0x69, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, - 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, - 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, - 0x73, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, - 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x76, 0x65, - 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, - 0x68, 0x69, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, - 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0c, - 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x12, 0x22, - 0x0a, 0x0d, 0x78, 0x70, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x78, 0x70, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6e, 0x75, - 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, - 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x63, 0x61, 0x6c, 0x65, - 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x10, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x44, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, - 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x11, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x11, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x44, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, - 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x11, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x48, 0x65, - 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x61, - 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, - 0x69, 0x6d, 0x65, 0x4c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x73, - 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, 0x75, 0x70, 0x70, - 0x6f, 0x72, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6c, - 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, - 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x46, 0x61, - 0x72, 0x6d, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, - 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x75, - 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x61, - 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x73, - 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x6d, 0x69, 0x73, 0x73, - 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, - 0x64, 0x4d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x69, 0x73, 0x73, 0x65, - 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x12, - 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x22, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, - 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x26, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, - 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, - 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x48, 0x65, 0x61, 0x6c, - 0x69, 0x6e, 0x67, 0x12, 0x4b, 0x0a, 0x10, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x75, - 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, - 0x0f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, - 0x12, 0x61, 0x0a, 0x1a, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x75, - 0x6e, 0x69, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x21, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, 0x69, 0x74, - 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x18, 0x61, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x12, 0x48, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, - 0x5f, 0x62, 0x75, 0x66, 0x66, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x50, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, 0x52, 0x0e, 0x70, - 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, 0x73, 0x12, 0x62, 0x0a, - 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x2e, 0x43, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, - 0x61, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, - 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x05, 0x52, 0x10, 0x74, 0x61, 0x6c, - 0x65, 0x6e, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x73, 0x12, 0x26, 0x0a, - 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x50, 0x69, 0x63, 0x6b, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x77, 0x61, - 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x65, 0x64, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x57, 0x61, 0x73, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x65, - 0x64, 0x12, 0x40, 0x0a, 0x1d, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x77, 0x61, 0x73, 0x5f, 0x64, 0x6f, - 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x32, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x68, 0x65, 0x72, 0x6f, 0x57, 0x61, - 0x73, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x2d, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x2d, 0x0a, 0x13, 0x69, 0x73, 0x5f, 0x75, 0x73, - 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x67, 0x75, 0x69, 0x64, 0x65, 0x18, 0x2f, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x75, - 0x73, 0x47, 0x75, 0x69, 0x64, 0x65, 0x12, 0x6d, 0x0a, 0x14, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x30, + 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x5d, 0x0a, 0x1b, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x61, 0x6c, + 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3e, 0x0a, 0x07, 0x64, 0x65, 0x6c, + 0x61, 0x79, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, + 0x6d, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x72, 0x73, 0x65, + 0x52, 0x07, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x22, 0x40, 0x0a, 0x24, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x61, 0x6c, 0x74, + 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x74, 0x6f, + 0x70, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x22, 0x3f, 0x0a, 0x25, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, + 0x74, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x22, 0xe5, 0x03, 0x0a, + 0x18, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x61, 0x6d, 0x65, + 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3a, 0x0a, 0x05, 0x74, 0x65, 0x61, + 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x70, + 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x05, + 0x74, 0x65, 0x61, 0x6d, 0x73, 0x1a, 0xaa, 0x01, 0x0a, 0x07, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, + 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x4a, 0x0a, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x52, 0x10, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x1a, 0xdf, 0x01, 0x0a, 0x05, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x26, 0x0a, 0x0f, + 0x69, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x57, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, + 0x54, 0x65, 0x61, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, + 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, + 0x73, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x44, 0x0a, 0x10, + 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x54, 0x65, 0x61, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x12, 0x40, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x2e, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x73, 0x22, 0xc1, 0x31, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, + 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x12, 0x19, 0x0a, + 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x67, 0x6f, 0x6f, 0x64, 0x5f, 0x67, 0x75, 0x79, + 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x67, 0x6f, 0x6f, + 0x64, 0x47, 0x75, 0x79, 0x73, 0x57, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x05, + 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x05, 0x74, + 0x65, 0x61, 0x6d, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, + 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x61, 0x72, 0x72, 0x61, + 0x63, 0x6b, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x0e, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x66, + 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, + 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x3a, 0x0a, 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x5f, + 0x62, 0x61, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x42, 0x61, + 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x73, 0x74, + 0x61, 0x74, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0c, 0x66, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x73, 0x0a, 0x20, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x11, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x45, + 0x63, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x1d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2f, + 0x0a, 0x13, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x5f, 0x73, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x75, 0x74, + 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x53, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, + 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x57, 0x0a, 0x17, 0x70, 0x6f, 0x6f, 0x72, 0x5f, 0x6e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x15, 0x70, 0x6f, 0x6f, 0x72, 0x4e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x59, 0x0a, 0x0f, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x73, + 0x67, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, + 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x4d, 0x73, 0x67, 0x52, 0x0e, 0x61, 0x64, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x73, 0x67, 0x73, 0x12, 0x5e, 0x0a, 0x12, 0x73, 0x6f, + 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x18, 0x24, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, + 0x75, 0x74, 0x2e, 0x43, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x10, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x6c, + 0x46, 0x65, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x61, 0x76, + 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x5f, 0x64, + 0x65, 0x6c, 0x74, 0x61, 0x18, 0x16, 0x20, 0x01, 0x28, 0x11, 0x52, 0x14, 0x61, 0x76, 0x65, 0x72, + 0x61, 0x67, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x44, 0x65, 0x6c, 0x74, 0x61, + 0x12, 0x54, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, + 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, + 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, + 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x27, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, + 0x61, 0x6d, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x5f, + 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x28, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x79, 0x0a, 0x1e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x65, + 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x2a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, + 0x6d, 0x65, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x1b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x51, 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, + 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x0e, 0x77, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x45, 0x0a, 0x0e, 0x67, 0x61, 0x6d, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, + 0x74, 0x61, 0x74, 0x73, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x61, 0x6d, + 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0d, 0x67, 0x61, 0x6d, 0x65, + 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x65, 0x78, 0x74, + 0x72, 0x61, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x36, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, + 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, + 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x65, 0x64, + 0x18, 0x37, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x0c, + 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x38, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, + 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0b, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, + 0x65, 0x61, 0x6d, 0x12, 0x45, 0x0a, 0x1f, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, + 0x64, 0x5f, 0x77, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x18, 0x39, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1c, 0x6e, 0x6f, + 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x57, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x62, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x69, 0x66, 0x66, 0x12, 0x45, 0x0a, 0x13, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, + 0x73, 0x18, 0x3a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x52, 0x11, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x1a, 0xba, 0x1c, 0x0a, 0x05, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x42, 0x0a, 0x07, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x43, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, + 0x43, 0x0a, 0x12, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, + 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, + 0x61, 0x74, 0x52, 0x10, 0x74, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x1a, 0xa7, 0x1b, 0x0a, 0x07, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x18, 0x3f, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x69, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, + 0x6c, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, + 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, + 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, + 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x72, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, + 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, + 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, + 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, + 0x12, 0x20, 0x0a, 0x0c, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x4d, + 0x69, 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x78, 0x70, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6e, + 0x75, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x78, 0x70, 0x50, 0x65, 0x72, + 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, + 0x70, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x6f, 0x6c, 0x64, + 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x12, 0x73, + 0x63, 0x61, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x48, + 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, + 0x6c, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x54, 0x6f, + 0x77, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, + 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, + 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x64, 0x48, 0x65, + 0x72, 0x6f, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x69, 0x6d, + 0x65, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x4c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x12, + 0x32, 0x0a, 0x15, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, + 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x79, 0x49, 0x64, 0x12, 0x2a, + 0x0a, 0x11, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x67, + 0x6f, 0x6c, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x61, 0x69, 0x6d, + 0x65, 0x64, 0x46, 0x61, 0x72, 0x6d, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, + 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x25, 0x0a, + 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, + 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x44, 0x65, + 0x6e, 0x69, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, + 0x6d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, + 0x61, 0x69, 0x6d, 0x65, 0x64, 0x4d, 0x69, 0x73, 0x73, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, + 0x69, 0x73, 0x73, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x69, 0x73, + 0x73, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, + 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, + 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, + 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x44, 0x61, + 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x68, 0x65, 0x61, + 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, 0x72, 0x6f, + 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x4b, 0x0a, 0x10, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, + 0x61, 0x64, 0x65, 0x52, 0x0f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, + 0x61, 0x64, 0x65, 0x73, 0x12, 0x61, 0x0a, 0x1a, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x55, 0x6e, 0x69, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x18, 0x61, + 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x49, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x48, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x6d, 0x61, + 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x75, 0x66, 0x66, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, + 0x66, 0x52, 0x0e, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x66, 0x66, + 0x73, 0x12, 0x62, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x67, 0x61, 0x6d, 0x65, + 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x43, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, + 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, + 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x6c, + 0x61, 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x29, 0x20, 0x03, 0x28, 0x05, 0x52, + 0x10, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, + 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x5f, 0x6f, + 0x72, 0x64, 0x65, 0x72, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, + 0x50, 0x69, 0x63, 0x6b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x65, 0x64, 0x18, 0x2b, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x57, 0x61, 0x73, 0x52, 0x61, 0x6e, + 0x64, 0x6f, 0x6d, 0x65, 0x64, 0x12, 0x40, 0x0a, 0x1d, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x77, 0x61, + 0x73, 0x5f, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x75, 0x67, 0x67, + 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x32, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x68, 0x65, + 0x72, 0x6f, 0x57, 0x61, 0x73, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x75, 0x67, + 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, + 0x2d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x2d, 0x0a, 0x13, 0x69, + 0x73, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x67, 0x75, 0x69, + 0x64, 0x65, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x55, 0x73, 0x69, 0x6e, + 0x67, 0x50, 0x6c, 0x75, 0x73, 0x47, 0x75, 0x69, 0x64, 0x65, 0x12, 0x6d, 0x0a, 0x14, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, + 0x65, 0x64, 0x18, 0x30, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, + 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x43, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x64, 0x52, 0x12, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x67, 0x0a, 0x11, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x61, 0x6c, 0x74, 0x18, 0x40, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x64, 0x52, 0x12, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x67, 0x0a, 0x11, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, - 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x61, 0x6c, 0x74, 0x18, 0x40, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, - 0x61, 0x6d, 0x2e, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x52, 0x0f, 0x68, - 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x65, 0x61, 0x6c, 0x74, 0x12, 0x21, - 0x0a, 0x0c, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x18, 0x33, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x44, 0x65, 0x61, - 0x64, 0x12, 0x2b, 0x0a, 0x12, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x74, - 0x6f, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, - 0x6f, 0x6c, 0x64, 0x4c, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x61, 0x74, 0x68, 0x12, 0x23, - 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x35, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x1e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x5f, 0x63, 0x6c, 0x69, - 0x63, 0x6b, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x6d, 0x6f, 0x75, - 0x73, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x43, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, - 0x6e, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x65, 0x6c, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x4a, - 0x0a, 0x22, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x70, - 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, - 0x69, 0x61, 0x6e, 0x74, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1e, 0x63, 0x61, 0x76, 0x65, - 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, - 0x4d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, - 0x75, 0x6e, 0x74, 0x79, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x39, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x2b, 0x0a, - 0x11, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x75, 0x72, - 0x65, 0x64, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, - 0x74, 0x73, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x64, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, - 0x61, 0x63, 0x65, 0x64, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, - 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, - 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x3e, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x2d, 0x0a, - 0x12, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x42, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, 0x72, 0x65, 0x64, 0x69, - 0x63, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, - 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x18, 0x43, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x65, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, - 0x73, 0x12, 0x3b, 0x0a, 0x1a, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x5f, 0x74, 0x31, - 0x5f, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x44, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x54, - 0x31, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, - 0x0a, 0x17, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x74, 0x31, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x72, - 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x45, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x14, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x54, 0x31, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, - 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, - 0x79, 0x5f, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x46, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x52, 0x6f, - 0x73, 0x68, 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x6e, 0x65, - 0x6d, 0x79, 0x5f, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, - 0x47, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x52, 0x6f, 0x73, 0x68, - 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6f, 0x77, 0x65, 0x72, - 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6f, - 0x77, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x61, 0x74, 0x65, - 0x72, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x49, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, - 0x61, 0x74, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x75, - 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x0c, 0x73, 0x74, 0x75, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x33, - 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x4b, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, - 0x18, 0x4c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, - 0x12, 0x30, 0x0a, 0x14, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x64, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, - 0x74, 0x69, 0x6d, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x53, 0x68, 0x61, - 0x72, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, - 0x61, 0x73, 0x65, 0x64, 0x5f, 0x61, 0x67, 0x68, 0x73, 0x18, 0x4e, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x11, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x41, 0x67, - 0x68, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x72, - 0x61, 0x66, 0x74, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x4f, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x15, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, - 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x46, 0x0a, 0x0f, 0x43, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, - 0x09, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, - 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x77, 0x69, 0x6e, 0x6e, - 0x65, 0x72, 0x1a, 0xba, 0x01, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, - 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0c, 0x70, 0x72, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, - 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x64, 0x75, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x58, 0x0a, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, - 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x43, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, - 0x59, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x18, 0x0a, 0x14, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, - 0x5f, 0x50, 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x48, - 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x4d, 0x41, 0x47, 0x49, 0x43, - 0x41, 0x4c, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x41, 0x4d, - 0x41, 0x47, 0x45, 0x5f, 0x50, 0x55, 0x52, 0x45, 0x10, 0x02, 0x1a, 0x43, 0x0a, 0x15, 0x43, 0x41, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, - 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x1a, - 0xb1, 0x01, 0x0a, 0x15, 0x43, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x54, - 0x69, 0x6d, 0x65, 0x1a, 0x3e, 0x0a, 0x0f, 0x43, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x1a, 0xfc, 0x01, 0x0a, 0x19, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, - 0x65, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x53, 0x75, 0x66, 0x66, - 0x69, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x72, - 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x31, 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x78, - 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x32, 0x12, 0x20, 0x0a, 0x0c, - 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x33, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x33, 0x12, 0x20, - 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x34, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x34, - 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x35, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, - 0x61, 0x35, 0x1a, 0x8f, 0x02, 0x0a, 0x0d, 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, - 0x61, 0x63, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x62, - 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x74, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x65, 0x70, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x61, 0x6c, - 0x69, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x72, 0x6f, 0x73, 0x68, 0x61, - 0x6e, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x59, 0x22, 0xc6, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, - 0x6e, 0x4f, 0x75, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, - 0x1a, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, - 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x17, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, - 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x17, 0x64, 0x69, - 0x72, 0x65, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x64, 0x69, 0x72, - 0x65, 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x3a, 0x0a, 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x5f, 0x62, 0x61, 0x6e, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x52, 0x09, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x42, 0x61, 0x6e, 0x73, 0x22, 0xf4, 0x01, - 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x6f, 0x74, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x68, - 0x65, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, - 0x77, 0x43, 0x68, 0x65, 0x61, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x16, 0x62, 0x6f, 0x74, 0x5f, 0x64, - 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, - 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, - 0x52, 0x14, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, - 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, 0x47, 0x0a, 0x13, 0x62, - 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x64, 0x69, - 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, - 0x79, 0x52, 0x11, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, - 0x44, 0x69, 0x72, 0x65, 0x22, 0xee, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, - 0x6e, 0x4f, 0x75, 0x74, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x5b, 0x0a, 0x12, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x5f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x54, - 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x54, 0x65, 0x78, 0x74, - 0x4d, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x10, 0x74, 0x65, 0x78, - 0x74, 0x4d, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x76, 0x0a, - 0x0f, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x61, 0x75, 0x73, - 0x65, 0x64, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0e, 0x63, 0x61, 0x75, 0x73, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x75, - 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x74, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xd5, 0x07, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, - 0x6e, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x12, 0x17, - 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, - 0x67, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, - 0x67, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x6b, 0x69, - 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x70, 0x6c, - 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, - 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x43, - 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, - 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x47, 0x69, 0x76, - 0x65, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x73, 0x5f, 0x6b, - 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x75, - 0x72, 0x69, 0x65, 0x72, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x61, - 0x65, 0x67, 0x69, 0x73, 0x65, 0x73, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x61, 0x65, 0x67, 0x69, 0x73, 0x65, 0x73, 0x53, 0x6e, - 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x65, 0x73, 0x65, - 0x73, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, - 0x68, 0x65, 0x65, 0x73, 0x65, 0x73, 0x45, 0x61, 0x74, 0x65, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x63, - 0x72, 0x65, 0x65, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, - 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, - 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x66, 0x69, 0x67, 0x68, 0x74, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x73, 0x63, 0x6f, 0x72, - 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x61, 0x72, 0x6d, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x63, - 0x6f, 0x72, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, - 0x72, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x73, 0x68, 0x5f, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x70, 0x75, 0x73, - 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, - 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, - 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, - 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, - 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1b, - 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, - 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x6e, - 0x69, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x70, 0x6d, 0x18, 0x16, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x03, 0x67, 0x70, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x78, 0x70, 0x70, 0x6d, 0x18, 0x17, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x04, 0x78, 0x70, 0x70, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, - 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x18, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6e, 0x65, - 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, - 0x18, 0x19, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x68, 0x65, 0x61, 0x6c, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x68, - 0x65, 0x61, 0x6c, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x73, 0x5f, - 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x10, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x64, 0x12, 0x32, 0x0a, 0x15, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x77, 0x61, - 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x13, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, - 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x64, - 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, - 0x77, 0x61, 0x72, 0x64, 0x73, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x12, 0x1d, - 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1e, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0xab, 0x07, - 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, - 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, - 0x79, 0x12, 0x53, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0xb2, 0x06, 0x0a, 0x13, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, - 0x05, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x69, - 0x6e, 0x67, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x73, - 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x50, 0x69, 0x6e, 0x67, 0x73, 0x50, 0x65, 0x72, - 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, - 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x50, 0x69, 0x6e, 0x67, 0x73, 0x12, - 0x44, 0x0a, 0x1f, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x5f, - 0x70, 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, - 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x6d, 0x61, 0x78, 0x54, 0x65, 0x61, - 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x50, 0x69, 0x6e, 0x67, 0x73, 0x50, 0x65, 0x72, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, - 0x61, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x68, 0x61, 0x74, 0x5f, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x61, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, - 0x2e, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x5f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x68, - 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x70, 0x61, 0x75, 0x73, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x70, 0x61, 0x75, 0x73, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x6e, 0x70, 0x61, 0x75, - 0x73, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x75, 0x6e, 0x70, 0x61, 0x75, - 0x73, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x64, 0x72, 0x61, - 0x77, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x44, - 0x72, 0x61, 0x77, 0x6e, 0x12, 0x2c, 0x0a, 0x12, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x68, - 0x61, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x10, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x68, 0x61, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x73, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x68, 0x61, 0x74, 0x4d, 0x75, 0x74, 0x65, - 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x73, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4d, 0x75, 0x74, - 0x65, 0x73, 0x12, 0x67, 0x0a, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, - 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x2e, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0b, - 0x70, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x63, - 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x5f, 0x73, 0x6f, 0x6c, 0x6f, - 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x73, 0x53, 0x6f, 0x6c, 0x6f, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x73, - 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x5f, 0x6d, 0x61, 0x73, 0x73, 0x18, 0x11, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x4d, - 0x61, 0x73, 0x73, 0x1a, 0x36, 0x0a, 0x0a, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xc0, 0x08, 0x0a, 0x1c, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, - 0x6e, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, - 0x79, 0x5f, 0x73, 0x61, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x72, 0x65, - 0x70, 0x6c, 0x61, 0x79, 0x53, 0x61, 0x6c, 0x74, 0x12, 0x50, 0x0a, 0x14, 0x74, 0x69, 0x6d, 0x65, - 0x64, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x44, 0x0a, 0x11, 0x78, 0x70, + 0x64, 0x52, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x65, 0x61, + 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x64, 0x65, + 0x61, 0x64, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x73, 0x44, 0x65, 0x61, 0x64, 0x12, 0x2b, 0x0a, 0x12, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, + 0x73, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, 0x34, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x67, 0x6f, 0x6c, 0x64, 0x4c, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x61, + 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, + 0x6e, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x1e, 0x6d, 0x6f, 0x75, 0x73, 0x65, + 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x1a, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x43, 0x61, 0x73, 0x74, 0x43, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, + 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x37, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x55, 0x73, + 0x65, 0x64, 0x12, 0x4a, 0x0a, 0x22, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x72, 0x61, + 0x77, 0x6c, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x70, + 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1e, + 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x50, 0x72, 0x65, 0x66, 0x65, + 0x72, 0x72, 0x65, 0x64, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x21, + 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x39, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x52, 0x75, 0x6e, 0x65, + 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x61, + 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6f, 0x75, + 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x72, 0x64, + 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x3d, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, + 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, + 0x3e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, + 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x42, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, + 0x73, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x65, 0x4f, 0x75, 0x74, + 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x1a, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, + 0x79, 0x5f, 0x74, 0x31, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x44, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x66, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x6c, 0x79, 0x54, 0x31, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x17, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x74, 0x31, 0x5f, 0x64, + 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x45, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x14, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x54, 0x31, 0x44, 0x65, 0x73, 0x74, + 0x72, 0x6f, 0x79, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x66, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x5f, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, 0x6c, + 0x6c, 0x73, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x6c, 0x79, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2c, 0x0a, + 0x12, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, + 0x6c, 0x6c, 0x73, 0x18, 0x47, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x6e, 0x65, 0x6d, 0x79, + 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, + 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x77, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x49, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x77, 0x61, 0x74, 0x65, 0x72, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x23, 0x0a, + 0x0d, 0x73, 0x74, 0x75, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x4a, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x74, 0x75, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0a, 0x74, 0x65, 0x61, + 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x4c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, + 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x70, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x4d, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, + 0x64, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x70, + 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x61, 0x67, 0x68, 0x73, 0x18, 0x4e, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x11, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, + 0x65, 0x64, 0x41, 0x67, 0x68, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x64, 0x72, 0x61, 0x66, 0x74, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x18, 0x4f, 0x20, 0x03, 0x28, 0x05, 0x52, 0x15, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x44, 0x72, 0x61, 0x66, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x47, + 0x0a, 0x14, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x50, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, + 0x74, 0x61, 0x74, 0x52, 0x12, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x72, 0x61, 0x63, 0x6b, + 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x51, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x52, 0x61, 0x6e, 0x6b, 0x1a, 0x46, + 0x0a, 0x0f, 0x43, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x16, + 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, + 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x1a, 0xba, 0x01, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x44, + 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x23, 0x0a, + 0x0d, 0x70, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x74, + 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x58, 0x0a, 0x0b, 0x64, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x2e, 0x43, 0x54, 0x65, 0x61, 0x6d, + 0x2e, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x22, 0x59, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x41, + 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x00, 0x12, + 0x17, 0x0a, 0x13, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x4d, + 0x41, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x48, 0x45, 0x52, 0x4f, + 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x55, 0x52, 0x45, 0x10, 0x02, 0x1a, 0x43, + 0x0a, 0x15, 0x43, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x67, + 0x6e, 0x6f, 0x75, 0x74, 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x1a, 0xb1, 0x01, 0x0a, 0x15, 0x43, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x46, + 0x65, 0x65, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, + 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, + 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x70, + 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x3e, 0x0a, 0x0f, 0x43, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0xfc, 0x01, 0x0a, 0x19, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x47, 0x61, 0x6d, 0x65, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x75, + 0x66, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, + 0x53, 0x75, 0x66, 0x66, 0x69, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x20, 0x0a, 0x0c, + 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x31, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x31, 0x12, 0x20, + 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x32, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x32, + 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x33, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, + 0x61, 0x33, 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x5f, 0x34, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, + 0x61, 0x74, 0x61, 0x34, 0x12, 0x20, 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x61, + 0x74, 0x61, 0x5f, 0x35, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, + 0x61, 0x44, 0x61, 0x74, 0x61, 0x35, 0x1a, 0x8f, 0x02, 0x0a, 0x0d, 0x57, 0x61, 0x72, 0x64, 0x50, + 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x25, 0x0a, 0x0e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x72, 0x65, + 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x6f, 0x73, 0x68, 0x61, + 0x6e, 0x5f, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x72, + 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x22, 0xc6, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x44, 0x72, 0x61, 0x66, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x3b, 0x0a, 0x1a, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x63, 0x61, 0x70, + 0x74, 0x61, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x43, 0x61, + 0x70, 0x74, 0x61, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x35, + 0x0a, 0x17, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x5f, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x14, 0x64, 0x69, 0x72, 0x65, 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x5f, 0x62, + 0x61, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x42, 0x61, 0x6e, + 0x73, 0x22, 0xf4, 0x01, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, + 0x74, 0x42, 0x6f, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x5f, 0x63, 0x68, 0x65, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x68, 0x65, 0x61, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x16, 0x62, + 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, + 0x75, 0x6c, 0x74, 0x79, 0x52, 0x14, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, + 0x6c, 0x74, 0x79, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x12, + 0x47, 0x0a, 0x13, 0x62, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, + 0x79, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, + 0x63, 0x75, 0x6c, 0x74, 0x79, 0x52, 0x11, 0x62, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, + 0x75, 0x6c, 0x74, 0x79, 0x44, 0x69, 0x72, 0x65, 0x22, 0xee, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5b, 0x0a, 0x12, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x75, 0x74, + 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, + 0x4f, 0x75, 0x74, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, + 0x54, 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, + 0x10, 0x74, 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x73, 0x1a, 0x76, 0x0a, 0x0f, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, + 0x63, 0x61, 0x75, 0x73, 0x65, 0x64, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x75, 0x74, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x63, 0x61, 0x75, 0x73, 0x65, 0x64, 0x54, 0x65, + 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, + 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xd5, 0x07, 0x0a, 0x16, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x12, + 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x61, + 0x6e, 0x6b, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, + 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, + 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, + 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, + 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x69, + 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, + 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, + 0x6f, 0x6f, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x69, + 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, + 0x64, 0x47, 0x69, 0x76, 0x65, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, + 0x72, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, + 0x29, 0x0a, 0x10, 0x61, 0x65, 0x67, 0x69, 0x73, 0x65, 0x73, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x63, + 0x68, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x61, 0x65, 0x67, 0x69, 0x73, + 0x65, 0x73, 0x53, 0x6e, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, + 0x65, 0x65, 0x73, 0x65, 0x73, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x65, 0x65, 0x73, 0x65, 0x73, 0x45, 0x61, 0x74, 0x65, 0x6e, 0x12, + 0x25, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, + 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, 0x53, + 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, + 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x66, 0x69, 0x67, + 0x68, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x61, 0x72, 0x6d, 0x5f, + 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x61, 0x72, + 0x6d, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, + 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, + 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, + 0x75, 0x73, 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x09, 0x70, 0x75, 0x73, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, + 0x6c, 0x6c, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, + 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, + 0x73, 0x74, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, + 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, + 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x70, 0x6d, 0x18, 0x16, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x03, 0x67, 0x70, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x78, 0x70, 0x70, + 0x6d, 0x18, 0x17, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x78, 0x70, 0x70, 0x6d, 0x12, 0x1b, 0x0a, + 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x18, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x61, + 0x6d, 0x61, 0x67, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x64, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x68, 0x65, 0x61, 0x6c, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x05, 0x68, 0x65, 0x61, 0x6c, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x61, 0x70, 0x69, + 0x65, 0x72, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x1b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x73, 0x50, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x1c, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x57, 0x61, + 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x61, 0x72, + 0x64, 0x73, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x1d, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0e, 0x77, 0x61, 0x72, 0x64, 0x73, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, + 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, + 0x65, 0x22, 0xc6, 0x07, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, + 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x53, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0xcd, 0x06, 0x0a, 0x13, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x70, + 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, + 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x50, 0x69, 0x6e, 0x67, + 0x73, 0x50, 0x65, 0x72, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x25, 0x0a, 0x0e, + 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x50, 0x69, + 0x6e, 0x67, 0x73, 0x12, 0x44, 0x0a, 0x1f, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x6d, + 0x61, 0x74, 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x69, 0x6e, + 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x6d, 0x61, + 0x78, 0x54, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x50, 0x69, 0x6e, 0x67, 0x73, 0x50, 0x65, + 0x72, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x74, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x6c, 0x6c, 0x5f, 0x63, + 0x68, 0x61, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, + 0x6c, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x11, 0x63, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x75, 0x73, 0x65, 0x73, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x61, 0x75, 0x73, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75, + 0x6e, 0x70, 0x61, 0x75, 0x73, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x75, + 0x6e, 0x70, 0x61, 0x75, 0x73, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x5f, 0x64, 0x72, 0x61, 0x77, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x44, 0x72, 0x61, 0x77, 0x6e, 0x12, 0x2c, 0x0a, 0x12, 0x76, 0x6f, 0x69, 0x63, + 0x65, 0x5f, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x68, 0x61, 0x74, 0x53, + 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x6d, + 0x75, 0x74, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x68, 0x61, 0x74, + 0x4d, 0x75, 0x74, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6d, + 0x75, 0x74, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x6f, 0x69, 0x63, + 0x65, 0x4d, 0x75, 0x74, 0x65, 0x73, 0x12, 0x67, 0x0a, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, + 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, + 0x61, 0x72, 0x79, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x52, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, + 0x2a, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x5f, + 0x73, 0x6f, 0x6c, 0x6f, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, + 0x73, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x53, 0x6f, 0x6c, 0x6f, 0x12, 0x2a, 0x0a, 0x11, 0x63, + 0x6f, 0x6d, 0x6d, 0x73, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x5f, 0x6d, 0x61, 0x73, 0x73, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x73, 0x42, 0x6c, 0x6f, + 0x63, 0x6b, 0x73, 0x4d, 0x61, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x74, 0x5f, + 0x6c, 0x6f, 0x67, 0x18, 0x12, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x74, 0x4c, + 0x6f, 0x67, 0x1a, 0x36, 0x0a, 0x0a, 0x50, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xc0, 0x08, 0x0a, 0x1c, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, + 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, + 0x5f, 0x73, 0x61, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x72, 0x65, 0x70, + 0x6c, 0x61, 0x79, 0x53, 0x61, 0x6c, 0x74, 0x12, 0x50, 0x0a, 0x14, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, - 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x0f, 0x78, 0x70, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x14, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, - 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x38, - 0x0a, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x5c, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, - 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x29, 0x0a, 0x08, 0x6d, 0x76, 0x70, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x76, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x76, 0x70, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x24, 0x0a, 0x0e, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, - 0x6b, 0x65, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, 0x6f, 0x77, 0x50, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x6f, 0x77, 0x5f, 0x73, 0x61, - 0x6c, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x6f, 0x77, 0x53, 0x61, 0x6c, 0x74, - 0x12, 0x20, 0x0a, 0x0c, 0x6f, 0x77, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6f, 0x77, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, - 0x49, 0x64, 0x1a, 0xd9, 0x03, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x22, - 0x0a, 0x0d, 0x61, 0x76, 0x67, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x76, 0x67, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x58, - 0x31, 0x36, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x76, 0x67, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, - 0x5f, 0x78, 0x31, 0x36, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x76, 0x67, 0x44, - 0x65, 0x61, 0x74, 0x68, 0x73, 0x58, 0x31, 0x36, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x76, 0x67, 0x5f, - 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x61, 0x76, 0x67, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x58, 0x31, 0x36, - 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x67, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x67, 0x47, 0x70, 0x6d, 0x58, 0x31, 0x36, - 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x78, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x67, 0x58, 0x70, 0x6d, 0x58, 0x31, 0x36, - 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x78, - 0x31, 0x36, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x4b, 0x69, - 0x6c, 0x6c, 0x73, 0x58, 0x31, 0x36, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x61, - 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x58, 0x31, 0x36, - 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x67, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x47, 0x70, 0x6d, 0x58, - 0x31, 0x36, 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x78, 0x70, 0x6d, 0x5f, 0x78, - 0x31, 0x36, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x58, 0x70, - 0x6d, 0x58, 0x31, 0x36, 0x12, 0x1d, 0x0a, 0x0a, 0x77, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, - 0x61, 0x6b, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6b, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x77, 0x69, 0x6e, 0x5f, - 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x65, - 0x73, 0x74, 0x57, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x67, - 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x22, 0x6c, - 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x14, 0x74, 0x69, - 0x6d, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, - 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xbf, 0x01, 0x0a, - 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, - 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x41, 0x74, 0x74, 0x65, 0x6d, - 0x70, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x74, 0x74, 0x65, - 0x6d, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, - 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x73, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x57, 0x61, 0x69, 0x74, 0x65, 0x64, 0x22, 0xb0, - 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x70, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x62, 0x61, 0x6e, - 0x64, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0e, 0x61, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, - 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, - 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, - 0x72, 0x65, 0x74, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x22, 0xcb, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, - 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, - 0x08, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, - 0xb4, 0x09, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x66, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, - 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x10, 0x61, 0x76, - 0x65, 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, - 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, - 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x31, 0x0a, 0x15, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, - 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, - 0x6d, 0x70, 0x75, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x02, - 0x52, 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6d, 0x70, - 0x75, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0e, - 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, - 0x0a, 0x18, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x03, 0x28, 0x02, - 0x52, 0x15, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x08, 0x20, 0x03, 0x28, 0x02, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x61, 0x76, 0x65, 0x72, - 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x6d, 0x75, 0x6c, - 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x02, 0x52, 0x19, - 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x6d, - 0x75, 0x6c, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x6d, 0x61, 0x78, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x02, 0x52, 0x15, 0x6d, 0x61, 0x78, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x75, - 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x02, 0x52, - 0x11, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0d, 0x6d, 0x61, 0x78, - 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5a, 0x0a, 0x2b, 0x61, 0x76, - 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x72, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x02, 0x52, - 0x25, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x61, 0x69, 0x74, 0x46, 0x6f, 0x72, 0x52, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x27, 0x6d, 0x61, 0x78, 0x5f, 0x77, 0x61, - 0x69, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, - 0x5f, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x02, 0x52, 0x21, 0x6d, 0x61, 0x78, 0x57, 0x61, 0x69, 0x74, - 0x46, 0x6f, 0x72, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x76, - 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x0f, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x77, - 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x77, - 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x6d, - 0x61, 0x78, 0x53, 0x77, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x61, 0x76, - 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x03, 0x28, 0x02, 0x52, 0x16, 0x61, - 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, - 0x6d, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x12, - 0x20, 0x03, 0x28, 0x02, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x76, 0x65, 0x72, - 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x13, 0x20, - 0x03, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x49, 0x64, 0x6c, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x64, 0x6c, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x78, - 0x49, 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x61, 0x76, 0x65, 0x72, - 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, - 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x15, 0x20, 0x03, 0x28, 0x02, 0x52, - 0x1a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x72, 0x6f, - 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x6d, - 0x61, 0x78, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x16, 0x20, 0x03, 0x28, 0x02, 0x52, 0x16, - 0x6d, 0x61, 0x78, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x60, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, - 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x61, - 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, - 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x42, 0x61, - 0x6e, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x6e, 0x5f, 0x76, - 0x6f, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x68, 0x65, 0x72, 0x6f, - 0x42, 0x61, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x22, 0xfb, 0x0d, 0x0a, 0x1c, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, - 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, - 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2c, - 0x0a, 0x12, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x6f, 0x75, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, - 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, - 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x6c, 0x74, 0x76, - 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x68, 0x6c, - 0x74, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x44, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x67, 0x6f, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, - 0x65, 0x61, 0x6d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x47, 0x6f, 0x6f, 0x64, 0x12, 0x42, 0x0a, - 0x08, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x62, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, - 0x69, 0x76, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x61, - 0x64, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x70, - 0x61, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x12, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x54, 0x69, - 0x6d, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, - 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x1a, 0xd8, 0x0a, 0x0a, 0x04, - 0x54, 0x65, 0x61, 0x6d, 0x12, 0x48, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, - 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x14, - 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, - 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, - 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, - 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x50, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, - 0x68, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x73, 0x1a, 0xeb, 0x08, 0x0a, 0x06, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, - 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, - 0x69, 0x73, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, - 0x73, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, - 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x14, 0x0a, 0x05, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, - 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0c, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, - 0x69, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x50, 0x65, - 0x72, 0x4d, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x0a, 0x78, 0x70, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, - 0x69, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x78, 0x70, 0x50, 0x65, 0x72, 0x4d, - 0x69, 0x6e, 0x12, 0x67, 0x0a, 0x0e, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x73, - 0x74, 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, - 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0d, 0x75, 0x6c, - 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x75, - 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, - 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, - 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, - 0x30, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x30, 0x12, 0x14, - 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x31, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x31, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x32, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x32, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, - 0x65, 0x6d, 0x33, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x33, - 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x34, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x05, 0x69, 0x74, 0x65, 0x6d, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x35, 0x18, - 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x35, 0x12, 0x23, 0x0a, 0x0d, - 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x72, 0x18, 0x16, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x18, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, - 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x18, 0x19, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x12, 0x1b, - 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x1a, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x58, 0x0a, 0x09, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x44, 0x0a, 0x11, 0x78, 0x70, 0x5f, + 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x44, + 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x0f, + 0x78, 0x70, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, + 0x1a, 0x0a, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, + 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x38, 0x0a, + 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x5c, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x09, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, + 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x29, 0x0a, 0x08, 0x6d, 0x76, 0x70, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x76, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x76, 0x70, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x24, 0x0a, 0x0e, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, + 0x65, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x6f, 0x77, 0x5f, 0x73, 0x61, 0x6c, + 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x6f, 0x77, 0x53, 0x61, 0x6c, 0x74, 0x12, + 0x20, 0x0a, 0x0c, 0x6f, 0x77, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6f, 0x77, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x49, + 0x64, 0x1a, 0xd9, 0x03, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x22, 0x0a, + 0x0d, 0x61, 0x76, 0x67, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x76, 0x67, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x58, 0x31, + 0x36, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x76, 0x67, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x5f, + 0x78, 0x31, 0x36, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x76, 0x67, 0x44, 0x65, + 0x61, 0x74, 0x68, 0x73, 0x58, 0x31, 0x36, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x76, 0x67, 0x5f, 0x61, + 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x61, 0x76, 0x67, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x58, 0x31, 0x36, 0x12, + 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x67, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x67, 0x47, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, + 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x78, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x67, 0x58, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, + 0x24, 0x0a, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x78, 0x31, + 0x36, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x4b, 0x69, 0x6c, + 0x6c, 0x73, 0x58, 0x31, 0x36, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x73, + 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x62, 0x65, 0x73, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x58, 0x31, 0x36, 0x12, + 0x20, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x67, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x47, 0x70, 0x6d, 0x58, 0x31, + 0x36, 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x78, 0x70, 0x6d, 0x5f, 0x78, 0x31, + 0x36, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x58, 0x70, 0x6d, + 0x58, 0x31, 0x36, 0x12, 0x1d, 0x0a, 0x0a, 0x77, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, + 0x6b, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, + 0x61, 0x6b, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x77, 0x69, 0x6e, 0x5f, 0x73, + 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x65, 0x73, + 0x74, 0x57, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x61, + 0x6d, 0x65, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x22, 0x6c, 0x0a, + 0x18, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, + 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x14, 0x74, 0x69, 0x6d, + 0x65, 0x64, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xbf, 0x01, 0x0a, 0x25, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, + 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, + 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, + 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x6d, + 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x41, + 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x73, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x57, 0x61, 0x69, 0x74, 0x65, 0x64, 0x22, 0xb0, 0x01, + 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, + 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x62, 0x61, 0x6e, 0x64, + 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0e, 0x61, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x75, 0x74, + 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, + 0x65, 0x74, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, + 0x22, 0xcb, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, + 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, + 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xb4, + 0x09, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x50, 0x65, 0x72, 0x66, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x2c, 0x0a, 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x10, 0x61, 0x76, 0x65, + 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, + 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x76, + 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x76, + 0x65, 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x31, + 0x0a, 0x15, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, + 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6d, + 0x70, 0x75, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x02, 0x52, + 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x75, + 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0e, 0x6d, + 0x61, 0x78, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, 0x0a, + 0x18, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, + 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x03, 0x28, 0x02, 0x52, + 0x15, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, + 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, + 0x20, 0x03, 0x28, 0x02, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x61, 0x76, 0x65, 0x72, 0x61, + 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, + 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x02, 0x52, 0x19, 0x61, + 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x6d, 0x75, + 0x6c, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x6d, 0x61, 0x78, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x02, 0x52, 0x15, 0x6d, 0x61, 0x78, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, + 0x70, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x02, 0x52, 0x11, + 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x4f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5a, 0x0a, 0x2b, 0x61, 0x76, 0x65, + 0x72, 0x61, 0x67, 0x65, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x02, 0x52, 0x25, + 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x57, 0x61, 0x69, 0x74, 0x46, 0x6f, 0x72, 0x52, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x27, 0x6d, 0x61, 0x78, 0x5f, 0x77, 0x61, 0x69, + 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x5f, + 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x0e, 0x20, 0x03, 0x28, 0x02, 0x52, 0x21, 0x6d, 0x61, 0x78, 0x57, 0x61, 0x69, 0x74, 0x46, + 0x6f, 0x72, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x43, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x76, 0x65, + 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0f, + 0x20, 0x03, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x77, 0x61, + 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x77, 0x61, + 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, + 0x78, 0x53, 0x77, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x61, 0x76, 0x65, + 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x03, 0x28, 0x02, 0x52, 0x16, 0x61, 0x76, + 0x65, 0x72, 0x61, 0x67, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, + 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x12, 0x20, + 0x03, 0x28, 0x02, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x76, 0x65, 0x72, 0x61, + 0x67, 0x65, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x13, 0x20, 0x03, + 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x49, + 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x61, 0x76, 0x65, 0x72, 0x61, + 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x15, 0x20, 0x03, 0x28, 0x02, 0x52, 0x1a, + 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x6d, 0x61, + 0x78, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x16, 0x20, 0x03, 0x28, 0x02, 0x52, 0x16, 0x6d, + 0x61, 0x78, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x60, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, + 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x61, 0x6e, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x6e, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, + 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x6e, 0x5f, 0x76, 0x6f, + 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x42, + 0x61, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x73, 0x22, 0xfb, 0x0d, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, + 0x12, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x6f, 0x75, 0x72, 0x6e, + 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x6c, 0x74, 0x76, 0x5f, + 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x68, 0x6c, 0x74, + 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x44, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x67, + 0x6f, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x65, + 0x61, 0x6d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x47, 0x6f, 0x6f, 0x64, 0x12, 0x42, 0x0a, 0x08, + 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x62, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, - 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x51, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6c, - 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, - 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, - 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, - 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6c, 0x74, - 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, - 0x77, 0x6e, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x65, 0x64, - 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x44, 0x4f, - 0x54, 0x41, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x61, 0x64, 0x79, 0x10, 0x03, 0x22, 0x6b, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, + 0x74, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x61, 0x64, + 0x12, 0x30, 0x0a, 0x14, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x61, + 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x54, 0x69, 0x6d, + 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, + 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x1a, 0xd8, 0x0a, 0x0a, 0x04, 0x54, + 0x65, 0x61, 0x6d, 0x12, 0x48, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x14, 0x0a, + 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x61, + 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, + 0x09, 0x68, 0x65, 0x72, 0x6f, 0x50, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x62, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x68, + 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x73, 0x1a, 0xeb, 0x08, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, + 0x6c, 0x6f, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, + 0x6c, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, + 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, + 0x73, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, + 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x12, 0x20, 0x0a, 0x0c, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, + 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x50, 0x65, 0x72, + 0x4d, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x0a, 0x78, 0x70, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d, 0x69, + 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x78, 0x70, 0x50, 0x65, 0x72, 0x4d, 0x69, + 0x6e, 0x12, 0x67, 0x0a, 0x0e, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, 0x65, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x65, + 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6c, + 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0d, 0x75, 0x6c, 0x74, + 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x6c, + 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x43, + 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x30, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x30, 0x12, 0x14, 0x0a, + 0x05, 0x69, 0x74, 0x65, 0x6d, 0x31, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, + 0x65, 0x6d, 0x31, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x32, 0x18, 0x12, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x32, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, + 0x6d, 0x33, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x33, 0x12, + 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x34, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x69, 0x74, 0x65, 0x6d, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x35, 0x18, 0x15, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x35, 0x12, 0x23, 0x0a, 0x0d, 0x72, + 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x72, 0x18, 0x16, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x72, + 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x17, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x18, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, 0x1d, + 0x0a, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x18, 0x19, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x12, 0x1b, 0x0a, + 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x58, 0x0a, 0x09, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x69, 0x76, + 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x48, 0x65, + 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x1a, 0x51, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, + 0x1e, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x10, + 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6c, 0x74, 0x69, + 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, + 0x6e, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x6c, + 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x65, 0x64, 0x73, + 0x4d, 0x61, 0x6e, 0x61, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x61, 0x64, 0x79, 0x10, 0x03, 0x22, 0x8a, 0x01, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x54, 0x79, - 0x70, 0x65, 0x73, 0x22, 0xbd, 0x03, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x07, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x73, 0x1a, 0xad, 0x02, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, - 0x11, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x68, - 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x54, 0x65, 0x78, 0x74, 0x43, 0x68, 0x61, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x72, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x56, 0x6f, - 0x69, 0x63, 0x65, 0x43, 0x68, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x12, 0x27, 0x0a, 0x0f, 0x72, - 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x61, 0x6c, 0x69, 0x62, 0x72, - 0x61, 0x74, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, 0x6f, 0x77, 0x50, - 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x6e, 0x65, - 0x77, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, - 0x69, 0x73, 0x4e, 0x65, 0x77, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x69, - 0x73, 0x5f, 0x67, 0x75, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x47, 0x75, 0x69, 0x64, 0x65, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x22, 0x73, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x6c, - 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0d, 0x66, 0x61, - 0x69, 0x6c, 0x65, 0x64, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, - 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x06, 0x52, 0x10, 0x61, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x65, - 0x64, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x22, 0xd7, 0x02, 0x0a, 0x14, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x12, 0x31, 0x0a, 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x76, 0x5f, 0x70, - 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x12, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x41, 0x64, 0x64, 0x72, 0x12, 0x33, 0x0a, 0x16, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, - 0x76, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x5f, 0x74, 0x76, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x12, - 0x2f, 0x0a, 0x14, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x67, - 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, - 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x74, 0x76, 0x5f, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, - 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x06, 0x52, 0x12, 0x74, 0x76, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x53, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x74, 0x76, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x69, 0x64, 0x22, 0x46, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x43, 0x54, 0x6f, - 0x4c, 0x41, 0x4e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, 0x72, 0x65, - 0x6c, 0x61, 0x79, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x22, 0x37, 0x0a, 0x16, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x22, 0xaa, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, - 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, - 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, - 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x65, - 0x78, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x74, 0x65, 0x78, 0x74, 0x43, 0x68, 0x61, 0x74, 0x42, 0x61, - 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x68, - 0x61, 0x74, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0f, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x68, 0x61, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, - 0x22, 0xef, 0x03, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, - 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, - 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x69, 0x63, 0x74, - 0x69, 0x6d, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x07, 0x52, 0x0f, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x70, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, + 0x70, 0x65, 0x22, 0xfc, 0x03, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x73, 0x1a, 0xec, 0x02, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, + 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, + 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x72, 0x61, 0x6e, 0x6b, 0x43, + 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, + 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0b, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0d, + 0x69, 0x73, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x4e, 0x65, 0x77, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x67, 0x75, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x47, 0x75, 0x69, + 0x64, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, + 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x6f, + 0x6d, 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x65, 0x68, 0x61, 0x76, + 0x69, 0x6f, 0x72, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0d, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x12, + 0x0a, 0x04, 0x77, 0x69, 0x6e, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x77, 0x69, + 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x6d, + 0x75, 0x72, 0x66, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0d, 0x73, 0x6d, 0x75, 0x72, 0x66, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x22, 0x73, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x54, 0x6f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x61, + 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0d, 0x66, 0x61, 0x69, 0x6c, + 0x65, 0x64, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x62, 0x61, + 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x06, 0x52, 0x10, 0x61, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x64, 0x4c, + 0x6f, 0x61, 0x64, 0x65, 0x72, 0x73, 0x22, 0xd7, 0x02, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, + 0x31, 0x0a, 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x76, 0x5f, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x41, 0x64, + 0x64, 0x72, 0x12, 0x33, 0x0a, 0x16, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x76, 0x5f, + 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x13, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x5f, 0x74, 0x76, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2f, 0x0a, + 0x14, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x67, 0x61, 0x6d, + 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x21, + 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x31, 0x0a, 0x15, 0x74, 0x76, 0x5f, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x73, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x12, 0x74, 0x76, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, + 0x76, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x06, 0x52, + 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x76, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, + 0x22, 0x46, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x4c, 0x41, + 0x4e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x61, + 0x79, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x22, 0x37, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x22, 0xaa, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, 0x6e, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, + 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, 0x6f, 0x77, + 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x65, 0x78, 0x74, + 0x5f, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0e, 0x74, 0x65, 0x78, 0x74, 0x43, 0x68, 0x61, 0x74, 0x42, 0x61, 0x6e, 0x6e, + 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x74, + 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x76, + 0x6f, 0x69, 0x63, 0x65, 0x43, 0x68, 0x61, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x22, 0xef, + 0x03, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x6b, 0x69, + 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, + 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x07, 0x52, 0x0f, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, + 0x0a, 0x08, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x74, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6f, 0x74, + 0x61, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x6f, + 0x74, 0x61, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x72, 0x65, 0x70, + 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x6f, 0x74, 0x5f, + 0x6c, 0x69, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x6f, 0x74, + 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x65, + 0x61, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, + 0x65, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x6b, 0x69, 0x6c, + 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, + 0x75, 0x6c, 0x74, 0x69, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, + 0x0c, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x12, 0x3d, 0x0a, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x65, + 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x65, 0x52, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x73, + 0x22, 0x86, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x74, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x64, - 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x64, 0x6f, 0x74, 0x61, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, - 0x61, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x72, - 0x65, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x6f, - 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, - 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x74, 0x65, 0x61, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x6b, - 0x69, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0e, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, - 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x12, 0x3d, 0x0a, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x65, 0x52, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x65, 0x73, 0x22, 0x86, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x6f, 0x75, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, - 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x5f, 0x67, 0x72, - 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x76, 0x69, 0x65, - 0x77, 0x65, 0x72, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x22, 0x2c, 0x0a, 0x0f, 0x43, - 0x4d, 0x73, 0x67, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, 0x6d, 0x0a, 0x17, 0x43, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, - 0x66, 0x61, 0x72, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x5f, - 0x67, 0x6f, 0x6f, 0x64, 0x67, 0x75, 0x79, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x66, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x47, 0x6f, 0x6f, 0x64, 0x67, 0x75, 0x79, 0x73, 0x12, - 0x27, 0x0a, 0x0f, 0x66, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x5f, 0x62, 0x61, 0x64, 0x67, 0x75, - 0x79, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x61, 0x6e, 0x66, 0x61, 0x72, - 0x65, 0x42, 0x61, 0x64, 0x67, 0x75, 0x79, 0x73, 0x22, 0xa6, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x6c, 0x6f, 0x61, - 0x64, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, - 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, - 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, - 0x73, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, - 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, - 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x04, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, - 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, - 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x50, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x12, 0x0a, 0x0e, 0x53, 0x61, 0x76, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, - 0x6c, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, - 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x54, - 0x6f, 0x6f, 0x42, 0x69, 0x67, 0x10, 0x03, 0x22, 0x34, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x61, 0x64, - 0x47, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x61, 0x76, 0x65, 0x49, 0x64, 0x22, 0x47, 0x0a, - 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, - 0x65, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x61, 0x76, 0x65, 0x47, 0x61, - 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0x8f, 0x04, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x0c, 0x61, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x61, 0x77, 0x61, 0x72, 0x64, 0x50, 0x6f, 0x69, 0x6e, - 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x27, 0x0a, - 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x9e, 0x02, 0x0a, 0x0b, 0x41, 0x77, 0x61, 0x72, - 0x64, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x25, - 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x62, - 0x61, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, - 0x72, 0x61, 0x64, 0x65, 0x42, 0x61, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x20, 0x65, - 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x70, 0x65, 0x72, 0x69, - 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1d, 0x65, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, - 0x6f, 0x72, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, - 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x1e, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x63, 0x61, - 0x70, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x43, 0x61, 0x70, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x22, 0x5d, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x78, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x22, 0xa8, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x49, 0x0a, - 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, + 0x12, 0x27, 0x0a, 0x0f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, + 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x76, 0x69, 0x65, 0x77, 0x65, + 0x72, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x22, 0x2c, 0x0a, 0x0f, 0x43, 0x4d, 0x73, + 0x67, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x12, 0x19, 0x0a, 0x08, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x22, 0x6d, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x66, 0x61, + 0x72, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x5f, 0x67, 0x6f, + 0x6f, 0x64, 0x67, 0x75, 0x79, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x61, + 0x6e, 0x66, 0x61, 0x72, 0x65, 0x47, 0x6f, 0x6f, 0x64, 0x67, 0x75, 0x79, 0x73, 0x12, 0x27, 0x0a, + 0x0f, 0x66, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x5f, 0x62, 0x61, 0x64, 0x67, 0x75, 0x79, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x61, 0x6e, 0x66, 0x61, 0x72, 0x65, 0x42, + 0x61, 0x64, 0x67, 0x75, 0x79, 0x73, 0x22, 0xa6, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x53, + 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x6d, + 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x61, + 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, + 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, + 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x04, 0x52, + 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x73, 0x22, + 0xb3, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x41, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x22, 0x50, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x12, 0x0a, + 0x0e, 0x53, 0x61, 0x76, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x10, + 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x46, + 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x6f, 0x6f, + 0x42, 0x69, 0x67, 0x10, 0x03, 0x22, 0x34, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, + 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x47, 0x61, + 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x61, 0x76, 0x65, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x1f, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, + 0x4c, 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x24, + 0x0a, 0x0e, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x22, 0x8f, 0x04, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, + 0x41, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x12, 0x4d, 0x0a, 0x0c, 0x61, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x61, 0x77, 0x61, 0x72, 0x64, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, + 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x08, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x9e, 0x02, 0x0a, 0x0b, 0x41, 0x77, 0x61, 0x72, 0x64, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, + 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x62, 0x61, 0x6e, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x72, 0x61, + 0x64, 0x65, 0x42, 0x61, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x20, 0x65, 0x6c, 0x69, + 0x67, 0x69, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x69, 0x63, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x1d, 0x65, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, + 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x1e, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x63, 0x61, 0x70, 0x5f, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x43, 0x61, 0x70, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x22, 0x5d, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x78, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, + 0xa8, 0x03, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, + 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x07, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x49, 0x64, 0x1a, 0xc2, 0x01, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x02, 0x69, 0x70, 0x12, + 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x67, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, + 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4c, 0x6f, 0x73, 0x73, + 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x70, 0x69, 0x6e, 0x67, 0x44, 0x65, + 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x6c, 0x6c, 0x5f, + 0x72, 0x65, 0x73, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, + 0x75, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x65, 0x6e, 0x64, 0x73, 0x22, 0x4b, 0x0a, 0x20, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, + 0x0a, 0x0f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, + 0x6f, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xbe, 0x02, 0x0a, 0x14, 0x43, 0x53, 0x65, 0x72, + 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, + 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x0a, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, + 0x64, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x2e, 0x44, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x52, 0x0a, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, + 0x79, 0x12, 0x36, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x1a, 0x8c, 0x01, 0x0a, 0x0a, 0x44, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x4a, 0x0a, 0x07, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x62, + 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x2e, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, + 0x2e, 0x44, 0x69, 0x63, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x32, 0x0a, 0x0a, 0x44, 0x69, 0x63, 0x74, 0x53, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x02, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc8, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x69, 0x63, 0x74, 0x6f, + 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x47, 0x0a, + 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, - 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x1a, 0xc2, 0x01, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x02, 0x69, - 0x70, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x67, 0x50, 0x69, 0x6e, 0x67, 0x4d, - 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x73, 0x73, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4c, 0x6f, - 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x70, 0x69, 0x6e, 0x67, - 0x44, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x6c, - 0x6c, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x66, 0x75, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x65, 0x6e, 0x64, 0x73, 0x22, 0x4b, 0x0a, 0x20, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x70, 0x65, 0x63, 0x74, - 0x61, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xbe, 0x02, 0x0a, 0x14, 0x43, 0x53, - 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, - 0x6f, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x0a, - 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, - 0x7a, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x2e, 0x44, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x52, 0x0a, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x72, 0x79, 0x12, 0x36, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x1a, 0x8c, 0x01, 0x0a, 0x0a, - 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x4a, 0x0a, 0x07, 0x73, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6f, - 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x2e, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x72, 0x79, 0x2e, 0x44, 0x69, 0x63, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x73, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x32, 0x0a, 0x0a, 0x44, 0x69, 0x63, 0x74, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0d, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x02, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc8, 0x01, 0x0a, 0x20, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x69, 0x63, - 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x47, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, - 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x1a, 0x5b, 0x0a, 0x06, 0x52, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, - 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x1d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x22, 0x42, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe8, 0x02, 0x0a, 0x1f, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x41, 0x73, 0x73, 0x61, 0x73, 0x73, 0x69, 0x6e, - 0x4d, 0x69, 0x6e, 0x69, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x27, 0x0a, 0x0f, - 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0e, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0d, 0x6c, - 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, - 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x06, 0x52, 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x4f, 0x77, 0x6e, 0x65, 0x72, - 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x73, 0x73, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x5f, 0x77, 0x6f, - 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x73, 0x73, 0x61, 0x73, 0x73, 0x69, - 0x6e, 0x57, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x22, 0x0a, 0x0d, 0x70, 0x61, 0x5f, 0x69, 0x73, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x61, 0x49, 0x73, 0x52, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x22, 0x8b, 0x02, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, - 0x69, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x6e, 0x67, 0x61, 0x6d, 0x65, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x6e, 0x67, - 0x61, 0x6d, 0x65, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4b, 0x0a, 0x09, 0x73, 0x75, - 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, - 0x6f, 0x47, 0x43, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, 0x73, - 0x2e, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x09, 0x73, 0x75, - 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, 0x73, 0x1a, 0x78, 0x0a, 0x0b, 0x4b, 0x69, 0x6c, 0x6c, 0x53, - 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, - 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, - 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x48, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x22, 0xeb, 0x03, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, + 0x54, 0x6f, 0x47, 0x43, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x72, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x1a, 0x5b, 0x0a, 0x06, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, + 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, + 0x49, 0x64, 0x73, 0x22, 0x1d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x22, 0x42, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7d, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, + 0x54, 0x6f, 0x78, 0x69, 0x63, 0x43, 0x68, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xca, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, + 0x54, 0x6f, 0x78, 0x69, 0x63, 0x43, 0x68, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, + 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, + 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x69, + 0x6e, 0x65, 0x22, 0xee, 0x01, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x78, + 0x69, 0x63, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, + 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, + 0x6e, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x62, 0x61, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x61, 0x6e, + 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x62, 0x61, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, + 0x74, 0x6f, 0x78, 0x69, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x74, 0x6f, 0x78, 0x69, 0x63, 0x69, 0x74, 0x79, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x22, 0xe8, 0x02, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, + 0x4f, 0x75, 0x74, 0x41, 0x73, 0x73, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x47, + 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x69, 0x6e, 0x6e, 0x69, + 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x06, + 0x52, 0x0e, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, + 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0d, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x72, 0x63, 0x61, 0x6e, + 0x61, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0c, + 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x61, 0x73, 0x73, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0b, 0x61, 0x73, 0x73, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x57, 0x6f, 0x6e, 0x12, + 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x43, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x70, 0x61, + 0x5f, 0x69, 0x73, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0b, 0x70, 0x61, 0x49, 0x73, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x22, 0x8b, + 0x02, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, + 0x43, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, 0x73, 0x12, 0x25, + 0x0a, 0x0e, 0x69, 0x6e, 0x67, 0x61, 0x6d, 0x65, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x6e, 0x67, 0x61, 0x6d, 0x65, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4b, 0x0a, 0x09, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4b, 0x69, + 0x6c, 0x6c, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, 0x73, 0x2e, 0x4b, 0x69, 0x6c, 0x6c, + 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x09, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, + 0x65, 0x73, 0x1a, 0x78, 0x0a, 0x0b, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, + 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6b, 0x69, 0x6c, 0x6c, 0x65, + 0x72, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x76, 0x69, 0x63, 0x74, 0x69, + 0x6d, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, + 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xeb, 0x03, 0x0a, + 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, + 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, + 0x72, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, + 0x65, 0x63, 0x74, 0x12, 0x51, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x72, + 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x50, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xa1, 0x02, 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, + 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, + 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, + 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x4f, + 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x51, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, - 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xa1, 0x02, 0x0a, 0x0a, - 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, - 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x72, - 0x72, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x43, - 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x66, 0x61, - 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x46, 0x61, - 0x69, 0x6c, 0x73, 0x12, 0x4f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, - 0x0f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, - 0x22, 0x3d, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x15, 0x6b, - 0x5f, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x72, 0x61, - 0x6e, 0x74, 0x65, 0x64, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x10, 0x02, 0x22, - 0x58, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, - 0x43, 0x4c, 0x6f, 0x63, 0x6b, 0x43, 0x68, 0x61, 0x72, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xc7, 0x03, 0x0a, 0x20, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4e, 0x0a, - 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x4c, 0x0a, - 0x08, 0x72, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, - 0x75, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x52, 0x08, 0x72, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, - 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x1a, - 0xb1, 0x01, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x27, 0x0a, - 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, - 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, - 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, - 0x61, 0x6e, 0x6b, 0x22, 0x8e, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x0a, 0x72, 0x65, - 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x09, 0x72, 0x65, 0x72, 0x6f, 0x6c, - 0x6c, 0x4d, 0x73, 0x67, 0x22, 0xbf, 0x02, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, - 0x6e, 0x64, 0x57, 0x61, 0x67, 0x65, 0x72, 0x12, 0x35, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x57, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x27, - 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, - 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x1a, 0x6c, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x61, 0x67, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x77, 0x61, 0x67, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x13, 0x77, 0x61, 0x67, 0x65, 0x72, - 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x77, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x8a, 0x03, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x58, 0x50, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x12, 0x39, 0x0a, - 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, - 0x74, 0x58, 0x50, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, - 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, + 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, + 0x2a, 0x0a, 0x11, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x64, 0x65, 0x66, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x72, 0x61, 0x6e, + 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, 0x22, 0x3d, 0x0a, 0x07, 0x45, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x10, + 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x44, + 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x10, 0x02, 0x22, 0x58, 0x0a, 0x1e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x63, 0x6b, + 0x43, 0x68, 0x61, 0x72, 0x6d, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, + 0x65, 0x6d, 0x49, 0x64, 0x22, 0xc7, 0x03, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, + 0x6e, 0x4f, 0x75, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4e, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x09, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x4c, 0x0a, 0x08, 0x72, 0x65, 0x72, 0x6f, + 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x2e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x72, 0x65, + 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, + 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x1a, 0xb1, 0x01, 0x0a, 0x09, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0xd6, 0x01, 0x0a, 0x06, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x78, 0x70, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x65, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x78, 0x70, 0x47, 0x61, 0x69, 0x6e, 0x65, - 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x53, 0x70, 0x65, - 0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x13, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x10, 0x77, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x49, - 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x57, 0x61, 0x67, 0x65, 0x72, - 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x67, 0x65, 0x72, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6b, 0x22, 0xca, 0x02, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x08, 0x62, - 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, - 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x52, - 0x08, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, + 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x22, 0x8e, + 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, + 0x43, 0x52, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x0a, 0x72, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, + 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, + 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x52, 0x09, 0x72, 0x65, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x22, + 0xbf, 0x02, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x57, 0x61, 0x67, + 0x65, 0x72, 0x12, 0x35, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x70, 0x65, 0x6e, 0x64, 0x57, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0x92, 0x01, 0x0a, 0x06, - 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, - 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x72, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x22, 0x96, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, - 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x47, 0x6f, 0x61, 0x6c, 0x50, 0x72, 0x6f, - 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x64, - 0x0a, 0x10, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x1a, 0x6c, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, + 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x77, 0x61, 0x67, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x77, 0x61, 0x67, + 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x13, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x10, 0x77, 0x61, 0x67, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x49, + 0x64, 0x22, 0x8a, 0x03, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, + 0x74, 0x58, 0x50, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x12, 0x39, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x58, 0x50, 0x43, 0x6f, + 0x69, 0x6e, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0xd6, 0x01, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x78, 0x70, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x78, 0x70, 0x47, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, + 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x69, 0x6e, 0x73, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x2d, 0x0a, + 0x13, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x77, 0x61, 0x67, 0x65, + 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x72, 0x61, 0x6e, 0x6b, 0x57, 0x61, 0x67, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x77, + 0x61, 0x67, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x67, 0x65, 0x72, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x22, 0xca, + 0x02, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x6f, + 0x75, 0x6e, 0x74, 0x69, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x08, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x69, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x42, 0x6f, 0x75, 0x6e, 0x74, + 0x69, 0x65, 0x73, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x52, 0x08, 0x62, 0x6f, 0x75, 0x6e, + 0x74, 0x69, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, + 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0x92, 0x01, 0x0a, 0x06, 0x42, 0x6f, 0x75, 0x6e, 0x74, + 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x69, 0x73, + 0x73, 0x75, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, + 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x96, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x47, 0x6f, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x0f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x63, 0x0a, 0x12, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, - 0x6c, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x29, - 0x0a, 0x10, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x8c, 0x01, 0x0a, 0x33, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x6f, 0x73, - 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, - 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, 0x69, 0x6e, - 0x67, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, - 0x68, 0x6c, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x68, 0x6c, 0x74, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6c, + 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x64, 0x0a, 0x10, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x47, + 0x6f, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0f, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, + 0x63, 0x0a, 0x12, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x49, 0x6e, 0x63, 0x72, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, + 0x6f, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x47, 0x6f, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x63, + 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x8c, 0x01, 0x0a, 0x33, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x70, + 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x19, 0x0a, 0x08, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x6c, 0x74, 0x76, 0x5f, + 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x68, 0x6c, 0x74, + 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x3b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, + 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x8f, 0x03, 0x0a, 0x2f, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, + 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, + 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x19, + 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x60, 0x0a, 0x07, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, + 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, + 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x3b, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, - 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0x8f, 0x03, 0x0a, 0x2f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x1a, 0x9b, + 0x01, 0x0a, 0x10, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x73, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x73, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x8d, 0x02, 0x0a, + 0x2f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, + 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x43, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x49, + 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x6f, 0x0a, 0x12, 0x70, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x63, 0x68, 0x6f, 0x73, 0x65, + 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, + 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x43, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x49, 0x6e, 0x47, + 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x50, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x70, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x09, + 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x1a, 0x31, 0x0a, 0x0a, 0x50, 0x72, 0x65, + 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x7e, 0x0a, 0x2b, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, + 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x4f, 0x0a, 0x07, 0x72, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x60, - 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x46, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, - 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, - 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x24, 0x0a, - 0x0e, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x4e, 0x6f, 0x64, - 0x65, 0x49, 0x64, 0x1a, 0x9b, 0x01, 0x0a, 0x10, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0c, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x29, 0x0a, - 0x10, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x70, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x73, 0x5f, - 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x70, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x73, 0x4d, 0x61, 0x73, - 0x6b, 0x22, 0x8d, 0x02, 0x0a, 0x2f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x43, 0x68, - 0x6f, 0x73, 0x65, 0x6e, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, - 0x12, 0x6f, 0x0a, 0x12, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, - 0x63, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, - 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x43, 0x68, 0x6f, 0x73, - 0x65, 0x6e, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, - 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x68, 0x6f, 0x73, 0x65, - 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x1a, 0x31, - 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, - 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x22, 0x7e, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, - 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, - 0x12, 0x4f, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, - 0x6d, 0x49, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x73, 0x22, 0xc0, 0x05, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x6c, 0x74, 0x73, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0xc0, 0x05, 0x0a, + 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, + 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x12, 0x53, 0x0a, 0x07, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, + 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, + 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, + 0xc2, 0x01, 0x0a, 0x0c, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x69, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, + 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, + 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, + 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, + 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x08, 0x52, 0x0e, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x6b, 0x69, + 0x6c, 0x6c, 0x65, 0x64, 0x1a, 0xc8, 0x02, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, + 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, + 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x69, + 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, + 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, + 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x48, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x66, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x70, + 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x10, 0x0a, - 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x12, - 0x53, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, + 0x72, 0x79, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, + 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x73, 0x12, 0x12, + 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, + 0x6e, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x22, + 0xe7, 0x04, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x65, 0x75, + 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, + 0x57, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x69, 0x73, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x73, 0x1a, 0xc2, 0x01, 0x0a, 0x0c, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, - 0x63, 0x68, 0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, - 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, + 0x72, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, + 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, + 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0xc6, 0x01, 0x0a, 0x09, 0x49, 0x74, 0x65, + 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, + 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x6c, - 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x08, 0x52, 0x0e, 0x74, 0x61, 0x6c, 0x65, 0x6e, - 0x74, 0x73, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x1a, 0xc8, 0x02, 0x0a, 0x06, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, - 0x6c, 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, - 0x0f, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, 0x65, - 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, - 0x6e, 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x66, 0x0a, 0x0e, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, - 0x68, 0x61, 0x73, 0x65, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, - 0x73, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x77, 0x69, - 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x57, 0x69, - 0x6e, 0x6e, 0x65, 0x72, 0x22, 0xe7, 0x04, 0x0a, 0x30, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, - 0x69, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x49, 0x64, 0x12, 0x57, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, - 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0xc6, 0x01, - 0x0a, 0x09, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x69, - 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, - 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x73, - 0x5f, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x08, 0x52, 0x0e, - 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x36, - 0x0a, 0x17, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x65, 0x75, 0x74, - 0x72, 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x15, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, - 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0xf5, 0x01, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, - 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, - 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, - 0x52, 0x0c, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x61, - 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x65, 0x71, 0x75, 0x69, 0x70, 0x73, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x45, - 0x71, 0x75, 0x69, 0x70, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x49, 0x74, 0x65, 0x6d, - 0x45, 0x71, 0x75, 0x69, 0x70, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, - 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x22, 0xf1, - 0x08, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, - 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1f, 0x0a, - 0x0b, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0a, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x57, 0x6f, 0x6e, 0x12, 0x10, - 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, - 0x12, 0x53, 0x0a, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x6c, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x08, 0x52, 0x0e, 0x74, 0x61, 0x6c, 0x65, 0x6e, + 0x74, 0x73, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x76, 0x61, + 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x69, + 0x74, 0x65, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x15, 0x61, 0x76, 0x61, 0x69, + 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, + 0x73, 0x1a, 0xf5, 0x01, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x61, + 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, + 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x65, + 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x61, 0x0a, 0x0b, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x65, 0x71, 0x75, 0x69, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, + 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, + 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x73, 0x12, 0x1b, 0x0a, 0x09, + 0x69, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x69, 0x73, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x22, 0xf1, 0x08, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x73, 0x1a, 0x8d, 0x02, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, - 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6c, - 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, - 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x68, 0x61, 0x73, 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x1b, 0x0a, - 0x09, 0x68, 0x61, 0x73, 0x5f, 0x61, 0x65, 0x67, 0x69, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x08, 0x68, 0x61, 0x73, 0x41, 0x65, 0x67, 0x69, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x61, - 0x73, 0x5f, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, - 0x68, 0x61, 0x73, 0x52, 0x61, 0x70, 0x69, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x69, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x1a, 0xc8, 0x03, 0x0a, 0x09, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x56, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, + 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x64, 0x69, + 0x61, 0x6e, 0x74, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, + 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x57, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x12, 0x53, 0x0a, 0x0c, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, + 0x1a, 0x8d, 0x02, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, + 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, + 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, + 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, + 0x61, 0x74, 0x68, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x70, + 0x61, 0x77, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x62, + 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, + 0x73, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x5f, + 0x61, 0x65, 0x67, 0x69, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, + 0x41, 0x65, 0x67, 0x69, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x5f, 0x72, 0x61, 0x70, + 0x69, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x68, 0x61, 0x73, 0x52, 0x61, + 0x70, 0x69, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x1a, 0xc8, 0x03, 0x0a, 0x09, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, + 0x61, 0x6d, 0x12, 0x56, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, + 0x77, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x48, 0x65, 0x61, 0x6c, 0x74, + 0x68, 0x50, 0x63, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, + 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x11, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, + 0x68, 0x50, 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x5f, + 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x10, 0x61, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, + 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, + 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x6c, 0x79, 0x70, + 0x68, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, + 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, + 0x2e, 0x0a, 0x13, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x5f, 0x73, 0x61, 0x66, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x72, + 0x65, 0x65, 0x70, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x61, 0x66, 0x65, 0x12, + 0x2c, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x5f, 0x6d, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, + 0x65, 0x70, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x69, 0x64, 0x12, 0x2c, 0x0a, + 0x12, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, + 0x6f, 0x66, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, 0x65, 0x70, + 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4f, 0x66, 0x66, 0x1a, 0xcf, 0x01, 0x0a, 0x0a, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, + 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x54, 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, + 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, - 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, - 0x70, 0x63, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x6f, 0x77, 0x65, 0x72, - 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x61, 0x72, - 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, 0x74, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, - 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6e, 0x63, - 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x61, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, - 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x6c, 0x79, 0x70, 0x68, - 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x14, - 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x61, 0x66, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x11, 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x53, 0x61, 0x66, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x10, 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, - 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, - 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4f, 0x66, 0x66, - 0x1a, 0xcf, 0x01, 0x0a, 0x0a, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, - 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x54, 0x0a, 0x0d, - 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x12, 0x4e, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x54, 0x65, - 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x22, 0xa2, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x51, 0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x61, 0x64, - 0x69, 0x61, 0x6e, 0x74, 0x57, 0x6f, 0x6e, 0x22, 0x50, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x4c, - 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x22, 0xd0, 0x01, 0x0a, 0x20, 0x43, 0x4d, - 0x73, 0x67, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, - 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, - 0x6d, 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, - 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, - 0x61, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x22, 0xe2, 0x01, 0x0a, - 0x23, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x50, 0x72, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x62, 0x61, 0x6c, - 0x61, 0x6e, 0x63, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, - 0x0f, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, - 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, 0x65, - 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, - 0x6e, 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, - 0x73, 0x22, 0xf4, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, - 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x03, 0x6d, 0x6d, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, - 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, - 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, - 0x6d, 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, - 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x74, - 0x6f, 0x5f, 0x62, 0x65, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x07, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x12, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x54, 0x6f, 0x42, 0x65, 0x50, - 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x22, 0xfa, 0x01, 0x0a, 0x24, 0x43, 0x4d, 0x73, - 0x67, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x53, 0x65, 0x71, - 0x75, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, - 0x6d, 0x6d, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, - 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, - 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, - 0x52, 0x0c, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x14, - 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x6f, 0x5f, - 0x62, 0x65, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x11, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x42, 0x65, 0x50, 0x75, 0x72, 0x63, - 0x68, 0x61, 0x73, 0x65, 0x64, 0x22, 0xcd, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, - 0x61, 0x77, 0x6c, 0x49, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x72, 0x65, - 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, - 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, - 0x72, 0x65, 0x64, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x17, 0x0a, - 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x75, 0x72, 0x62, 0x6f, 0x5f, - 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x74, 0x75, 0x72, 0x62, - 0x6f, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0xee, 0x04, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, + 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, + 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4e, 0x0a, + 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0xa2, 0x01, + 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x51, 0x0a, 0x0b, + 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, + 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, + 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x77, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x57, + 0x6f, 0x6e, 0x22, 0x50, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x61, 0x6e, 0x65, 0x53, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x14, + 0x0a, 0x05, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x05, 0x6c, + 0x61, 0x6e, 0x65, 0x73, 0x22, 0xd0, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, + 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, + 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, + 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x22, 0xe2, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, + 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x50, 0x72, 0x65, 0x67, + 0x61, 0x6d, 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, + 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, + 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x69, + 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, + 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, + 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x48, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, + 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0xf4, 0x01, 0x0a, + 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, + 0x65, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x12, + 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, + 0x61, 0x6e, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, + 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, 0x65, 0x72, + 0x6f, 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, + 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, + 0x65, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, + 0x12, 0x31, 0x0a, 0x15, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x65, 0x5f, + 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, + 0x12, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x54, 0x6f, 0x42, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x64, 0x22, 0xfa, 0x01, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x74, 0x65, 0x6d, + 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4d, 0x4c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x12, 0x12, + 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, + 0x6e, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x61, + 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, + 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x65, + 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, + 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, + 0x2f, 0x0a, 0x14, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x65, 0x5f, 0x70, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x69, + 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x42, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, + 0x22, 0xcd, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x49, 0x73, + 0x48, 0x65, 0x72, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, + 0x64, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x13, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x4d, 0x61, + 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x75, 0x72, 0x62, 0x6f, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x74, 0x75, 0x72, 0x62, 0x6f, 0x4d, 0x6f, 0x64, 0x65, + 0x22, 0xee, 0x04, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, + 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, + 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x76, 0x65, 0x72, + 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x67, 0x0a, 0x11, 0x63, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x76, 0x65, - 0x72, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x67, 0x0a, 0x11, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x52, 0x10, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, - 0x63, 0x6f, 0x72, 0x64, 0x73, 0x1a, 0x9e, 0x03, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, - 0x69, 0x64, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x31, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x32, 0x12, 0x30, 0x0a, 0x14, - 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x67, - 0x72, 0x65, 0x73, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2c, - 0x0a, 0x12, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x67, - 0x72, 0x65, 0x73, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x19, 0x0a, 0x08, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x77, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, - 0x74, 0x65, 0x61, 0x6d, 0x57, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, - 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, - 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, - 0x25, 0x0a, 0x0e, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6d, - 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x9d, 0x03, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, - 0x72, 0x61, 0x77, 0x6c, 0x49, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, - 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x77, - 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, - 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x57, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, - 0x12, 0x5f, 0x0a, 0x0b, 0x6d, 0x61, 0x70, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, - 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x49, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x0a, 0x6d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x73, 0x12, 0x41, 0x0a, 0x1d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, - 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, - 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, - 0x69, 0x61, 0x6c, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x68, 0x61, 0x72, 0x64, 0x57, 0x69, 0x6e, 0x6e, - 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x60, 0x0a, 0x0a, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, - 0x61, 0x74, 0x68, 0x49, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x26, - 0x0a, 0x0f, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x43, - 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x22, 0x4b, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x74, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x66, 0x6c, - 0x6f, 0x77, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x22, 0xe5, 0x0e, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x41, 0x0a, - 0x07, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4d, 0x69, 0x6e, 0x75, - 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, - 0x12, 0x47, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x44, 0x0a, 0x0a, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x47, 0x61, 0x6d, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, - 0x8d, 0x0a, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x65, 0x61, 0x72, - 0x6e, 0x65, 0x64, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x47, 0x6f, 0x6c, 0x64, 0x12, - 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, - 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x09, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x70, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x70, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, - 0x72, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x70, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x44, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, - 0x70, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, - 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x48, 0x65, 0x61, 0x6c, - 0x74, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x61, 0x6e, 0x61, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x61, 0x6e, - 0x61, 0x12, 0x4a, 0x0a, 0x22, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, - 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1e, 0x62, - 0x61, 0x73, 0x65, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x44, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x63, 0x74, 0x12, 0x4c, 0x0a, - 0x23, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x70, 0x63, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1f, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x63, 0x74, 0x12, 0x48, 0x0a, 0x21, 0x62, - 0x61, 0x73, 0x65, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x63, 0x74, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1d, 0x62, 0x61, 0x73, 0x65, 0x41, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x63, 0x74, 0x12, 0x4a, 0x0a, 0x22, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, - 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x1e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x63, - 0x74, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, 0x6d, - 0x61, 0x67, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x12, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x6c, - 0x6f, 0x63, 0x6b, 0x12, 0x32, 0x0a, 0x15, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x13, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x44, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x5f, - 0x72, 0x65, 0x67, 0x65, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x61, 0x6e, - 0x61, 0x52, 0x65, 0x67, 0x65, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, - 0x5f, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x68, 0x65, - 0x61, 0x6c, 0x74, 0x68, 0x52, 0x65, 0x67, 0x65, 0x6e, 0x12, 0x33, 0x0a, 0x16, 0x70, 0x68, 0x79, - 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x5f, 0x64, 0x6d, 0x67, 0x5f, - 0x70, 0x63, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x70, 0x68, 0x79, 0x73, 0x69, - 0x63, 0x61, 0x6c, 0x4d, 0x61, 0x67, 0x69, 0x63, 0x44, 0x6d, 0x67, 0x50, 0x63, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x14, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, - 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x66, - 0x72, 0x6f, 0x6d, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x67, 0x6f, 0x6c, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x28, - 0x0a, 0x10, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x72, 0x65, 0x65, - 0x70, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x67, 0x6f, 0x6c, 0x64, 0x46, 0x72, - 0x6f, 0x6d, 0x43, 0x72, 0x65, 0x65, 0x70, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x6f, 0x6c, 0x64, - 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, - 0x6f, 0x6c, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x78, 0x70, 0x5f, - 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x78, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x24, 0x0a, - 0x0e, 0x78, 0x70, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, 0x18, - 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x78, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x72, 0x65, - 0x65, 0x70, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x78, 0x70, 0x18, - 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x58, 0x70, 0x12, 0x23, - 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x73, 0x18, - 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x61, - 0x73, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x61, 0x73, 0x74, - 0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x61, 0x73, - 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x5f, 0x73, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x1f, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, - 0x98, 0x01, 0x0a, 0x09, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2d, 0x0a, - 0x13, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x5f, 0x74, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x6f, 0x77, 0x65, - 0x72, 0x44, 0x65, 0x61, 0x74, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x31, 0x12, 0x2d, 0x0a, 0x13, - 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x5f, 0x74, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x6f, 0x77, 0x65, 0x72, - 0x44, 0x65, 0x61, 0x74, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x32, 0x12, 0x2d, 0x0a, 0x13, 0x74, - 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, - 0x74, 0x33, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x44, - 0x65, 0x61, 0x74, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x33, 0x1a, 0x68, 0x0a, 0x0b, 0x4d, 0x69, - 0x6e, 0x75, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x69, 0x6e, - 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x75, 0x74, - 0x65, 0x12, 0x41, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x73, - 0x74, 0x61, 0x74, 0x73, 0x1a, 0x65, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x22, 0xd0, 0x02, 0x0a, 0x14, - 0x43, 0x4d, 0x73, 0x67, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x12, 0x4b, 0x0a, 0x0d, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, - 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, - 0x74, 0x65, 0x6d, 0x52, 0x0c, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, - 0x73, 0x1a, 0xea, 0x01, 0x0a, 0x0b, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, - 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, - 0x6d, 0x65, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, - 0x6d, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, - 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, - 0x69, 0x6d, 0x65, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x12, - 0x30, 0x0a, 0x14, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x6e, 0x65, - 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, - 0x69, 0x6d, 0x65, 0x4c, 0x61, 0x73, 0x74, 0x55, 0x6e, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, - 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x71, - 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x64, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x22, 0xd5, - 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x52, 0x61, 0x74, - 0x65, 0x73, 0x12, 0x4d, 0x0a, 0x08, 0x62, 0x61, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x48, - 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x48, 0x65, 0x72, 0x6f, - 0x42, 0x61, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x62, 0x61, 0x6e, 0x44, 0x61, 0x74, - 0x61, 0x1a, 0x63, 0x0a, 0x0c, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, - 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, - 0x61, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x5f, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x69, 0x63, - 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa0, 0x03, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x60, 0x0a, 0x10, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x0f, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x1a, 0x72, 0x0a, - 0x1c, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x12, 0x19, 0x0a, - 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x73, 0x1a, 0xa5, 0x01, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x10, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, + 0x1a, 0x9e, 0x03, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x74, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, - 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x43, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, - 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x22, 0xe5, 0x03, 0x0a, 0x21, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x79, 0x0a, 0x1b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, - 0x19, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, - 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x1a, 0xc4, 0x02, 0x0a, 0x11, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x1c, 0x63, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x1a, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x17, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x63, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x65, - 0x72, 0x69, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, - 0x72, 0x22, 0xfc, 0x08, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, - 0x74, 0x4d, 0x56, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x65, 0x61, - 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, - 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x3a, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, - 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x56, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0xb0, 0x07, - 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, - 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x74, 0x68, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, - 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x52, 0x61, 0x6e, 0x6b, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x20, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, - 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, - 0x61, 0x6e, 0x6b, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, - 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x78, 0x70, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x78, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, - 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6e, 0x65, 0x74, - 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, - 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x53, 0x70, - 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, - 0x63, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, - 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x1b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, - 0x73, 0x70, 0x6f, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x64, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x18, 0x77, 0x61, 0x72, - 0x64, 0x73, 0x53, 0x70, 0x6f, 0x74, 0x74, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x44, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, - 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x61, - 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, - 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, - 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, - 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, - 0x27, 0x0a, 0x0f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, - 0x6e, 0x67, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x74, 0x68, 0x65, - 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, - 0x6f, 0x74, 0x68, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, - 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1a, - 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, - 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x12, 0x5b, 0x0a, 0x11, 0x6b, - 0x69, 0x6c, 0x6c, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, - 0x18, 0x22, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x56, 0x50, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x4b, 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, - 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0f, 0x6b, 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, - 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x68, 0x69, 0x67, 0x68, - 0x65, 0x73, 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x23, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x68, 0x69, 0x67, 0x68, 0x65, 0x73, 0x74, 0x4b, 0x69, 0x6c, - 0x6c, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x1a, 0x47, 0x0a, 0x0e, 0x4b, 0x69, 0x6c, 0x6c, 0x45, - 0x61, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x09, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x22, 0x3a, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x42, 0x0a, 0x1f, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, - 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, - 0x22, 0xbb, 0x04, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x10, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x0f, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x1a, 0xe3, 0x01, - 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, + 0x74, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, + 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x31, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, + 0x64, 0x31, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, + 0x69, 0x64, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x32, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x77, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x57, + 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x61, + 0x6e, 0x6b, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x64, 0x22, 0x9d, 0x03, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x49, + 0x73, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, + 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x6d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x12, + 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, + 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x57, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x5f, 0x0a, 0x0b, 0x6d, + 0x61, 0x70, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, + 0x6c, 0x49, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, + 0x52, 0x0a, 0x6d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x41, 0x0a, 0x1d, + 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, + 0x68, 0x61, 0x72, 0x64, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x6c, + 0x75, 0x73, 0x53, 0x68, 0x61, 0x72, 0x64, 0x57, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x1a, + 0x60, 0x0a, 0x0a, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x2a, 0x0a, + 0x11, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x61, 0x74, 0x68, 0x49, 0x64, + 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x6f, 0x6f, + 0x6d, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, + 0x64, 0x22, 0xd0, 0x02, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, + 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x4b, 0x0a, 0x0d, 0x6e, 0x65, + 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4e, 0x65, 0x75, + 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x4e, 0x65, + 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0c, 0x6e, 0x65, 0x75, 0x74, 0x72, + 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0xea, 0x01, 0x0a, 0x0b, 0x4e, 0x65, 0x75, 0x74, + 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x72, 0x6f, 0x70, + 0x70, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x5f, + 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x69, 0x6d, 0x65, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x71, 0x75, + 0x69, 0x70, 0x70, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x61, + 0x73, 0x74, 0x5f, 0x75, 0x6e, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x4c, 0x61, 0x73, 0x74, 0x55, 0x6e, 0x65, + 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x10, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x71, 0x75, 0x69, + 0x70, 0x70, 0x65, 0x64, 0x22, 0xd5, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, + 0x42, 0x61, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x73, 0x12, 0x4d, 0x0a, 0x08, 0x62, 0x61, 0x6e, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x52, 0x61, 0x74, 0x65, + 0x73, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x61, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, + 0x62, 0x61, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x63, 0x0a, 0x0c, 0x48, 0x65, 0x72, 0x6f, 0x42, + 0x61, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, + 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x61, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x70, 0x69, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa0, 0x03, 0x0a, + 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x60, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x73, 0x1a, 0x72, 0x0a, 0x1c, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x19, + 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x1a, 0xa5, 0x01, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x74, 0x0a, 0x13, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x43, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x12, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x22, + 0xe5, 0x03, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x79, 0x0a, 0x1b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x2e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x19, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, + 0x1a, 0xc4, 0x02, 0x0a, 0x11, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, + 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, + 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, + 0x12, 0x40, 0x0a, 0x1c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, + 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, + 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x53, 0x74, 0x61, 0x72, 0x73, 0x12, 0x23, - 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x53, - 0x6c, 0x6f, 0x74, 0x1a, 0xc8, 0x01, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, - 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x5b, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x22, 0xb9, - 0x03, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x69, 0x72, 0x65, - 0x74, 0x69, 0x64, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x12, 0x54, 0x0a, 0x11, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x69, 0x72, 0x65, 0x74, 0x69, 0x64, 0x65, 0x43, 0x61, 0x6e, - 0x64, 0x79, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x52, 0x0f, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, - 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x1a, 0x3c, 0x0a, 0x0c, 0x43, 0x61, 0x6e, 0x64, - 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x14, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x05, 0x61, 0x75, 0x64, 0x69, 0x74, 0x1a, 0xe1, 0x01, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x5f, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x61, 0x6e, - 0x64, 0x79, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x1a, 0x63, 0x6f, 0x6e, 0x73, - 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x63, 0x6f, - 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x52, 0x0a, 0x0f, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x5f, - 0x62, 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x44, 0x69, 0x72, 0x65, 0x74, 0x69, 0x64, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x2e, 0x43, 0x61, - 0x6e, 0x64, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0e, 0x63, 0x61, 0x6e, 0x64, - 0x79, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x22, 0xba, 0x01, 0x0a, 0x17, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, - 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4d, 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x43, 0x68, 0x65, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x68, 0x65, 0x65, 0x72, - 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, - 0x54, 0x79, 0x70, 0x65, 0x73, 0x1a, 0x50, 0x0a, 0x0e, 0x43, 0x68, 0x65, 0x65, 0x72, 0x54, 0x79, - 0x70, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x68, 0x65, - 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x68, 0x65, - 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x82, 0x07, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x63, - 0x68, 0x65, 0x65, 0x72, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x68, 0x65, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, - 0x69, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, - 0x27, 0x0a, 0x0f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, - 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x77, 0x69, 0x6e, 0x64, - 0x6f, 0x77, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x42, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x63, 0x72, 0x6f, 0x77, - 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x50, 0x75, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x63, - 0x72, 0x6f, 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x6c, 0x6f, 0x77, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x4c, 0x6f, 0x77, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, - 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x64, 0x69, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x10, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4d, 0x65, 0x64, 0x69, 0x75, - 0x6d, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x5f, 0x68, 0x69, 0x67, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x72, 0x6f, - 0x77, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x48, 0x69, 0x67, 0x68, 0x12, 0x2a, 0x0a, 0x11, 0x63, - 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, - 0x6c, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x65, 0x72, - 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x0f, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x53, 0x70, - 0x65, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, - 0x6c, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x50, 0x75, - 0x73, 0x68, 0x4d, 0x61, 0x72, 0x6b, 0x12, 0x31, 0x0a, 0x15, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, - 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x70, 0x75, 0x6c, 0x6c, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x18, - 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, - 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x61, 0x72, 0x6b, 0x12, 0x44, 0x0a, 0x20, 0x63, 0x68, 0x65, - 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x70, 0x63, 0x74, 0x5f, 0x6f, 0x66, 0x5f, - 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x70, 0x73, 0x5f, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x1a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x50, - 0x63, 0x74, 0x4f, 0x66, 0x4d, 0x61, 0x78, 0x43, 0x70, 0x73, 0x43, 0x6c, 0x61, 0x6d, 0x70, 0x12, - 0x3b, 0x0a, 0x1a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x64, - 0x61, 0x6d, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x15, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x17, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x44, - 0x61, 0x6d, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x42, 0x0a, 0x1e, - 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x64, 0x61, 0x6d, 0x70, - 0x65, 0x6e, 0x65, 0x72, 0x5f, 0x6c, 0x65, 0x72, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x16, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, - 0x44, 0x61, 0x6d, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x4c, 0x65, 0x72, 0x70, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, - 0x5f, 0x62, 0x72, 0x6f, 0x6e, 0x7a, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x63, - 0x68, 0x65, 0x65, 0x72, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x72, 0x6f, 0x6e, 0x7a, 0x65, - 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, - 0x5f, 0x73, 0x69, 0x6c, 0x76, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x63, - 0x68, 0x65, 0x65, 0x72, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x53, 0x69, 0x6c, 0x76, 0x65, 0x72, - 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, - 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x68, 0x65, - 0x65, 0x72, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x47, 0x6f, 0x6c, 0x64, 0x22, 0x55, 0x0a, 0x19, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, - 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x0c, 0x63, 0x68, 0x65, - 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x22, 0x3b, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, - 0x22, 0x60, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, - 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x63, 0x68, 0x65, 0x65, - 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x22, 0x3b, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x73, 0x4f, - 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x61, 0x6c, 0x65, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x73, 0x22, - 0x1d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0xa5, - 0x01, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x65, - 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, - 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x12, - 0x25, 0x0a, 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, - 0x65, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x39, 0x0a, 0x0b, 0x63, 0x68, 0x65, - 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x54, - 0x79, 0x70, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x54, - 0x79, 0x70, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, - 0x63, 0x72, 0x6f, 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x43, 0x72, 0x6f, 0x77, 0x64, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x10, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x63, 0x72, 0x6f, - 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, - 0x64, 0x69, 0x72, 0x65, 0x43, 0x72, 0x6f, 0x77, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x91, - 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, - 0x43, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, - 0x63, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x35, 0x0a, 0x0b, 0x63, - 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, - 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x22, 0x41, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, - 0x72, 0x6f, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xd5, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, - 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x4d, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, - 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, - 0x5c, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x08, 0x73, 0x74, 0x69, 0x63, - 0x6b, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, - 0x6f, 0x65, 0x73, 0x52, 0x08, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x22, 0x24, 0x0a, - 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x65, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x22, 0xa7, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, - 0x61, 0x72, 0x6e, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x69, 0x6e, 0x67, 0x12, 0x16, - 0x0a, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, - 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x6d, 0x61, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x22, 0x5a, 0x0a, - 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x65, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4b, 0x65, 0x79, 0x73, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x48, 0x4d, 0x41, 0x43, 0x4b, - 0x65, 0x79, 0x73, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x17, 0x43, 0x4d, + 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x22, 0xfc, 0x08, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x56, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, + 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x6e, 0x6e, 0x69, + 0x6e, 0x67, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, + 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, + 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x56, 0x50, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x73, 0x1a, 0xb0, 0x07, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x17, + 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, + 0x68, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, + 0x6c, 0x6f, 0x74, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x21, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, + 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, + 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x0e, + 0x0a, 0x02, 0x78, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x78, 0x70, 0x12, 0x1b, + 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x73, + 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, + 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, + 0x47, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x72, + 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x1b, + 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x73, 0x70, 0x6f, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x6f, + 0x72, 0x5f, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x18, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x70, 0x6f, 0x74, 0x74, 0x65, 0x64, 0x46, + 0x6f, 0x72, 0x44, 0x65, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, + 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, + 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, + 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x14, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, + 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, + 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, + 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x18, + 0x1f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, + 0x64, 0x12, 0x5b, 0x0a, 0x11, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x72, 0x5f, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x22, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, + 0x56, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x4b, + 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0f, 0x6b, + 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2d, + 0x0a, 0x12, 0x68, 0x69, 0x67, 0x68, 0x65, 0x73, 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x74, + 0x72, 0x65, 0x61, 0x6b, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x68, 0x69, 0x67, 0x68, + 0x65, 0x73, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x1a, 0x47, 0x0a, + 0x0e, 0x4b, 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x02, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x06, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3a, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x54, 0x72, + 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x22, 0x42, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xbb, 0x04, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x73, 0x1a, 0xe3, 0x01, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x25, 0x0a, + 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x53, + 0x74, 0x61, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x53, 0x6c, 0x6f, 0x74, 0x1a, 0xc8, 0x01, 0x0a, 0x06, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x27, + 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x5b, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x73, 0x22, 0xb9, 0x03, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x44, 0x69, 0x72, 0x65, 0x74, 0x69, 0x64, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x12, + 0x54, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x69, 0x72, 0x65, 0x74, + 0x69, 0x64, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, + 0x61, 0x6e, 0x64, 0x79, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x64, + 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x1a, 0x3c, + 0x0a, 0x0c, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x74, 0x1a, 0xe1, 0x01, 0x0a, + 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, + 0x61, 0x6e, 0x64, 0x79, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3c, + 0x0a, 0x1a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x18, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x73, 0x50, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x52, 0x0a, 0x0f, + 0x63, 0x61, 0x6e, 0x64, 0x79, 0x5f, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x69, 0x72, 0x65, 0x74, 0x69, 0x64, 0x65, 0x43, 0x61, + 0x6e, 0x64, 0x79, 0x2e, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x52, 0x0e, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x64, 0x6f, 0x77, 0x6e, + 0x22, 0xba, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4d, 0x0a, 0x0b, + 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x2e, 0x43, 0x68, 0x65, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, + 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x1a, 0x50, 0x0a, 0x0e, 0x43, + 0x68, 0x65, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x63, 0x68, 0x65, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x82, 0x07, + 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, 0x65, 0x65, 0x72, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x68, 0x65, 0x65, 0x72, + 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x4c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, + 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, + 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, + 0x0a, 0x13, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x77, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, + 0x0a, 0x15, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x70, 0x75, + 0x73, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x63, + 0x72, 0x6f, 0x77, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x50, 0x75, 0x73, 0x68, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x5f, 0x6c, 0x6f, 0x77, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x72, 0x6f, 0x77, + 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4c, 0x6f, 0x77, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x72, 0x6f, + 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x64, 0x69, 0x75, 0x6d, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x4d, 0x65, 0x64, 0x69, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x72, 0x6f, 0x77, 0x64, + 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x68, 0x69, 0x67, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x48, 0x69, 0x67, + 0x68, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, + 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x68, + 0x65, 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2a, 0x0a, + 0x11, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x73, 0x70, 0x65, + 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, + 0x63, 0x61, 0x6c, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x63, 0x68, 0x65, + 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x61, + 0x72, 0x6b, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x65, 0x65, 0x72, 0x53, + 0x63, 0x61, 0x6c, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x61, 0x72, 0x6b, 0x12, 0x31, 0x0a, 0x15, + 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x70, 0x75, 0x6c, 0x6c, + 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x65, + 0x65, 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x61, 0x72, 0x6b, 0x12, + 0x44, 0x0a, 0x20, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x70, + 0x63, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x70, 0x73, 0x5f, 0x63, 0x6c, + 0x61, 0x6d, 0x70, 0x18, 0x11, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1a, 0x63, 0x68, 0x65, 0x65, 0x72, + 0x53, 0x63, 0x61, 0x6c, 0x65, 0x50, 0x63, 0x74, 0x4f, 0x66, 0x4d, 0x61, 0x78, 0x43, 0x70, 0x73, + 0x43, 0x6c, 0x61, 0x6d, 0x70, 0x12, 0x3b, 0x0a, 0x1a, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, + 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x64, 0x61, 0x6d, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x5f, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x17, 0x63, 0x68, 0x65, 0x65, 0x72, + 0x53, 0x63, 0x61, 0x6c, 0x65, 0x44, 0x61, 0x6d, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x12, 0x42, 0x0a, 0x1e, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, + 0x65, 0x5f, 0x64, 0x61, 0x6d, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x5f, 0x6c, 0x65, 0x72, 0x70, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x63, 0x68, 0x65, 0x65, + 0x72, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x44, 0x61, 0x6d, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x4c, 0x65, + 0x72, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, + 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x62, 0x72, 0x6f, 0x6e, 0x7a, 0x65, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x11, 0x63, 0x68, 0x65, 0x65, 0x72, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, + 0x42, 0x72, 0x6f, 0x6e, 0x7a, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, + 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x69, 0x6c, 0x76, 0x65, 0x72, 0x18, 0x13, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x11, 0x63, 0x68, 0x65, 0x65, 0x72, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, + 0x53, 0x69, 0x6c, 0x76, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, + 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x0f, 0x63, 0x68, 0x65, 0x65, 0x72, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x47, 0x6f, + 0x6c, 0x64, 0x22, 0x55, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x38, 0x0a, 0x0c, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x63, 0x68, + 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x3b, 0x0a, 0x1c, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x68, + 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, + 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x22, 0x60, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, + 0x0a, 0x0c, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x63, 0x68, 0x65, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x3b, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, + 0x63, 0x61, 0x6c, 0x65, 0x73, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x73, + 0x63, 0x61, 0x6c, 0x65, 0x73, 0x22, 0x1d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, + 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, + 0x68, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x24, + 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x50, 0x65, 0x72, 0x53, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x63, + 0x61, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x65, 0x65, 0x72, + 0x53, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, + 0x65, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x6f, + 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x22, 0xa5, 0x01, 0x0a, + 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, + 0x39, 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x68, 0x65, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0a, + 0x63, 0x68, 0x65, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, + 0x43, 0x72, 0x6f, 0x77, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x10, 0x64, 0x69, + 0x72, 0x65, 0x5f, 0x63, 0x72, 0x6f, 0x77, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x69, 0x72, 0x65, 0x43, 0x72, 0x6f, 0x77, 0x64, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x22, 0x91, 0x01, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x65, + 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x63, 0x68, 0x65, 0x65, 0x72, + 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x35, 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x68, 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0a, 0x63, 0x68, + 0x65, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x41, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x53, 0x74, 0x69, + 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, + 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0xd5, 0x01, 0x0a, 0x26, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0x5c, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x33, + 0x0a, 0x08, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x69, 0x63, + 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x52, 0x08, 0x73, 0x74, 0x69, 0x63, 0x6b, + 0x65, 0x72, 0x73, 0x22, 0x74, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x64, 0x12, 0x45, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x0c, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, @@ -17243,7 +17130,7 @@ var file_dota_gcmessages_server_proto_rawDesc = []byte{ 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, - 0xb3, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, + 0xd2, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x4d, @@ -17254,176 +17141,240 @@ var file_dota_gcmessages_server_proto_rawDesc = []byte{ 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6c, 0x6f, 0x62, 0x62, - 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0xad, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, - 0x6f, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x72, - 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, - 0x0d, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x6e, - 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x4c, 0x61, 0x6e, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x6c, - 0x61, 0x6e, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, - 0x4c, 0x61, 0x6e, 0x65, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, - 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, - 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x26, - 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, - 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, - 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, - 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x22, 0xa3, 0x07, 0x0a, - 0x18, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, - 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x6d, 0x6d, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x4d, 0x6d, 0x72, 0x22, 0xad, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, + 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0d, + 0x64, 0x69, 0x72, 0x65, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x69, 0x72, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, + 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x6e, 0x65, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, + 0x4c, 0x61, 0x6e, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x6c, 0x61, + 0x6e, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x4c, + 0x61, 0x6e, 0x65, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, + 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x6e, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, 0x61, 0x6e, 0x65, 0x12, 0x26, 0x0a, + 0x0f, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x69, 0x65, 0x64, 0x48, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x65, + 0x6e, 0x65, 0x6d, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x73, 0x22, 0x84, 0x04, 0x0a, 0x1e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x52, + 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x54, 0x69, 0x6d, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x42, + 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, + 0x74, 0x73, 0x1a, 0x8d, 0x03, 0x0a, 0x0a, 0x53, 0x74, 0x61, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, + 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, + 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, + 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, + 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, + 0x65, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x65, + 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, + 0x69, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, + 0x69, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6e, + 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x64, 0x6c, 0x65, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x69, 0x64, 0x6c, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x73, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, + 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x49, 0x73, 0x73, 0x75, 0x65, 0x64, 0x12, 0x2e, + 0x0a, 0x13, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x65, 0x6e, + 0x74, 0x72, 0x79, 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x32, + 0x0a, 0x15, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, + 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6f, + 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, + 0x65, 0x64, 0x22, 0xa3, 0x07, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x0d, + 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x72, + 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0a, 0x64, + 0x69, 0x72, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, + 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x1a, 0x8d, 0x02, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, + 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x70, + 0x61, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, + 0x61, 0x73, 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0a, 0x68, 0x61, 0x73, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, + 0x68, 0x61, 0x73, 0x5f, 0x61, 0x65, 0x67, 0x69, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x68, 0x61, 0x73, 0x41, 0x65, 0x67, 0x69, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x61, 0x73, + 0x5f, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x68, + 0x61, 0x73, 0x52, 0x61, 0x70, 0x69, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x69, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x1a, 0xc1, 0x03, 0x0a, 0x09, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x4f, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, - 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x65, - 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x47, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x1a, 0x8d, - 0x02, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x17, - 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, - 0x6f, 0x72, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, - 0x6f, 0x72, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, - 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, - 0x68, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x62, 0x75, 0x79, - 0x62, 0x61, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x42, - 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x5f, 0x61, 0x65, - 0x67, 0x69, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x41, 0x65, - 0x67, 0x69, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x5f, 0x72, 0x61, 0x70, 0x69, 0x65, - 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x68, 0x61, 0x73, 0x52, 0x61, 0x70, 0x69, - 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x1a, 0xc1, - 0x03, 0x0a, 0x09, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, - 0x12, 0x4f, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x73, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, - 0x68, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x6f, 0x77, - 0x65, 0x72, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x62, - 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, - 0x63, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, - 0x6b, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x61, - 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, - 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x61, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, - 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x6c, 0x79, - 0x70, 0x68, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, - 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, - 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x61, 0x66, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x53, 0x61, 0x66, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, - 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x4d, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x10, 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4f, - 0x66, 0x66, 0x22, 0xac, 0x02, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, - 0x65, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x70, - 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x12, - 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, - 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, - 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, - 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x73, 0x52, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, - 0x5f, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0f, 0x69, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, - 0x73, 0x22, 0x94, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, - 0x65, 0x61, 0x72, 0x6e, 0x50, 0x72, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x50, - 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, - 0x49, 0x64, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x73, - 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x2b, 0x0a, 0x12, 0x69, - 0x73, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x75, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, - 0x44, 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x22, 0xb2, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x65, - 0x64, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x10, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x69, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x6f, 0x74, - 0x61, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, - 0x55, 0x73, 0x69, 0x6e, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x22, 0xfa, 0x01, - 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, - 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x45, 0x0a, - 0x08, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x77, 0x61, 0x72, - 0x64, 0x4c, 0x6f, 0x63, 0x12, 0x58, 0x0a, 0x12, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, - 0x5f, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x65, 0x78, - 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x57, 0x61, 0x72, 0x64, 0x4c, 0x6f, 0x63, 0x73, 0x12, 0x12, - 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, - 0x61, 0x6d, 0x1a, 0x26, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0c, - 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, - 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x22, 0x43, 0x0a, 0x19, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, 0x4d, - 0x69, 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, - 0xfc, 0x01, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, - 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3a, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x73, 0x12, 0x3d, 0x0a, 0x0c, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x74, - 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x6e, 0x61, - 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x0b, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x1a, 0x6a, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x0e, 0x70, - 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, - 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, - 0x0d, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2a, 0xc6, - 0x01, 0x0a, 0x1a, 0x45, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, - 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, - 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, - 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, - 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x55, 0x6e, 0x6b, - 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x50, 0x6f, 0x6f, - 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x5f, 0x4d, 0x61, 0x73, 0x73, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x10, 0x02, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, - 0x45, 0x78, 0x63, 0x65, 0x73, 0x73, 0x42, 0x61, 0x64, 0x51, 0x6f, 0x73, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x76, 0x61, 0x6c, 0x73, 0x10, 0x03, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, - 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, - 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x61, 0x72, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x77, 0x65, 0x72, + 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0e, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, + 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x68, 0x65, + 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, + 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, + 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x65, 0x61, + 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x61, + 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x63, 0x74, 0x12, + 0x25, 0x0a, 0x0e, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, + 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x43, 0x6f, + 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, + 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, + 0x61, 0x66, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x72, 0x65, 0x65, 0x70, + 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x61, 0x66, 0x65, 0x12, 0x2c, 0x0a, 0x12, + 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, + 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, + 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x72, + 0x65, 0x65, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6f, 0x66, 0x66, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, 0x65, 0x70, 0x44, 0x69, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4f, 0x66, 0x66, 0x22, 0xac, 0x02, 0x0a, 0x1a, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x50, + 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, + 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x69, 0x74, + 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x05, 0x52, 0x0f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x74, 0x5f, + 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, + 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x72, 0x61, 0x64, 0x69, + 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x69, 0x73, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, + 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x73, + 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x75, 0x73, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x44, + 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x50, 0x72, 0x65, 0x47, 0x61, 0x6d, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x73, 0x12, 0x19, + 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, + 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, + 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x73, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, + 0x6d, 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x6f, + 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, + 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x22, 0xa5, + 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, + 0x6e, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x65, + 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, + 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x73, 0x52, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x73, 0x5f, + 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x44, 0x6f, + 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x22, 0xb2, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, + 0x10, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2b, + 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x6f, 0x74, 0x61, 0x5f, + 0x70, 0x6c, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x55, 0x73, + 0x69, 0x6e, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x22, 0xfa, 0x01, 0x0a, 0x1b, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x57, 0x61, + 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x45, 0x0a, 0x08, 0x77, + 0x61, 0x72, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x77, 0x61, 0x72, 0x64, 0x4c, + 0x6f, 0x63, 0x12, 0x58, 0x0a, 0x12, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x77, + 0x61, 0x72, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x65, 0x61, 0x72, 0x6e, 0x57, 0x61, 0x72, 0x64, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x65, 0x78, 0x69, 0x73, + 0x74, 0x69, 0x6e, 0x67, 0x57, 0x61, 0x72, 0x64, 0x4c, 0x6f, 0x63, 0x73, 0x12, 0x12, 0x0a, 0x04, + 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, + 0x1a, 0x26, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0c, 0x0a, 0x01, + 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x22, 0x43, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, 0x4d, 0x69, 0x6e, + 0x69, 0x67, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0xfc, 0x01, + 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x61, 0x70, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3a, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x73, 0x12, 0x3d, 0x0a, 0x0c, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x52, 0x0b, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x1a, 0x6a, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x0e, 0x70, 0x65, 0x72, + 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x70, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x0d, 0x70, + 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0x92, 0x01, 0x0a, + 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x43, 0x4e, + 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, + 0x65, 0x66, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x69, 0x66, 0x74, 0x65, + 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x69, 0x66, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, + 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x73, 0x22, 0x8e, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x54, 0x6f, 0x47, 0x43, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x45, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x6f, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x12, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x73, 0x2a, 0xc6, 0x01, 0x0a, 0x1a, 0x45, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x4e, 0x6f, + 0x6e, 0x65, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x50, 0x6f, 0x6f, 0x72, 0x4e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x4d, 0x61, 0x73, 0x73, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0x02, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x50, 0x6f, + 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x5f, 0x45, 0x78, 0x63, 0x65, 0x73, 0x73, 0x42, 0x61, 0x64, 0x51, 0x6f, 0x73, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x73, 0x10, 0x03, 0x42, 0x25, 0x5a, 0x23, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, + 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, + 0x74, 0x61, } var ( @@ -17499,132 +17450,132 @@ var file_dota_gcmessages_server_proto_goTypes = []interface{}{ (*CMsgServerToGCVictoryPredictions)(nil), // 55: dota.CMsgServerToGCVictoryPredictions (*CMsgServerToGCRequestStatus)(nil), // 56: dota.CMsgServerToGCRequestStatus (*CMsgServerToGCRequestStatus_Response)(nil), // 57: dota.CMsgServerToGCRequestStatus_Response - (*CMsgSignOutAssassinMiniGameInfo)(nil), // 58: dota.CMsgSignOutAssassinMiniGameInfo - (*CMsgServerToGCKillSummaries)(nil), // 59: dota.CMsgServerToGCKillSummaries - (*CMsgGCToServerPredictionResult)(nil), // 60: dota.CMsgGCToServerPredictionResult - (*CMsgServerToGCLockCharmTrading)(nil), // 61: dota.CMsgServerToGCLockCharmTrading - (*CMsgSignOutUpdatePlayerChallenge)(nil), // 62: dota.CMsgSignOutUpdatePlayerChallenge - (*CMsgServerToGCRerollPlayerChallenge)(nil), // 63: dota.CMsgServerToGCRerollPlayerChallenge - (*CMsgSpendWager)(nil), // 64: dota.CMsgSpendWager - (*CMsgSignOutXPCoins)(nil), // 65: dota.CMsgSignOutXPCoins - (*CMsgSignOutBounties)(nil), // 66: dota.CMsgSignOutBounties - (*CMsgSignOutCommunityGoalProgress)(nil), // 67: dota.CMsgSignOutCommunityGoalProgress - (*CMsgServerToGCCloseCompendiumInGamePredictionVoting)(nil), // 68: dota.CMsgServerToGCCloseCompendiumInGamePredictionVoting - (*CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse)(nil), // 69: dota.CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse - (*CMsgServerToGCCompendiumInGamePredictionResults)(nil), // 70: dota.CMsgServerToGCCompendiumInGamePredictionResults - (*CMsgServerToGCCompendiumChosenInGamePredictions)(nil), // 71: dota.CMsgServerToGCCompendiumChosenInGamePredictions - (*CMsgGCToGCCompendiumInGamePredictionResults)(nil), // 72: dota.CMsgGCToGCCompendiumInGamePredictionResults - (*CMsgServerToGCMatchPlayerItemPurchaseHistory)(nil), // 73: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory - (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory)(nil), // 74: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory - (*CMsgServerToGCMatchStateHistory)(nil), // 75: dota.CMsgServerToGCMatchStateHistory - (*CMsgMatchStateSteamMLEntry)(nil), // 76: dota.CMsgMatchStateSteamMLEntry - (*CMsgLaneSelectionSteamMLEntry)(nil), // 77: dota.CMsgLaneSelectionSteamMLEntry - (*CMsgAbilitySelectionSteamMLEntry)(nil), // 78: dota.CMsgAbilitySelectionSteamMLEntry - (*CMsgItemPurchasePregameSteamMLEntry)(nil), // 79: dota.CMsgItemPurchasePregameSteamMLEntry - (*CMsgItemPurchaseSteamMLEntry)(nil), // 80: dota.CMsgItemPurchaseSteamMLEntry - (*CMsgItemPurchaseSequenceSteamMLEntry)(nil), // 81: dota.CMsgItemPurchaseSequenceSteamMLEntry - (*CMsgServerToGCCavernCrawlIsHeroActive)(nil), // 82: dota.CMsgServerToGCCavernCrawlIsHeroActive - (*CMsgServerToGCPlayerChallengeHistory)(nil), // 83: dota.CMsgServerToGCPlayerChallengeHistory - (*CMsgServerToGCCavernCrawlIsHeroActiveResponse)(nil), // 84: dota.CMsgServerToGCCavernCrawlIsHeroActiveResponse - (*CMsgGCtoServerTensorflowInstance)(nil), // 85: dota.CMsgGCtoServerTensorflowInstance - (*CMsgDetailedGameStats)(nil), // 86: dota.CMsgDetailedGameStats - (*CMsgNeutralItemStats)(nil), // 87: dota.CMsgNeutralItemStats - (*CMsgGCToServerLobbyHeroBanRates)(nil), // 88: dota.CMsgGCToServerLobbyHeroBanRates - (*CMsgSignOutGuildContractProgress)(nil), // 89: dota.CMsgSignOutGuildContractProgress - (*CMsgSignOutGuildChallengeProgress)(nil), // 90: dota.CMsgSignOutGuildChallengeProgress - (*CMsgSignOutMVPStats)(nil), // 91: dota.CMsgSignOutMVPStats - (*CMsgGCToServerRecordTrainingData)(nil), // 92: dota.CMsgGCToServerRecordTrainingData - (*CMsgServerToGCGetGuildContracts)(nil), // 93: dota.CMsgServerToGCGetGuildContracts - (*CMsgServerToGCGetGuildContractsResponse)(nil), // 94: dota.CMsgServerToGCGetGuildContractsResponse - (*CMsgMatchDiretideCandy)(nil), // 95: dota.CMsgMatchDiretideCandy - (*CMsgGCToServerCheerData)(nil), // 96: dota.CMsgGCToServerCheerData - (*CMsgCheerConfig)(nil), // 97: dota.CMsgCheerConfig - (*CMsgGCToServerCheerConfig)(nil), // 98: dota.CMsgGCToServerCheerConfig - (*CMsgServerToGCGetCheerConfig)(nil), // 99: dota.CMsgServerToGCGetCheerConfig - (*CMsgServerToGCGetCheerConfigResponse)(nil), // 100: dota.CMsgServerToGCGetCheerConfigResponse - (*CMsgGCToServerCheerScalesOverride)(nil), // 101: dota.CMsgGCToServerCheerScalesOverride - (*CMsgGCToServerGetCheerState)(nil), // 102: dota.CMsgGCToServerGetCheerState - (*CMsgCheerTypeState)(nil), // 103: dota.CMsgCheerTypeState - (*CMsgCheerState)(nil), // 104: dota.CMsgCheerState - (*CMsgServerToGCReportCheerState)(nil), // 105: dota.CMsgServerToGCReportCheerState - (*CMsgServerToGCGetStickerHeroes)(nil), // 106: dota.CMsgServerToGCGetStickerHeroes - (*CMsgServerToGCGetStickerHeroesResponse)(nil), // 107: dota.CMsgServerToGCGetStickerHeroesResponse - (*CMsgGCToServerSetSteamLearnDisable)(nil), // 108: dota.CMsgGCToServerSetSteamLearnDisable - (*CMsgGCToServerSetSteamLearnInferencing)(nil), // 109: dota.CMsgGCToServerSetSteamLearnInferencing - (*CMsgGCToServerSetSteamLearnKeysChanged)(nil), // 110: dota.CMsgGCToServerSetSteamLearnKeysChanged - (*CMsgSteamLearnMatchInfo)(nil), // 111: dota.CMsgSteamLearnMatchInfo - (*CMsgSteamLearnMatchInfoPlayer)(nil), // 112: dota.CMsgSteamLearnMatchInfoPlayer - (*CMsgSteamLearnMatchHeroes)(nil), // 113: dota.CMsgSteamLearnMatchHeroes - (*CMsgSteamLearnMatchHero)(nil), // 114: dota.CMsgSteamLearnMatchHero + (*CMsgGCToServerEvaluateToxicChat)(nil), // 58: dota.CMsgGCToServerEvaluateToxicChat + (*CMsgServerToGCEvaluateToxicChat)(nil), // 59: dota.CMsgServerToGCEvaluateToxicChat + (*CMsgServerToGCEvaluateToxicChatResponse)(nil), // 60: dota.CMsgServerToGCEvaluateToxicChatResponse + (*CMsgSignOutAssassinMiniGameInfo)(nil), // 61: dota.CMsgSignOutAssassinMiniGameInfo + (*CMsgServerToGCKillSummaries)(nil), // 62: dota.CMsgServerToGCKillSummaries + (*CMsgGCToServerPredictionResult)(nil), // 63: dota.CMsgGCToServerPredictionResult + (*CMsgServerToGCLockCharmTrading)(nil), // 64: dota.CMsgServerToGCLockCharmTrading + (*CMsgSignOutUpdatePlayerChallenge)(nil), // 65: dota.CMsgSignOutUpdatePlayerChallenge + (*CMsgServerToGCRerollPlayerChallenge)(nil), // 66: dota.CMsgServerToGCRerollPlayerChallenge + (*CMsgSpendWager)(nil), // 67: dota.CMsgSpendWager + (*CMsgSignOutXPCoins)(nil), // 68: dota.CMsgSignOutXPCoins + (*CMsgSignOutBounties)(nil), // 69: dota.CMsgSignOutBounties + (*CMsgSignOutCommunityGoalProgress)(nil), // 70: dota.CMsgSignOutCommunityGoalProgress + (*CMsgServerToGCCloseCompendiumInGamePredictionVoting)(nil), // 71: dota.CMsgServerToGCCloseCompendiumInGamePredictionVoting + (*CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse)(nil), // 72: dota.CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse + (*CMsgServerToGCCompendiumInGamePredictionResults)(nil), // 73: dota.CMsgServerToGCCompendiumInGamePredictionResults + (*CMsgServerToGCCompendiumChosenInGamePredictions)(nil), // 74: dota.CMsgServerToGCCompendiumChosenInGamePredictions + (*CMsgGCToGCCompendiumInGamePredictionResults)(nil), // 75: dota.CMsgGCToGCCompendiumInGamePredictionResults + (*CMsgServerToGCMatchPlayerItemPurchaseHistory)(nil), // 76: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory + (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory)(nil), // 77: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory + (*CMsgServerToGCMatchStateHistory)(nil), // 78: dota.CMsgServerToGCMatchStateHistory + (*CMsgMatchStateSteamMLEntry)(nil), // 79: dota.CMsgMatchStateSteamMLEntry + (*CMsgLaneSelectionSteamMLEntry)(nil), // 80: dota.CMsgLaneSelectionSteamMLEntry + (*CMsgAbilitySelectionSteamMLEntry)(nil), // 81: dota.CMsgAbilitySelectionSteamMLEntry + (*CMsgItemPurchasePregameSteamMLEntry)(nil), // 82: dota.CMsgItemPurchasePregameSteamMLEntry + (*CMsgItemPurchaseSteamMLEntry)(nil), // 83: dota.CMsgItemPurchaseSteamMLEntry + (*CMsgItemPurchaseSequenceSteamMLEntry)(nil), // 84: dota.CMsgItemPurchaseSequenceSteamMLEntry + (*CMsgServerToGCCavernCrawlIsHeroActive)(nil), // 85: dota.CMsgServerToGCCavernCrawlIsHeroActive + (*CMsgServerToGCPlayerChallengeHistory)(nil), // 86: dota.CMsgServerToGCPlayerChallengeHistory + (*CMsgServerToGCCavernCrawlIsHeroActiveResponse)(nil), // 87: dota.CMsgServerToGCCavernCrawlIsHeroActiveResponse + (*CMsgNeutralItemStats)(nil), // 88: dota.CMsgNeutralItemStats + (*CMsgGCToServerLobbyHeroBanRates)(nil), // 89: dota.CMsgGCToServerLobbyHeroBanRates + (*CMsgSignOutGuildContractProgress)(nil), // 90: dota.CMsgSignOutGuildContractProgress + (*CMsgSignOutGuildChallengeProgress)(nil), // 91: dota.CMsgSignOutGuildChallengeProgress + (*CMsgSignOutMVPStats)(nil), // 92: dota.CMsgSignOutMVPStats + (*CMsgGCToServerRecordTrainingData)(nil), // 93: dota.CMsgGCToServerRecordTrainingData + (*CMsgServerToGCGetGuildContracts)(nil), // 94: dota.CMsgServerToGCGetGuildContracts + (*CMsgServerToGCGetGuildContractsResponse)(nil), // 95: dota.CMsgServerToGCGetGuildContractsResponse + (*CMsgMatchDiretideCandy)(nil), // 96: dota.CMsgMatchDiretideCandy + (*CMsgGCToServerCheerData)(nil), // 97: dota.CMsgGCToServerCheerData + (*CMsgCheerConfig)(nil), // 98: dota.CMsgCheerConfig + (*CMsgGCToServerCheerConfig)(nil), // 99: dota.CMsgGCToServerCheerConfig + (*CMsgServerToGCGetCheerConfig)(nil), // 100: dota.CMsgServerToGCGetCheerConfig + (*CMsgServerToGCGetCheerConfigResponse)(nil), // 101: dota.CMsgServerToGCGetCheerConfigResponse + (*CMsgGCToServerCheerScalesOverride)(nil), // 102: dota.CMsgGCToServerCheerScalesOverride + (*CMsgGCToServerGetCheerState)(nil), // 103: dota.CMsgGCToServerGetCheerState + (*CMsgCheerTypeState)(nil), // 104: dota.CMsgCheerTypeState + (*CMsgCheerState)(nil), // 105: dota.CMsgCheerState + (*CMsgServerToGCReportCheerState)(nil), // 106: dota.CMsgServerToGCReportCheerState + (*CMsgServerToGCGetStickerHeroes)(nil), // 107: dota.CMsgServerToGCGetStickerHeroes + (*CMsgServerToGCGetStickerHeroesResponse)(nil), // 108: dota.CMsgServerToGCGetStickerHeroesResponse + (*CMsgGCToServerSteamLearnAccessTokensChanged)(nil), // 109: dota.CMsgGCToServerSteamLearnAccessTokensChanged + (*CMsgSteamLearnMatchInfo)(nil), // 110: dota.CMsgSteamLearnMatchInfo + (*CMsgSteamLearnMatchInfoPlayer)(nil), // 111: dota.CMsgSteamLearnMatchInfoPlayer + (*CMsgSteamLearnMatchHeroes)(nil), // 112: dota.CMsgSteamLearnMatchHeroes + (*CMsgSteamLearnMatchHero)(nil), // 113: dota.CMsgSteamLearnMatchHero + (*CMsgSteamLearnPlayerTimedStats)(nil), // 114: dota.CMsgSteamLearnPlayerTimedStats (*CMsgSteamLearnMatchState)(nil), // 115: dota.CMsgSteamLearnMatchState (*CMsgSteamLearnItemPurchase)(nil), // 116: dota.CMsgSteamLearnItemPurchase (*CMsgSteamLearnPreGameItemPurchases)(nil), // 117: dota.CMsgSteamLearnPreGameItemPurchases - (*CMsgSteamLearnAbilitySkill)(nil), // 118: dota.CMsgSteamLearnAbilitySkill - (*CMsgSteamLearnWardPlacement)(nil), // 119: dota.CMsgSteamLearnWardPlacement - (*CMsgSignOutMuertaMinigame)(nil), // 120: dota.CMsgSignOutMuertaMinigame - (*CMsgSignOutMapStats)(nil), // 121: dota.CMsgSignOutMapStats - (*CMsgPoorNetworkConditions_Player)(nil), // 122: dota.CMsgPoorNetworkConditions.Player - (*CMsgConnectedPlayers_Player)(nil), // 123: dota.CMsgConnectedPlayers.Player - (*CMsgConnectedPlayers_PlayerDraft)(nil), // 124: dota.CMsgConnectedPlayers.PlayerDraft - (*CMsgSignOutGameplayStats_CPlayer)(nil), // 125: dota.CMsgSignOutGameplayStats.CPlayer - (*CMsgSignOutGameplayStats_CTeam)(nil), // 126: dota.CMsgSignOutGameplayStats.CTeam - (*CMsgGameMatchSignOut_CTeam)(nil), // 127: dota.CMsgGameMatchSignOut.CTeam - (*CMsgGameMatchSignOut_CAdditionalSignoutMsg)(nil), // 128: dota.CMsgGameMatchSignOut.CAdditionalSignoutMsg - (*CMsgGameMatchSignOut_CSocialFeedMatchEvent)(nil), // 129: dota.CMsgGameMatchSignOut.CSocialFeedMatchEvent - (*CMsgGameMatchSignOut_CCustomGameData)(nil), // 130: dota.CMsgGameMatchSignOut.CCustomGameData - (*CMsgGameMatchSignOut_EventGameLeaderboardEntry)(nil), // 131: dota.CMsgGameMatchSignOut.EventGameLeaderboardEntry - (*CMsgGameMatchSignOut_WardPlacement)(nil), // 132: dota.CMsgGameMatchSignOut.WardPlacement - (*CMsgGameMatchSignOut_CTeam_CPlayer)(nil), // 133: dota.CMsgGameMatchSignOut.CTeam.CPlayer - (*CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData)(nil), // 134: dota.CMsgGameMatchSignOut.CTeam.CPlayer.CCustomGameData - (*CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived)(nil), // 135: dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageReceived - (*CMsgSignOutTextMuteInfo_TextMuteMessage)(nil), // 136: dota.CMsgSignOutTextMuteInfo.TextMuteMessage - (*CMsgSignOutCommunicationSummary_PlayerCommunication)(nil), // 137: dota.CMsgSignOutCommunicationSummary.PlayerCommunication - (*CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail)(nil), // 138: dota.CMsgSignOutCommunicationSummary.PlayerCommunication.PingDetail - (*CMsgGameMatchSignoutResponse_PlayerMetadata)(nil), // 139: dota.CMsgGameMatchSignoutResponse.PlayerMetadata - (*CMsgDOTALiveScoreboardUpdate_Team)(nil), // 140: dota.CMsgDOTALiveScoreboardUpdate.Team - (*CMsgDOTALiveScoreboardUpdate_Team_Player)(nil), // 141: dota.CMsgDOTALiveScoreboardUpdate.Team.Player - (*CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility)(nil), // 142: dota.CMsgDOTALiveScoreboardUpdate.Team.Player.HeroAbility - (*CMsgServerToGCRequestBatchPlayerResourcesResponse_Result)(nil), // 143: dota.CMsgServerToGCRequestBatchPlayerResourcesResponse.Result - (*CMsgDOTAAwardEventPoints_AwardPoints)(nil), // 144: dota.CMsgDOTAAwardEventPoints.AwardPoints - (*CMsgServerToGCMatchConnectionStats_Player)(nil), // 145: dota.CMsgServerToGCMatchConnectionStats.Player - (*CSerializedCombatLog_Dictionary)(nil), // 146: dota.CSerializedCombatLog.Dictionary - (*CSerializedCombatLog_Dictionary_DictString)(nil), // 147: dota.CSerializedCombatLog.Dictionary.DictString - (*CMsgServerToGCVictoryPredictions_Record)(nil), // 148: dota.CMsgServerToGCVictoryPredictions.Record - (*CMsgServerToGCKillSummaries_KillSummary)(nil), // 149: dota.CMsgServerToGCKillSummaries.KillSummary - (*CMsgGCToServerPredictionResult_Prediction)(nil), // 150: dota.CMsgGCToServerPredictionResult.Prediction - (*CMsgSignOutUpdatePlayerChallenge_Challenge)(nil), // 151: dota.CMsgSignOutUpdatePlayerChallenge.Challenge - (*CMsgSpendWager_Player)(nil), // 152: dota.CMsgSpendWager.Player - (*CMsgSignOutXPCoins_Player)(nil), // 153: dota.CMsgSignOutXPCoins.Player - (*CMsgSignOutBounties_Bounty)(nil), // 154: dota.CMsgSignOutBounties.Bounty - (*CMsgSignOutCommunityGoalProgress_EventGoalIncrement)(nil), // 155: dota.CMsgSignOutCommunityGoalProgress.EventGoalIncrement - (*CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult)(nil), // 156: dota.CMsgServerToGCCompendiumInGamePredictionResults.PredictionResult - (*CMsgServerToGCCompendiumChosenInGamePredictions_Prediction)(nil), // 157: dota.CMsgServerToGCCompendiumChosenInGamePredictions.Prediction - (*CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase)(nil), // 158: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.ItemPurchase - (*CMsgServerToGCMatchPlayerItemPurchaseHistory_Player)(nil), // 159: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.Player - (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip)(nil), // 160: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.ItemEquip - (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player)(nil), // 161: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.Player - (*CMsgServerToGCMatchStateHistory_PlayerState)(nil), // 162: dota.CMsgServerToGCMatchStateHistory.PlayerState - (*CMsgServerToGCMatchStateHistory_TeamState)(nil), // 163: dota.CMsgServerToGCMatchStateHistory.TeamState - (*CMsgServerToGCMatchStateHistory_MatchState)(nil), // 164: dota.CMsgServerToGCMatchStateHistory.MatchState - (*CMsgServerToGCPlayerChallengeHistory_PlayerChallenge)(nil), // 165: dota.CMsgServerToGCPlayerChallengeHistory.PlayerChallenge - (*CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults)(nil), // 166: dota.CMsgServerToGCCavernCrawlIsHeroActiveResponse.MapResults - (*CMsgDetailedGameStats_PlayerStatEntry)(nil), // 167: dota.CMsgDetailedGameStats.PlayerStatEntry - (*CMsgDetailedGameStats_GameStats)(nil), // 168: dota.CMsgDetailedGameStats.GameStats - (*CMsgDetailedGameStats_MinuteEntry)(nil), // 169: dota.CMsgDetailedGameStats.MinuteEntry - (*CMsgDetailedGameStats_PlayerInfo)(nil), // 170: dota.CMsgDetailedGameStats.PlayerInfo - (*CMsgNeutralItemStats_NeutralItem)(nil), // 171: dota.CMsgNeutralItemStats.NeutralItem - (*CMsgGCToServerLobbyHeroBanRates_HeroBanEntry)(nil), // 172: dota.CMsgGCToServerLobbyHeroBanRates.HeroBanEntry - (*CMsgSignOutGuildContractProgress_CompletedGuildEventContracts)(nil), // 173: dota.CMsgSignOutGuildContractProgress.CompletedGuildEventContracts - (*CMsgSignOutGuildContractProgress_PlayerContract)(nil), // 174: dota.CMsgSignOutGuildContractProgress.PlayerContract - (*CMsgSignOutGuildChallengeProgress_ChallengeProgress)(nil), // 175: dota.CMsgSignOutGuildChallengeProgress.ChallengeProgress - (*CMsgSignOutMVPStats_Player)(nil), // 176: dota.CMsgSignOutMVPStats.Player - (*CMsgSignOutMVPStats_Player_KillEaterEvent)(nil), // 177: dota.CMsgSignOutMVPStats.Player.KillEaterEvent - (*CMsgServerToGCGetGuildContractsResponse_ContractDetails)(nil), // 178: dota.CMsgServerToGCGetGuildContractsResponse.ContractDetails - (*CMsgServerToGCGetGuildContractsResponse_Player)(nil), // 179: dota.CMsgServerToGCGetGuildContractsResponse.Player - (*CMsgMatchDiretideCandy_CandyDetails)(nil), // 180: dota.CMsgMatchDiretideCandy.CandyDetails - (*CMsgMatchDiretideCandy_PlayerCandy)(nil), // 181: dota.CMsgMatchDiretideCandy.PlayerCandy - (*CMsgGCToServerCheerData_CheerTypeCount)(nil), // 182: dota.CMsgGCToServerCheerData.CheerTypeCount - (*CMsgServerToGCGetStickerHeroesResponse_Player)(nil), // 183: dota.CMsgServerToGCGetStickerHeroesResponse.Player + (*CMsgSteamLearnNeutralItemPurchase)(nil), // 118: dota.CMsgSteamLearnNeutralItemPurchase + (*CMsgSteamLearnAbilitySkill)(nil), // 119: dota.CMsgSteamLearnAbilitySkill + (*CMsgSteamLearnWardPlacement)(nil), // 120: dota.CMsgSteamLearnWardPlacement + (*CMsgSignOutMuertaMinigame)(nil), // 121: dota.CMsgSignOutMuertaMinigame + (*CMsgSignOutMapStats)(nil), // 122: dota.CMsgSignOutMapStats + (*CMsgServerToGCNewBloomGift)(nil), // 123: dota.CMsgServerToGCNewBloomGift + (*CMsgServerToGCNewBloomGiftResponse)(nil), // 124: dota.CMsgServerToGCNewBloomGiftResponse + (*CMsgPoorNetworkConditions_Player)(nil), // 125: dota.CMsgPoorNetworkConditions.Player + (*CMsgConnectedPlayers_Player)(nil), // 126: dota.CMsgConnectedPlayers.Player + (*CMsgConnectedPlayers_PlayerDraft)(nil), // 127: dota.CMsgConnectedPlayers.PlayerDraft + (*CMsgSignOutGameplayStats_CPlayer)(nil), // 128: dota.CMsgSignOutGameplayStats.CPlayer + (*CMsgSignOutGameplayStats_CTeam)(nil), // 129: dota.CMsgSignOutGameplayStats.CTeam + (*CMsgGameMatchSignOut_CTeam)(nil), // 130: dota.CMsgGameMatchSignOut.CTeam + (*CMsgGameMatchSignOut_CAdditionalSignoutMsg)(nil), // 131: dota.CMsgGameMatchSignOut.CAdditionalSignoutMsg + (*CMsgGameMatchSignOut_CSocialFeedMatchEvent)(nil), // 132: dota.CMsgGameMatchSignOut.CSocialFeedMatchEvent + (*CMsgGameMatchSignOut_CCustomGameData)(nil), // 133: dota.CMsgGameMatchSignOut.CCustomGameData + (*CMsgGameMatchSignOut_EventGameLeaderboardEntry)(nil), // 134: dota.CMsgGameMatchSignOut.EventGameLeaderboardEntry + (*CMsgGameMatchSignOut_WardPlacement)(nil), // 135: dota.CMsgGameMatchSignOut.WardPlacement + (*CMsgGameMatchSignOut_CTeam_CPlayer)(nil), // 136: dota.CMsgGameMatchSignOut.CTeam.CPlayer + (*CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData)(nil), // 137: dota.CMsgGameMatchSignOut.CTeam.CPlayer.CCustomGameData + (*CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived)(nil), // 138: dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageReceived + (*CMsgSignOutTextMuteInfo_TextMuteMessage)(nil), // 139: dota.CMsgSignOutTextMuteInfo.TextMuteMessage + (*CMsgSignOutCommunicationSummary_PlayerCommunication)(nil), // 140: dota.CMsgSignOutCommunicationSummary.PlayerCommunication + (*CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail)(nil), // 141: dota.CMsgSignOutCommunicationSummary.PlayerCommunication.PingDetail + (*CMsgGameMatchSignoutResponse_PlayerMetadata)(nil), // 142: dota.CMsgGameMatchSignoutResponse.PlayerMetadata + (*CMsgDOTALiveScoreboardUpdate_Team)(nil), // 143: dota.CMsgDOTALiveScoreboardUpdate.Team + (*CMsgDOTALiveScoreboardUpdate_Team_Player)(nil), // 144: dota.CMsgDOTALiveScoreboardUpdate.Team.Player + (*CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility)(nil), // 145: dota.CMsgDOTALiveScoreboardUpdate.Team.Player.HeroAbility + (*CMsgServerToGCRequestBatchPlayerResourcesResponse_Result)(nil), // 146: dota.CMsgServerToGCRequestBatchPlayerResourcesResponse.Result + (*CMsgDOTAAwardEventPoints_AwardPoints)(nil), // 147: dota.CMsgDOTAAwardEventPoints.AwardPoints + (*CMsgServerToGCMatchConnectionStats_Player)(nil), // 148: dota.CMsgServerToGCMatchConnectionStats.Player + (*CSerializedCombatLog_Dictionary)(nil), // 149: dota.CSerializedCombatLog.Dictionary + (*CSerializedCombatLog_Dictionary_DictString)(nil), // 150: dota.CSerializedCombatLog.Dictionary.DictString + (*CMsgServerToGCVictoryPredictions_Record)(nil), // 151: dota.CMsgServerToGCVictoryPredictions.Record + (*CMsgServerToGCKillSummaries_KillSummary)(nil), // 152: dota.CMsgServerToGCKillSummaries.KillSummary + (*CMsgGCToServerPredictionResult_Prediction)(nil), // 153: dota.CMsgGCToServerPredictionResult.Prediction + (*CMsgSignOutUpdatePlayerChallenge_Challenge)(nil), // 154: dota.CMsgSignOutUpdatePlayerChallenge.Challenge + (*CMsgSpendWager_Player)(nil), // 155: dota.CMsgSpendWager.Player + (*CMsgSignOutXPCoins_Player)(nil), // 156: dota.CMsgSignOutXPCoins.Player + (*CMsgSignOutBounties_Bounty)(nil), // 157: dota.CMsgSignOutBounties.Bounty + (*CMsgSignOutCommunityGoalProgress_EventGoalIncrement)(nil), // 158: dota.CMsgSignOutCommunityGoalProgress.EventGoalIncrement + (*CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult)(nil), // 159: dota.CMsgServerToGCCompendiumInGamePredictionResults.PredictionResult + (*CMsgServerToGCCompendiumChosenInGamePredictions_Prediction)(nil), // 160: dota.CMsgServerToGCCompendiumChosenInGamePredictions.Prediction + (*CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase)(nil), // 161: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.ItemPurchase + (*CMsgServerToGCMatchPlayerItemPurchaseHistory_Player)(nil), // 162: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.Player + (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip)(nil), // 163: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.ItemEquip + (*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player)(nil), // 164: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.Player + (*CMsgServerToGCMatchStateHistory_PlayerState)(nil), // 165: dota.CMsgServerToGCMatchStateHistory.PlayerState + (*CMsgServerToGCMatchStateHistory_TeamState)(nil), // 166: dota.CMsgServerToGCMatchStateHistory.TeamState + (*CMsgServerToGCMatchStateHistory_MatchState)(nil), // 167: dota.CMsgServerToGCMatchStateHistory.MatchState + (*CMsgServerToGCPlayerChallengeHistory_PlayerChallenge)(nil), // 168: dota.CMsgServerToGCPlayerChallengeHistory.PlayerChallenge + (*CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults)(nil), // 169: dota.CMsgServerToGCCavernCrawlIsHeroActiveResponse.MapResults + (*CMsgNeutralItemStats_NeutralItem)(nil), // 170: dota.CMsgNeutralItemStats.NeutralItem + (*CMsgGCToServerLobbyHeroBanRates_HeroBanEntry)(nil), // 171: dota.CMsgGCToServerLobbyHeroBanRates.HeroBanEntry + (*CMsgSignOutGuildContractProgress_CompletedGuildEventContracts)(nil), // 172: dota.CMsgSignOutGuildContractProgress.CompletedGuildEventContracts + (*CMsgSignOutGuildContractProgress_PlayerContract)(nil), // 173: dota.CMsgSignOutGuildContractProgress.PlayerContract + (*CMsgSignOutGuildChallengeProgress_ChallengeProgress)(nil), // 174: dota.CMsgSignOutGuildChallengeProgress.ChallengeProgress + (*CMsgSignOutMVPStats_Player)(nil), // 175: dota.CMsgSignOutMVPStats.Player + (*CMsgSignOutMVPStats_Player_KillEaterEvent)(nil), // 176: dota.CMsgSignOutMVPStats.Player.KillEaterEvent + (*CMsgServerToGCGetGuildContractsResponse_ContractDetails)(nil), // 177: dota.CMsgServerToGCGetGuildContractsResponse.ContractDetails + (*CMsgServerToGCGetGuildContractsResponse_Player)(nil), // 178: dota.CMsgServerToGCGetGuildContractsResponse.Player + (*CMsgMatchDiretideCandy_CandyDetails)(nil), // 179: dota.CMsgMatchDiretideCandy.CandyDetails + (*CMsgMatchDiretideCandy_PlayerCandy)(nil), // 180: dota.CMsgMatchDiretideCandy.PlayerCandy + (*CMsgGCToServerCheerData_CheerTypeCount)(nil), // 181: dota.CMsgGCToServerCheerData.CheerTypeCount + (*CMsgServerToGCGetStickerHeroesResponse_Player)(nil), // 182: dota.CMsgServerToGCGetStickerHeroesResponse.Player + (*CMsgSteamLearnPlayerTimedStats_StatBucket)(nil), // 183: dota.CMsgSteamLearnPlayerTimedStats.StatBucket (*CMsgSteamLearnMatchState_PlayerState)(nil), // 184: dota.CMsgSteamLearnMatchState.PlayerState (*CMsgSteamLearnMatchState_TeamState)(nil), // 185: dota.CMsgSteamLearnMatchState.TeamState (*CMsgSteamLearnWardPlacement_Location)(nil), // 186: dota.CMsgSteamLearnWardPlacement.Location @@ -17639,36 +17590,38 @@ var file_dota_gcmessages_server_proto_goTypes = []interface{}{ (*CMsgEconPlayerStrangeCountAdjustment)(nil), // 195: dota.CMsgEconPlayerStrangeCountAdjustment (*CExtraMsgBlock)(nil), // 196: dota.CExtraMsgBlock (DOTA_GC_TEAM)(0), // 197: dota.DOTA_GC_TEAM - (DOTABotDifficulty)(0), // 198: dota.DOTABotDifficulty - (*CLobbyTimedRewardDetails)(nil), // 199: dota.CLobbyTimedRewardDetails - (*CSODOTALobbyMember)(nil), // 200: dota.CSODOTALobbyMember - (*CMsgDOTAMatch)(nil), // 201: dota.CMsgDOTAMatch - (*CMvpData)(nil), // 202: dota.CMvpData - (EEvent)(0), // 203: dota.EEvent - (DOTA_TournamentEvents)(0), // 204: dota.DOTA_TournamentEvents - (*CProtoItemHeroStatue)(nil), // 205: dota.CProtoItemHeroStatue - (*CMsgDOTACombatLogEntry)(nil), // 206: dota.CMsgDOTACombatLogEntry - (*CMsgClientToGCRerollPlayerChallenge)(nil), // 207: dota.CMsgClientToGCRerollPlayerChallenge - (*CMsgSteamLearnHMACKeys)(nil), // 208: dota.CMsgSteamLearnHMACKeys - (*CMsgMapStatsSnapshot)(nil), // 209: dota.CMsgMapStatsSnapshot - (*CMatchPlayerTimedStats)(nil), // 210: dota.CMatchPlayerTimedStats - (*CMatchTeamTimedStats)(nil), // 211: dota.CMatchTeamTimedStats - (*CMatchPlayerAbilityUpgrade)(nil), // 212: dota.CMatchPlayerAbilityUpgrade - (*CMatchAdditionalUnitInventory)(nil), // 213: dota.CMatchAdditionalUnitInventory - (*CMatchPlayerPermanentBuff)(nil), // 214: dota.CMatchPlayerPermanentBuff - (EPlayerChallengeHistoryType)(0), // 215: dota.EPlayerChallengeHistoryType - (*CMsgStickerHeroes)(nil), // 216: dota.CMsgStickerHeroes + (*CMsgTrackedStat)(nil), // 198: dota.CMsgTrackedStat + (DOTABotDifficulty)(0), // 199: dota.DOTABotDifficulty + (*CLobbyTimedRewardDetails)(nil), // 200: dota.CLobbyTimedRewardDetails + (*CSODOTALobbyMember)(nil), // 201: dota.CSODOTALobbyMember + (*CMsgDOTAMatch)(nil), // 202: dota.CMsgDOTAMatch + (*CMvpData)(nil), // 203: dota.CMvpData + (EEvent)(0), // 204: dota.EEvent + (DOTA_TournamentEvents)(0), // 205: dota.DOTA_TournamentEvents + (*CProtoItemHeroStatue)(nil), // 206: dota.CProtoItemHeroStatue + (*CMsgDOTACombatLogEntry)(nil), // 207: dota.CMsgDOTACombatLogEntry + (*CMsgClientToGCRerollPlayerChallenge)(nil), // 208: dota.CMsgClientToGCRerollPlayerChallenge + (*CMsgSteamLearnAccessTokens)(nil), // 209: dota.CMsgSteamLearnAccessTokens + (*CMsgMapStatsSnapshot)(nil), // 210: dota.CMsgMapStatsSnapshot + (ENewBloomGiftingResponse)(0), // 211: dota.ENewBloomGiftingResponse + (*CMatchPlayerTimedStats)(nil), // 212: dota.CMatchPlayerTimedStats + (*CMatchTeamTimedStats)(nil), // 213: dota.CMatchTeamTimedStats + (*CMatchPlayerAbilityUpgrade)(nil), // 214: dota.CMatchPlayerAbilityUpgrade + (*CMatchAdditionalUnitInventory)(nil), // 215: dota.CMatchAdditionalUnitInventory + (*CMatchPlayerPermanentBuff)(nil), // 216: dota.CMatchPlayerPermanentBuff + (EPlayerChallengeHistoryType)(0), // 217: dota.EPlayerChallengeHistoryType + (*CMsgStickerHeroes)(nil), // 218: dota.CMsgStickerHeroes } var file_dota_gcmessages_server_proto_depIdxs = []int32{ 0, // 0: dota.CMsgPoorNetworkConditions.detection_type:type_name -> dota.EPoorNetworkConditionsType - 122, // 1: dota.CMsgPoorNetworkConditions.players:type_name -> dota.CMsgPoorNetworkConditions.Player + 125, // 1: dota.CMsgPoorNetworkConditions.players:type_name -> dota.CMsgPoorNetworkConditions.Player 188, // 2: dota.CMsgGameserverCrash.game_state:type_name -> dota.DOTA_GameState - 123, // 3: dota.CMsgConnectedPlayers.connected_players:type_name -> dota.CMsgConnectedPlayers.Player - 123, // 4: dota.CMsgConnectedPlayers.disconnected_players:type_name -> dota.CMsgConnectedPlayers.Player + 126, // 3: dota.CMsgConnectedPlayers.connected_players:type_name -> dota.CMsgConnectedPlayers.Player + 126, // 4: dota.CMsgConnectedPlayers.disconnected_players:type_name -> dota.CMsgConnectedPlayers.Player 188, // 5: dota.CMsgConnectedPlayers.game_state:type_name -> dota.DOTA_GameState 8, // 6: dota.CMsgConnectedPlayers.poor_network_conditions:type_name -> dota.CMsgPoorNetworkConditions 1, // 7: dota.CMsgConnectedPlayers.send_reason:type_name -> dota.CMsgConnectedPlayers.SendReason - 124, // 8: dota.CMsgConnectedPlayers.player_draft:type_name -> dota.CMsgConnectedPlayers.PlayerDraft + 127, // 8: dota.CMsgConnectedPlayers.player_draft:type_name -> dota.CMsgConnectedPlayers.PlayerDraft 2, // 9: dota.CMsgGameServerInfo.server_type:type_name -> dota.CMsgGameServerInfo.ServerType 3, // 10: dota.CMsgGameServerInfo.allow_custom_games:type_name -> dota.CMsgGameServerInfo.CustomGames 189, // 11: dota.CMsgLeaverDetected.leaver_status:type_name -> dota.DOTALeaverStatus_t @@ -17678,135 +17631,136 @@ var file_dota_gcmessages_server_proto_depIdxs = []int32{ 192, // 15: dota.CMsgDOTAFantasyFinalPlayerStats.stats:type_name -> dota.CMsgDOTAFantasyPlayerStats 192, // 16: dota.CMsgDOTAFantasyLivePlayerStats.stats:type_name -> dota.CMsgDOTAFantasyPlayerStats 193, // 17: dota.CMsgServerToGCRealtimeStats.delayed:type_name -> dota.CMsgDOTARealtimeGameStatsTerse - 126, // 18: dota.CMsgSignOutGameplayStats.teams:type_name -> dota.CMsgSignOutGameplayStats.CTeam - 127, // 19: dota.CMsgGameMatchSignOut.teams:type_name -> dota.CMsgGameMatchSignOut.CTeam + 129, // 18: dota.CMsgSignOutGameplayStats.teams:type_name -> dota.CMsgSignOutGameplayStats.CTeam + 130, // 19: dota.CMsgGameMatchSignOut.teams:type_name -> dota.CMsgGameMatchSignOut.CTeam 194, // 20: dota.CMsgGameMatchSignOut.picks_bans:type_name -> dota.CMatchHeroSelectEvent 192, // 21: dota.CMsgGameMatchSignOut.fantasy_stats:type_name -> dota.CMsgDOTAFantasyPlayerStats 195, // 22: dota.CMsgGameMatchSignOut.player_strange_count_adjustments:type_name -> dota.CMsgEconPlayerStrangeCountAdjustment 8, // 23: dota.CMsgGameMatchSignOut.poor_network_conditions:type_name -> dota.CMsgPoorNetworkConditions - 128, // 24: dota.CMsgGameMatchSignOut.additional_msgs:type_name -> dota.CMsgGameMatchSignOut.CAdditionalSignoutMsg - 129, // 25: dota.CMsgGameMatchSignOut.social_feed_events:type_name -> dota.CMsgGameMatchSignOut.CSocialFeedMatchEvent - 130, // 26: dota.CMsgGameMatchSignOut.custom_game_data:type_name -> dota.CMsgGameMatchSignOut.CCustomGameData - 131, // 27: dota.CMsgGameMatchSignOut.event_game_leaderboard_entries:type_name -> dota.CMsgGameMatchSignOut.EventGameLeaderboardEntry - 132, // 28: dota.CMsgGameMatchSignOut.ward_placements:type_name -> dota.CMsgGameMatchSignOut.WardPlacement + 131, // 24: dota.CMsgGameMatchSignOut.additional_msgs:type_name -> dota.CMsgGameMatchSignOut.CAdditionalSignoutMsg + 132, // 25: dota.CMsgGameMatchSignOut.social_feed_events:type_name -> dota.CMsgGameMatchSignOut.CSocialFeedMatchEvent + 133, // 26: dota.CMsgGameMatchSignOut.custom_game_data:type_name -> dota.CMsgGameMatchSignOut.CCustomGameData + 134, // 27: dota.CMsgGameMatchSignOut.event_game_leaderboard_entries:type_name -> dota.CMsgGameMatchSignOut.EventGameLeaderboardEntry + 135, // 28: dota.CMsgGameMatchSignOut.ward_placements:type_name -> dota.CMsgGameMatchSignOut.WardPlacement 19, // 29: dota.CMsgGameMatchSignOut.gameplay_stats:type_name -> dota.CMsgSignOutGameplayStats 196, // 30: dota.CMsgGameMatchSignOut.extra_messages:type_name -> dota.CExtraMsgBlock 197, // 31: dota.CMsgGameMatchSignOut.winning_team:type_name -> dota.DOTA_GC_TEAM - 194, // 32: dota.CMsgSignOutDraftInfo.picks_bans:type_name -> dota.CMatchHeroSelectEvent - 198, // 33: dota.CMsgSignOutBotInfo.bot_difficulty_radiant:type_name -> dota.DOTABotDifficulty - 198, // 34: dota.CMsgSignOutBotInfo.bot_difficulty_dire:type_name -> dota.DOTABotDifficulty - 136, // 35: dota.CMsgSignOutTextMuteInfo.text_mute_messages:type_name -> dota.CMsgSignOutTextMuteInfo.TextMuteMessage - 137, // 36: dota.CMsgSignOutCommunicationSummary.players:type_name -> dota.CMsgSignOutCommunicationSummary.PlayerCommunication - 199, // 37: dota.CMsgGameMatchSignoutResponse.timed_reward_details:type_name -> dota.CLobbyTimedRewardDetails - 200, // 38: dota.CMsgGameMatchSignoutResponse.xp_reward_details:type_name -> dota.CSODOTALobbyMember - 201, // 39: dota.CMsgGameMatchSignoutResponse.match_details:type_name -> dota.CMsgDOTAMatch - 139, // 40: dota.CMsgGameMatchSignoutResponse.players_metadata:type_name -> dota.CMsgGameMatchSignoutResponse.PlayerMetadata - 202, // 41: dota.CMsgGameMatchSignoutResponse.mvp_data:type_name -> dota.CMvpData - 199, // 42: dota.CMsgTimedRewardContainer.timed_reward_details:type_name -> dota.CLobbyTimedRewardDetails - 203, // 43: dota.CMsgGameMatchSignOutEventGameData.event_id:type_name -> dota.EEvent - 140, // 44: dota.CMsgDOTALiveScoreboardUpdate.team_good:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team - 140, // 45: dota.CMsgDOTALiveScoreboardUpdate.team_bad:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team - 143, // 46: dota.CMsgServerToGCRequestBatchPlayerResourcesResponse.results:type_name -> dota.CMsgServerToGCRequestBatchPlayerResourcesResponse.Result - 204, // 47: dota.CMsgTournamentItemEvent.event_type:type_name -> dota.DOTA_TournamentEvents - 205, // 48: dota.CMsgTournamentItemEvent.hero_statues:type_name -> dota.CProtoItemHeroStatue - 204, // 49: dota.CMsgTournamentItemEventResponse.event_type:type_name -> dota.DOTA_TournamentEvents - 6, // 50: dota.CMsgGameServerSaveGameResult.result:type_name -> dota.CMsgGameServerSaveGameResult.Result - 144, // 51: dota.CMsgDOTAAwardEventPoints.award_points:type_name -> dota.CMsgDOTAAwardEventPoints.AwardPoints - 203, // 52: dota.CMsgDOTAAwardEventPoints.event_id:type_name -> dota.EEvent - 145, // 53: dota.CMsgServerToGCMatchConnectionStats.players:type_name -> dota.CMsgServerToGCMatchConnectionStats.Player - 146, // 54: dota.CSerializedCombatLog.dictionary:type_name -> dota.CSerializedCombatLog.Dictionary - 206, // 55: dota.CSerializedCombatLog.entries:type_name -> dota.CMsgDOTACombatLogEntry - 148, // 56: dota.CMsgServerToGCVictoryPredictions.records:type_name -> dota.CMsgServerToGCVictoryPredictions.Record - 149, // 57: dota.CMsgServerToGCKillSummaries.summaries:type_name -> dota.CMsgServerToGCKillSummaries.KillSummary - 150, // 58: dota.CMsgGCToServerPredictionResult.predictions:type_name -> dota.CMsgGCToServerPredictionResult.Prediction - 151, // 59: dota.CMsgSignOutUpdatePlayerChallenge.completed:type_name -> dota.CMsgSignOutUpdatePlayerChallenge.Challenge - 151, // 60: dota.CMsgSignOutUpdatePlayerChallenge.rerolled:type_name -> dota.CMsgSignOutUpdatePlayerChallenge.Challenge - 207, // 61: dota.CMsgServerToGCRerollPlayerChallenge.reroll_msg:type_name -> dota.CMsgClientToGCRerollPlayerChallenge - 152, // 62: dota.CMsgSpendWager.players:type_name -> dota.CMsgSpendWager.Player - 203, // 63: dota.CMsgSpendWager.event_id:type_name -> dota.EEvent - 153, // 64: dota.CMsgSignOutXPCoins.players:type_name -> dota.CMsgSignOutXPCoins.Player - 203, // 65: dota.CMsgSignOutXPCoins.event_id:type_name -> dota.EEvent - 154, // 66: dota.CMsgSignOutBounties.bounties:type_name -> dota.CMsgSignOutBounties.Bounty - 203, // 67: dota.CMsgSignOutBounties.event_id:type_name -> dota.EEvent - 203, // 68: dota.CMsgSignOutCommunityGoalProgress.event_id:type_name -> dota.EEvent - 155, // 69: dota.CMsgSignOutCommunityGoalProgress.event_increments:type_name -> dota.CMsgSignOutCommunityGoalProgress.EventGoalIncrement - 156, // 70: dota.CMsgServerToGCCompendiumInGamePredictionResults.results:type_name -> dota.CMsgServerToGCCompendiumInGamePredictionResults.PredictionResult - 157, // 71: dota.CMsgServerToGCCompendiumChosenInGamePredictions.predictions_chosen:type_name -> dota.CMsgServerToGCCompendiumChosenInGamePredictions.Prediction - 70, // 72: dota.CMsgGCToGCCompendiumInGamePredictionResults.results:type_name -> dota.CMsgServerToGCCompendiumInGamePredictionResults - 159, // 73: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.players:type_name -> dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.Player - 161, // 74: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.players:type_name -> dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.Player - 164, // 75: dota.CMsgServerToGCMatchStateHistory.match_states:type_name -> dota.CMsgServerToGCMatchStateHistory.MatchState - 164, // 76: dota.CMsgMatchStateSteamMLEntry.match_state:type_name -> dota.CMsgServerToGCMatchStateHistory.MatchState - 165, // 77: dota.CMsgServerToGCPlayerChallengeHistory.challenge_records:type_name -> dota.CMsgServerToGCPlayerChallengeHistory.PlayerChallenge - 166, // 78: dota.CMsgServerToGCCavernCrawlIsHeroActiveResponse.map_results:type_name -> dota.CMsgServerToGCCavernCrawlIsHeroActiveResponse.MapResults - 169, // 79: dota.CMsgDetailedGameStats.minutes:type_name -> dota.CMsgDetailedGameStats.MinuteEntry - 170, // 80: dota.CMsgDetailedGameStats.player_info:type_name -> dota.CMsgDetailedGameStats.PlayerInfo - 168, // 81: dota.CMsgDetailedGameStats.game_stats:type_name -> dota.CMsgDetailedGameStats.GameStats - 171, // 82: dota.CMsgNeutralItemStats.neutral_items:type_name -> dota.CMsgNeutralItemStats.NeutralItem - 172, // 83: dota.CMsgGCToServerLobbyHeroBanRates.ban_data:type_name -> dota.CMsgGCToServerLobbyHeroBanRates.HeroBanEntry - 174, // 84: dota.CMsgSignOutGuildContractProgress.player_contracts:type_name -> dota.CMsgSignOutGuildContractProgress.PlayerContract - 175, // 85: dota.CMsgSignOutGuildChallengeProgress.guild_challenges_progresses:type_name -> dota.CMsgSignOutGuildChallengeProgress.ChallengeProgress - 176, // 86: dota.CMsgSignOutMVPStats.players:type_name -> dota.CMsgSignOutMVPStats.Player - 179, // 87: dota.CMsgServerToGCGetGuildContractsResponse.player_contracts:type_name -> dota.CMsgServerToGCGetGuildContractsResponse.Player - 181, // 88: dota.CMsgMatchDiretideCandy.player_candy_data:type_name -> dota.CMsgMatchDiretideCandy.PlayerCandy - 203, // 89: dota.CMsgMatchDiretideCandy.event_id:type_name -> dota.EEvent - 182, // 90: dota.CMsgGCToServerCheerData.cheer_types:type_name -> dota.CMsgGCToServerCheerData.CheerTypeCount - 97, // 91: dota.CMsgGCToServerCheerConfig.cheer_config:type_name -> dota.CMsgCheerConfig - 97, // 92: dota.CMsgServerToGCGetCheerConfigResponse.cheer_config:type_name -> dota.CMsgCheerConfig - 103, // 93: dota.CMsgCheerState.cheer_types:type_name -> dota.CMsgCheerTypeState - 97, // 94: dota.CMsgServerToGCReportCheerState.cheer_config:type_name -> dota.CMsgCheerConfig - 104, // 95: dota.CMsgServerToGCReportCheerState.cheer_state:type_name -> dota.CMsgCheerState - 183, // 96: dota.CMsgServerToGCGetStickerHeroesResponse.players:type_name -> dota.CMsgServerToGCGetStickerHeroesResponse.Player - 208, // 97: dota.CMsgGCToServerSetSteamLearnKeysChanged.keys:type_name -> dota.CMsgSteamLearnHMACKeys - 185, // 98: dota.CMsgSteamLearnMatchState.radiant_state:type_name -> dota.CMsgSteamLearnMatchState.TeamState - 185, // 99: dota.CMsgSteamLearnMatchState.dire_state:type_name -> dota.CMsgSteamLearnMatchState.TeamState - 186, // 100: dota.CMsgSteamLearnWardPlacement.ward_loc:type_name -> dota.CMsgSteamLearnWardPlacement.Location - 186, // 101: dota.CMsgSteamLearnWardPlacement.existing_ward_locs:type_name -> dota.CMsgSteamLearnWardPlacement.Location - 187, // 102: dota.CMsgSignOutMapStats.players:type_name -> dota.CMsgSignOutMapStats.Player - 209, // 103: dota.CMsgSignOutMapStats.global_stats:type_name -> dota.CMsgMapStatsSnapshot + 198, // 32: dota.CMsgGameMatchSignOut.match_tracked_stats:type_name -> dota.CMsgTrackedStat + 194, // 33: dota.CMsgSignOutDraftInfo.picks_bans:type_name -> dota.CMatchHeroSelectEvent + 199, // 34: dota.CMsgSignOutBotInfo.bot_difficulty_radiant:type_name -> dota.DOTABotDifficulty + 199, // 35: dota.CMsgSignOutBotInfo.bot_difficulty_dire:type_name -> dota.DOTABotDifficulty + 139, // 36: dota.CMsgSignOutTextMuteInfo.text_mute_messages:type_name -> dota.CMsgSignOutTextMuteInfo.TextMuteMessage + 140, // 37: dota.CMsgSignOutCommunicationSummary.players:type_name -> dota.CMsgSignOutCommunicationSummary.PlayerCommunication + 200, // 38: dota.CMsgGameMatchSignoutResponse.timed_reward_details:type_name -> dota.CLobbyTimedRewardDetails + 201, // 39: dota.CMsgGameMatchSignoutResponse.xp_reward_details:type_name -> dota.CSODOTALobbyMember + 202, // 40: dota.CMsgGameMatchSignoutResponse.match_details:type_name -> dota.CMsgDOTAMatch + 142, // 41: dota.CMsgGameMatchSignoutResponse.players_metadata:type_name -> dota.CMsgGameMatchSignoutResponse.PlayerMetadata + 203, // 42: dota.CMsgGameMatchSignoutResponse.mvp_data:type_name -> dota.CMvpData + 200, // 43: dota.CMsgTimedRewardContainer.timed_reward_details:type_name -> dota.CLobbyTimedRewardDetails + 204, // 44: dota.CMsgGameMatchSignOutEventGameData.event_id:type_name -> dota.EEvent + 143, // 45: dota.CMsgDOTALiveScoreboardUpdate.team_good:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team + 143, // 46: dota.CMsgDOTALiveScoreboardUpdate.team_bad:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team + 146, // 47: dota.CMsgServerToGCRequestBatchPlayerResourcesResponse.results:type_name -> dota.CMsgServerToGCRequestBatchPlayerResourcesResponse.Result + 205, // 48: dota.CMsgTournamentItemEvent.event_type:type_name -> dota.DOTA_TournamentEvents + 206, // 49: dota.CMsgTournamentItemEvent.hero_statues:type_name -> dota.CProtoItemHeroStatue + 205, // 50: dota.CMsgTournamentItemEventResponse.event_type:type_name -> dota.DOTA_TournamentEvents + 6, // 51: dota.CMsgGameServerSaveGameResult.result:type_name -> dota.CMsgGameServerSaveGameResult.Result + 147, // 52: dota.CMsgDOTAAwardEventPoints.award_points:type_name -> dota.CMsgDOTAAwardEventPoints.AwardPoints + 204, // 53: dota.CMsgDOTAAwardEventPoints.event_id:type_name -> dota.EEvent + 148, // 54: dota.CMsgServerToGCMatchConnectionStats.players:type_name -> dota.CMsgServerToGCMatchConnectionStats.Player + 149, // 55: dota.CSerializedCombatLog.dictionary:type_name -> dota.CSerializedCombatLog.Dictionary + 207, // 56: dota.CSerializedCombatLog.entries:type_name -> dota.CMsgDOTACombatLogEntry + 151, // 57: dota.CMsgServerToGCVictoryPredictions.records:type_name -> dota.CMsgServerToGCVictoryPredictions.Record + 152, // 58: dota.CMsgServerToGCKillSummaries.summaries:type_name -> dota.CMsgServerToGCKillSummaries.KillSummary + 153, // 59: dota.CMsgGCToServerPredictionResult.predictions:type_name -> dota.CMsgGCToServerPredictionResult.Prediction + 154, // 60: dota.CMsgSignOutUpdatePlayerChallenge.completed:type_name -> dota.CMsgSignOutUpdatePlayerChallenge.Challenge + 154, // 61: dota.CMsgSignOutUpdatePlayerChallenge.rerolled:type_name -> dota.CMsgSignOutUpdatePlayerChallenge.Challenge + 208, // 62: dota.CMsgServerToGCRerollPlayerChallenge.reroll_msg:type_name -> dota.CMsgClientToGCRerollPlayerChallenge + 155, // 63: dota.CMsgSpendWager.players:type_name -> dota.CMsgSpendWager.Player + 204, // 64: dota.CMsgSpendWager.event_id:type_name -> dota.EEvent + 156, // 65: dota.CMsgSignOutXPCoins.players:type_name -> dota.CMsgSignOutXPCoins.Player + 204, // 66: dota.CMsgSignOutXPCoins.event_id:type_name -> dota.EEvent + 157, // 67: dota.CMsgSignOutBounties.bounties:type_name -> dota.CMsgSignOutBounties.Bounty + 204, // 68: dota.CMsgSignOutBounties.event_id:type_name -> dota.EEvent + 204, // 69: dota.CMsgSignOutCommunityGoalProgress.event_id:type_name -> dota.EEvent + 158, // 70: dota.CMsgSignOutCommunityGoalProgress.event_increments:type_name -> dota.CMsgSignOutCommunityGoalProgress.EventGoalIncrement + 159, // 71: dota.CMsgServerToGCCompendiumInGamePredictionResults.results:type_name -> dota.CMsgServerToGCCompendiumInGamePredictionResults.PredictionResult + 160, // 72: dota.CMsgServerToGCCompendiumChosenInGamePredictions.predictions_chosen:type_name -> dota.CMsgServerToGCCompendiumChosenInGamePredictions.Prediction + 73, // 73: dota.CMsgGCToGCCompendiumInGamePredictionResults.results:type_name -> dota.CMsgServerToGCCompendiumInGamePredictionResults + 162, // 74: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.players:type_name -> dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.Player + 164, // 75: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.players:type_name -> dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.Player + 167, // 76: dota.CMsgServerToGCMatchStateHistory.match_states:type_name -> dota.CMsgServerToGCMatchStateHistory.MatchState + 167, // 77: dota.CMsgMatchStateSteamMLEntry.match_state:type_name -> dota.CMsgServerToGCMatchStateHistory.MatchState + 168, // 78: dota.CMsgServerToGCPlayerChallengeHistory.challenge_records:type_name -> dota.CMsgServerToGCPlayerChallengeHistory.PlayerChallenge + 169, // 79: dota.CMsgServerToGCCavernCrawlIsHeroActiveResponse.map_results:type_name -> dota.CMsgServerToGCCavernCrawlIsHeroActiveResponse.MapResults + 170, // 80: dota.CMsgNeutralItemStats.neutral_items:type_name -> dota.CMsgNeutralItemStats.NeutralItem + 171, // 81: dota.CMsgGCToServerLobbyHeroBanRates.ban_data:type_name -> dota.CMsgGCToServerLobbyHeroBanRates.HeroBanEntry + 173, // 82: dota.CMsgSignOutGuildContractProgress.player_contracts:type_name -> dota.CMsgSignOutGuildContractProgress.PlayerContract + 174, // 83: dota.CMsgSignOutGuildChallengeProgress.guild_challenges_progresses:type_name -> dota.CMsgSignOutGuildChallengeProgress.ChallengeProgress + 175, // 84: dota.CMsgSignOutMVPStats.players:type_name -> dota.CMsgSignOutMVPStats.Player + 178, // 85: dota.CMsgServerToGCGetGuildContractsResponse.player_contracts:type_name -> dota.CMsgServerToGCGetGuildContractsResponse.Player + 180, // 86: dota.CMsgMatchDiretideCandy.player_candy_data:type_name -> dota.CMsgMatchDiretideCandy.PlayerCandy + 204, // 87: dota.CMsgMatchDiretideCandy.event_id:type_name -> dota.EEvent + 181, // 88: dota.CMsgGCToServerCheerData.cheer_types:type_name -> dota.CMsgGCToServerCheerData.CheerTypeCount + 98, // 89: dota.CMsgGCToServerCheerConfig.cheer_config:type_name -> dota.CMsgCheerConfig + 98, // 90: dota.CMsgServerToGCGetCheerConfigResponse.cheer_config:type_name -> dota.CMsgCheerConfig + 104, // 91: dota.CMsgCheerState.cheer_types:type_name -> dota.CMsgCheerTypeState + 98, // 92: dota.CMsgServerToGCReportCheerState.cheer_config:type_name -> dota.CMsgCheerConfig + 105, // 93: dota.CMsgServerToGCReportCheerState.cheer_state:type_name -> dota.CMsgCheerState + 182, // 94: dota.CMsgServerToGCGetStickerHeroesResponse.players:type_name -> dota.CMsgServerToGCGetStickerHeroesResponse.Player + 209, // 95: dota.CMsgGCToServerSteamLearnAccessTokensChanged.access_tokens:type_name -> dota.CMsgSteamLearnAccessTokens + 183, // 96: dota.CMsgSteamLearnPlayerTimedStats.stat_buckets:type_name -> dota.CMsgSteamLearnPlayerTimedStats.StatBucket + 185, // 97: dota.CMsgSteamLearnMatchState.radiant_state:type_name -> dota.CMsgSteamLearnMatchState.TeamState + 185, // 98: dota.CMsgSteamLearnMatchState.dire_state:type_name -> dota.CMsgSteamLearnMatchState.TeamState + 186, // 99: dota.CMsgSteamLearnWardPlacement.ward_loc:type_name -> dota.CMsgSteamLearnWardPlacement.Location + 186, // 100: dota.CMsgSteamLearnWardPlacement.existing_ward_locs:type_name -> dota.CMsgSteamLearnWardPlacement.Location + 187, // 101: dota.CMsgSignOutMapStats.players:type_name -> dota.CMsgSignOutMapStats.Player + 210, // 102: dota.CMsgSignOutMapStats.global_stats:type_name -> dota.CMsgMapStatsSnapshot + 211, // 103: dota.CMsgServerToGCNewBloomGiftResponse.result:type_name -> dota.ENewBloomGiftingResponse 191, // 104: dota.CMsgPoorNetworkConditions.Player.disconnect_reason:type_name -> dota.ENetworkDisconnectionReason 190, // 105: dota.CMsgConnectedPlayers.Player.leaver_state:type_name -> dota.CMsgLeaverState 191, // 106: dota.CMsgConnectedPlayers.Player.disconnect_reason:type_name -> dota.ENetworkDisconnectionReason 197, // 107: dota.CMsgConnectedPlayers.PlayerDraft.team:type_name -> dota.DOTA_GC_TEAM - 210, // 108: dota.CMsgSignOutGameplayStats.CPlayer.timed_player_stats:type_name -> dota.CMatchPlayerTimedStats - 211, // 109: dota.CMsgSignOutGameplayStats.CTeam.timed_team_stats:type_name -> dota.CMatchTeamTimedStats - 125, // 110: dota.CMsgSignOutGameplayStats.CTeam.players:type_name -> dota.CMsgSignOutGameplayStats.CPlayer - 133, // 111: dota.CMsgGameMatchSignOut.CTeam.players:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer - 212, // 112: dota.CMsgGameMatchSignOut.CTeam.CPlayer.ability_upgrades:type_name -> dota.CMatchPlayerAbilityUpgrade - 213, // 113: dota.CMsgGameMatchSignOut.CTeam.CPlayer.additional_units_inventory:type_name -> dota.CMatchAdditionalUnitInventory - 214, // 114: dota.CMsgGameMatchSignOut.CTeam.CPlayer.permanent_buffs:type_name -> dota.CMatchPlayerPermanentBuff - 134, // 115: dota.CMsgGameMatchSignOut.CTeam.CPlayer.custom_game_data:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer.CCustomGameData - 135, // 116: dota.CMsgGameMatchSignOut.CTeam.CPlayer.hero_damage_received:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageReceived - 135, // 117: dota.CMsgGameMatchSignOut.CTeam.CPlayer.hero_damage_dealt:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageReceived - 197, // 118: dota.CMsgGameMatchSignOut.CTeam.CPlayer.team_number:type_name -> dota.DOTA_GC_TEAM - 4, // 119: dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageReceived.damage_type:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageType - 138, // 120: dota.CMsgSignOutCommunicationSummary.PlayerCommunication.ping_details:type_name -> dota.CMsgSignOutCommunicationSummary.PlayerCommunication.PingDetail - 141, // 121: dota.CMsgDOTALiveScoreboardUpdate.Team.players:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team.Player - 5, // 122: dota.CMsgDOTALiveScoreboardUpdate.Team.Player.ultimate_state:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team.Player.DOTAUltimateState - 142, // 123: dota.CMsgDOTALiveScoreboardUpdate.Team.Player.abilities:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team.Player.HeroAbility - 147, // 124: dota.CSerializedCombatLog.Dictionary.strings:type_name -> dota.CSerializedCombatLog.Dictionary.DictString - 7, // 125: dota.CMsgGCToServerPredictionResult.Prediction.result:type_name -> dota.CMsgGCToServerPredictionResult.Prediction.EResult - 203, // 126: dota.CMsgSignOutUpdatePlayerChallenge.Challenge.event_id:type_name -> dota.EEvent - 158, // 127: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.Player.item_purchases:type_name -> dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.ItemPurchase - 160, // 128: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.Player.item_equips:type_name -> dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.ItemEquip - 162, // 129: dota.CMsgServerToGCMatchStateHistory.TeamState.player_states:type_name -> dota.CMsgServerToGCMatchStateHistory.PlayerState - 163, // 130: dota.CMsgServerToGCMatchStateHistory.MatchState.radiant_state:type_name -> dota.CMsgServerToGCMatchStateHistory.TeamState - 163, // 131: dota.CMsgServerToGCMatchStateHistory.MatchState.dire_state:type_name -> dota.CMsgServerToGCMatchStateHistory.TeamState - 215, // 132: dota.CMsgServerToGCPlayerChallengeHistory.PlayerChallenge.challenge_type:type_name -> dota.EPlayerChallengeHistoryType - 167, // 133: dota.CMsgDetailedGameStats.MinuteEntry.stats:type_name -> dota.CMsgDetailedGameStats.PlayerStatEntry - 173, // 134: dota.CMsgSignOutGuildContractProgress.PlayerContract.completed_contracts:type_name -> dota.CMsgSignOutGuildContractProgress.CompletedGuildEventContracts - 177, // 135: dota.CMsgSignOutMVPStats.Player.kill_eater_events:type_name -> dota.CMsgSignOutMVPStats.Player.KillEaterEvent - 203, // 136: dota.CMsgServerToGCGetGuildContractsResponse.Player.event_id:type_name -> dota.EEvent - 178, // 137: dota.CMsgServerToGCGetGuildContractsResponse.Player.contracts:type_name -> dota.CMsgServerToGCGetGuildContractsResponse.ContractDetails - 180, // 138: dota.CMsgMatchDiretideCandy.PlayerCandy.candy_breakdown:type_name -> dota.CMsgMatchDiretideCandy.CandyDetails - 216, // 139: dota.CMsgServerToGCGetStickerHeroesResponse.Player.stickers:type_name -> dota.CMsgStickerHeroes - 184, // 140: dota.CMsgSteamLearnMatchState.TeamState.player_states:type_name -> dota.CMsgSteamLearnMatchState.PlayerState - 209, // 141: dota.CMsgSignOutMapStats.Player.personal_stats:type_name -> dota.CMsgMapStatsSnapshot - 142, // [142:142] is the sub-list for method output_type - 142, // [142:142] is the sub-list for method input_type - 142, // [142:142] is the sub-list for extension type_name - 142, // [142:142] is the sub-list for extension extendee - 0, // [0:142] is the sub-list for field type_name + 212, // 108: dota.CMsgSignOutGameplayStats.CPlayer.timed_player_stats:type_name -> dota.CMatchPlayerTimedStats + 213, // 109: dota.CMsgSignOutGameplayStats.CTeam.timed_team_stats:type_name -> dota.CMatchTeamTimedStats + 128, // 110: dota.CMsgSignOutGameplayStats.CTeam.players:type_name -> dota.CMsgSignOutGameplayStats.CPlayer + 136, // 111: dota.CMsgGameMatchSignOut.CTeam.players:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer + 198, // 112: dota.CMsgGameMatchSignOut.CTeam.team_tracked_stats:type_name -> dota.CMsgTrackedStat + 214, // 113: dota.CMsgGameMatchSignOut.CTeam.CPlayer.ability_upgrades:type_name -> dota.CMatchPlayerAbilityUpgrade + 215, // 114: dota.CMsgGameMatchSignOut.CTeam.CPlayer.additional_units_inventory:type_name -> dota.CMatchAdditionalUnitInventory + 216, // 115: dota.CMsgGameMatchSignOut.CTeam.CPlayer.permanent_buffs:type_name -> dota.CMatchPlayerPermanentBuff + 137, // 116: dota.CMsgGameMatchSignOut.CTeam.CPlayer.custom_game_data:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer.CCustomGameData + 138, // 117: dota.CMsgGameMatchSignOut.CTeam.CPlayer.hero_damage_received:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageReceived + 138, // 118: dota.CMsgGameMatchSignOut.CTeam.CPlayer.hero_damage_dealt:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageReceived + 197, // 119: dota.CMsgGameMatchSignOut.CTeam.CPlayer.team_number:type_name -> dota.DOTA_GC_TEAM + 198, // 120: dota.CMsgGameMatchSignOut.CTeam.CPlayer.player_tracked_stats:type_name -> dota.CMsgTrackedStat + 4, // 121: dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageReceived.damage_type:type_name -> dota.CMsgGameMatchSignOut.CTeam.CPlayer.HeroDamageType + 141, // 122: dota.CMsgSignOutCommunicationSummary.PlayerCommunication.ping_details:type_name -> dota.CMsgSignOutCommunicationSummary.PlayerCommunication.PingDetail + 144, // 123: dota.CMsgDOTALiveScoreboardUpdate.Team.players:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team.Player + 5, // 124: dota.CMsgDOTALiveScoreboardUpdate.Team.Player.ultimate_state:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team.Player.DOTAUltimateState + 145, // 125: dota.CMsgDOTALiveScoreboardUpdate.Team.Player.abilities:type_name -> dota.CMsgDOTALiveScoreboardUpdate.Team.Player.HeroAbility + 150, // 126: dota.CSerializedCombatLog.Dictionary.strings:type_name -> dota.CSerializedCombatLog.Dictionary.DictString + 7, // 127: dota.CMsgGCToServerPredictionResult.Prediction.result:type_name -> dota.CMsgGCToServerPredictionResult.Prediction.EResult + 204, // 128: dota.CMsgSignOutUpdatePlayerChallenge.Challenge.event_id:type_name -> dota.EEvent + 161, // 129: dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.Player.item_purchases:type_name -> dota.CMsgServerToGCMatchPlayerItemPurchaseHistory.ItemPurchase + 163, // 130: dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.Player.item_equips:type_name -> dota.CMsgServerToGCMatchPlayerNeutralItemEquipHistory.ItemEquip + 165, // 131: dota.CMsgServerToGCMatchStateHistory.TeamState.player_states:type_name -> dota.CMsgServerToGCMatchStateHistory.PlayerState + 166, // 132: dota.CMsgServerToGCMatchStateHistory.MatchState.radiant_state:type_name -> dota.CMsgServerToGCMatchStateHistory.TeamState + 166, // 133: dota.CMsgServerToGCMatchStateHistory.MatchState.dire_state:type_name -> dota.CMsgServerToGCMatchStateHistory.TeamState + 217, // 134: dota.CMsgServerToGCPlayerChallengeHistory.PlayerChallenge.challenge_type:type_name -> dota.EPlayerChallengeHistoryType + 172, // 135: dota.CMsgSignOutGuildContractProgress.PlayerContract.completed_contracts:type_name -> dota.CMsgSignOutGuildContractProgress.CompletedGuildEventContracts + 176, // 136: dota.CMsgSignOutMVPStats.Player.kill_eater_events:type_name -> dota.CMsgSignOutMVPStats.Player.KillEaterEvent + 204, // 137: dota.CMsgServerToGCGetGuildContractsResponse.Player.event_id:type_name -> dota.EEvent + 177, // 138: dota.CMsgServerToGCGetGuildContractsResponse.Player.contracts:type_name -> dota.CMsgServerToGCGetGuildContractsResponse.ContractDetails + 179, // 139: dota.CMsgMatchDiretideCandy.PlayerCandy.candy_breakdown:type_name -> dota.CMsgMatchDiretideCandy.CandyDetails + 218, // 140: dota.CMsgServerToGCGetStickerHeroesResponse.Player.stickers:type_name -> dota.CMsgStickerHeroes + 184, // 141: dota.CMsgSteamLearnMatchState.TeamState.player_states:type_name -> dota.CMsgSteamLearnMatchState.PlayerState + 210, // 142: dota.CMsgSignOutMapStats.Player.personal_stats:type_name -> dota.CMsgMapStatsSnapshot + 143, // [143:143] is the sub-list for method output_type + 143, // [143:143] is the sub-list for method input_type + 143, // [143:143] is the sub-list for extension type_name + 143, // [143:143] is the sub-list for extension extendee + 0, // [0:143] is the sub-list for field type_name } func init() { file_dota_gcmessages_server_proto_init() } @@ -18426,7 +18380,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutAssassinMiniGameInfo); i { + switch v := v.(*CMsgGCToServerEvaluateToxicChat); i { case 0: return &v.state case 1: @@ -18438,7 +18392,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCKillSummaries); i { + switch v := v.(*CMsgServerToGCEvaluateToxicChat); i { case 0: return &v.state case 1: @@ -18450,7 +18404,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerPredictionResult); i { + switch v := v.(*CMsgServerToGCEvaluateToxicChatResponse); i { case 0: return &v.state case 1: @@ -18462,7 +18416,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCLockCharmTrading); i { + switch v := v.(*CMsgSignOutAssassinMiniGameInfo); i { case 0: return &v.state case 1: @@ -18474,7 +18428,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutUpdatePlayerChallenge); i { + switch v := v.(*CMsgServerToGCKillSummaries); i { case 0: return &v.state case 1: @@ -18486,7 +18440,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCRerollPlayerChallenge); i { + switch v := v.(*CMsgGCToServerPredictionResult); i { case 0: return &v.state case 1: @@ -18498,7 +18452,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSpendWager); i { + switch v := v.(*CMsgServerToGCLockCharmTrading); i { case 0: return &v.state case 1: @@ -18510,7 +18464,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutXPCoins); i { + switch v := v.(*CMsgSignOutUpdatePlayerChallenge); i { case 0: return &v.state case 1: @@ -18522,7 +18476,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutBounties); i { + switch v := v.(*CMsgServerToGCRerollPlayerChallenge); i { case 0: return &v.state case 1: @@ -18534,7 +18488,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutCommunityGoalProgress); i { + switch v := v.(*CMsgSpendWager); i { case 0: return &v.state case 1: @@ -18546,7 +18500,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCloseCompendiumInGamePredictionVoting); i { + switch v := v.(*CMsgSignOutXPCoins); i { case 0: return &v.state case 1: @@ -18558,7 +18512,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse); i { + switch v := v.(*CMsgSignOutBounties); i { case 0: return &v.state case 1: @@ -18570,7 +18524,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCompendiumInGamePredictionResults); i { + switch v := v.(*CMsgSignOutCommunityGoalProgress); i { case 0: return &v.state case 1: @@ -18582,7 +18536,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCompendiumChosenInGamePredictions); i { + switch v := v.(*CMsgServerToGCCloseCompendiumInGamePredictionVoting); i { case 0: return &v.state case 1: @@ -18594,7 +18548,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCCompendiumInGamePredictionResults); i { + switch v := v.(*CMsgServerToGCCloseCompendiumInGamePredictionVotingResponse); i { case 0: return &v.state case 1: @@ -18606,7 +18560,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchPlayerItemPurchaseHistory); i { + switch v := v.(*CMsgServerToGCCompendiumInGamePredictionResults); i { case 0: return &v.state case 1: @@ -18618,7 +18572,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchPlayerNeutralItemEquipHistory); i { + switch v := v.(*CMsgServerToGCCompendiumChosenInGamePredictions); i { case 0: return &v.state case 1: @@ -18630,7 +18584,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchStateHistory); i { + switch v := v.(*CMsgGCToGCCompendiumInGamePredictionResults); i { case 0: return &v.state case 1: @@ -18642,7 +18596,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchStateSteamMLEntry); i { + switch v := v.(*CMsgServerToGCMatchPlayerItemPurchaseHistory); i { case 0: return &v.state case 1: @@ -18654,7 +18608,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLaneSelectionSteamMLEntry); i { + switch v := v.(*CMsgServerToGCMatchPlayerNeutralItemEquipHistory); i { case 0: return &v.state case 1: @@ -18666,7 +18620,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgAbilitySelectionSteamMLEntry); i { + switch v := v.(*CMsgServerToGCMatchStateHistory); i { case 0: return &v.state case 1: @@ -18678,7 +18632,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgItemPurchasePregameSteamMLEntry); i { + switch v := v.(*CMsgMatchStateSteamMLEntry); i { case 0: return &v.state case 1: @@ -18690,7 +18644,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgItemPurchaseSteamMLEntry); i { + switch v := v.(*CMsgLaneSelectionSteamMLEntry); i { case 0: return &v.state case 1: @@ -18702,7 +18656,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgItemPurchaseSequenceSteamMLEntry); i { + switch v := v.(*CMsgAbilitySelectionSteamMLEntry); i { case 0: return &v.state case 1: @@ -18714,7 +18668,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCavernCrawlIsHeroActive); i { + switch v := v.(*CMsgItemPurchasePregameSteamMLEntry); i { case 0: return &v.state case 1: @@ -18726,7 +18680,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCPlayerChallengeHistory); i { + switch v := v.(*CMsgItemPurchaseSteamMLEntry); i { case 0: return &v.state case 1: @@ -18738,7 +18692,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCavernCrawlIsHeroActiveResponse); i { + switch v := v.(*CMsgItemPurchaseSequenceSteamMLEntry); i { case 0: return &v.state case 1: @@ -18750,7 +18704,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCtoServerTensorflowInstance); i { + switch v := v.(*CMsgServerToGCCavernCrawlIsHeroActive); i { case 0: return &v.state case 1: @@ -18762,7 +18716,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDetailedGameStats); i { + switch v := v.(*CMsgServerToGCPlayerChallengeHistory); i { case 0: return &v.state case 1: @@ -18774,7 +18728,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgNeutralItemStats); i { + switch v := v.(*CMsgServerToGCCavernCrawlIsHeroActiveResponse); i { case 0: return &v.state case 1: @@ -18786,7 +18740,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerLobbyHeroBanRates); i { + switch v := v.(*CMsgNeutralItemStats); i { case 0: return &v.state case 1: @@ -18798,7 +18752,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutGuildContractProgress); i { + switch v := v.(*CMsgGCToServerLobbyHeroBanRates); i { case 0: return &v.state case 1: @@ -18810,7 +18764,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutGuildChallengeProgress); i { + switch v := v.(*CMsgSignOutGuildContractProgress); i { case 0: return &v.state case 1: @@ -18822,7 +18776,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutMVPStats); i { + switch v := v.(*CMsgSignOutGuildChallengeProgress); i { case 0: return &v.state case 1: @@ -18834,7 +18788,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerRecordTrainingData); i { + switch v := v.(*CMsgSignOutMVPStats); i { case 0: return &v.state case 1: @@ -18846,7 +18800,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetGuildContracts); i { + switch v := v.(*CMsgGCToServerRecordTrainingData); i { case 0: return &v.state case 1: @@ -18858,7 +18812,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetGuildContractsResponse); i { + switch v := v.(*CMsgServerToGCGetGuildContracts); i { case 0: return &v.state case 1: @@ -18870,7 +18824,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchDiretideCandy); i { + switch v := v.(*CMsgServerToGCGetGuildContractsResponse); i { case 0: return &v.state case 1: @@ -18882,7 +18836,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerCheerData); i { + switch v := v.(*CMsgMatchDiretideCandy); i { case 0: return &v.state case 1: @@ -18894,7 +18848,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgCheerConfig); i { + switch v := v.(*CMsgGCToServerCheerData); i { case 0: return &v.state case 1: @@ -18906,7 +18860,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerCheerConfig); i { + switch v := v.(*CMsgCheerConfig); i { case 0: return &v.state case 1: @@ -18918,7 +18872,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetCheerConfig); i { + switch v := v.(*CMsgGCToServerCheerConfig); i { case 0: return &v.state case 1: @@ -18930,7 +18884,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetCheerConfigResponse); i { + switch v := v.(*CMsgServerToGCGetCheerConfig); i { case 0: return &v.state case 1: @@ -18942,7 +18896,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerCheerScalesOverride); i { + switch v := v.(*CMsgServerToGCGetCheerConfigResponse); i { case 0: return &v.state case 1: @@ -18954,7 +18908,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerGetCheerState); i { + switch v := v.(*CMsgGCToServerCheerScalesOverride); i { case 0: return &v.state case 1: @@ -18966,7 +18920,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgCheerTypeState); i { + switch v := v.(*CMsgGCToServerGetCheerState); i { case 0: return &v.state case 1: @@ -18978,7 +18932,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgCheerState); i { + switch v := v.(*CMsgCheerTypeState); i { case 0: return &v.state case 1: @@ -18990,7 +18944,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCReportCheerState); i { + switch v := v.(*CMsgCheerState); i { case 0: return &v.state case 1: @@ -19002,7 +18956,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetStickerHeroes); i { + switch v := v.(*CMsgServerToGCReportCheerState); i { case 0: return &v.state case 1: @@ -19014,7 +18968,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetStickerHeroesResponse); i { + switch v := v.(*CMsgServerToGCGetStickerHeroes); i { case 0: return &v.state case 1: @@ -19026,7 +18980,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerSetSteamLearnDisable); i { + switch v := v.(*CMsgServerToGCGetStickerHeroesResponse); i { case 0: return &v.state case 1: @@ -19038,7 +18992,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerSetSteamLearnInferencing); i { + switch v := v.(*CMsgGCToServerSteamLearnAccessTokensChanged); i { case 0: return &v.state case 1: @@ -19050,7 +19004,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerSetSteamLearnKeysChanged); i { + switch v := v.(*CMsgSteamLearnMatchInfo); i { case 0: return &v.state case 1: @@ -19062,7 +19016,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnMatchInfo); i { + switch v := v.(*CMsgSteamLearnMatchInfoPlayer); i { case 0: return &v.state case 1: @@ -19074,7 +19028,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnMatchInfoPlayer); i { + switch v := v.(*CMsgSteamLearnMatchHeroes); i { case 0: return &v.state case 1: @@ -19086,7 +19040,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnMatchHeroes); i { + switch v := v.(*CMsgSteamLearnMatchHero); i { case 0: return &v.state case 1: @@ -19098,7 +19052,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnMatchHero); i { + switch v := v.(*CMsgSteamLearnPlayerTimedStats); i { case 0: return &v.state case 1: @@ -19146,7 +19100,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnAbilitySkill); i { + switch v := v.(*CMsgSteamLearnNeutralItemPurchase); i { case 0: return &v.state case 1: @@ -19158,7 +19112,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnWardPlacement); i { + switch v := v.(*CMsgSteamLearnAbilitySkill); i { case 0: return &v.state case 1: @@ -19170,7 +19124,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutMuertaMinigame); i { + switch v := v.(*CMsgSteamLearnWardPlacement); i { case 0: return &v.state case 1: @@ -19182,7 +19136,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutMapStats); i { + switch v := v.(*CMsgSignOutMuertaMinigame); i { case 0: return &v.state case 1: @@ -19194,7 +19148,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgPoorNetworkConditions_Player); i { + switch v := v.(*CMsgSignOutMapStats); i { case 0: return &v.state case 1: @@ -19206,7 +19160,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgConnectedPlayers_Player); i { + switch v := v.(*CMsgServerToGCNewBloomGift); i { case 0: return &v.state case 1: @@ -19218,7 +19172,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgConnectedPlayers_PlayerDraft); i { + switch v := v.(*CMsgServerToGCNewBloomGiftResponse); i { case 0: return &v.state case 1: @@ -19230,7 +19184,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutGameplayStats_CPlayer); i { + switch v := v.(*CMsgPoorNetworkConditions_Player); i { case 0: return &v.state case 1: @@ -19242,7 +19196,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutGameplayStats_CTeam); i { + switch v := v.(*CMsgConnectedPlayers_Player); i { case 0: return &v.state case 1: @@ -19254,7 +19208,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_CTeam); i { + switch v := v.(*CMsgConnectedPlayers_PlayerDraft); i { case 0: return &v.state case 1: @@ -19266,7 +19220,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_CAdditionalSignoutMsg); i { + switch v := v.(*CMsgSignOutGameplayStats_CPlayer); i { case 0: return &v.state case 1: @@ -19278,7 +19232,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_CSocialFeedMatchEvent); i { + switch v := v.(*CMsgSignOutGameplayStats_CTeam); i { case 0: return &v.state case 1: @@ -19290,7 +19244,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_CCustomGameData); i { + switch v := v.(*CMsgGameMatchSignOut_CTeam); i { case 0: return &v.state case 1: @@ -19302,7 +19256,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_EventGameLeaderboardEntry); i { + switch v := v.(*CMsgGameMatchSignOut_CAdditionalSignoutMsg); i { case 0: return &v.state case 1: @@ -19314,7 +19268,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_WardPlacement); i { + switch v := v.(*CMsgGameMatchSignOut_CSocialFeedMatchEvent); i { case 0: return &v.state case 1: @@ -19326,7 +19280,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_CTeam_CPlayer); i { + switch v := v.(*CMsgGameMatchSignOut_CCustomGameData); i { case 0: return &v.state case 1: @@ -19338,7 +19292,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData); i { + switch v := v.(*CMsgGameMatchSignOut_EventGameLeaderboardEntry); i { case 0: return &v.state case 1: @@ -19350,7 +19304,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived); i { + switch v := v.(*CMsgGameMatchSignOut_WardPlacement); i { case 0: return &v.state case 1: @@ -19362,7 +19316,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutTextMuteInfo_TextMuteMessage); i { + switch v := v.(*CMsgGameMatchSignOut_CTeam_CPlayer); i { case 0: return &v.state case 1: @@ -19374,7 +19328,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutCommunicationSummary_PlayerCommunication); i { + switch v := v.(*CMsgGameMatchSignOut_CTeam_CPlayer_CCustomGameData); i { case 0: return &v.state case 1: @@ -19386,7 +19340,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail); i { + switch v := v.(*CMsgGameMatchSignOut_CTeam_CPlayer_HeroDamageReceived); i { case 0: return &v.state case 1: @@ -19398,7 +19352,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGameMatchSignoutResponse_PlayerMetadata); i { + switch v := v.(*CMsgSignOutTextMuteInfo_TextMuteMessage); i { case 0: return &v.state case 1: @@ -19410,7 +19364,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTALiveScoreboardUpdate_Team); i { + switch v := v.(*CMsgSignOutCommunicationSummary_PlayerCommunication); i { case 0: return &v.state case 1: @@ -19422,7 +19376,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTALiveScoreboardUpdate_Team_Player); i { + switch v := v.(*CMsgSignOutCommunicationSummary_PlayerCommunication_PingDetail); i { case 0: return &v.state case 1: @@ -19434,7 +19388,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility); i { + switch v := v.(*CMsgGameMatchSignoutResponse_PlayerMetadata); i { case 0: return &v.state case 1: @@ -19446,7 +19400,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCRequestBatchPlayerResourcesResponse_Result); i { + switch v := v.(*CMsgDOTALiveScoreboardUpdate_Team); i { case 0: return &v.state case 1: @@ -19458,7 +19412,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAAwardEventPoints_AwardPoints); i { + switch v := v.(*CMsgDOTALiveScoreboardUpdate_Team_Player); i { case 0: return &v.state case 1: @@ -19470,7 +19424,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchConnectionStats_Player); i { + switch v := v.(*CMsgDOTALiveScoreboardUpdate_Team_Player_HeroAbility); i { case 0: return &v.state case 1: @@ -19482,7 +19436,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSerializedCombatLog_Dictionary); i { + switch v := v.(*CMsgServerToGCRequestBatchPlayerResourcesResponse_Result); i { case 0: return &v.state case 1: @@ -19494,7 +19448,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSerializedCombatLog_Dictionary_DictString); i { + switch v := v.(*CMsgDOTAAwardEventPoints_AwardPoints); i { case 0: return &v.state case 1: @@ -19506,7 +19460,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCVictoryPredictions_Record); i { + switch v := v.(*CMsgServerToGCMatchConnectionStats_Player); i { case 0: return &v.state case 1: @@ -19518,7 +19472,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCKillSummaries_KillSummary); i { + switch v := v.(*CSerializedCombatLog_Dictionary); i { case 0: return &v.state case 1: @@ -19530,7 +19484,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerPredictionResult_Prediction); i { + switch v := v.(*CSerializedCombatLog_Dictionary_DictString); i { case 0: return &v.state case 1: @@ -19542,7 +19496,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutUpdatePlayerChallenge_Challenge); i { + switch v := v.(*CMsgServerToGCVictoryPredictions_Record); i { case 0: return &v.state case 1: @@ -19554,7 +19508,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSpendWager_Player); i { + switch v := v.(*CMsgServerToGCKillSummaries_KillSummary); i { case 0: return &v.state case 1: @@ -19566,7 +19520,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutXPCoins_Player); i { + switch v := v.(*CMsgGCToServerPredictionResult_Prediction); i { case 0: return &v.state case 1: @@ -19578,7 +19532,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutBounties_Bounty); i { + switch v := v.(*CMsgSignOutUpdatePlayerChallenge_Challenge); i { case 0: return &v.state case 1: @@ -19590,7 +19544,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutCommunityGoalProgress_EventGoalIncrement); i { + switch v := v.(*CMsgSpendWager_Player); i { case 0: return &v.state case 1: @@ -19602,7 +19556,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult); i { + switch v := v.(*CMsgSignOutXPCoins_Player); i { case 0: return &v.state case 1: @@ -19614,7 +19568,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCompendiumChosenInGamePredictions_Prediction); i { + switch v := v.(*CMsgSignOutBounties_Bounty); i { case 0: return &v.state case 1: @@ -19626,7 +19580,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase); i { + switch v := v.(*CMsgSignOutCommunityGoalProgress_EventGoalIncrement); i { case 0: return &v.state case 1: @@ -19638,7 +19592,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchPlayerItemPurchaseHistory_Player); i { + switch v := v.(*CMsgServerToGCCompendiumInGamePredictionResults_PredictionResult); i { case 0: return &v.state case 1: @@ -19650,7 +19604,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip); i { + switch v := v.(*CMsgServerToGCCompendiumChosenInGamePredictions_Prediction); i { case 0: return &v.state case 1: @@ -19662,7 +19616,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player); i { + switch v := v.(*CMsgServerToGCMatchPlayerItemPurchaseHistory_ItemPurchase); i { case 0: return &v.state case 1: @@ -19674,7 +19628,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchStateHistory_PlayerState); i { + switch v := v.(*CMsgServerToGCMatchPlayerItemPurchaseHistory_Player); i { case 0: return &v.state case 1: @@ -19686,7 +19640,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchStateHistory_TeamState); i { + switch v := v.(*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_ItemEquip); i { case 0: return &v.state case 1: @@ -19698,7 +19652,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCMatchStateHistory_MatchState); i { + switch v := v.(*CMsgServerToGCMatchPlayerNeutralItemEquipHistory_Player); i { case 0: return &v.state case 1: @@ -19710,7 +19664,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCPlayerChallengeHistory_PlayerChallenge); i { + switch v := v.(*CMsgServerToGCMatchStateHistory_PlayerState); i { case 0: return &v.state case 1: @@ -19722,7 +19676,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults); i { + switch v := v.(*CMsgServerToGCMatchStateHistory_TeamState); i { case 0: return &v.state case 1: @@ -19734,7 +19688,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDetailedGameStats_PlayerStatEntry); i { + switch v := v.(*CMsgServerToGCMatchStateHistory_MatchState); i { case 0: return &v.state case 1: @@ -19746,7 +19700,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDetailedGameStats_GameStats); i { + switch v := v.(*CMsgServerToGCPlayerChallengeHistory_PlayerChallenge); i { case 0: return &v.state case 1: @@ -19758,7 +19712,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDetailedGameStats_MinuteEntry); i { + switch v := v.(*CMsgServerToGCCavernCrawlIsHeroActiveResponse_MapResults); i { case 0: return &v.state case 1: @@ -19770,7 +19724,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDetailedGameStats_PlayerInfo); i { + switch v := v.(*CMsgNeutralItemStats_NeutralItem); i { case 0: return &v.state case 1: @@ -19782,7 +19736,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgNeutralItemStats_NeutralItem); i { + switch v := v.(*CMsgGCToServerLobbyHeroBanRates_HeroBanEntry); i { case 0: return &v.state case 1: @@ -19794,7 +19748,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerLobbyHeroBanRates_HeroBanEntry); i { + switch v := v.(*CMsgSignOutGuildContractProgress_CompletedGuildEventContracts); i { case 0: return &v.state case 1: @@ -19806,7 +19760,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutGuildContractProgress_CompletedGuildEventContracts); i { + switch v := v.(*CMsgSignOutGuildContractProgress_PlayerContract); i { case 0: return &v.state case 1: @@ -19818,7 +19772,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutGuildContractProgress_PlayerContract); i { + switch v := v.(*CMsgSignOutGuildChallengeProgress_ChallengeProgress); i { case 0: return &v.state case 1: @@ -19830,7 +19784,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutGuildChallengeProgress_ChallengeProgress); i { + switch v := v.(*CMsgSignOutMVPStats_Player); i { case 0: return &v.state case 1: @@ -19842,7 +19796,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutMVPStats_Player); i { + switch v := v.(*CMsgSignOutMVPStats_Player_KillEaterEvent); i { case 0: return &v.state case 1: @@ -19854,7 +19808,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSignOutMVPStats_Player_KillEaterEvent); i { + switch v := v.(*CMsgServerToGCGetGuildContractsResponse_ContractDetails); i { case 0: return &v.state case 1: @@ -19866,7 +19820,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetGuildContractsResponse_ContractDetails); i { + switch v := v.(*CMsgServerToGCGetGuildContractsResponse_Player); i { case 0: return &v.state case 1: @@ -19878,7 +19832,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetGuildContractsResponse_Player); i { + switch v := v.(*CMsgMatchDiretideCandy_CandyDetails); i { case 0: return &v.state case 1: @@ -19890,7 +19844,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchDiretideCandy_CandyDetails); i { + switch v := v.(*CMsgMatchDiretideCandy_PlayerCandy); i { case 0: return &v.state case 1: @@ -19902,7 +19856,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgMatchDiretideCandy_PlayerCandy); i { + switch v := v.(*CMsgGCToServerCheerData_CheerTypeCount); i { case 0: return &v.state case 1: @@ -19914,7 +19868,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToServerCheerData_CheerTypeCount); i { + switch v := v.(*CMsgServerToGCGetStickerHeroesResponse_Player); i { case 0: return &v.state case 1: @@ -19926,7 +19880,7 @@ func file_dota_gcmessages_server_proto_init() { } } file_dota_gcmessages_server_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerToGCGetStickerHeroesResponse_Player); i { + switch v := v.(*CMsgSteamLearnPlayerTimedStats_StatBucket); i { case 0: return &v.state case 1: diff --git a/dota/dota_gcmessages_server.proto b/dota/dota_gcmessages_server.proto index 962ceb1b..bf41ecd4 100644 --- a/dota/dota_gcmessages_server.proto +++ b/dota/dota_gcmessages_server.proto @@ -95,7 +95,6 @@ message CMsgGameServerInfo { UNSPECIFIED = 0; GAME = 1; PROXY = 2; - TENSORFLOW = 3; DOTA_ONLY = 4; CUSTOM_GAME_ONLY = 5; EVENT_GAME_ONLY = 6; @@ -132,7 +131,6 @@ message CMsgGameServerInfo { optional uint32 server_cluster = 20; optional CMsgGameServerInfo.CustomGames allow_custom_games = 23; optional uint32 build_version = 24; - optional uint32 tf_server_count = 25; optional uint32 srcds_instance = 26; optional bool dev_force_server_type = 28; optional bool is_recording_match_training_data = 29; @@ -278,9 +276,12 @@ message CMsgGameMatchSignOut { optional uint32 time_purchased_shard = 77; optional uint32 time_purchased_aghs = 78; repeated int32 ability_draft_abilities = 79; + repeated CMsgTrackedStat player_tracked_stats = 80; + optional uint32 predicted_rank = 81; } repeated CMsgGameMatchSignOut.CTeam.CPlayer players = 1; + repeated CMsgTrackedStat team_tracked_stats = 2; } message CAdditionalSignoutMsg { @@ -352,6 +353,7 @@ message CMsgGameMatchSignOut { optional bool training_data_recorded = 55; optional DOTA_GC_TEAM winning_team = 56; optional float normalized_win_probability_diff = 57; + repeated CMsgTrackedStat match_tracked_stats = 58; } message CMsgSignOutDraftInfo { @@ -434,6 +436,7 @@ message CMsgSignOutCommunicationSummary { repeated CMsgSignOutCommunicationSummary.PlayerCommunication.PingDetail ping_details = 15; optional uint32 comms_blocks_solo = 16; optional uint32 comms_blocks_mass = 17; + repeated string chat_log = 18; } repeated CMsgSignOutCommunicationSummary.PlayerCommunication players = 1; @@ -591,18 +594,22 @@ message CMsgDOTALiveScoreboardUpdate { message CMsgServerToGCRequestBatchPlayerResources { repeated uint32 account_ids = 1; repeated uint32 rank_types = 4; + optional int32 lobby_type = 5; } message CMsgServerToGCRequestBatchPlayerResourcesResponse { message Result { optional uint32 account_id = 1; - optional bool prevent_text_chat = 2; - optional bool prevent_voice_chat = 3; optional uint32 rank = 4; optional bool rank_calibrated = 5; optional bool low_priority = 6; optional bool is_new_player = 7; optional bool is_guide_player = 8; + optional int32 comm_level = 9; + optional int32 behavior_level = 10; + optional int32 wins = 11; + optional int32 losses = 12; + optional int32 smurf_category = 13; } repeated CMsgServerToGCRequestBatchPlayerResourcesResponse.Result results = 6; @@ -774,6 +781,27 @@ message CMsgServerToGCRequestStatus_Response { optional uint32 response = 1; } +message CMsgGCToServerEvaluateToxicChat { + optional uint32 target_account_id = 1; + optional uint32 reporter_account_id = 2; +} + +message CMsgServerToGCEvaluateToxicChat { + optional uint32 target_account_id = 1; + optional uint32 reporter_account_id = 2; + optional fixed64 match_id = 3; + repeated uint32 timestamp = 4; + repeated string line = 5; +} + +message CMsgServerToGCEvaluateToxicChatResponse { + optional uint32 target_account_id = 1; + optional uint32 reporter_account_id = 2; + optional uint32 ban_reason = 3; + optional uint32 ban_duration = 4; + optional float toxicity_score = 5; +} + message CMsgSignOutAssassinMiniGameInfo { repeated fixed64 winning_players = 1; repeated fixed64 losing_players = 2; @@ -1107,67 +1135,6 @@ message CMsgServerToGCCavernCrawlIsHeroActiveResponse { optional uint32 potential_plus_shard_winnings = 4; } -message CMsgGCtoServerTensorflowInstance { - optional uint32 server_instance = 1; -} - -message CMsgDetailedGameStats { - message PlayerStatEntry { - optional uint32 total_earned_gold = 1; - optional uint32 total_networth = 2; - optional uint32 level = 3; - optional uint32 total_dps = 4; - optional uint32 average_dps = 5; - optional uint32 ability_damage_output = 6; - optional uint32 base_health = 7; - optional uint32 total_health = 8; - optional uint32 total_mana = 9; - optional float base_physical_damage_reduction_pct = 10; - optional float total_physical_damage_reduction_pct = 11; - optional float base_ability_damage_reduction_pct = 12; - optional float total_ability_damage_reduction_pct = 13; - optional float ability_damage_block = 14; - optional float physical_damage_block = 15; - optional uint32 mana_regen = 16; - optional uint32 health_regen = 17; - optional float physical_magic_dmg_pct = 18; - optional uint32 kills = 19; - optional uint32 deaths = 20; - optional uint32 assists = 21; - optional uint32 gold_from_kills = 22; - optional uint32 gold_from_creeps = 23; - optional uint32 gold_shared = 24; - optional uint32 xp_from_kills = 25; - optional uint32 xp_from_creeps = 26; - optional uint32 total_xp = 27; - optional uint32 ability_casts = 28; - optional uint32 item_casts = 29; - optional float total_time_stunned = 30; - optional uint32 item_count = 31; - } - - message GameStats { - optional uint32 tower_death_time_t1 = 1; - optional uint32 tower_death_time_t2 = 2; - optional uint32 tower_death_time_t3 = 3; - } - - message MinuteEntry { - optional uint32 minute = 1; - repeated CMsgDetailedGameStats.PlayerStatEntry stats = 2; - } - - message PlayerInfo { - optional uint32 account_id = 1; - optional uint32 hero_id = 2; - optional uint32 player_slot = 3; - } - - repeated CMsgDetailedGameStats.MinuteEntry minutes = 1; - repeated CMsgDetailedGameStats.PlayerInfo player_info = 2; - optional CMsgDetailedGameStats.GameStats game_stats = 3; -} - message CMsgNeutralItemStats { message NeutralItem { optional int32 item_id = 1; @@ -1385,18 +1352,8 @@ message CMsgServerToGCGetStickerHeroesResponse { repeated CMsgServerToGCGetStickerHeroesResponse.Player players = 1; } -message CMsgGCToServerSetSteamLearnDisable { -} - -message CMsgGCToServerSetSteamLearnInferencing { - optional bool enable = 1; - optional uint32 project_id = 2; - optional uint32 published_version = 3; - optional string hmac_key = 4; -} - -message CMsgGCToServerSetSteamLearnKeysChanged { - optional CMsgSteamLearnHMACKeys keys = 1; +message CMsgGCToServerSteamLearnAccessTokensChanged { + optional CMsgSteamLearnAccessTokens access_tokens = 1; } message CMsgSteamLearnMatchInfo { @@ -1413,6 +1370,7 @@ message CMsgSteamLearnMatchInfoPlayer { optional uint32 duration = 3; optional uint32 game_mode = 4; optional uint32 lobby_type = 5; + optional uint32 player_mmr = 6; } message CMsgSteamLearnMatchHeroes { @@ -1429,6 +1387,25 @@ message CMsgSteamLearnMatchHero { repeated uint32 enemy_hero_ids = 4; } +message CMsgSteamLearnPlayerTimedStats { + message StatBucket { + optional float game_time = 1; + optional uint32 kills = 2; + optional uint32 deaths = 3; + optional uint32 assists = 4; + optional uint32 experience = 5; + optional uint32 last_hits = 6; + optional uint32 denies = 7; + optional uint32 net_worth = 8; + optional float idle_time = 9; + optional uint32 commands_issued = 10; + optional uint32 sentry_wards_placed = 11; + optional uint32 observer_wards_placed = 12; + } + + repeated CMsgSteamLearnPlayerTimedStats.StatBucket stat_buckets = 1; +} + message CMsgSteamLearnMatchState { message PlayerState { optional uint32 hero_id = 1; @@ -1477,6 +1454,13 @@ message CMsgSteamLearnPreGameItemPurchases { optional bool is_using_dota_plus = 3; } +message CMsgSteamLearnNeutralItemPurchase { + optional int32 item_id = 1; + optional uint32 tier = 2; + optional uint32 is_radiant_team = 3; + optional bool is_using_dota_plus = 4; +} + message CMsgSteamLearnAbilitySkill { optional int32 ability_id = 1; repeated int32 skilled_abilities = 2; @@ -1508,3 +1492,14 @@ message CMsgSignOutMapStats { repeated CMsgSignOutMapStats.Player players = 1; optional CMsgMapStatsSnapshot global_stats = 2; } + +message CMsgServerToGCNewBloomGift { + optional uint32 defindex = 1; + optional uint32 gifter_account_id = 2; + repeated uint32 target_account_ids = 3; +} + +message CMsgServerToGCNewBloomGiftResponse { + optional ENewBloomGiftingResponse result = 1; + repeated uint32 received_account_ids = 2; +} diff --git a/dota/dota_gcmessages_webapi.pb.go b/dota/dota_gcmessages_webapi.pb.go index 81484e06..07759392 100644 --- a/dota/dota_gcmessages_webapi.pb.go +++ b/dota/dota_gcmessages_webapi.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_gcmessages_webapi.proto @@ -541,37 +541,49 @@ func (CMsgDPCEvent_ELeagueEvent) EnumDescriptor() ([]byte, []int) { type CMsgDPCEvent_ELeagueEventPhase int32 const ( - CMsgDPCEvent_PHASE_INVALID CMsgDPCEvent_ELeagueEventPhase = 0 - CMsgDPCEvent_WILD_CARD CMsgDPCEvent_ELeagueEventPhase = 1 - CMsgDPCEvent_GROUP_STAGE CMsgDPCEvent_ELeagueEventPhase = 2 - CMsgDPCEvent_GROUP_A CMsgDPCEvent_ELeagueEventPhase = 3 - CMsgDPCEvent_GROUP_B CMsgDPCEvent_ELeagueEventPhase = 4 - CMsgDPCEvent_OVERALL CMsgDPCEvent_ELeagueEventPhase = 5 - CMsgDPCEvent_PLAYOFF CMsgDPCEvent_ELeagueEventPhase = 6 - CMsgDPCEvent_RESULTS CMsgDPCEvent_ELeagueEventPhase = 7 + CMsgDPCEvent_PHASE_INVALID CMsgDPCEvent_ELeagueEventPhase = 0 + CMsgDPCEvent_WILD_CARD CMsgDPCEvent_ELeagueEventPhase = 1 + CMsgDPCEvent_GROUP_STAGE CMsgDPCEvent_ELeagueEventPhase = 2 + CMsgDPCEvent_GROUP_A CMsgDPCEvent_ELeagueEventPhase = 3 + CMsgDPCEvent_GROUP_B CMsgDPCEvent_ELeagueEventPhase = 4 + CMsgDPCEvent_OVERALL CMsgDPCEvent_ELeagueEventPhase = 5 + CMsgDPCEvent_PLAYOFF CMsgDPCEvent_ELeagueEventPhase = 6 + CMsgDPCEvent_RESULTS CMsgDPCEvent_ELeagueEventPhase = 7 + CMsgDPCEvent_DPC_POINT_STANDINGS CMsgDPCEvent_ELeagueEventPhase = 8 + CMsgDPCEvent_GROUP_C CMsgDPCEvent_ELeagueEventPhase = 9 + CMsgDPCEvent_GROUP_D CMsgDPCEvent_ELeagueEventPhase = 10 + CMsgDPCEvent_PLACEMENT CMsgDPCEvent_ELeagueEventPhase = 11 ) // Enum value maps for CMsgDPCEvent_ELeagueEventPhase. var ( CMsgDPCEvent_ELeagueEventPhase_name = map[int32]string{ - 0: "PHASE_INVALID", - 1: "WILD_CARD", - 2: "GROUP_STAGE", - 3: "GROUP_A", - 4: "GROUP_B", - 5: "OVERALL", - 6: "PLAYOFF", - 7: "RESULTS", + 0: "PHASE_INVALID", + 1: "WILD_CARD", + 2: "GROUP_STAGE", + 3: "GROUP_A", + 4: "GROUP_B", + 5: "OVERALL", + 6: "PLAYOFF", + 7: "RESULTS", + 8: "DPC_POINT_STANDINGS", + 9: "GROUP_C", + 10: "GROUP_D", + 11: "PLACEMENT", } CMsgDPCEvent_ELeagueEventPhase_value = map[string]int32{ - "PHASE_INVALID": 0, - "WILD_CARD": 1, - "GROUP_STAGE": 2, - "GROUP_A": 3, - "GROUP_B": 4, - "OVERALL": 5, - "PLAYOFF": 6, - "RESULTS": 7, + "PHASE_INVALID": 0, + "WILD_CARD": 1, + "GROUP_STAGE": 2, + "GROUP_A": 3, + "GROUP_B": 4, + "OVERALL": 5, + "PLAYOFF": 6, + "RESULTS": 7, + "DPC_POINT_STANDINGS": 8, + "GROUP_C": 9, + "GROUP_D": 10, + "PLACEMENT": 11, } ) @@ -621,6 +633,7 @@ const ( CMsgDPCEvent_INTERNATIONAL_QUALIFIERS CMsgDPCEvent_ELeagueEventType = 3 CMsgDPCEvent_INTERNATIONAL CMsgDPCEvent_ELeagueEventType = 4 CMsgDPCEvent_LEAGUE_FINALS CMsgDPCEvent_ELeagueEventType = 5 + CMsgDPCEvent_EXTERNAL CMsgDPCEvent_ELeagueEventType = 6 ) // Enum value maps for CMsgDPCEvent_ELeagueEventType. @@ -632,6 +645,7 @@ var ( 3: "INTERNATIONAL_QUALIFIERS", 4: "INTERNATIONAL", 5: "LEAGUE_FINALS", + 6: "EXTERNAL", } CMsgDPCEvent_ELeagueEventType_value = map[string]int32{ "UNKNOWN": 0, @@ -640,6 +654,7 @@ var ( "INTERNATIONAL_QUALIFIERS": 3, "INTERNATIONAL": 4, "LEAGUE_FINALS": 5, + "EXTERNAL": 6, } ) @@ -1554,24 +1569,70 @@ func (x *CMsgDOTAFantasyCardList) GetCards() []*CMsgDOTAFantasyCardList_Card { return nil } +type CMsgChatToxicityToxicPlayerMatchesReport struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Rows []*CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow `protobuf:"bytes,1,rep,name=rows" json:"rows,omitempty"` +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport) Reset() { + *x = CMsgChatToxicityToxicPlayerMatchesReport{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_webapi_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgChatToxicityToxicPlayerMatchesReport) ProtoMessage() {} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_webapi_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgChatToxicityToxicPlayerMatchesReport.ProtoReflect.Descriptor instead. +func (*CMsgChatToxicityToxicPlayerMatchesReport) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{12} +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport) GetRows() []*CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow { + if x != nil { + return x.Rows + } + return nil +} + type CMsgChatToxicityReport struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - NumMatchesSeen *uint32 `protobuf:"varint,1,opt,name=num_matches_seen,json=numMatchesSeen" json:"num_matches_seen,omitempty"` - NumMessages *uint32 `protobuf:"varint,2,opt,name=num_messages,json=numMessages" json:"num_messages,omitempty"` - NumMessagesHumanThinksToxic *uint32 `protobuf:"varint,3,opt,name=num_messages_human_thinks_toxic,json=numMessagesHumanThinksToxic" json:"num_messages_human_thinks_toxic,omitempty"` - NumMessagesMlThinksToxic *uint32 `protobuf:"varint,4,opt,name=num_messages_ml_thinks_toxic,json=numMessagesMlThinksToxic" json:"num_messages_ml_thinks_toxic,omitempty"` - Status *string `protobuf:"bytes,5,opt,name=status" json:"status,omitempty"` - Result *uint32 `protobuf:"varint,6,opt,name=result" json:"result,omitempty"` - Message *string `protobuf:"bytes,7,opt,name=message" json:"message,omitempty"` + NumMatchesSeen *uint32 `protobuf:"varint,1,opt,name=num_matches_seen,json=numMatchesSeen" json:"num_matches_seen,omitempty"` + NumMessages *uint32 `protobuf:"varint,2,opt,name=num_messages,json=numMessages" json:"num_messages,omitempty"` + NumMessagesMlThinksToxic *uint32 `protobuf:"varint,4,opt,name=num_messages_ml_thinks_toxic,json=numMessagesMlThinksToxic" json:"num_messages_ml_thinks_toxic,omitempty"` + Status *string `protobuf:"bytes,5,opt,name=status" json:"status,omitempty"` + Result *uint32 `protobuf:"varint,6,opt,name=result" json:"result,omitempty"` + Message *string `protobuf:"bytes,7,opt,name=message" json:"message,omitempty"` } func (x *CMsgChatToxicityReport) Reset() { *x = CMsgChatToxicityReport{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[12] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1584,7 +1645,7 @@ func (x *CMsgChatToxicityReport) String() string { func (*CMsgChatToxicityReport) ProtoMessage() {} func (x *CMsgChatToxicityReport) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[12] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1597,7 +1658,7 @@ func (x *CMsgChatToxicityReport) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgChatToxicityReport.ProtoReflect.Descriptor instead. func (*CMsgChatToxicityReport) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{12} + return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{13} } func (x *CMsgChatToxicityReport) GetNumMatchesSeen() uint32 { @@ -1614,13 +1675,6 @@ func (x *CMsgChatToxicityReport) GetNumMessages() uint32 { return 0 } -func (x *CMsgChatToxicityReport) GetNumMessagesHumanThinksToxic() uint32 { - if x != nil && x.NumMessagesHumanThinksToxic != nil { - return *x.NumMessagesHumanThinksToxic - } - return 0 -} - func (x *CMsgChatToxicityReport) GetNumMessagesMlThinksToxic() uint32 { if x != nil && x.NumMessagesMlThinksToxic != nil { return *x.NumMessagesMlThinksToxic @@ -1663,7 +1717,7 @@ type CMsgGetTeamAuditInformation struct { func (x *CMsgGetTeamAuditInformation) Reset() { *x = CMsgGetTeamAuditInformation{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[13] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1676,7 +1730,7 @@ func (x *CMsgGetTeamAuditInformation) String() string { func (*CMsgGetTeamAuditInformation) ProtoMessage() {} func (x *CMsgGetTeamAuditInformation) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[13] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1689,7 +1743,7 @@ func (x *CMsgGetTeamAuditInformation) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGetTeamAuditInformation.ProtoReflect.Descriptor instead. func (*CMsgGetTeamAuditInformation) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{13} + return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{14} } func (x *CMsgGetTeamAuditInformation) GetTeamId() uint32 { @@ -1732,7 +1786,7 @@ type CMsgDOTADPCMatch struct { func (x *CMsgDOTADPCMatch) Reset() { *x = CMsgDOTADPCMatch{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[14] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1745,7 +1799,7 @@ func (x *CMsgDOTADPCMatch) String() string { func (*CMsgDOTADPCMatch) ProtoMessage() {} func (x *CMsgDOTADPCMatch) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[14] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1758,7 +1812,7 @@ func (x *CMsgDOTADPCMatch) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgDOTADPCMatch.ProtoReflect.Descriptor instead. func (*CMsgDOTADPCMatch) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{14} + return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{15} } func (x *CMsgDOTADPCMatch) GetMatch() *CMsgDOTAMatch { @@ -1796,7 +1850,7 @@ type CMsgArcanaVotes_Match struct { func (x *CMsgArcanaVotes_Match) Reset() { *x = CMsgArcanaVotes_Match{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[15] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1809,7 +1863,7 @@ func (x *CMsgArcanaVotes_Match) String() string { func (*CMsgArcanaVotes_Match) ProtoMessage() {} func (x *CMsgArcanaVotes_Match) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[15] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1925,7 +1979,7 @@ type CMsgDOTADPCFeed_Element struct { func (x *CMsgDOTADPCFeed_Element) Reset() { *x = CMsgDOTADPCFeed_Element{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[16] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1938,7 +1992,7 @@ func (x *CMsgDOTADPCFeed_Element) String() string { func (*CMsgDOTADPCFeed_Element) ProtoMessage() {} func (x *CMsgDOTADPCFeed_Element) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[16] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2057,7 +2111,7 @@ type CMsgDraftTrivia_DraftTriviaHeroInfo struct { func (x *CMsgDraftTrivia_DraftTriviaHeroInfo) Reset() { *x = CMsgDraftTrivia_DraftTriviaHeroInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[17] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2070,7 +2124,7 @@ func (x *CMsgDraftTrivia_DraftTriviaHeroInfo) String() string { func (*CMsgDraftTrivia_DraftTriviaHeroInfo) ProtoMessage() {} func (x *CMsgDraftTrivia_DraftTriviaHeroInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[17] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2112,7 +2166,7 @@ type CMsgDraftTrivia_DraftTriviaMatchInfo struct { func (x *CMsgDraftTrivia_DraftTriviaMatchInfo) Reset() { *x = CMsgDraftTrivia_DraftTriviaMatchInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[18] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2125,7 +2179,7 @@ func (x *CMsgDraftTrivia_DraftTriviaMatchInfo) String() string { func (*CMsgDraftTrivia_DraftTriviaMatchInfo) ProtoMessage() {} func (x *CMsgDraftTrivia_DraftTriviaMatchInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[18] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2171,7 +2225,7 @@ type CMsgDraftTrivia_PreviousResult struct { func (x *CMsgDraftTrivia_PreviousResult) Reset() { *x = CMsgDraftTrivia_PreviousResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[19] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2184,7 +2238,7 @@ func (x *CMsgDraftTrivia_PreviousResult) String() string { func (*CMsgDraftTrivia_PreviousResult) ProtoMessage() {} func (x *CMsgDraftTrivia_PreviousResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[19] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2270,7 +2324,7 @@ type CMsgTeamFanContentStatus_TeamStatus struct { func (x *CMsgTeamFanContentStatus_TeamStatus) Reset() { *x = CMsgTeamFanContentStatus_TeamStatus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[20] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2283,7 +2337,7 @@ func (x *CMsgTeamFanContentStatus_TeamStatus) String() string { func (*CMsgTeamFanContentStatus_TeamStatus) ProtoMessage() {} func (x *CMsgTeamFanContentStatus_TeamStatus) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[20] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2439,7 +2493,7 @@ type CMsgTeamFanContentAutographStatus_AutographStatus struct { func (x *CMsgTeamFanContentAutographStatus_AutographStatus) Reset() { *x = CMsgTeamFanContentAutographStatus_AutographStatus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[21] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2452,7 +2506,7 @@ func (x *CMsgTeamFanContentAutographStatus_AutographStatus) String() string { func (*CMsgTeamFanContentAutographStatus_AutographStatus) ProtoMessage() {} func (x *CMsgTeamFanContentAutographStatus_AutographStatus) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[21] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2510,7 +2564,7 @@ type CMsgTeamFanContentAutographStatus_TeamStatus struct { func (x *CMsgTeamFanContentAutographStatus_TeamStatus) Reset() { *x = CMsgTeamFanContentAutographStatus_TeamStatus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[22] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2523,7 +2577,7 @@ func (x *CMsgTeamFanContentAutographStatus_TeamStatus) String() string { func (*CMsgTeamFanContentAutographStatus_TeamStatus) ProtoMessage() {} func (x *CMsgTeamFanContentAutographStatus_TeamStatus) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[22] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2579,7 +2633,7 @@ type CMsgDPCEvent_PhaseInfo struct { func (x *CMsgDPCEvent_PhaseInfo) Reset() { *x = CMsgDPCEvent_PhaseInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[23] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2592,7 +2646,7 @@ func (x *CMsgDPCEvent_PhaseInfo) String() string { func (*CMsgDPCEvent_PhaseInfo) ProtoMessage() {} func (x *CMsgDPCEvent_PhaseInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[23] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2636,7 +2690,7 @@ type CMsgDPCEvent_League struct { func (x *CMsgDPCEvent_League) Reset() { *x = CMsgDPCEvent_League{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[24] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2649,7 +2703,7 @@ func (x *CMsgDPCEvent_League) String() string { func (*CMsgDPCEvent_League) ProtoMessage() {} func (x *CMsgDPCEvent_League) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[24] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2705,7 +2759,7 @@ type CMsgDOTAFantasyCardLineup_CardBonus struct { func (x *CMsgDOTAFantasyCardLineup_CardBonus) Reset() { *x = CMsgDOTAFantasyCardLineup_CardBonus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[25] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2718,7 +2772,7 @@ func (x *CMsgDOTAFantasyCardLineup_CardBonus) String() string { func (*CMsgDOTAFantasyCardLineup_CardBonus) ProtoMessage() {} func (x *CMsgDOTAFantasyCardLineup_CardBonus) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[25] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2767,7 +2821,7 @@ type CMsgDOTAFantasyCardLineup_Card struct { func (x *CMsgDOTAFantasyCardLineup_Card) Reset() { *x = CMsgDOTAFantasyCardLineup_Card{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[26] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2780,7 +2834,7 @@ func (x *CMsgDOTAFantasyCardLineup_Card) String() string { func (*CMsgDOTAFantasyCardLineup_Card) ProtoMessage() {} func (x *CMsgDOTAFantasyCardLineup_Card) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[26] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2872,7 +2926,7 @@ type CMsgDOTAFantasyCardLineup_League struct { func (x *CMsgDOTAFantasyCardLineup_League) Reset() { *x = CMsgDOTAFantasyCardLineup_League{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[27] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2885,7 +2939,7 @@ func (x *CMsgDOTAFantasyCardLineup_League) String() string { func (*CMsgDOTAFantasyCardLineup_League) ProtoMessage() {} func (x *CMsgDOTAFantasyCardLineup_League) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[27] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2936,7 +2990,7 @@ type CMsgDOTAFantasyCardLineup_Period struct { func (x *CMsgDOTAFantasyCardLineup_Period) Reset() { *x = CMsgDOTAFantasyCardLineup_Period{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[28] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2949,7 +3003,7 @@ func (x *CMsgDOTAFantasyCardLineup_Period) String() string { func (*CMsgDOTAFantasyCardLineup_Period) ProtoMessage() {} func (x *CMsgDOTAFantasyCardLineup_Period) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[28] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3005,7 +3059,7 @@ type CMsgDOTAFantasyCardList_CardBonus struct { func (x *CMsgDOTAFantasyCardList_CardBonus) Reset() { *x = CMsgDOTAFantasyCardList_CardBonus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[29] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3018,7 +3072,7 @@ func (x *CMsgDOTAFantasyCardList_CardBonus) String() string { func (*CMsgDOTAFantasyCardList_CardBonus) ProtoMessage() {} func (x *CMsgDOTAFantasyCardList_CardBonus) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[29] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3065,7 +3119,7 @@ type CMsgDOTAFantasyCardList_Card struct { func (x *CMsgDOTAFantasyCardList_Card) Reset() { *x = CMsgDOTAFantasyCardList_Card{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[30] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3078,7 +3132,7 @@ func (x *CMsgDOTAFantasyCardList_Card) String() string { func (*CMsgDOTAFantasyCardList_Card) ProtoMessage() {} func (x *CMsgDOTAFantasyCardList_Card) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[30] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3143,6 +3197,93 @@ func (x *CMsgDOTAFantasyCardList_Card) GetItemId() uint64 { return 0 } +type CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlayerAccountId *uint32 `protobuf:"varint,1,opt,name=player_account_id,json=playerAccountId" json:"player_account_id,omitempty"` + NumMatchesSeen *uint32 `protobuf:"varint,2,opt,name=num_matches_seen,json=numMatchesSeen" json:"num_matches_seen,omitempty"` + NumMessages *uint32 `protobuf:"varint,3,opt,name=num_messages,json=numMessages" json:"num_messages,omitempty"` + NumMessagesToxic *uint32 `protobuf:"varint,4,opt,name=num_messages_toxic,json=numMessagesToxic" json:"num_messages_toxic,omitempty"` + FirstMatchSeen *uint64 `protobuf:"varint,5,opt,name=first_match_seen,json=firstMatchSeen" json:"first_match_seen,omitempty"` + LastMatchSeen *uint64 `protobuf:"varint,6,opt,name=last_match_seen,json=lastMatchSeen" json:"last_match_seen,omitempty"` +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) Reset() { + *x = CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_gcmessages_webapi_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) ProtoMessage() {} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) ProtoReflect() protoreflect.Message { + mi := &file_dota_gcmessages_webapi_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow.ProtoReflect.Descriptor instead. +func (*CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) Descriptor() ([]byte, []int) { + return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{12, 0} +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) GetPlayerAccountId() uint32 { + if x != nil && x.PlayerAccountId != nil { + return *x.PlayerAccountId + } + return 0 +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) GetNumMatchesSeen() uint32 { + if x != nil && x.NumMatchesSeen != nil { + return *x.NumMatchesSeen + } + return 0 +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) GetNumMessages() uint32 { + if x != nil && x.NumMessages != nil { + return *x.NumMessages + } + return 0 +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) GetNumMessagesToxic() uint32 { + if x != nil && x.NumMessagesToxic != nil { + return *x.NumMessagesToxic + } + return 0 +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) GetFirstMatchSeen() uint64 { + if x != nil && x.FirstMatchSeen != nil { + return *x.FirstMatchSeen + } + return 0 +} + +func (x *CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow) GetLastMatchSeen() uint64 { + if x != nil && x.LastMatchSeen != nil { + return *x.LastMatchSeen + } + return 0 +} + type CMsgGetTeamAuditInformation_Action struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3159,7 +3300,7 @@ type CMsgGetTeamAuditInformation_Action struct { func (x *CMsgGetTeamAuditInformation_Action) Reset() { *x = CMsgGetTeamAuditInformation_Action{} if protoimpl.UnsafeEnabled { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[31] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3172,7 +3313,7 @@ func (x *CMsgGetTeamAuditInformation_Action) String() string { func (*CMsgGetTeamAuditInformation_Action) ProtoMessage() {} func (x *CMsgGetTeamAuditInformation_Action) ProtoReflect() protoreflect.Message { - mi := &file_dota_gcmessages_webapi_proto_msgTypes[31] + mi := &file_dota_gcmessages_webapi_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3185,7 +3326,7 @@ func (x *CMsgGetTeamAuditInformation_Action) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGetTeamAuditInformation_Action.ProtoReflect.Descriptor instead. func (*CMsgGetTeamAuditInformation_Action) Descriptor() ([]byte, []int) { - return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{13, 0} + return file_dota_gcmessages_webapi_proto_rawDescGZIP(), []int{14, 0} } func (x *CMsgGetTeamAuditInformation_Action) GetRegistrationPeriod() uint32 { @@ -3517,7 +3658,7 @@ var file_dota_gcmessages_webapi_proto_rawDesc = []byte{ 0x12, 0x2e, 0x0a, 0x13, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x22, 0xcb, 0x0f, 0x0a, 0x0c, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x43, 0x45, 0x76, 0x65, 0x6e, + 0x22, 0x9c, 0x10, 0x0a, 0x0c, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x43, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x35, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x43, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x45, 0x76, 0x65, 0x6e, @@ -3621,7 +3762,7 @@ var file_dota_gcmessages_webapi_proto_rawDesc = []byte{ 0x32, 0x30, 0x32, 0x33, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x10, 0x13, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x55, 0x4d, 0x4d, 0x45, 0x52, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x10, 0x14, 0x12, 0x16, 0x0a, 0x12, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, - 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x10, 0x15, 0x22, 0x87, 0x01, 0x0a, + 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x10, 0x15, 0x22, 0xc9, 0x01, 0x0a, 0x11, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x48, 0x41, 0x53, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x57, 0x49, 0x4c, 0x44, 0x5f, 0x43, 0x41, @@ -3630,193 +3771,218 @@ var file_dota_gcmessages_webapi_proto_rawDesc = []byte{ 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x42, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x56, 0x45, 0x52, 0x41, 0x4c, 0x4c, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x4c, 0x41, 0x59, 0x4f, 0x46, 0x46, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x53, - 0x55, 0x4c, 0x54, 0x53, 0x10, 0x07, 0x22, 0x7a, 0x0a, 0x10, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, - 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4c, 0x45, 0x41, 0x47, 0x55, - 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x10, 0x02, 0x12, 0x1c, - 0x0a, 0x18, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, - 0x51, 0x55, 0x41, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x53, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, - 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x04, 0x12, - 0x11, 0x0a, 0x0d, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x53, - 0x10, 0x05, 0x22, 0x3a, 0x0a, 0x05, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x12, 0x0d, 0x0a, 0x09, 0x54, - 0x4f, 0x55, 0x52, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x4f, - 0x55, 0x52, 0x5f, 0x31, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x4f, 0x55, 0x52, 0x5f, 0x32, - 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x4f, 0x55, 0x52, 0x5f, 0x33, 0x10, 0x03, 0x22, 0x3e, - 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x43, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, - 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x50, - 0x43, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x97, - 0x06, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, - 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x75, 0x70, 0x12, 0x40, 0x0a, 0x07, - 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, + 0x55, 0x4c, 0x54, 0x53, 0x10, 0x07, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x4f, + 0x49, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x53, 0x10, 0x08, 0x12, + 0x0b, 0x0a, 0x07, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x43, 0x10, 0x09, 0x12, 0x0b, 0x0a, 0x07, + 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x44, 0x10, 0x0a, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x4c, 0x41, + 0x43, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x0b, 0x22, 0x88, 0x01, 0x0a, 0x10, 0x45, 0x4c, 0x65, + 0x61, 0x67, 0x75, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, + 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4c, 0x45, + 0x41, 0x47, 0x55, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x10, + 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x41, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x53, 0x10, 0x03, 0x12, + 0x11, 0x0a, 0x0d, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, + 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x46, 0x49, 0x4e, + 0x41, 0x4c, 0x53, 0x10, 0x05, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, + 0x4c, 0x10, 0x06, 0x22, 0x3a, 0x0a, 0x05, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x12, 0x0d, 0x0a, 0x09, + 0x54, 0x4f, 0x55, 0x52, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x54, + 0x4f, 0x55, 0x52, 0x5f, 0x31, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x4f, 0x55, 0x52, 0x5f, + 0x32, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x4f, 0x55, 0x52, 0x5f, 0x33, 0x10, 0x03, 0x22, + 0x3e, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x43, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, + 0x69, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x50, 0x43, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, + 0x97, 0x06, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, + 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x75, 0x70, 0x12, 0x40, 0x0a, + 0x07, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, + 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x75, 0x70, 0x2e, + 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x07, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x1a, + 0x4b, 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, + 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xaf, 0x02, 0x0a, + 0x04, 0x43, 0x61, 0x72, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x43, 0x0a, 0x07, + 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, + 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x75, 0x70, 0x2e, 0x43, + 0x61, 0x72, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x52, 0x07, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x65, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x69, 0x6e, 0x61, 0x6c, + 0x69, 0x7a, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x66, 0x69, 0x6e, 0x61, + 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x1a, 0x77, + 0x0a, 0x06, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, + 0x69, 0x6e, 0x65, 0x75, 0x70, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x52, 0x05, 0x63, 0x61, 0x72, 0x64, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0xbf, 0x01, 0x0a, 0x06, 0x50, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, + 0x61, 0x73, 0x79, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, + 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x45, 0x6e, 0x64, 0x12, 0x40, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x67, 0x75, + 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, + 0x61, 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x75, 0x70, 0x2e, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x52, 0x07, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x73, 0x22, 0x9c, 0x03, 0x0a, 0x17, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, + 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x05, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, + 0x69, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x52, 0x05, 0x63, 0x61, 0x72, 0x64, 0x73, 0x1a, + 0x4b, 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, + 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xf9, 0x01, 0x0a, + 0x04, 0x43, 0x61, 0x72, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x41, 0x0a, 0x07, + 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, - 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x75, 0x70, 0x2e, 0x50, - 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x07, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x1a, 0x4b, - 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x62, - 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, - 0x6e, 0x75, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xaf, 0x02, 0x0a, 0x04, - 0x43, 0x61, 0x72, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, - 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x43, 0x0a, 0x07, 0x62, - 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, - 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x75, 0x70, 0x2e, 0x43, 0x61, - 0x72, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x52, 0x07, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, - 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, - 0x7a, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x66, 0x69, 0x6e, 0x61, 0x6c, - 0x69, 0x7a, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x1a, 0x77, 0x0a, - 0x06, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, - 0x75, 0x65, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, - 0x6e, 0x65, 0x75, 0x70, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x52, 0x05, 0x63, 0x61, 0x72, 0x64, 0x73, - 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0xbf, 0x01, 0x0a, 0x06, 0x50, 0x65, 0x72, 0x69, 0x6f, - 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x70, 0x65, 0x72, - 0x69, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x61, 0x6e, 0x74, 0x61, - 0x73, 0x79, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x65, - 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x45, 0x6e, 0x64, 0x12, 0x40, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, - 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, - 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x75, 0x70, 0x2e, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, - 0x07, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x73, 0x22, 0x9c, 0x03, 0x0a, 0x17, 0x43, 0x4d, 0x73, - 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x05, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, - 0x73, 0x74, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x52, 0x05, 0x63, 0x61, 0x72, 0x64, 0x73, 0x1a, 0x4b, - 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x62, - 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, - 0x6e, 0x75, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xf9, 0x01, 0x0a, 0x04, - 0x43, 0x61, 0x72, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, - 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x41, 0x0a, 0x07, 0x62, - 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x46, 0x61, 0x6e, 0x74, - 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x72, 0x64, - 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x52, 0x07, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x12, 0x17, - 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xb5, 0x02, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x68, 0x61, 0x74, 0x54, 0x6f, 0x78, 0x69, 0x63, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, - 0x73, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6e, 0x75, - 0x6d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x53, 0x65, 0x65, 0x6e, 0x12, 0x21, 0x0a, 0x0c, - 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, - 0x44, 0x0a, 0x1f, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, - 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x74, 0x68, 0x69, 0x6e, 0x6b, 0x73, 0x5f, 0x74, 0x6f, 0x78, - 0x69, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x6e, 0x75, 0x6d, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x73, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x73, - 0x54, 0x6f, 0x78, 0x69, 0x63, 0x12, 0x3e, 0x0a, 0x1c, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x6d, 0x6c, 0x5f, 0x74, 0x68, 0x69, 0x6e, 0x6b, 0x73, 0x5f, - 0x74, 0x6f, 0x78, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x6e, 0x75, 0x6d, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x4d, 0x6c, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x73, - 0x54, 0x6f, 0x78, 0x69, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, - 0x96, 0x03, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x41, - 0x75, 0x64, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x61, - 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x47, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x41, 0x75, 0x64, 0x69, 0x74, 0x49, 0x6e, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61, 0x73, - 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x1a, 0xd9, 0x01, 0x0a, - 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x69, 0x73, - 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1f, 0x0a, - 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, - 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x61, 0x6c, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x52, 0x65, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x73, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x4f, 0x54, 0x41, 0x44, 0x50, 0x43, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x29, 0x0a, 0x05, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x34, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2a, 0x88, 0x01, - 0x0a, 0x15, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x54, 0x45, 0x41, 0x4d, 0x5f, - 0x46, 0x41, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, + 0x74, 0x61, 0x73, 0x79, 0x43, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x72, + 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x52, 0x07, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x65, 0x73, 0x12, + 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x87, 0x03, 0x0a, 0x28, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x68, 0x61, 0x74, 0x54, 0x6f, 0x78, 0x69, 0x63, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x78, + 0x69, 0x63, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x50, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x68, 0x61, 0x74, 0x54, 0x6f, 0x78, 0x69, 0x63, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x78, 0x69, 0x63, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x2e, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x52, 0x6f, + 0x77, 0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x1a, 0x88, 0x02, 0x0a, 0x0d, 0x49, 0x6e, 0x64, 0x69, + 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x52, 0x6f, 0x77, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x65, 0x73, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x6e, 0x75, 0x6d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x53, 0x65, 0x65, 0x6e, 0x12, + 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x73, 0x5f, 0x74, 0x6f, 0x78, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x6e, 0x75, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x54, 0x6f, 0x78, 0x69, 0x63, + 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x73, 0x65, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x66, 0x69, 0x72, 0x73, + 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x65, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x61, + 0x73, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, + 0x65, 0x6e, 0x22, 0xef, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x74, 0x54, + 0x6f, 0x78, 0x69, 0x63, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x28, 0x0a, + 0x10, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x73, 0x65, 0x65, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6e, 0x75, 0x6d, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x65, 0x73, 0x53, 0x65, 0x65, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6e, + 0x75, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x1c, 0x6e, 0x75, + 0x6d, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x6d, 0x6c, 0x5f, 0x74, 0x68, + 0x69, 0x6e, 0x6b, 0x73, 0x5f, 0x74, 0x6f, 0x78, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x18, 0x6e, 0x75, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x4d, 0x6c, 0x54, + 0x68, 0x69, 0x6e, 0x6b, 0x73, 0x54, 0x6f, 0x78, 0x69, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x22, 0x96, 0x03, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, + 0x54, 0x65, 0x61, 0x6d, 0x41, 0x75, 0x64, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, + 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x07, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x41, 0x75, + 0x64, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, + 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x1a, 0xd9, 0x01, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x13, + 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x72, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x1d, 0x0a, + 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x72, 0x65, + 0x61, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x73, 0x0a, + 0x10, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x44, 0x50, 0x43, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x12, 0x29, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x34, 0x0a, 0x08, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x2a, 0x88, 0x01, 0x0a, 0x15, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x46, 0x41, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, - 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, - 0x01, 0x12, 0x25, 0x0a, 0x21, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x46, 0x41, 0x4e, 0x5f, 0x43, 0x4f, - 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x56, 0x41, - 0x4c, 0x55, 0x41, 0x54, 0x45, 0x44, 0x10, 0x02, 0x2a, 0xe9, 0x02, 0x0a, 0x18, 0x45, 0x54, 0x65, - 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, + 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, + 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x46, 0x41, 0x4e, 0x5f, 0x43, 0x4f, + 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x45, 0x4e, + 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x25, 0x0a, 0x21, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x46, + 0x41, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, + 0x53, 0x5f, 0x45, 0x56, 0x41, 0x4c, 0x55, 0x41, 0x54, 0x45, 0x44, 0x10, 0x02, 0x2a, 0xe9, 0x02, + 0x0a, 0x18, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, + 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x67, 0x6f, 0x50, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x22, + 0x0a, 0x1e, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, + 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x67, 0x6f, 0x53, 0x56, 0x47, + 0x10, 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x67, + 0x6f, 0x33, 0x44, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, - 0x4c, 0x6f, 0x67, 0x6f, 0x50, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x65, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x67, 0x6f, 0x53, 0x56, 0x47, 0x10, 0x02, 0x12, 0x21, 0x0a, - 0x1d, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, - 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x67, 0x6f, 0x33, 0x44, 0x10, 0x03, - 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x53, - 0x70, 0x72, 0x61, 0x79, 0x73, 0x10, 0x05, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x65, 0x46, 0x61, - 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x57, 0x61, 0x6c, 0x6c, 0x70, 0x61, 0x70, 0x65, 0x72, 0x73, 0x10, 0x06, 0x12, 0x24, - 0x0a, 0x20, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, - 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, - 0x6e, 0x73, 0x10, 0x07, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x56, - 0x6f, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x10, 0x08, 0x12, 0x27, 0x0a, 0x23, 0x6b, + 0x79, 0x70, 0x65, 0x5f, 0x53, 0x70, 0x72, 0x61, 0x79, 0x73, 0x10, 0x05, 0x12, 0x25, 0x0a, 0x21, + 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, + 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x57, 0x61, 0x6c, 0x6c, 0x70, 0x61, 0x70, 0x65, 0x72, + 0x73, 0x10, 0x06, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x45, 0x6d, + 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x73, 0x10, 0x07, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x65, + 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x10, 0x08, + 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x63, 0x61, 0x6c, + 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x09, 0x2a, 0x8d, 0x01, 0x0a, 0x1a, 0x45, 0x54, + 0x65, 0x61, 0x6d, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, + 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x65, 0x46, + 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x10, 0x09, 0x2a, 0x8d, 0x01, 0x0a, 0x1a, 0x45, 0x54, 0x65, 0x61, 0x6d, 0x46, 0x61, - 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, - 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x5f, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x10, 0x01, 0x12, 0x25, 0x0a, - 0x21, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x73, - 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, - 0x65, 0x64, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, - 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, + 0x10, 0x01, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x65, 0x46, 0x61, 0x6e, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x52, + 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, + 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -3832,95 +3998,98 @@ func file_dota_gcmessages_webapi_proto_rawDescGZIP() []byte { } var file_dota_gcmessages_webapi_proto_enumTypes = make([]protoimpl.EnumInfo, 10) -var file_dota_gcmessages_webapi_proto_msgTypes = make([]protoimpl.MessageInfo, 32) +var file_dota_gcmessages_webapi_proto_msgTypes = make([]protoimpl.MessageInfo, 34) var file_dota_gcmessages_webapi_proto_goTypes = []interface{}{ - (ETeamFanContentStatus)(0), // 0: dota.ETeamFanContentStatus - (ETeamFanContentAssetType)(0), // 1: dota.ETeamFanContentAssetType - (ETeamFanContentAssetStatus)(0), // 2: dota.ETeamFanContentAssetStatus - (CMsgArcanaVotes_VotingState)(0), // 3: dota.CMsgArcanaVotes.VotingState - (CMsgDOTADPCFeed_EFeedElementType)(0), // 4: dota.CMsgDOTADPCFeed.EFeedElementType - (CMsgTeamFanContentAssetStatusResponse_EResult)(0), // 5: dota.CMsgTeamFanContentAssetStatusResponse.EResult - (CMsgDPCEvent_ELeagueEvent)(0), // 6: dota.CMsgDPCEvent.ELeagueEvent - (CMsgDPCEvent_ELeagueEventPhase)(0), // 7: dota.CMsgDPCEvent.ELeagueEventPhase - (CMsgDPCEvent_ELeagueEventType)(0), // 8: dota.CMsgDPCEvent.ELeagueEventType - (CMsgDPCEvent_ETour)(0), // 9: dota.CMsgDPCEvent.ETour - (*CMsgArcanaVotes)(nil), // 10: dota.CMsgArcanaVotes - (*CMsgDOTADPCFeed)(nil), // 11: dota.CMsgDOTADPCFeed - (*CMsgDOTADPCUserInfo)(nil), // 12: dota.CMsgDOTADPCUserInfo - (*CMsgDraftTrivia)(nil), // 13: dota.CMsgDraftTrivia - (*CMsgTeamFanContentAssetStatus)(nil), // 14: dota.CMsgTeamFanContentAssetStatus - (*CMsgTeamFanContentAssetStatusResponse)(nil), // 15: dota.CMsgTeamFanContentAssetStatusResponse - (*CMsgTeamFanContentStatus)(nil), // 16: dota.CMsgTeamFanContentStatus - (*CMsgTeamFanContentAutographStatus)(nil), // 17: dota.CMsgTeamFanContentAutographStatus - (*CMsgDPCEvent)(nil), // 18: dota.CMsgDPCEvent - (*CMsgDPCEventList)(nil), // 19: dota.CMsgDPCEventList - (*CMsgDOTAFantasyCardLineup)(nil), // 20: dota.CMsgDOTAFantasyCardLineup - (*CMsgDOTAFantasyCardList)(nil), // 21: dota.CMsgDOTAFantasyCardList - (*CMsgChatToxicityReport)(nil), // 22: dota.CMsgChatToxicityReport - (*CMsgGetTeamAuditInformation)(nil), // 23: dota.CMsgGetTeamAuditInformation - (*CMsgDOTADPCMatch)(nil), // 24: dota.CMsgDOTADPCMatch - (*CMsgArcanaVotes_Match)(nil), // 25: dota.CMsgArcanaVotes.Match - (*CMsgDOTADPCFeed_Element)(nil), // 26: dota.CMsgDOTADPCFeed.Element - (*CMsgDraftTrivia_DraftTriviaHeroInfo)(nil), // 27: dota.CMsgDraftTrivia.DraftTriviaHeroInfo - (*CMsgDraftTrivia_DraftTriviaMatchInfo)(nil), // 28: dota.CMsgDraftTrivia.DraftTriviaMatchInfo - (*CMsgDraftTrivia_PreviousResult)(nil), // 29: dota.CMsgDraftTrivia.PreviousResult - (*CMsgTeamFanContentStatus_TeamStatus)(nil), // 30: dota.CMsgTeamFanContentStatus.TeamStatus - (*CMsgTeamFanContentAutographStatus_AutographStatus)(nil), // 31: dota.CMsgTeamFanContentAutographStatus.AutographStatus - (*CMsgTeamFanContentAutographStatus_TeamStatus)(nil), // 32: dota.CMsgTeamFanContentAutographStatus.TeamStatus - (*CMsgDPCEvent_PhaseInfo)(nil), // 33: dota.CMsgDPCEvent.PhaseInfo - (*CMsgDPCEvent_League)(nil), // 34: dota.CMsgDPCEvent.League - (*CMsgDOTAFantasyCardLineup_CardBonus)(nil), // 35: dota.CMsgDOTAFantasyCardLineup.CardBonus - (*CMsgDOTAFantasyCardLineup_Card)(nil), // 36: dota.CMsgDOTAFantasyCardLineup.Card - (*CMsgDOTAFantasyCardLineup_League)(nil), // 37: dota.CMsgDOTAFantasyCardLineup.League - (*CMsgDOTAFantasyCardLineup_Period)(nil), // 38: dota.CMsgDOTAFantasyCardLineup.Period - (*CMsgDOTAFantasyCardList_CardBonus)(nil), // 39: dota.CMsgDOTAFantasyCardList.CardBonus - (*CMsgDOTAFantasyCardList_Card)(nil), // 40: dota.CMsgDOTAFantasyCardList.Card - (*CMsgGetTeamAuditInformation_Action)(nil), // 41: dota.CMsgGetTeamAuditInformation.Action - (*CMsgDOTAMatch)(nil), // 42: dota.CMsgDOTAMatch - (*CDOTAMatchMetadata)(nil), // 43: dota.CDOTAMatchMetadata - (ELeagueRegion)(0), // 44: dota.ELeagueRegion - (ELeagueDivision)(0), // 45: dota.ELeagueDivision + (ETeamFanContentStatus)(0), // 0: dota.ETeamFanContentStatus + (ETeamFanContentAssetType)(0), // 1: dota.ETeamFanContentAssetType + (ETeamFanContentAssetStatus)(0), // 2: dota.ETeamFanContentAssetStatus + (CMsgArcanaVotes_VotingState)(0), // 3: dota.CMsgArcanaVotes.VotingState + (CMsgDOTADPCFeed_EFeedElementType)(0), // 4: dota.CMsgDOTADPCFeed.EFeedElementType + (CMsgTeamFanContentAssetStatusResponse_EResult)(0), // 5: dota.CMsgTeamFanContentAssetStatusResponse.EResult + (CMsgDPCEvent_ELeagueEvent)(0), // 6: dota.CMsgDPCEvent.ELeagueEvent + (CMsgDPCEvent_ELeagueEventPhase)(0), // 7: dota.CMsgDPCEvent.ELeagueEventPhase + (CMsgDPCEvent_ELeagueEventType)(0), // 8: dota.CMsgDPCEvent.ELeagueEventType + (CMsgDPCEvent_ETour)(0), // 9: dota.CMsgDPCEvent.ETour + (*CMsgArcanaVotes)(nil), // 10: dota.CMsgArcanaVotes + (*CMsgDOTADPCFeed)(nil), // 11: dota.CMsgDOTADPCFeed + (*CMsgDOTADPCUserInfo)(nil), // 12: dota.CMsgDOTADPCUserInfo + (*CMsgDraftTrivia)(nil), // 13: dota.CMsgDraftTrivia + (*CMsgTeamFanContentAssetStatus)(nil), // 14: dota.CMsgTeamFanContentAssetStatus + (*CMsgTeamFanContentAssetStatusResponse)(nil), // 15: dota.CMsgTeamFanContentAssetStatusResponse + (*CMsgTeamFanContentStatus)(nil), // 16: dota.CMsgTeamFanContentStatus + (*CMsgTeamFanContentAutographStatus)(nil), // 17: dota.CMsgTeamFanContentAutographStatus + (*CMsgDPCEvent)(nil), // 18: dota.CMsgDPCEvent + (*CMsgDPCEventList)(nil), // 19: dota.CMsgDPCEventList + (*CMsgDOTAFantasyCardLineup)(nil), // 20: dota.CMsgDOTAFantasyCardLineup + (*CMsgDOTAFantasyCardList)(nil), // 21: dota.CMsgDOTAFantasyCardList + (*CMsgChatToxicityToxicPlayerMatchesReport)(nil), // 22: dota.CMsgChatToxicityToxicPlayerMatchesReport + (*CMsgChatToxicityReport)(nil), // 23: dota.CMsgChatToxicityReport + (*CMsgGetTeamAuditInformation)(nil), // 24: dota.CMsgGetTeamAuditInformation + (*CMsgDOTADPCMatch)(nil), // 25: dota.CMsgDOTADPCMatch + (*CMsgArcanaVotes_Match)(nil), // 26: dota.CMsgArcanaVotes.Match + (*CMsgDOTADPCFeed_Element)(nil), // 27: dota.CMsgDOTADPCFeed.Element + (*CMsgDraftTrivia_DraftTriviaHeroInfo)(nil), // 28: dota.CMsgDraftTrivia.DraftTriviaHeroInfo + (*CMsgDraftTrivia_DraftTriviaMatchInfo)(nil), // 29: dota.CMsgDraftTrivia.DraftTriviaMatchInfo + (*CMsgDraftTrivia_PreviousResult)(nil), // 30: dota.CMsgDraftTrivia.PreviousResult + (*CMsgTeamFanContentStatus_TeamStatus)(nil), // 31: dota.CMsgTeamFanContentStatus.TeamStatus + (*CMsgTeamFanContentAutographStatus_AutographStatus)(nil), // 32: dota.CMsgTeamFanContentAutographStatus.AutographStatus + (*CMsgTeamFanContentAutographStatus_TeamStatus)(nil), // 33: dota.CMsgTeamFanContentAutographStatus.TeamStatus + (*CMsgDPCEvent_PhaseInfo)(nil), // 34: dota.CMsgDPCEvent.PhaseInfo + (*CMsgDPCEvent_League)(nil), // 35: dota.CMsgDPCEvent.League + (*CMsgDOTAFantasyCardLineup_CardBonus)(nil), // 36: dota.CMsgDOTAFantasyCardLineup.CardBonus + (*CMsgDOTAFantasyCardLineup_Card)(nil), // 37: dota.CMsgDOTAFantasyCardLineup.Card + (*CMsgDOTAFantasyCardLineup_League)(nil), // 38: dota.CMsgDOTAFantasyCardLineup.League + (*CMsgDOTAFantasyCardLineup_Period)(nil), // 39: dota.CMsgDOTAFantasyCardLineup.Period + (*CMsgDOTAFantasyCardList_CardBonus)(nil), // 40: dota.CMsgDOTAFantasyCardList.CardBonus + (*CMsgDOTAFantasyCardList_Card)(nil), // 41: dota.CMsgDOTAFantasyCardList.Card + (*CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow)(nil), // 42: dota.CMsgChatToxicityToxicPlayerMatchesReport.IndividualRow + (*CMsgGetTeamAuditInformation_Action)(nil), // 43: dota.CMsgGetTeamAuditInformation.Action + (*CMsgDOTAMatch)(nil), // 44: dota.CMsgDOTAMatch + (*CDOTAMatchMetadata)(nil), // 45: dota.CDOTAMatchMetadata + (ELeagueRegion)(0), // 46: dota.ELeagueRegion + (ELeagueDivision)(0), // 47: dota.ELeagueDivision } var file_dota_gcmessages_webapi_proto_depIdxs = []int32{ - 25, // 0: dota.CMsgArcanaVotes.matches:type_name -> dota.CMsgArcanaVotes.Match - 26, // 1: dota.CMsgDOTADPCFeed.elements:type_name -> dota.CMsgDOTADPCFeed.Element - 28, // 2: dota.CMsgDraftTrivia.match_hero_info:type_name -> dota.CMsgDraftTrivia.DraftTriviaMatchInfo - 29, // 3: dota.CMsgDraftTrivia.previous_result:type_name -> dota.CMsgDraftTrivia.PreviousResult + 26, // 0: dota.CMsgArcanaVotes.matches:type_name -> dota.CMsgArcanaVotes.Match + 27, // 1: dota.CMsgDOTADPCFeed.elements:type_name -> dota.CMsgDOTADPCFeed.Element + 29, // 2: dota.CMsgDraftTrivia.match_hero_info:type_name -> dota.CMsgDraftTrivia.DraftTriviaMatchInfo + 30, // 3: dota.CMsgDraftTrivia.previous_result:type_name -> dota.CMsgDraftTrivia.PreviousResult 1, // 4: dota.CMsgTeamFanContentAssetStatus.asset_type:type_name -> dota.ETeamFanContentAssetType 2, // 5: dota.CMsgTeamFanContentAssetStatus.asset_status:type_name -> dota.ETeamFanContentAssetStatus 5, // 6: dota.CMsgTeamFanContentAssetStatusResponse.result:type_name -> dota.CMsgTeamFanContentAssetStatusResponse.EResult - 30, // 7: dota.CMsgTeamFanContentStatus.team_status_list:type_name -> dota.CMsgTeamFanContentStatus.TeamStatus - 32, // 8: dota.CMsgTeamFanContentAutographStatus.team_autographs:type_name -> dota.CMsgTeamFanContentAutographStatus.TeamStatus + 31, // 7: dota.CMsgTeamFanContentStatus.team_status_list:type_name -> dota.CMsgTeamFanContentStatus.TeamStatus + 33, // 8: dota.CMsgTeamFanContentAutographStatus.team_autographs:type_name -> dota.CMsgTeamFanContentAutographStatus.TeamStatus 6, // 9: dota.CMsgDPCEvent.event:type_name -> dota.CMsgDPCEvent.ELeagueEvent 8, // 10: dota.CMsgDPCEvent.event_type:type_name -> dota.CMsgDPCEvent.ELeagueEventType - 34, // 11: dota.CMsgDPCEvent.leagues:type_name -> dota.CMsgDPCEvent.League + 35, // 11: dota.CMsgDPCEvent.leagues:type_name -> dota.CMsgDPCEvent.League 9, // 12: dota.CMsgDPCEvent.tour:type_name -> dota.CMsgDPCEvent.ETour 18, // 13: dota.CMsgDPCEventList.events:type_name -> dota.CMsgDPCEvent - 38, // 14: dota.CMsgDOTAFantasyCardLineup.periods:type_name -> dota.CMsgDOTAFantasyCardLineup.Period - 40, // 15: dota.CMsgDOTAFantasyCardList.cards:type_name -> dota.CMsgDOTAFantasyCardList.Card - 41, // 16: dota.CMsgGetTeamAuditInformation.actions:type_name -> dota.CMsgGetTeamAuditInformation.Action - 42, // 17: dota.CMsgDOTADPCMatch.match:type_name -> dota.CMsgDOTAMatch - 43, // 18: dota.CMsgDOTADPCMatch.metadata:type_name -> dota.CDOTAMatchMetadata - 4, // 19: dota.CMsgDOTADPCFeed.Element.type:type_name -> dota.CMsgDOTADPCFeed.EFeedElementType - 27, // 20: dota.CMsgDraftTrivia.DraftTriviaMatchInfo.radiant_heroes:type_name -> dota.CMsgDraftTrivia.DraftTriviaHeroInfo - 27, // 21: dota.CMsgDraftTrivia.DraftTriviaMatchInfo.dire_heroes:type_name -> dota.CMsgDraftTrivia.DraftTriviaHeroInfo - 28, // 22: dota.CMsgDraftTrivia.PreviousResult.match_hero_info:type_name -> dota.CMsgDraftTrivia.DraftTriviaMatchInfo - 0, // 23: dota.CMsgTeamFanContentStatus.TeamStatus.status:type_name -> dota.ETeamFanContentStatus - 14, // 24: dota.CMsgTeamFanContentStatus.TeamStatus.asset_status:type_name -> dota.CMsgTeamFanContentAssetStatus - 31, // 25: dota.CMsgTeamFanContentAutographStatus.TeamStatus.autographs:type_name -> dota.CMsgTeamFanContentAutographStatus.AutographStatus - 7, // 26: dota.CMsgDPCEvent.PhaseInfo.phase:type_name -> dota.CMsgDPCEvent.ELeagueEventPhase - 44, // 27: dota.CMsgDPCEvent.League.region:type_name -> dota.ELeagueRegion - 45, // 28: dota.CMsgDPCEvent.League.division:type_name -> dota.ELeagueDivision - 33, // 29: dota.CMsgDPCEvent.League.phases:type_name -> dota.CMsgDPCEvent.PhaseInfo - 35, // 30: dota.CMsgDOTAFantasyCardLineup.Card.bonuses:type_name -> dota.CMsgDOTAFantasyCardLineup.CardBonus - 36, // 31: dota.CMsgDOTAFantasyCardLineup.League.cards:type_name -> dota.CMsgDOTAFantasyCardLineup.Card - 37, // 32: dota.CMsgDOTAFantasyCardLineup.Period.leagues:type_name -> dota.CMsgDOTAFantasyCardLineup.League - 39, // 33: dota.CMsgDOTAFantasyCardList.Card.bonuses:type_name -> dota.CMsgDOTAFantasyCardList.CardBonus - 34, // [34:34] is the sub-list for method output_type - 34, // [34:34] is the sub-list for method input_type - 34, // [34:34] is the sub-list for extension type_name - 34, // [34:34] is the sub-list for extension extendee - 0, // [0:34] is the sub-list for field type_name + 39, // 14: dota.CMsgDOTAFantasyCardLineup.periods:type_name -> dota.CMsgDOTAFantasyCardLineup.Period + 41, // 15: dota.CMsgDOTAFantasyCardList.cards:type_name -> dota.CMsgDOTAFantasyCardList.Card + 42, // 16: dota.CMsgChatToxicityToxicPlayerMatchesReport.rows:type_name -> dota.CMsgChatToxicityToxicPlayerMatchesReport.IndividualRow + 43, // 17: dota.CMsgGetTeamAuditInformation.actions:type_name -> dota.CMsgGetTeamAuditInformation.Action + 44, // 18: dota.CMsgDOTADPCMatch.match:type_name -> dota.CMsgDOTAMatch + 45, // 19: dota.CMsgDOTADPCMatch.metadata:type_name -> dota.CDOTAMatchMetadata + 4, // 20: dota.CMsgDOTADPCFeed.Element.type:type_name -> dota.CMsgDOTADPCFeed.EFeedElementType + 28, // 21: dota.CMsgDraftTrivia.DraftTriviaMatchInfo.radiant_heroes:type_name -> dota.CMsgDraftTrivia.DraftTriviaHeroInfo + 28, // 22: dota.CMsgDraftTrivia.DraftTriviaMatchInfo.dire_heroes:type_name -> dota.CMsgDraftTrivia.DraftTriviaHeroInfo + 29, // 23: dota.CMsgDraftTrivia.PreviousResult.match_hero_info:type_name -> dota.CMsgDraftTrivia.DraftTriviaMatchInfo + 0, // 24: dota.CMsgTeamFanContentStatus.TeamStatus.status:type_name -> dota.ETeamFanContentStatus + 14, // 25: dota.CMsgTeamFanContentStatus.TeamStatus.asset_status:type_name -> dota.CMsgTeamFanContentAssetStatus + 32, // 26: dota.CMsgTeamFanContentAutographStatus.TeamStatus.autographs:type_name -> dota.CMsgTeamFanContentAutographStatus.AutographStatus + 7, // 27: dota.CMsgDPCEvent.PhaseInfo.phase:type_name -> dota.CMsgDPCEvent.ELeagueEventPhase + 46, // 28: dota.CMsgDPCEvent.League.region:type_name -> dota.ELeagueRegion + 47, // 29: dota.CMsgDPCEvent.League.division:type_name -> dota.ELeagueDivision + 34, // 30: dota.CMsgDPCEvent.League.phases:type_name -> dota.CMsgDPCEvent.PhaseInfo + 36, // 31: dota.CMsgDOTAFantasyCardLineup.Card.bonuses:type_name -> dota.CMsgDOTAFantasyCardLineup.CardBonus + 37, // 32: dota.CMsgDOTAFantasyCardLineup.League.cards:type_name -> dota.CMsgDOTAFantasyCardLineup.Card + 38, // 33: dota.CMsgDOTAFantasyCardLineup.Period.leagues:type_name -> dota.CMsgDOTAFantasyCardLineup.League + 40, // 34: dota.CMsgDOTAFantasyCardList.Card.bonuses:type_name -> dota.CMsgDOTAFantasyCardList.CardBonus + 35, // [35:35] is the sub-list for method output_type + 35, // [35:35] is the sub-list for method input_type + 35, // [35:35] is the sub-list for extension type_name + 35, // [35:35] is the sub-list for extension extendee + 0, // [0:35] is the sub-list for field type_name } func init() { file_dota_gcmessages_webapi_proto_init() } @@ -4079,7 +4248,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgChatToxicityReport); i { + switch v := v.(*CMsgChatToxicityToxicPlayerMatchesReport); i { case 0: return &v.state case 1: @@ -4091,7 +4260,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGetTeamAuditInformation); i { + switch v := v.(*CMsgChatToxicityReport); i { case 0: return &v.state case 1: @@ -4103,7 +4272,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTADPCMatch); i { + switch v := v.(*CMsgGetTeamAuditInformation); i { case 0: return &v.state case 1: @@ -4115,7 +4284,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgArcanaVotes_Match); i { + switch v := v.(*CMsgDOTADPCMatch); i { case 0: return &v.state case 1: @@ -4127,7 +4296,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTADPCFeed_Element); i { + switch v := v.(*CMsgArcanaVotes_Match); i { case 0: return &v.state case 1: @@ -4139,7 +4308,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDraftTrivia_DraftTriviaHeroInfo); i { + switch v := v.(*CMsgDOTADPCFeed_Element); i { case 0: return &v.state case 1: @@ -4151,7 +4320,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDraftTrivia_DraftTriviaMatchInfo); i { + switch v := v.(*CMsgDraftTrivia_DraftTriviaHeroInfo); i { case 0: return &v.state case 1: @@ -4163,7 +4332,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDraftTrivia_PreviousResult); i { + switch v := v.(*CMsgDraftTrivia_DraftTriviaMatchInfo); i { case 0: return &v.state case 1: @@ -4175,7 +4344,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgTeamFanContentStatus_TeamStatus); i { + switch v := v.(*CMsgDraftTrivia_PreviousResult); i { case 0: return &v.state case 1: @@ -4187,7 +4356,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgTeamFanContentAutographStatus_AutographStatus); i { + switch v := v.(*CMsgTeamFanContentStatus_TeamStatus); i { case 0: return &v.state case 1: @@ -4199,7 +4368,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgTeamFanContentAutographStatus_TeamStatus); i { + switch v := v.(*CMsgTeamFanContentAutographStatus_AutographStatus); i { case 0: return &v.state case 1: @@ -4211,7 +4380,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDPCEvent_PhaseInfo); i { + switch v := v.(*CMsgTeamFanContentAutographStatus_TeamStatus); i { case 0: return &v.state case 1: @@ -4223,7 +4392,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDPCEvent_League); i { + switch v := v.(*CMsgDPCEvent_PhaseInfo); i { case 0: return &v.state case 1: @@ -4235,7 +4404,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyCardLineup_CardBonus); i { + switch v := v.(*CMsgDPCEvent_League); i { case 0: return &v.state case 1: @@ -4247,7 +4416,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyCardLineup_Card); i { + switch v := v.(*CMsgDOTAFantasyCardLineup_CardBonus); i { case 0: return &v.state case 1: @@ -4259,7 +4428,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyCardLineup_League); i { + switch v := v.(*CMsgDOTAFantasyCardLineup_Card); i { case 0: return &v.state case 1: @@ -4271,7 +4440,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyCardLineup_Period); i { + switch v := v.(*CMsgDOTAFantasyCardLineup_League); i { case 0: return &v.state case 1: @@ -4283,7 +4452,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyCardList_CardBonus); i { + switch v := v.(*CMsgDOTAFantasyCardLineup_Period); i { case 0: return &v.state case 1: @@ -4295,7 +4464,7 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgDOTAFantasyCardList_Card); i { + switch v := v.(*CMsgDOTAFantasyCardList_CardBonus); i { case 0: return &v.state case 1: @@ -4307,6 +4476,30 @@ func file_dota_gcmessages_webapi_proto_init() { } } file_dota_gcmessages_webapi_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgDOTAFantasyCardList_Card); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_webapi_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_gcmessages_webapi_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGetTeamAuditInformation_Action); i { case 0: return &v.state @@ -4325,7 +4518,7 @@ func file_dota_gcmessages_webapi_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_gcmessages_webapi_proto_rawDesc, NumEnums: 10, - NumMessages: 32, + NumMessages: 34, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_gcmessages_webapi.proto b/dota/dota_gcmessages_webapi.proto index acf45fa6..c93ff54c 100644 --- a/dota/dota_gcmessages_webapi.proto +++ b/dota/dota_gcmessages_webapi.proto @@ -241,6 +241,10 @@ message CMsgDPCEvent { OVERALL = 5; PLAYOFF = 6; RESULTS = 7; + DPC_POINT_STANDINGS = 8; + GROUP_C = 9; + GROUP_D = 10; + PLACEMENT = 11; } enum ELeagueEventType { @@ -250,6 +254,7 @@ message CMsgDPCEvent { INTERNATIONAL_QUALIFIERS = 3; INTERNATIONAL = 4; LEAGUE_FINALS = 5; + EXTERNAL = 6; } enum ETour { @@ -333,10 +338,22 @@ message CMsgDOTAFantasyCardList { repeated CMsgDOTAFantasyCardList.Card cards = 1; } +message CMsgChatToxicityToxicPlayerMatchesReport { + message IndividualRow { + optional uint32 player_account_id = 1; + optional uint32 num_matches_seen = 2; + optional uint32 num_messages = 3; + optional uint32 num_messages_toxic = 4; + optional uint64 first_match_seen = 5; + optional uint64 last_match_seen = 6; + } + + repeated CMsgChatToxicityToxicPlayerMatchesReport.IndividualRow rows = 1; +} + message CMsgChatToxicityReport { optional uint32 num_matches_seen = 1; optional uint32 num_messages = 2; - optional uint32 num_messages_human_thinks_toxic = 3; optional uint32 num_messages_ml_thinks_toxic = 4; optional string status = 5; optional uint32 result = 6; diff --git a/dota/dota_hud_types.pb.go b/dota/dota_hud_types.pb.go index bc8f27a8..c45ec0b5 100644 --- a/dota/dota_hud_types.pb.go +++ b/dota/dota_hud_types.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_hud_types.proto diff --git a/dota/dota_match_metadata.pb.go b/dota/dota_match_metadata.pb.go index f5107b4a..61c969ac 100644 --- a/dota/dota_match_metadata.pb.go +++ b/dota/dota_match_metadata.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_match_metadata.proto @@ -106,6 +106,7 @@ type CDOTAMatchMetadata struct { GuildChallengeProgress []*CDOTAMatchMetadata_GuildChallengeProgress `protobuf:"bytes,10,rep,name=guild_challenge_progress,json=guildChallengeProgress" json:"guild_challenge_progress,omitempty"` CustomPostGameTable []byte `protobuf:"bytes,11,opt,name=custom_post_game_table,json=customPostGameTable" json:"custom_post_game_table,omitempty"` MatchTips []*CDOTAMatchMetadata_Tip `protobuf:"bytes,12,rep,name=match_tips,json=matchTips" json:"match_tips,omitempty"` + MatchTrackedStats []*CMsgTrackedStat `protobuf:"bytes,13,rep,name=match_tracked_stats,json=matchTrackedStats" json:"match_tracked_stats,omitempty"` } func (x *CDOTAMatchMetadata) Reset() { @@ -210,6 +211,13 @@ func (x *CDOTAMatchMetadata) GetMatchTips() []*CDOTAMatchMetadata_Tip { return nil } +func (x *CDOTAMatchMetadata) GetMatchTrackedStats() []*CMsgTrackedStat { + if x != nil { + return x.MatchTrackedStats + } + return nil +} + type CDOTAMatchPrivateMetadata struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -365,6 +373,7 @@ type CDOTAMatchMetadata_Team struct { CmFirstPick *bool `protobuf:"varint,6,opt,name=cm_first_pick,json=cmFirstPick" json:"cm_first_pick,omitempty"` CmCaptainPlayerId *int32 `protobuf:"varint,7,opt,name=cm_captain_player_id,json=cmCaptainPlayerId" json:"cm_captain_player_id,omitempty"` CmPenalty *uint32 `protobuf:"varint,10,opt,name=cm_penalty,json=cmPenalty" json:"cm_penalty,omitempty"` + TeamTrackedStats []*CMsgTrackedStat `protobuf:"bytes,11,rep,name=team_tracked_stats,json=teamTrackedStats" json:"team_tracked_stats,omitempty"` } func (x *CDOTAMatchMetadata_Team) Reset() { @@ -455,6 +464,13 @@ func (x *CDOTAMatchMetadata_Team) GetCmPenalty() uint32 { return 0 } +func (x *CDOTAMatchMetadata_Team) GetTeamTrackedStats() []*CMsgTrackedStat { + if x != nil { + return x.TeamTrackedStats + } + return nil +} + type CDOTAMatchMetadata_GuildChallengeProgress struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1416,6 +1432,7 @@ type CDOTAMatchMetadata_Team_EventData struct { ActiveSeasonId *uint32 `protobuf:"varint,24,opt,name=active_season_id,json=activeSeasonId" json:"active_season_id,omitempty"` CavernCrawlHalfCredit *bool `protobuf:"varint,25,opt,name=cavern_crawl_half_credit,json=cavernCrawlHalfCredit" json:"cavern_crawl_half_credit,omitempty"` PeriodicResources []*CDOTAMatchMetadata_Team_PeriodicResourceData `protobuf:"bytes,26,rep,name=periodic_resources,json=periodicResources" json:"periodic_resources,omitempty"` + ExtraEventMessages []*CExtraMsgBlock `protobuf:"bytes,27,rep,name=extra_event_messages,json=extraEventMessages" json:"extra_event_messages,omitempty"` } func (x *CDOTAMatchMetadata_Team_EventData) Reset() { @@ -1625,6 +1642,13 @@ func (x *CDOTAMatchMetadata_Team_EventData) GetPeriodicResources() []*CDOTAMatch return nil } +func (x *CDOTAMatchMetadata_Team_EventData) GetExtraEventMessages() []*CExtraMsgBlock { + if x != nil { + return x.ExtraEventMessages + } + return nil +} + type CDOTAMatchMetadata_Team_FeaturedGamemodeProgress struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1745,6 +1769,7 @@ type CDOTAMatchMetadata_Team_Player struct { FeaturedHeroStickerQuality *uint32 `protobuf:"varint,55,opt,name=featured_hero_sticker_quality,json=featuredHeroStickerQuality" json:"featured_hero_sticker_quality,omitempty"` EquippedEconItems []*CDOTAMatchMetadata_EconItem `protobuf:"bytes,56,rep,name=equipped_econ_items,json=equippedEconItems" json:"equipped_econ_items,omitempty"` GamePlayerId *int32 `protobuf:"varint,57,opt,name=game_player_id,json=gamePlayerId" json:"game_player_id,omitempty"` + PlayerTrackedStats []*CMsgTrackedStat `protobuf:"bytes,58,rep,name=player_tracked_stats,json=playerTrackedStats" json:"player_tracked_stats,omitempty"` } func (x *CDOTAMatchMetadata_Team_Player) Reset() { @@ -2143,6 +2168,13 @@ func (x *CDOTAMatchMetadata_Team_Player) GetGamePlayerId() int32 { return 0 } +func (x *CDOTAMatchMetadata_Team_Player) GetPlayerTrackedStats() []*CMsgTrackedStat { + if x != nil { + return x.PlayerTrackedStats + } + return nil +} + type CDOTAMatchMetadata_Team_Player_ContractProgress struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3265,703 +3297,723 @@ var file_dota_match_metadata_proto_rawDesc = []byte{ 0x61, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x22, 0xae, 0x01, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x07, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x02, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x49, 0x64, 0x12, 0x34, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x22, 0x90, 0x3e, 0x0a, 0x12, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x65, - 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, - 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x55, 0x6e, 0x74, - 0x69, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x17, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x74, 0x61, 0x62, 0x6c, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x14, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, - 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x28, 0x0a, - 0x10, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4c, 0x0a, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x52, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x08, 0x6d, 0x76, 0x70, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x76, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x76, 0x70, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x69, 0x0a, 0x18, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0a, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x52, 0x16, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x13, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x12, 0x3b, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x0c, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, - 0x69, 0x70, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x70, 0x73, 0x1a, 0xd3, 0x01, - 0x0a, 0x08, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, - 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, - 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, - 0x79, 0x12, 0x38, 0x0a, 0x09, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x45, - 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x52, 0x09, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, - 0x74, 0x79, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, 0x79, 0x6c, - 0x65, 0x12, 0x40, 0x0a, 0x0e, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, - 0x70, 0x70, 0x65, 0x64, 0x52, 0x0d, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x1a, 0x82, 0x32, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, - 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x3e, 0x0a, 0x07, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, + 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x63, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xae, 0x01, 0x0a, 0x16, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, + 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x02, 0x28, + 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x08, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xad, 0x40, 0x0a, 0x12, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, + 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, 0x62, 0x79, + 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x6c, 0x6f, 0x62, 0x62, 0x79, + 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x75, 0x6e, 0x74, + 0x69, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x72, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, + 0x0a, 0x17, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x14, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, + 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x4c, 0x0a, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x73, + 0x74, 0x61, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x10, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x29, 0x0a, + 0x08, 0x6d, 0x76, 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x76, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x07, 0x6d, 0x76, 0x70, 0x44, 0x61, 0x74, 0x61, 0x12, 0x69, 0x0a, 0x18, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x67, 0x72, 0x61, - 0x70, 0x68, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x02, 0x52, 0x0f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, - 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x67, 0x6f, - 0x6c, 0x64, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x02, 0x52, - 0x0f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x47, 0x6f, 0x6c, 0x64, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, - 0x12, 0x26, 0x0a, 0x0f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, - 0x72, 0x74, 0x68, 0x18, 0x05, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0d, 0x67, 0x72, 0x61, 0x70, 0x68, - 0x4e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x6d, 0x5f, 0x66, - 0x69, 0x72, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x63, 0x6d, 0x46, 0x69, 0x72, 0x73, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x2f, 0x0a, 0x14, - 0x63, 0x6d, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x63, 0x6d, 0x43, 0x61, - 0x70, 0x74, 0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, - 0x0a, 0x63, 0x6d, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x63, 0x6d, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x1a, 0x43, 0x0a, 0x0a, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x69, - 0x63, 0x74, 0x69, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x1a, 0x4c, 0x0a, 0x0c, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x75, - 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0c, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x1a, - 0xf9, 0x01, 0x0a, 0x11, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x6e, 0x61, - 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1b, - 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, - 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, - 0x73, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x61, 0x63, - 0x6b, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x0e, 0x62, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x74, 0x65, - 0x6d, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6e, 0x65, - 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x1a, 0x48, 0x0a, 0x11, 0x41, - 0x75, 0x74, 0x6f, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x43, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, - 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xb2, 0x02, 0x0a, 0x12, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, - 0x65, 0x47, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x26, 0x0a, 0x0f, - 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6b, 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x2b, 0x0a, 0x12, 0x67, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0f, 0x67, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x65, - 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x71, - 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2f, 0x0a, 0x14, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, - 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x22, 0x0a, 0x0d, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6f, - 0x77, 0x6e, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x1a, 0x98, 0x01, 0x0a, 0x11, 0x56, - 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, - 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x16, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x70, 0x6f, + 0x73, 0x74, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x13, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x6f, 0x73, 0x74, 0x47, + 0x61, 0x6d, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x69, 0x70, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63, + 0x68, 0x54, 0x69, 0x70, 0x73, 0x12, 0x45, 0x0a, 0x13, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, + 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x72, + 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x52, 0x11, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x1a, 0xd3, 0x01, 0x0a, + 0x08, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, + 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, + 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x12, 0x38, 0x0a, 0x09, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x45, 0x63, + 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, + 0x09, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, + 0x79, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, + 0x12, 0x40, 0x0a, 0x0e, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, + 0x70, 0x65, 0x64, 0x52, 0x0d, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x1a, 0xd8, 0x33, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x64, + 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x64, 0x6f, 0x74, 0x61, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x3e, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, + 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x02, 0x52, 0x0f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x65, + 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x67, 0x6f, 0x6c, + 0x64, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0f, + 0x67, 0x72, 0x61, 0x70, 0x68, 0x47, 0x6f, 0x6c, 0x64, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x12, + 0x26, 0x0a, 0x0f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, + 0x74, 0x68, 0x18, 0x05, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4e, + 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x6d, 0x5f, 0x66, 0x69, + 0x72, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, + 0x63, 0x6d, 0x46, 0x69, 0x72, 0x73, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x2f, 0x0a, 0x14, 0x63, + 0x6d, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x63, 0x6d, 0x43, 0x61, 0x70, + 0x74, 0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x6d, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x63, 0x6d, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x12, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, + 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x52, 0x10, + 0x74, 0x65, 0x61, 0x6d, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x1a, 0x43, 0x0a, 0x0a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x12, 0x1f, + 0x0a, 0x0b, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x12, + 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x4c, 0x0a, 0x0c, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x23, + 0x0a, 0x0d, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x1a, 0xf9, 0x01, 0x0a, 0x11, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x28, 0x0a, + 0x10, 0x62, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, + 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e, 0x62, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, + 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, + 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0d, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x1a, + 0x48, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x6f, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x43, 0x72, 0x69, 0x74, + 0x65, 0x72, 0x69, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xb2, 0x02, 0x0a, 0x12, 0x53, 0x74, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x26, 0x0a, 0x0f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6b, 0x69, 0x6c, 0x6c, 0x45, + 0x61, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2b, 0x0a, 0x12, 0x67, 0x65, 0x6d, 0x5f, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, - 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x76, 0x69, 0x63, - 0x74, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x56, 0x69, - 0x63, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x83, 0x01, 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, - 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1c, 0x0a, - 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x1a, 0x6b, 0x0a, 0x15, 0x43, - 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x50, 0x61, 0x74, 0x68, 0x49, 0x64, - 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x72, 0x6f, 0x6f, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6c, 0x61, 0x69, 0x6d, - 0x65, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x1a, 0x9e, 0x01, 0x0a, 0x0b, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x72, - 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x57, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, - 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, - 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x3c, 0x0a, 0x0a, 0x43, 0x61, 0x6e, - 0x64, 0x79, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x1a, 0x78, 0x0a, 0x14, 0x50, 0x65, 0x72, 0x69, 0x6f, - 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x30, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, - 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, - 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, - 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x61, - 0x78, 0x1a, 0x84, 0x0c, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x32, 0x0a, - 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, - 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, - 0x3f, 0x0a, 0x1c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x51, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, - 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x12, 0x38, 0x0a, 0x18, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x72, - 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x16, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x61, - 0x6e, 0x6b, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x4d, 0x0a, 0x23, 0x63, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x70, 0x72, - 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x20, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x6c, - 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x12, 0x6b, 0x0a, 0x1c, 0x73, - 0x75, 0x62, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x5f, 0x77, 0x69, - 0x74, 0x68, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, + 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2f, 0x0a, 0x14, 0x6f, 0x77, 0x6e, + 0x65, 0x72, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x74, + 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x22, 0x0a, 0x0d, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x1a, 0x98, + 0x01, 0x0a, 0x11, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x24, 0x0a, + 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x5f, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, + 0x5f, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, + 0x69, 0x73, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x83, 0x01, 0x0a, 0x0c, 0x53, 0x75, + 0x62, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, + 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, + 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x1a, + 0x6b, 0x0a, 0x15, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x50, 0x61, + 0x74, 0x68, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, + 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, + 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x1a, 0x9e, 0x01, 0x0a, + 0x0b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x72, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x77, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x57, 0x69, 0x6e, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x3c, 0x0a, + 0x0a, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x1a, 0x78, 0x0a, 0x14, 0x50, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, + 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, + 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x03, 0x6d, 0x61, 0x78, 0x1a, 0xcc, 0x0c, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, + 0x0a, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x51, 0x75, 0x65, 0x73, + 0x74, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x1c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x5f, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x63, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x38, 0x0a, 0x18, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, + 0x4d, 0x0a, 0x23, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x61, 0x6e, + 0x6b, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x5f, 0x63, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x20, 0x63, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x50, 0x72, 0x65, 0x76, 0x69, + 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x12, + 0x6b, 0x0a, 0x1c, 0x73, 0x75, 0x62, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, + 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x53, 0x75, 0x62, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x52, 0x19, 0x73, 0x75, 0x62, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, + 0x57, 0x69, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, + 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x77, 0x61, 0x67, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x6e, 0x69, + 0x6e, 0x67, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x3a, 0x0a, 0x19, 0x63, + 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, + 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, + 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x57, + 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x3c, + 0x0a, 0x1a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x18, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x74, 0x0a, 0x1c, + 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x11, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, + 0x6d, 0x2e, 0x43, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x19, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x73, 0x12, 0x4e, 0x0a, 0x24, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, + 0x64, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x20, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x50, 0x6c, 0x75, 0x73, 0x53, 0x68, 0x61, 0x72, 0x64, 0x57, 0x69, 0x6e, 0x6e, 0x69, 0x6e, + 0x67, 0x73, 0x12, 0x52, 0x0a, 0x0f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x67, 0x72, + 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, + 0x5f, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, + 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, + 0x43, 0x72, 0x61, 0x77, 0x6c, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, + 0x2f, 0x0a, 0x14, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x62, 0x6f, + 0x6e, 0x75, 0x73, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x74, + 0x65, 0x61, 0x6d, 0x57, 0x61, 0x67, 0x65, 0x72, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x50, 0x63, 0x74, + 0x12, 0x28, 0x0a, 0x10, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, + 0x5f, 0x70, 0x63, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x77, 0x61, 0x67, 0x65, + 0x72, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x50, 0x63, 0x74, 0x12, 0x5a, 0x0a, 0x14, 0x63, 0x61, + 0x6e, 0x64, 0x79, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, + 0x65, 0x64, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x47, 0x72, 0x61, + 0x6e, 0x74, 0x52, 0x12, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x5f, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x37, 0x0a, 0x18, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x72, 0x61, 0x77, 0x6c, + 0x5f, 0x68, 0x61, 0x6c, 0x66, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x18, 0x19, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x15, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x48, + 0x61, 0x6c, 0x66, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x12, 0x61, 0x0a, 0x12, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, + 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, + 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x11, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x14, + 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x52, 0x12, 0x65, 0x78, 0x74, 0x72, 0x61, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x1a, 0x75, 0x0a, 0x18, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, + 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, + 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xff, 0x16, 0x0a, 0x06, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, + 0x52, 0x0f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, + 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, + 0x6f, 0x74, 0x12, 0x3e, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, - 0x2e, 0x53, 0x75, 0x62, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x19, 0x73, - 0x75, 0x62, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, - 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x61, 0x67, 0x65, - 0x72, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x77, 0x61, 0x67, 0x65, 0x72, 0x57, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, - 0x36, 0x0a, 0x17, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x15, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x3a, 0x0a, 0x19, 0x63, 0x61, 0x76, 0x65, 0x72, - 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x77, 0x69, 0x6e, 0x6e, - 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x63, 0x61, 0x76, 0x65, - 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x57, 0x69, 0x6e, 0x6e, 0x69, - 0x6e, 0x67, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x77, 0x61, - 0x67, 0x65, 0x72, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x6d, 0x6f, - 0x75, 0x6e, 0x74, 0x57, 0x61, 0x67, 0x65, 0x72, 0x65, 0x64, 0x12, 0x3c, 0x0a, 0x1a, 0x70, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x6a, - 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, - 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x64, 0x6a, - 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x74, 0x0a, 0x1c, 0x63, 0x61, 0x76, 0x65, - 0x72, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x70, - 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x43, 0x61, - 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x52, 0x19, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x4e, - 0x0a, 0x24, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x77, 0x69, - 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x20, 0x63, 0x61, - 0x76, 0x65, 0x72, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x6c, 0x75, - 0x73, 0x53, 0x68, 0x61, 0x72, 0x64, 0x57, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x52, - 0x0a, 0x0f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, - 0x64, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, - 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, - 0x65, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x72, 0x61, - 0x77, 0x6c, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x14, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, - 0x6c, 0x4d, 0x61, 0x70, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x14, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, - 0x70, 0x63, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x74, 0x65, 0x61, 0x6d, 0x57, - 0x61, 0x67, 0x65, 0x72, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x50, 0x63, 0x74, 0x12, 0x28, 0x0a, 0x10, - 0x77, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x5f, 0x70, 0x63, 0x74, - 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x77, 0x61, 0x67, 0x65, 0x72, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6b, 0x50, 0x63, 0x74, 0x12, 0x5a, 0x0a, 0x14, 0x63, 0x61, 0x6e, 0x64, 0x79, 0x5f, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x18, 0x17, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, - 0x65, 0x61, 0x6d, 0x2e, 0x43, 0x61, 0x6e, 0x64, 0x79, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x12, - 0x63, 0x61, 0x6e, 0x64, 0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x47, 0x72, 0x61, 0x6e, 0x74, - 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x65, 0x61, - 0x73, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x18, - 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x5f, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x68, 0x61, 0x6c, - 0x66, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, - 0x63, 0x61, 0x76, 0x65, 0x72, 0x6e, 0x43, 0x72, 0x61, 0x77, 0x6c, 0x48, 0x61, 0x6c, 0x66, 0x43, - 0x72, 0x65, 0x64, 0x69, 0x74, 0x12, 0x61, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, - 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, + 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x52, 0x05, 0x6b, 0x69, 0x6c, + 0x6c, 0x73, 0x12, 0x40, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, - 0x2e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x11, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x69, 0x63, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x1a, 0x75, 0x0a, 0x18, 0x46, 0x65, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x67, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, - 0xb6, 0x16, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x70, 0x67, - 0x72, 0x61, 0x64, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x3e, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, - 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x52, - 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x40, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, + 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x05, 0x69, + 0x74, 0x65, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x76, 0x67, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, + 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x76, 0x67, + 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x58, 0x31, 0x36, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x76, 0x67, 0x5f, + 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x61, 0x76, 0x67, 0x44, 0x65, 0x61, 0x74, 0x68, 0x73, 0x58, 0x31, 0x36, 0x12, 0x26, + 0x0a, 0x0f, 0x61, 0x76, 0x67, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x78, 0x31, + 0x36, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x76, 0x67, 0x41, 0x73, 0x73, 0x69, + 0x73, 0x74, 0x73, 0x58, 0x31, 0x36, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x67, 0x70, + 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x67, + 0x47, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x78, 0x70, + 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x76, 0x67, + 0x58, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x6b, + 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x62, 0x65, 0x73, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x58, 0x31, 0x36, 0x12, 0x28, 0x0a, 0x10, + 0x62, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x5f, 0x78, 0x31, 0x36, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x41, 0x73, 0x73, 0x69, + 0x73, 0x74, 0x73, 0x58, 0x31, 0x36, 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x67, + 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x65, + 0x73, 0x74, 0x47, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, + 0x5f, 0x78, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x62, 0x65, 0x73, 0x74, 0x58, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, 0x1d, 0x0a, 0x0a, 0x77, 0x69, + 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x77, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x65, 0x73, + 0x74, 0x5f, 0x77, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x65, 0x73, 0x74, 0x57, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x66, 0x69, 0x67, 0x68, 0x74, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x61, 0x72, 0x6d, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x63, 0x6f, + 0x72, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, + 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x70, 0x75, 0x73, 0x68, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x75, + 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x16, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x55, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x17, + 0x20, 0x03, 0x28, 0x02, 0x52, 0x0d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4e, 0x65, 0x74, 0x57, 0x6f, + 0x72, 0x74, 0x68, 0x12, 0x5e, 0x0a, 0x12, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x5f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x18, 0x18, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x49, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x52, 0x11, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x76, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, + 0x5f, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x12, 0x61, 0x76, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x61, 0x6c, 0x69, 0x62, + 0x72, 0x61, 0x74, 0x65, 0x64, 0x12, 0x5f, 0x0a, 0x13, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x73, 0x74, + 0x79, 0x6c, 0x65, 0x5f, 0x63, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x18, 0x1a, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, + 0x6d, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x43, 0x72, 0x69, 0x74, 0x65, + 0x72, 0x69, 0x61, 0x52, 0x11, 0x61, 0x75, 0x74, 0x6f, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x43, 0x72, + 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x12, 0x46, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x62, + 0x0a, 0x14, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x67, 0x65, 0x6d, 0x5f, 0x70, 0x72, + 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x53, 0x74, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x12, + 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x78, 0x70, 0x18, 0x1f, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x58, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x20, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, + 0x12, 0x5e, 0x0a, 0x12, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x56, 0x69, 0x63, 0x74, + 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x76, + 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, + 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x23, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, 0x65, 0x73, 0x12, 0x21, + 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x24, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x4b, 0x69, 0x6c, 0x6c, + 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x65, 0x67, 0x69, 0x73, 0x5f, 0x73, 0x6e, 0x61, 0x74, 0x63, + 0x68, 0x65, 0x64, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x65, 0x67, 0x69, 0x73, + 0x53, 0x6e, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x61, 0x70, 0x69, + 0x65, 0x72, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x26, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x73, 0x50, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, + 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, + 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x24, + 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x5f, 0x72, 0x61, 0x6e, 0x6b, + 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, + 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, + 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, + 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x77, + 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x2a, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x13, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x57, 0x61, 0x72, 0x64, 0x73, + 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x79, + 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x2b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x57, 0x61, 0x72, 0x64, 0x73, + 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, + 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x77, 0x61, 0x72, 0x64, 0x73, 0x44, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x12, 0x23, 0x0a, + 0x0d, 0x73, 0x74, 0x75, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x2d, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x74, 0x75, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x13, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x6d, 0x72, 0x5f, 0x62, + 0x6f, 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, + 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x10, 0x72, 0x61, 0x6e, 0x6b, 0x4d, 0x6d, + 0x72, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x62, 0x0a, 0x11, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x30, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, - 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x76, 0x67, 0x5f, - 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x61, 0x76, 0x67, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x58, 0x31, 0x36, 0x12, 0x24, 0x0a, 0x0e, - 0x61, 0x76, 0x67, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x76, 0x67, 0x44, 0x65, 0x61, 0x74, 0x68, 0x73, 0x58, - 0x31, 0x36, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x76, 0x67, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, - 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x76, 0x67, - 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x58, 0x31, 0x36, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, - 0x67, 0x5f, 0x67, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x76, 0x67, 0x47, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, - 0x67, 0x5f, 0x78, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x76, 0x67, 0x58, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x65, - 0x73, 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x58, 0x31, 0x36, - 0x12, 0x28, 0x0a, 0x10, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, - 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x62, 0x65, 0x73, 0x74, - 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x58, 0x31, 0x36, 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x65, - 0x73, 0x74, 0x5f, 0x67, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x47, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, 0x20, 0x0a, 0x0c, - 0x62, 0x65, 0x73, 0x74, 0x5f, 0x78, 0x70, 0x6d, 0x5f, 0x78, 0x31, 0x36, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x58, 0x70, 0x6d, 0x58, 0x31, 0x36, 0x12, 0x1d, - 0x0a, 0x0a, 0x77, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x77, 0x69, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x26, 0x0a, - 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x77, 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x65, 0x73, 0x74, 0x57, 0x69, 0x6e, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x66, 0x69, 0x67, 0x68, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x61, 0x72, 0x6d, 0x5f, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x61, 0x72, 0x6d, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, - 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x75, - 0x70, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, - 0x73, 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, - 0x70, 0x75, 0x73, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x76, - 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x16, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x0c, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x55, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, - 0x26, 0x0a, 0x0f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, - 0x74, 0x68, 0x18, 0x17, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4e, - 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x5e, 0x0a, 0x12, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x18, 0x18, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, - 0x61, 0x6d, 0x2e, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x6e, 0x61, 0x70, - 0x73, 0x68, 0x6f, 0x74, 0x52, 0x11, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x53, - 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x76, 0x67, 0x5f, 0x73, - 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x64, 0x18, - 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x76, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, - 0x61, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x74, 0x65, 0x64, 0x12, 0x5f, 0x0a, 0x13, 0x61, 0x75, 0x74, - 0x6f, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x63, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, - 0x18, 0x1a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x43, - 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x52, 0x11, 0x61, 0x75, 0x74, 0x6f, 0x53, 0x74, 0x79, - 0x6c, 0x65, 0x43, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x12, 0x46, 0x0a, 0x0a, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, + 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x10, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, + 0x0a, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x31, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x18, 0x32, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x48, 0x65, 0x72, + 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x33, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, + 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, + 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x74, 0x0a, 0x1a, 0x66, 0x65, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x64, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x46, 0x65, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x18, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x47, + 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x3d, 0x0a, 0x1b, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x36, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x41, + 0x0a, 0x1d, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, + 0x37, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x48, + 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x12, 0x51, 0x0a, 0x13, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x65, 0x63, + 0x6f, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x38, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x61, - 0x74, 0x61, 0x12, 0x62, 0x0a, 0x14, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x67, 0x65, - 0x6d, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, - 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x52, 0x12, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x50, 0x72, - 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x78, - 0x70, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x58, 0x70, 0x12, - 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, - 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, - 0x63, 0x6b, 0x65, 0x64, 0x12, 0x5e, 0x0a, 0x12, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x5f, - 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, - 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x11, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x22, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, - 0x65, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x61, 0x6d, 0x70, 0x61, 0x67, - 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x6b, 0x69, 0x6c, - 0x6c, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, - 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x65, 0x67, 0x69, 0x73, 0x5f, 0x73, - 0x6e, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, - 0x65, 0x67, 0x69, 0x73, 0x53, 0x6e, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, - 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x64, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x61, 0x70, 0x69, 0x65, 0x72, 0x73, - 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x75, - 0x72, 0x69, 0x65, 0x72, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x27, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x73, 0x4b, 0x69, 0x6c, 0x6c, - 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x5f, - 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x65, 0x74, 0x57, - 0x6f, 0x72, 0x74, 0x68, 0x52, 0x61, 0x6e, 0x6b, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x75, 0x70, 0x70, - 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x29, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x6f, 0x6c, - 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, - 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x57, - 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x65, - 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, - 0x64, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x57, - 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x61, - 0x72, 0x64, 0x73, 0x5f, 0x64, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x18, 0x2c, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x77, 0x61, 0x72, 0x64, 0x73, 0x44, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, - 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x75, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x74, 0x75, 0x6e, 0x44, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x13, 0x72, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, - 0x6d, 0x72, 0x5f, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x2e, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, - 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x10, 0x72, 0x61, - 0x6e, 0x6b, 0x4d, 0x6d, 0x72, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x62, - 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x30, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, - 0x31, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x73, 0x12, - 0x2a, 0x0a, 0x11, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, - 0x6d, 0x61, 0x67, 0x65, 0x18, 0x32, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0f, 0x67, 0x72, 0x61, 0x70, - 0x68, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x33, 0x0a, 0x0b, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, - 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x34, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x74, 0x0a, - 0x1a, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x6d, 0x6f, - 0x64, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x35, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, - 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, - 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x18, 0x66, 0x65, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x3d, 0x0a, 0x1b, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x5f, - 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, - 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x6e, 0x64, - 0x65, 0x78, 0x12, 0x41, 0x0a, 0x1d, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x5f, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x66, 0x65, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x72, 0x51, 0x75, - 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x51, 0x0a, 0x13, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, - 0x64, 0x5f, 0x65, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x38, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x45, 0x63, 0x6f, - 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x11, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x45, - 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x67, 0x61, 0x6d, 0x65, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x39, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x97, - 0x02, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x19, - 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, - 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x65, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x25, - 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x73, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x53, 0x74, 0x61, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x1a, 0xbf, 0x04, 0x0a, 0x16, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x27, - 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x63, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, - 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x2f, 0x0a, 0x13, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3d, 0x0a, - 0x1b, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x5f, 0x61, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x18, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, - 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x44, 0x0a, 0x1e, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, - 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, 0x74, - 0x65, 0x64, 0x12, 0x73, 0x0a, 0x13, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, - 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x42, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x2e, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x52, 0x12, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x50, - 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x51, 0x0a, 0x12, 0x49, 0x6e, 0x64, 0x69, 0x76, - 0x69, 0x64, 0x75, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, - 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x1a, 0xa9, 0x01, 0x0a, 0x03, 0x54, - 0x69, 0x70, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, - 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x70, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, 0x0a, - 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9c, 0x17, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x3a, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, - 0x12, 0x32, 0x0a, 0x15, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x77, 0x69, 0x6e, 0x5f, 0x70, 0x72, - 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x02, 0x52, - 0x13, 0x67, 0x72, 0x61, 0x70, 0x68, 0x57, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x12, 0x4d, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4e, 0x61, - 0x6d, 0x65, 0x73, 0x1a, 0x30, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x8d, 0x15, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1b, - 0x0a, 0x09, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x45, 0x0a, 0x07, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, - 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x42, 0x75, 0x69, 0x6c, - 0x64, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x1a, - 0xb6, 0x12, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x12, 0x62, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x5f, 0x73, - 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, - 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, - 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x61, - 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x62, 0x61, 0x74, - 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x6e, 0x69, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x73, 0x12, 0x59, 0x0a, 0x0c, 0x62, 0x75, 0x66, 0x66, 0x5f, 0x72, 0x65, 0x63, - 0x6f, 0x72, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, + 0x6d, 0x52, 0x11, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x45, 0x63, 0x6f, 0x6e, 0x49, + 0x74, 0x65, 0x6d, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x39, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x67, 0x61, + 0x6d, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x47, 0x0a, 0x14, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x73, 0x18, 0x3a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x52, + 0x12, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x1a, 0x97, 0x02, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, + 0x0a, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, + 0x73, 0x74, 0x61, 0x72, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x53, 0x74, 0x61, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x53, 0x6c, 0x6f, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x1a, 0xbf, 0x04, + 0x0a, 0x16, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, + 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x12, 0x3d, 0x0a, 0x1b, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, + 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x74, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x12, 0x44, 0x0a, 0x1e, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x75, 0x6d, 0x75, 0x6c, 0x61, + 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1c, 0x63, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x63, 0x63, 0x75, + 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x12, 0x73, 0x0a, 0x13, 0x69, 0x6e, 0x64, 0x69, 0x76, + 0x69, 0x64, 0x75, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x12, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, + 0x64, 0x75, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x51, 0x0a, 0x12, + 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, + 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x1a, + 0xa9, 0x01, 0x0a, 0x03, 0x54, 0x69, 0x70, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, + 0x6c, 0x6f, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x70, 0x41, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9c, 0x17, 0x0a, 0x19, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3a, 0x0a, 0x05, 0x74, 0x65, 0x61, + 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x05, + 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x77, + 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x02, 0x52, 0x13, 0x67, 0x72, 0x61, 0x70, 0x68, 0x57, 0x69, 0x6e, 0x50, 0x72, + 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x4d, 0x0a, 0x0c, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0b, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x1a, 0x30, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x8d, 0x15, 0x0a, 0x04, 0x54, + 0x65, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x74, 0x65, 0x61, 0x6d, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6f, 0x74, 0x61, 0x54, 0x65, 0x61, 0x6d, + 0x12, 0x45, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, + 0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, - 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x52, 0x0b, 0x62, 0x75, 0x66, 0x66, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x07, - 0x20, 0x03, 0x28, 0x02, 0x52, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4b, 0x69, 0x6c, 0x6c, 0x73, - 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, - 0x18, 0x08, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x67, 0x72, 0x61, 0x70, 0x68, 0x44, 0x65, 0x61, - 0x74, 0x68, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x61, 0x73, 0x73, - 0x69, 0x73, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0c, 0x67, 0x72, 0x61, 0x70, - 0x68, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x72, 0x61, 0x70, - 0x68, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x02, - 0x52, 0x0d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x12, - 0x21, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, - 0x0b, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x67, 0x72, 0x61, 0x70, 0x68, 0x44, 0x65, 0x6e, 0x69, - 0x65, 0x73, 0x12, 0x5d, 0x0a, 0x0d, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, - 0x76, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x47, 0x6f, 0x6c, 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, - 0x76, 0x65, 0x64, 0x52, 0x0c, 0x67, 0x6f, 0x6c, 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x64, 0x12, 0x57, 0x0a, 0x0b, 0x78, 0x70, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x2e, 0x58, 0x50, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x52, 0x0a, - 0x78, 0x70, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x33, 0x0a, 0x0b, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, - 0x45, 0x41, 0x4d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x1a, 0xe1, 0x06, 0x0a, - 0x0d, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, - 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x75, 0x0a, 0x11, 0x64, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, - 0x74, 0x2e, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x52, 0x0f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x12, 0x78, 0x0a, 0x12, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x79, - 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4a, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, - 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x62, - 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, - 0x67, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x10, 0x68, 0x65, 0x61, 0x6c, - 0x69, 0x6e, 0x67, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x9d, 0x02, 0x0a, - 0x0f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x55, 0x6e, 0x69, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x7e, 0x0a, 0x0f, 0x62, - 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x56, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, - 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, - 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x0d, 0x62, 0x79, - 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x1a, 0x3f, 0x0a, 0x0c, 0x42, - 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, - 0x72, 0x6f, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x1a, 0xa1, 0x02, 0x0a, - 0x10, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x75, 0x6e, 0x69, 0x74, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x55, 0x6e, 0x69, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x7f, 0x0a, 0x0f, - 0x62, 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, - 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x2e, 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x0d, - 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x1a, 0x41, 0x0a, - 0x0c, 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x17, 0x0a, - 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, - 0x1a, 0xc0, 0x02, 0x0a, 0x0a, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, - 0x26, 0x0a, 0x0f, 0x62, 0x75, 0x66, 0x66, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x75, 0x66, 0x66, 0x41, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x62, 0x75, 0x66, 0x66, 0x5f, - 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x10, 0x62, 0x75, 0x66, 0x66, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x6b, 0x0a, 0x0f, 0x62, 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, + 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, + 0x69, 0x6e, 0x67, 0x73, 0x1a, 0xb6, 0x12, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, + 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, + 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, + 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x62, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, + 0x62, 0x61, 0x74, 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, + 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x63, + 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, + 0x11, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x55, 0x6e, 0x69, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x59, 0x0a, 0x0c, 0x62, 0x75, 0x66, + 0x66, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x66, + 0x66, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0b, 0x62, 0x75, 0x66, 0x66, 0x52, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6b, 0x69, + 0x6c, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, + 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x64, + 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x67, 0x72, 0x61, + 0x70, 0x68, 0x44, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x02, 0x52, + 0x0c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x25, 0x0a, + 0x0e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x68, 0x69, 0x74, 0x73, 0x18, + 0x0a, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0d, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4c, 0x61, 0x73, 0x74, + 0x68, 0x69, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x64, 0x65, + 0x6e, 0x69, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x67, 0x72, 0x61, 0x70, + 0x68, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x5d, 0x0a, 0x0d, 0x67, 0x6f, 0x6c, 0x64, 0x5f, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, - 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x66, 0x66, - 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, + 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x47, 0x6f, 0x6c, 0x64, + 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x52, 0x0c, 0x67, 0x6f, 0x6c, 0x64, 0x52, 0x65, + 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x57, 0x0a, 0x0b, 0x78, 0x70, 0x5f, 0x72, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, + 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, + 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x58, 0x50, 0x52, 0x65, 0x63, 0x65, 0x69, + 0x76, 0x65, 0x64, 0x52, 0x0a, 0x78, 0x70, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, + 0x33, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0e, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, + 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x6c, 0x6f, + 0x74, 0x1a, 0xe1, 0x06, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, + 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x75, 0x0a, 0x11, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, + 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, + 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, + 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x79, 0x41, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x79, + 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x78, 0x0a, 0x12, 0x68, 0x65, 0x61, 0x6c, 0x69, + 0x6e, 0x67, 0x5f, 0x62, 0x79, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x48, + 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, + 0x10, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x1a, 0x9d, 0x02, 0x0a, 0x0f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x79, 0x41, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, + 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x6e, 0x69, 0x74, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, + 0x12, 0x7e, 0x0a, 0x0f, 0x62, 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x56, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, + 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, 0x67, + 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x79, 0x41, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x52, 0x0d, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, + 0x1a, 0x3f, 0x0a, 0x0c, 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, + 0x65, 0x1a, 0xa1, 0x02, 0x0a, 0x10, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x41, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x6e, 0x69, 0x74, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, + 0x64, 0x12, 0x7f, 0x0a, 0x0f, 0x62, 0x79, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x57, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, + 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x53, 0x65, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x41, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x0d, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x73, 0x1a, 0x6f, 0x0a, 0x0c, 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, + 0x74, 0x73, 0x1a, 0x41, 0x0a, 0x0c, 0x42, 0x79, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x65, - 0x6c, 0x61, 0x70, 0x73, 0x65, 0x64, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x65, 0x6c, 0x61, 0x70, 0x73, 0x65, 0x64, 0x44, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x68, 0x69, 0x64, - 0x64, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x48, 0x69, 0x64, - 0x64, 0x65, 0x6e, 0x1a, 0xe1, 0x01, 0x0a, 0x0c, 0x47, 0x6f, 0x6c, 0x64, 0x52, 0x65, 0x63, 0x65, - 0x69, 0x76, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x72, 0x65, 0x65, 0x70, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x72, 0x65, 0x65, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, - 0x72, 0x6f, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, - 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x5f, 0x72, 0x75, 0x6e, - 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, - 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x12, - 0x1c, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1c, 0x0a, - 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x77, - 0x61, 0x72, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x77, 0x61, 0x72, 0x64, - 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x1a, 0xae, 0x01, 0x0a, 0x0a, 0x58, 0x50, 0x52, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x72, 0x65, 0x65, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x72, 0x65, 0x65, 0x70, 0x12, 0x16, 0x0a, 0x06, - 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, - 0x72, 0x6f, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x12, 0x2a, 0x0a, 0x11, - 0x74, 0x6f, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x6f, 0x6d, 0x65, 0x4f, 0x66, 0x4b, - 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, - 0x6f, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x6f, - 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x1a, 0x9a, 0x01, 0x0a, 0x08, 0x42, 0x75, 0x69, - 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x74, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x71, - 0x75, 0x61, 0x6e, 0x74, 0x5f, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x58, 0x12, 0x28, 0x0a, 0x10, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x5f, 0x79, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x51, 0x75, 0x61, 0x6e, 0x74, 0x59, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x64, 0x65, 0x61, 0x74, - 0x68, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, - 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x68, + 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x68, 0x65, + 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x1a, 0xc0, 0x02, 0x0a, 0x0a, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, + 0x63, 0x6f, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x75, 0x66, 0x66, 0x5f, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, + 0x75, 0x66, 0x66, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, + 0x62, 0x75, 0x66, 0x66, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x62, 0x75, 0x66, 0x66, 0x4d, 0x6f, + 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x6b, 0x0a, 0x0f, 0x62, 0x79, + 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x2e, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x42, 0x79, 0x48, 0x65, + 0x72, 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x0d, 0x62, 0x79, 0x48, 0x65, 0x72, 0x6f, + 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x1a, 0x6f, 0x0a, 0x0c, 0x42, 0x79, 0x48, 0x65, 0x72, + 0x6f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, + 0x12, 0x29, 0x0a, 0x10, 0x65, 0x6c, 0x61, 0x70, 0x73, 0x65, 0x64, 0x5f, 0x64, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x65, 0x6c, 0x61, 0x70, + 0x73, 0x65, 0x64, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, + 0x73, 0x5f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, + 0x69, 0x73, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x1a, 0xe1, 0x01, 0x0a, 0x0c, 0x47, 0x6f, 0x6c, + 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x72, 0x65, + 0x65, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x72, 0x65, 0x65, 0x70, 0x12, + 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x74, + 0x79, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, + 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, + 0x73, 0x73, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x73, + 0x73, 0x69, 0x76, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, + 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x05, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x1a, 0xae, 0x01, 0x0a, + 0x0a, 0x58, 0x50, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, + 0x72, 0x65, 0x65, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x72, 0x65, 0x65, + 0x70, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x73, + 0x68, 0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, + 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x6b, 0x6e, 0x6f, + 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x6f, + 0x6d, 0x65, 0x4f, 0x66, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x1a, 0x9a, 0x01, + 0x0a, 0x08, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6e, + 0x69, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, + 0x6e, 0x69, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x5f, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, 0x74, + 0x58, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x71, 0x75, + 0x61, 0x6e, 0x74, 0x5f, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x59, 0x12, 0x1d, 0x0a, 0x0a, 0x64, + 0x65, 0x61, 0x74, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x09, 0x64, 0x65, 0x61, 0x74, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, + 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, + 0x61, } var ( @@ -4016,11 +4068,13 @@ var file_dota_match_metadata_proto_goTypes = []interface{}{ (*CDOTAMatchPrivateMetadata_Team_Player_BuffRecord_ByHeroTarget)(nil), // 35: dota.CDOTAMatchPrivateMetadata.Team.Player.BuffRecord.ByHeroTarget (*CMsgMatchMatchmakingStats)(nil), // 36: dota.CMsgMatchMatchmakingStats (*CMvpData)(nil), // 37: dota.CMvpData - (*CSOEconItemAttribute)(nil), // 38: dota.CSOEconItemAttribute - (*CSOEconItemEquipped)(nil), // 39: dota.CSOEconItemEquipped - (EEvent)(0), // 40: dota.EEvent - (EDOTAMMRBoostType)(0), // 41: dota.EDOTAMMRBoostType - (DOTA_GC_TEAM)(0), // 42: dota.DOTA_GC_TEAM + (*CMsgTrackedStat)(nil), // 38: dota.CMsgTrackedStat + (*CSOEconItemAttribute)(nil), // 39: dota.CSOEconItemAttribute + (*CSOEconItemEquipped)(nil), // 40: dota.CSOEconItemEquipped + (EEvent)(0), // 41: dota.EEvent + (*CExtraMsgBlock)(nil), // 42: dota.CExtraMsgBlock + (EDOTAMMRBoostType)(0), // 43: dota.EDOTAMMRBoostType + (DOTA_GC_TEAM)(0), // 44: dota.DOTA_GC_TEAM } var file_dota_match_metadata_proto_depIdxs = []int32{ 1, // 0: dota.CDOTAMatchMetadataFile.metadata:type_name -> dota.CDOTAMatchMetadata @@ -4029,48 +4083,52 @@ var file_dota_match_metadata_proto_depIdxs = []int32{ 37, // 3: dota.CDOTAMatchMetadata.mvp_data:type_name -> dota.CMvpData 5, // 4: dota.CDOTAMatchMetadata.guild_challenge_progress:type_name -> dota.CDOTAMatchMetadata.GuildChallengeProgress 6, // 5: dota.CDOTAMatchMetadata.match_tips:type_name -> dota.CDOTAMatchMetadata.Tip - 24, // 6: dota.CDOTAMatchPrivateMetadata.teams:type_name -> dota.CDOTAMatchPrivateMetadata.Team - 23, // 7: dota.CDOTAMatchPrivateMetadata.string_names:type_name -> dota.CDOTAMatchPrivateMetadata.StringName - 38, // 8: dota.CDOTAMatchMetadata.EconItem.attribute:type_name -> dota.CSOEconItemAttribute - 39, // 9: dota.CDOTAMatchMetadata.EconItem.equipped_state:type_name -> dota.CSOEconItemEquipped - 20, // 10: dota.CDOTAMatchMetadata.Team.players:type_name -> dota.CDOTAMatchMetadata.Team.Player - 40, // 11: dota.CDOTAMatchMetadata.GuildChallengeProgress.event_id:type_name -> dota.EEvent - 22, // 12: dota.CDOTAMatchMetadata.GuildChallengeProgress.individual_progress:type_name -> dota.CDOTAMatchMetadata.GuildChallengeProgress.IndividualProgress - 40, // 13: dota.CDOTAMatchMetadata.Tip.event_id:type_name -> dota.EEvent - 13, // 14: dota.CDOTAMatchMetadata.Team.EventData.sub_challenges_with_progress:type_name -> dota.CDOTAMatchMetadata.Team.SubChallenge - 14, // 15: dota.CDOTAMatchMetadata.Team.EventData.cavern_challenge_map_results:type_name -> dota.CDOTAMatchMetadata.Team.CavernChallengeResult - 15, // 16: dota.CDOTAMatchMetadata.Team.EventData.actions_granted:type_name -> dota.CDOTAMatchMetadata.Team.ActionGrant - 16, // 17: dota.CDOTAMatchMetadata.Team.EventData.candy_points_granted:type_name -> dota.CDOTAMatchMetadata.Team.CandyGrant - 17, // 18: dota.CDOTAMatchMetadata.Team.EventData.periodic_resources:type_name -> dota.CDOTAMatchMetadata.Team.PeriodicResourceData - 7, // 19: dota.CDOTAMatchMetadata.Team.Player.kills:type_name -> dota.CDOTAMatchMetadata.Team.PlayerKill - 8, // 20: dota.CDOTAMatchMetadata.Team.Player.items:type_name -> dota.CDOTAMatchMetadata.Team.ItemPurchase - 9, // 21: dota.CDOTAMatchMetadata.Team.Player.inventory_snapshot:type_name -> dota.CDOTAMatchMetadata.Team.InventorySnapshot - 10, // 22: dota.CDOTAMatchMetadata.Team.Player.auto_style_criteria:type_name -> dota.CDOTAMatchMetadata.Team.AutoStyleCriteria - 18, // 23: dota.CDOTAMatchMetadata.Team.Player.event_data:type_name -> dota.CDOTAMatchMetadata.Team.EventData - 11, // 24: dota.CDOTAMatchMetadata.Team.Player.strange_gem_progress:type_name -> dota.CDOTAMatchMetadata.Team.StrangeGemProgress - 12, // 25: dota.CDOTAMatchMetadata.Team.Player.victory_prediction:type_name -> dota.CDOTAMatchMetadata.Team.VictoryPrediction - 41, // 26: dota.CDOTAMatchMetadata.Team.Player.rank_mmr_boost_type:type_name -> dota.EDOTAMMRBoostType - 21, // 27: dota.CDOTAMatchMetadata.Team.Player.contract_progress:type_name -> dota.CDOTAMatchMetadata.Team.Player.ContractProgress - 42, // 28: dota.CDOTAMatchMetadata.Team.Player.team_number:type_name -> dota.DOTA_GC_TEAM - 19, // 29: dota.CDOTAMatchMetadata.Team.Player.featured_gamemode_progress:type_name -> dota.CDOTAMatchMetadata.Team.FeaturedGamemodeProgress - 3, // 30: dota.CDOTAMatchMetadata.Team.Player.equipped_econ_items:type_name -> dota.CDOTAMatchMetadata.EconItem - 25, // 31: dota.CDOTAMatchPrivateMetadata.Team.players:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player - 26, // 32: dota.CDOTAMatchPrivateMetadata.Team.buildings:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Building - 27, // 33: dota.CDOTAMatchPrivateMetadata.Team.Player.combat_segments:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment - 28, // 34: dota.CDOTAMatchPrivateMetadata.Team.Player.buff_records:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.BuffRecord - 29, // 35: dota.CDOTAMatchPrivateMetadata.Team.Player.gold_received:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.GoldReceived - 30, // 36: dota.CDOTAMatchPrivateMetadata.Team.Player.xp_received:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.XPReceived - 42, // 37: dota.CDOTAMatchPrivateMetadata.Team.Player.team_number:type_name -> dota.DOTA_GC_TEAM - 31, // 38: dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.damage_by_ability:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.DamageByAbility - 32, // 39: dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.healing_by_ability:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.HealingByAbility - 35, // 40: dota.CDOTAMatchPrivateMetadata.Team.Player.BuffRecord.by_hero_targets:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.BuffRecord.ByHeroTarget - 33, // 41: dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.DamageByAbility.by_hero_targets:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.DamageByAbility.ByHeroTarget - 34, // 42: dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.HealingByAbility.by_hero_targets:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.HealingByAbility.ByHeroTarget - 43, // [43:43] is the sub-list for method output_type - 43, // [43:43] is the sub-list for method input_type - 43, // [43:43] is the sub-list for extension type_name - 43, // [43:43] is the sub-list for extension extendee - 0, // [0:43] is the sub-list for field type_name + 38, // 6: dota.CDOTAMatchMetadata.match_tracked_stats:type_name -> dota.CMsgTrackedStat + 24, // 7: dota.CDOTAMatchPrivateMetadata.teams:type_name -> dota.CDOTAMatchPrivateMetadata.Team + 23, // 8: dota.CDOTAMatchPrivateMetadata.string_names:type_name -> dota.CDOTAMatchPrivateMetadata.StringName + 39, // 9: dota.CDOTAMatchMetadata.EconItem.attribute:type_name -> dota.CSOEconItemAttribute + 40, // 10: dota.CDOTAMatchMetadata.EconItem.equipped_state:type_name -> dota.CSOEconItemEquipped + 20, // 11: dota.CDOTAMatchMetadata.Team.players:type_name -> dota.CDOTAMatchMetadata.Team.Player + 38, // 12: dota.CDOTAMatchMetadata.Team.team_tracked_stats:type_name -> dota.CMsgTrackedStat + 41, // 13: dota.CDOTAMatchMetadata.GuildChallengeProgress.event_id:type_name -> dota.EEvent + 22, // 14: dota.CDOTAMatchMetadata.GuildChallengeProgress.individual_progress:type_name -> dota.CDOTAMatchMetadata.GuildChallengeProgress.IndividualProgress + 41, // 15: dota.CDOTAMatchMetadata.Tip.event_id:type_name -> dota.EEvent + 13, // 16: dota.CDOTAMatchMetadata.Team.EventData.sub_challenges_with_progress:type_name -> dota.CDOTAMatchMetadata.Team.SubChallenge + 14, // 17: dota.CDOTAMatchMetadata.Team.EventData.cavern_challenge_map_results:type_name -> dota.CDOTAMatchMetadata.Team.CavernChallengeResult + 15, // 18: dota.CDOTAMatchMetadata.Team.EventData.actions_granted:type_name -> dota.CDOTAMatchMetadata.Team.ActionGrant + 16, // 19: dota.CDOTAMatchMetadata.Team.EventData.candy_points_granted:type_name -> dota.CDOTAMatchMetadata.Team.CandyGrant + 17, // 20: dota.CDOTAMatchMetadata.Team.EventData.periodic_resources:type_name -> dota.CDOTAMatchMetadata.Team.PeriodicResourceData + 42, // 21: dota.CDOTAMatchMetadata.Team.EventData.extra_event_messages:type_name -> dota.CExtraMsgBlock + 7, // 22: dota.CDOTAMatchMetadata.Team.Player.kills:type_name -> dota.CDOTAMatchMetadata.Team.PlayerKill + 8, // 23: dota.CDOTAMatchMetadata.Team.Player.items:type_name -> dota.CDOTAMatchMetadata.Team.ItemPurchase + 9, // 24: dota.CDOTAMatchMetadata.Team.Player.inventory_snapshot:type_name -> dota.CDOTAMatchMetadata.Team.InventorySnapshot + 10, // 25: dota.CDOTAMatchMetadata.Team.Player.auto_style_criteria:type_name -> dota.CDOTAMatchMetadata.Team.AutoStyleCriteria + 18, // 26: dota.CDOTAMatchMetadata.Team.Player.event_data:type_name -> dota.CDOTAMatchMetadata.Team.EventData + 11, // 27: dota.CDOTAMatchMetadata.Team.Player.strange_gem_progress:type_name -> dota.CDOTAMatchMetadata.Team.StrangeGemProgress + 12, // 28: dota.CDOTAMatchMetadata.Team.Player.victory_prediction:type_name -> dota.CDOTAMatchMetadata.Team.VictoryPrediction + 43, // 29: dota.CDOTAMatchMetadata.Team.Player.rank_mmr_boost_type:type_name -> dota.EDOTAMMRBoostType + 21, // 30: dota.CDOTAMatchMetadata.Team.Player.contract_progress:type_name -> dota.CDOTAMatchMetadata.Team.Player.ContractProgress + 44, // 31: dota.CDOTAMatchMetadata.Team.Player.team_number:type_name -> dota.DOTA_GC_TEAM + 19, // 32: dota.CDOTAMatchMetadata.Team.Player.featured_gamemode_progress:type_name -> dota.CDOTAMatchMetadata.Team.FeaturedGamemodeProgress + 3, // 33: dota.CDOTAMatchMetadata.Team.Player.equipped_econ_items:type_name -> dota.CDOTAMatchMetadata.EconItem + 38, // 34: dota.CDOTAMatchMetadata.Team.Player.player_tracked_stats:type_name -> dota.CMsgTrackedStat + 25, // 35: dota.CDOTAMatchPrivateMetadata.Team.players:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player + 26, // 36: dota.CDOTAMatchPrivateMetadata.Team.buildings:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Building + 27, // 37: dota.CDOTAMatchPrivateMetadata.Team.Player.combat_segments:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment + 28, // 38: dota.CDOTAMatchPrivateMetadata.Team.Player.buff_records:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.BuffRecord + 29, // 39: dota.CDOTAMatchPrivateMetadata.Team.Player.gold_received:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.GoldReceived + 30, // 40: dota.CDOTAMatchPrivateMetadata.Team.Player.xp_received:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.XPReceived + 44, // 41: dota.CDOTAMatchPrivateMetadata.Team.Player.team_number:type_name -> dota.DOTA_GC_TEAM + 31, // 42: dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.damage_by_ability:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.DamageByAbility + 32, // 43: dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.healing_by_ability:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.HealingByAbility + 35, // 44: dota.CDOTAMatchPrivateMetadata.Team.Player.BuffRecord.by_hero_targets:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.BuffRecord.ByHeroTarget + 33, // 45: dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.DamageByAbility.by_hero_targets:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.DamageByAbility.ByHeroTarget + 34, // 46: dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.HealingByAbility.by_hero_targets:type_name -> dota.CDOTAMatchPrivateMetadata.Team.Player.CombatSegment.HealingByAbility.ByHeroTarget + 47, // [47:47] is the sub-list for method output_type + 47, // [47:47] is the sub-list for method input_type + 47, // [47:47] is the sub-list for extension type_name + 47, // [47:47] is the sub-list for extension extendee + 0, // [0:47] is the sub-list for field type_name } func init() { file_dota_match_metadata_proto_init() } @@ -4083,6 +4141,7 @@ func file_dota_match_metadata_proto_init() { file_dota_gcmessages_common_lobby_proto_init() file_dota_gcmessages_common_proto_init() file_dota_shared_enums_proto_init() + file_gcsdk_gcmessages_proto_init() if !protoimpl.UnsafeEnabled { file_dota_match_metadata_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CDOTAMatchMetadataFile); i { diff --git a/dota/dota_match_metadata.proto b/dota/dota_match_metadata.proto index 2b08d946..f6bf8f6c 100644 --- a/dota/dota_match_metadata.proto +++ b/dota/dota_match_metadata.proto @@ -8,6 +8,7 @@ import "dota_gcmessages_common_match_management.proto"; import "dota_gcmessages_common_lobby.proto"; import "dota_gcmessages_common.proto"; import "dota_shared_enums.proto"; +import "gcsdk_gcmessages.proto"; message CDOTAMatchMetadataFile { required int32 version = 1; @@ -126,6 +127,7 @@ message CDOTAMatchMetadata { optional uint32 active_season_id = 24; optional bool cavern_crawl_half_credit = 25; repeated CDOTAMatchMetadata.Team.PeriodicResourceData periodic_resources = 26; + repeated CExtraMsgBlock extra_event_messages = 27; } message FeaturedGamemodeProgress { @@ -197,6 +199,7 @@ message CDOTAMatchMetadata { optional uint32 featured_hero_sticker_quality = 55; repeated CDOTAMatchMetadata.EconItem equipped_econ_items = 56; optional int32 game_player_id = 57; + repeated CMsgTrackedStat player_tracked_stats = 58; } optional uint32 dota_team = 1; @@ -207,6 +210,7 @@ message CDOTAMatchMetadata { optional bool cm_first_pick = 6; optional int32 cm_captain_player_id = 7; optional uint32 cm_penalty = 10; + repeated CMsgTrackedStat team_tracked_stats = 11; } message GuildChallengeProgress { @@ -242,6 +246,7 @@ message CDOTAMatchMetadata { repeated CDOTAMatchMetadata.GuildChallengeProgress guild_challenge_progress = 10; optional bytes custom_post_game_table = 11; repeated CDOTAMatchMetadata.Tip match_tips = 12; + repeated CMsgTrackedStat match_tracked_stats = 13; } message CDOTAMatchPrivateMetadata { diff --git a/dota/dota_modifiers.pb.go b/dota/dota_modifiers.pb.go index 5612d31a..6cc6a001 100644 --- a/dota/dota_modifiers.pb.go +++ b/dota/dota_modifiers.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_modifiers.proto @@ -119,6 +119,7 @@ type CDOTAModifierBuffTableEntry struct { BonusHealth *int32 `protobuf:"varint,36,opt,name=bonus_health,json=bonusHealth" json:"bonus_health,omitempty"` BonusMana *int32 `protobuf:"varint,37,opt,name=bonus_mana,json=bonusMana" json:"bonus_mana,omitempty"` CustomEntity *uint32 `protobuf:"varint,38,opt,name=custom_entity,json=customEntity" json:"custom_entity,omitempty"` + AuraWithinRange *bool `protobuf:"varint,39,opt,name=aura_within_range,json=auraWithinRange" json:"aura_within_range,omitempty"` } func (x *CDOTAModifierBuffTableEntry) Reset() { @@ -419,6 +420,13 @@ func (x *CDOTAModifierBuffTableEntry) GetCustomEntity() uint32 { return 0 } +func (x *CDOTAModifierBuffTableEntry) GetAuraWithinRange() bool { + if x != nil && x.AuraWithinRange != nil { + return *x.AuraWithinRange + } + return false +} + type CDOTALuaModifierEntry struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -480,7 +488,7 @@ var file_dota_modifiers_proto_rawDesc = []byte{ 0x0a, 0x14, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0x16, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x62, 0x61, 0x73, 0x65, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa4, 0x0a, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x6f, + 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd0, 0x0a, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x42, 0x75, 0x66, 0x66, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x3d, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, @@ -562,23 +570,25 @@ var file_dota_modifiers_proto_rawDesc = []byte{ 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x18, 0x25, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x69, 0x0a, 0x15, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x75, 0x61, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0c, 0x6d, 0x6f, 0x64, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x6d, 0x6f, 0x64, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x02, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x46, 0x69, - 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x2a, 0x65, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, - 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x45, 0x4e, 0x54, 0x52, 0x59, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x49, 0x46, - 0x49, 0x45, 0x52, 0x5f, 0x45, 0x4e, 0x54, 0x52, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, - 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x45, 0x4e, 0x54, 0x52, 0x59, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x44, 0x10, 0x02, 0x42, 0x25, 0x5a, - 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, - 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, - 0x64, 0x6f, 0x74, 0x61, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x61, + 0x75, 0x72, 0x61, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, + 0x18, 0x27, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x61, 0x75, 0x72, 0x61, 0x57, 0x69, 0x74, 0x68, + 0x69, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x69, 0x0a, 0x15, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x4c, 0x75, 0x61, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0c, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x02, 0x28, 0x09, + 0x52, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, + 0x6d, 0x65, 0x2a, 0x65, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x49, 0x46, + 0x49, 0x45, 0x52, 0x5f, 0x45, 0x4e, 0x54, 0x52, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x23, + 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, + 0x45, 0x4e, 0x54, 0x52, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, + 0x45, 0x10, 0x01, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x49, + 0x46, 0x49, 0x45, 0x52, 0x5f, 0x45, 0x4e, 0x54, 0x52, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x44, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, + 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/dota_modifiers.proto b/dota/dota_modifiers.proto index 914d5175..aa133f0e 100644 --- a/dota/dota_modifiers.proto +++ b/dota/dota_modifiers.proto @@ -49,6 +49,7 @@ message CDOTAModifierBuffTableEntry { optional int32 bonus_health = 36; optional int32 bonus_mana = 37; optional uint32 custom_entity = 38; + optional bool aura_within_range = 39; } message CDOTALuaModifierEntry { diff --git a/dota/dota_scenariomessages.pb.go b/dota/dota_scenariomessages.pb.go index 8d8c1007..0b959f82 100644 --- a/dota/dota_scenariomessages.pb.go +++ b/dota/dota_scenariomessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_scenariomessages.proto @@ -80,9 +80,10 @@ type CScenarioGame_RoshanSpawner struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - KillCount *int32 `protobuf:"varint,1,opt,name=kill_count,json=killCount" json:"kill_count,omitempty"` - State *int32 `protobuf:"varint,2,opt,name=state" json:"state,omitempty"` - Cooldown *float32 `protobuf:"fixed32,3,opt,name=cooldown" json:"cooldown,omitempty"` + KillCount *int32 `protobuf:"varint,1,opt,name=kill_count,json=killCount" json:"kill_count,omitempty"` + State *int32 `protobuf:"varint,2,opt,name=state" json:"state,omitempty"` + Cooldown *float32 `protobuf:"fixed32,3,opt,name=cooldown" json:"cooldown,omitempty"` + KillerTeam *int32 `protobuf:"varint,4,opt,name=killer_team,json=killerTeam" json:"killer_team,omitempty"` } func (x *CScenarioGame_RoshanSpawner) Reset() { @@ -138,6 +139,13 @@ func (x *CScenarioGame_RoshanSpawner) GetCooldown() float32 { return 0 } +func (x *CScenarioGame_RoshanSpawner) GetKillerTeam() int32 { + if x != nil && x.KillerTeam != nil { + return *x.KillerTeam + } + return 0 +} + type CScenarioEnt_Courier struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -674,6 +682,7 @@ type CMsgDotaScenario_TeamNeutralItem struct { Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` Consumed *bool `protobuf:"varint,2,opt,name=consumed" json:"consumed,omitempty"` + Tier *int32 `protobuf:"varint,3,opt,name=tier" json:"tier,omitempty"` } func (x *CMsgDotaScenario_TeamNeutralItem) Reset() { @@ -722,6 +731,13 @@ func (x *CMsgDotaScenario_TeamNeutralItem) GetConsumed() bool { return false } +func (x *CMsgDotaScenario_TeamNeutralItem) GetTier() int32 { + if x != nil && x.Tier != nil { + return *x.Tier + } + return 0 +} + type CMsgDotaScenario_Team struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2128,438 +2144,442 @@ var file_dota_scenariomessages_proto_rawDesc = []byte{ 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x30, 0x0a, 0x12, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, - 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x22, 0x6e, - 0x0a, 0x1b, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x47, 0x61, 0x6d, 0x65, 0x5f, - 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1d, 0x0a, - 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, - 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x22, 0x7b, - 0x0a, 0x14, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x43, - 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x65, 0x61, - 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x77, 0x6e, 0x65, 0x72, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0d, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x22, 0xb5, 0x02, 0x0a, 0x10, - 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x4e, 0x50, 0x43, + 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x22, 0x8f, + 0x01, 0x0a, 0x1b, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x47, 0x61, 0x6d, 0x65, + 0x5f, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1d, + 0x0a, 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, + 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, + 0x1f, 0x0a, 0x0b, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, + 0x22, 0x7b, 0x0a, 0x14, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, + 0x5f, 0x43, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, + 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x77, 0x6e, + 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0d, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x22, 0xb5, 0x02, + 0x0a, 0x10, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x4e, + 0x50, 0x43, 0x12, 0x34, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, + 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x74, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, + 0x5f, 0x66, 0x72, 0x61, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x68, 0x65, 0x61, + 0x6c, 0x74, 0x68, 0x46, 0x72, 0x61, 0x63, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x69, 0x6e, + 0x67, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x77, + 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x6d, 0x70, 0x12, 0x4a, 0x0a, 0x14, 0x6f, 0x77, 0x6e, 0x69, + 0x6e, 0x67, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, + 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x12, 0x6f, 0x77, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x6d, 0x70, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x76, 0x61, 0x64, 0x65, 0x5f, 0x67, + 0x6f, 0x61, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, 0x76, 0x61, 0x64, + 0x65, 0x47, 0x6f, 0x61, 0x6c, 0x22, 0x4d, 0x0a, 0x17, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, + 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x53, 0x70, 0x69, 0x72, 0x69, 0x74, 0x42, 0x65, 0x61, 0x72, + 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, + 0x61, 0x6d, 0x49, 0x64, 0x22, 0x50, 0x0a, 0x18, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, + 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x34, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x66, - 0x72, 0x61, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x68, 0x65, 0x61, 0x6c, 0x74, - 0x68, 0x46, 0x72, 0x61, 0x63, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x69, 0x6e, 0x67, 0x5f, - 0x63, 0x61, 0x6d, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x77, 0x6e, 0x69, - 0x6e, 0x67, 0x43, 0x61, 0x6d, 0x70, 0x12, 0x4a, 0x0a, 0x14, 0x6f, 0x77, 0x6e, 0x69, 0x6e, 0x67, - 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, - 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, - 0x6f, 0x77, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x6d, 0x70, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x76, 0x61, 0x64, 0x65, 0x5f, 0x67, 0x6f, 0x61, - 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, 0x76, 0x61, 0x64, 0x65, 0x47, - 0x6f, 0x61, 0x6c, 0x22, 0x4d, 0x0a, 0x17, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, - 0x45, 0x6e, 0x74, 0x5f, 0x53, 0x70, 0x69, 0x72, 0x69, 0x74, 0x42, 0x65, 0x61, 0x72, 0x12, 0x19, - 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, - 0x49, 0x64, 0x22, 0x50, 0x0a, 0x18, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, - 0x6e, 0x74, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x34, - 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, - 0x6f, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xfd, 0x2f, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, - 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x62, - 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, 0x6f, 0x62, - 0x62, 0x79, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, - 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x47, 0x61, 0x6d, 0x65, 0x52, - 0x04, 0x67, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x54, 0x65, 0x61, - 0x6d, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x33, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, - 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, - 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, 0x32, 0x0a, - 0x05, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, - 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x73, 0x74, 0x6f, 0x63, - 0x6b, 0x12, 0x3d, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x42, 0x75, 0x69, - 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, - 0x12, 0x39, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, - 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x31, 0x0a, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x91, 0x30, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x6c, + 0x6f, 0x62, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6c, + 0x6f, 0x62, 0x62, 0x79, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x47, 0x61, 0x6d, + 0x65, 0x52, 0x04, 0x67, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x54, + 0x65, 0x61, 0x6d, 0x52, 0x05, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x33, 0x0a, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, - 0x69, 0x6f, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x3d, - 0x0a, 0x09, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, - 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, - 0x65, 0x72, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x1a, 0xac, 0x01, - 0x0a, 0x09, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x12, 0x1b, 0x0a, 0x09, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x65, 0x75, 0x74, - 0x72, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x73, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0e, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x73, 0x68, - 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x78, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64, - 0x78, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0xbd, 0x01, 0x0a, - 0x04, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x09, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, - 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, - 0x69, 0x6f, 0x47, 0x61, 0x6d, 0x65, 0x5f, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x53, 0x70, 0x61, - 0x77, 0x6e, 0x65, 0x72, 0x52, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x1a, 0x41, 0x0a, 0x0f, - 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x1a, - 0xa9, 0x02, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, - 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x4b, 0x0a, 0x0d, 0x6e, 0x65, 0x75, - 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, - 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x75, - 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0c, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, - 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, - 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6b, - 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, - 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, - 0x6b, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, - 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x25, 0x0a, - 0x0e, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x43, 0x6f, 0x6f, 0x6c, - 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x61, 0x64, 0x61, 0x72, 0x5f, 0x63, 0x6f, - 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x72, 0x61, - 0x64, 0x61, 0x72, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x1a, 0x40, 0x0a, 0x0b, 0x48, - 0x65, 0x72, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x42, 0x0a, - 0x0d, 0x48, 0x65, 0x72, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x1b, - 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x1a, 0x90, 0x02, 0x0a, 0x11, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x42, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x61, - 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x72, 0x65, 0x63, 0x65, - 0x69, 0x76, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, - 0x65, 0x64, 0x50, 0x72, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, - 0x0a, 0x17, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x5f, - 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x15, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x64, - 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, - 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, - 0x50, 0x72, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x17, - 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, - 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x15, 0x6f, - 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x64, 0x75, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x37, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0xed, 0x13, - 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, - 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, - 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x78, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x58, 0x70, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x6b, 0x62, 0x5f, 0x63, 0x68, - 0x61, 0x72, 0x67, 0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0e, 0x62, 0x6b, 0x62, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, - 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x65, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, - 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x61, 0x65, 0x6f, - 0x6e, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, - 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, - 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x6e, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, - 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x75, 0x6e, 0x72, 0x65, - 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x45, 0x61, 0x72, 0x6e, - 0x65, 0x64, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, - 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x64, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x26, 0x0a, - 0x0f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x65, 0x70, 0x4b, 0x69, 0x6c, - 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, - 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x5f, 0x67, 0x6f, 0x6c, - 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, - 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x5f, 0x67, - 0x6f, 0x6c, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x62, 0x6f, 0x75, 0x6e, 0x74, - 0x79, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, - 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x6f, 0x73, 0x68, - 0x61, 0x6e, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, - 0x6e, 0x67, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, - 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, - 0x74, 0x68, 0x65, 0x72, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, - 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x77, - 0x61, 0x72, 0x64, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1b, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x61, 0x72, 0x64, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x6f, 0x6c, - 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x18, 0x1d, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, - 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x61, 0x73, - 0x74, 0x5f, 0x68, 0x69, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x1f, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, - 0x6b, 0x12, 0x2c, 0x0a, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x5f, 0x6d, 0x75, - 0x6c, 0x74, 0x69, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x20, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6c, - 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x6b, 0x69, 0x6c, 0x6c, 0x12, - 0x37, 0x0a, 0x18, 0x6e, 0x65, 0x61, 0x72, 0x62, 0x79, 0x5f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, - 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x15, 0x6e, 0x65, 0x61, 0x72, 0x62, 0x79, 0x43, 0x72, 0x65, 0x65, 0x70, 0x44, 0x65, - 0x61, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x6c, 0x61, 0x69, - 0x6d, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x6e, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x22, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x44, 0x65, 0x6e, - 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, - 0x64, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x23, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x10, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x4d, 0x69, 0x73, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x69, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6d, 0x69, 0x73, 0x73, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x63, - 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x28, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x13, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x6f, 0x6c, 0x64, - 0x6f, 0x77, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x17, 0x62, 0x75, 0x79, 0x62, 0x61, - 0x63, 0x6b, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x29, 0x20, 0x01, 0x28, 0x02, 0x52, 0x14, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, - 0x6b, 0x47, 0x6f, 0x6c, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x23, - 0x0a, 0x0d, 0x73, 0x74, 0x75, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x2c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x74, 0x75, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x2d, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x68, 0x65, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, - 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x2e, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x21, - 0x0a, 0x0c, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x2f, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, - 0x73, 0x12, 0x32, 0x0a, 0x15, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x77, 0x61, - 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x30, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x13, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, - 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x5f, - 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x31, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x11, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, - 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, 0x5f, - 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x32, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, - 0x72, 0x65, 0x65, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, - 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x33, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, - 0x73, 0x18, 0x34, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x75, 0x6e, 0x65, 0x50, 0x69, 0x63, - 0x6b, 0x75, 0x70, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, - 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x35, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x12, 0x67, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x4f, 0x6e, - 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x36, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x68, 0x65, - 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x64, - 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x37, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x72, - 0x6f, 0x79, 0x65, 0x64, 0x18, 0x38, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x61, 0x72, 0x64, - 0x73, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x12, 0x39, 0x0a, 0x19, 0x67, 0x6f, - 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x73, - 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x67, - 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x4f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, - 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x13, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, - 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x3b, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x10, 0x67, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x4f, 0x6e, 0x49, - 0x74, 0x65, 0x6d, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, - 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x3c, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x67, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x4f, - 0x6e, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x2b, 0x0a, 0x12, 0x67, 0x6f, 0x6c, - 0x64, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, - 0x3d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x67, 0x6f, 0x6c, 0x64, 0x4c, 0x6f, 0x73, 0x74, 0x54, - 0x6f, 0x44, 0x65, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, - 0x3e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x61, - 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, - 0x18, 0x40, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x12, 0x1f, - 0x0a, 0x0b, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x18, 0x41, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, - 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x73, 0x18, 0x44, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, - 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x61, 0x73, 0x74, - 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x45, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, - 0x6f, 0x6f, 0x64, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x18, 0x47, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x43, 0x6c, 0x61, - 0x69, 0x6d, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, - 0x6f, 0x6f, 0x64, 0x5f, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x18, 0x48, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x47, 0x69, 0x76, 0x65, 0x6e, - 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, - 0x18, 0x49, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x52, 0x75, - 0x6e, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x5f, - 0x63, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, - 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, - 0x12, 0x34, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x4b, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, - 0x72, 0x69, 0x6f, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x44, 0x0a, 0x0b, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, - 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x96, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, - 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x74, - 0x52, 0x0a, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x4c, 0x0a, 0x0c, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x97, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x44, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x64, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x41, 0x0a, 0x09, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x98, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, + 0x69, 0x6f, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x12, + 0x32, 0x0a, 0x05, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, - 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0xbb, 0x01, - 0x0a, 0x05, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x12, 0x1a, - 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, - 0x6e, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x1a, 0xab, 0x01, 0x0a, 0x08, - 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x17, 0x0a, 0x07, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, - 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x73, 0x74, - 0x72, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x44, - 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x65, 0x61, 0x6c, - 0x74, 0x68, 0x5f, 0x66, 0x72, 0x61, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x68, - 0x65, 0x61, 0x6c, 0x74, 0x68, 0x46, 0x72, 0x61, 0x63, 0x1a, 0xeb, 0x01, 0x0a, 0x06, 0x45, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, - 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x43, 0x6f, 0x75, 0x72, 0x69, 0x65, - 0x72, 0x52, 0x07, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x03, 0x6e, 0x70, - 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x4e, 0x50, 0x43, 0x52, - 0x03, 0x6e, 0x70, 0x63, 0x12, 0x3e, 0x0a, 0x0b, 0x73, 0x70, 0x69, 0x72, 0x69, 0x74, 0x5f, 0x62, - 0x65, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x53, 0x70, - 0x69, 0x72, 0x69, 0x74, 0x42, 0x65, 0x61, 0x72, 0x52, 0x0a, 0x73, 0x70, 0x69, 0x72, 0x69, 0x74, - 0x42, 0x65, 0x61, 0x72, 0x12, 0x41, 0x0a, 0x0c, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x5f, - 0x69, 0x74, 0x65, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x44, - 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0b, 0x64, 0x72, 0x6f, 0x70, - 0x70, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x1a, 0xc9, 0x02, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x45, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, - 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x44, 0x72, - 0x6f, 0x70, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, - 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, - 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, - 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x74, 0x6f, - 0x72, 0x65, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x75, 0x6e, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x1a, 0xce, 0x07, 0x0a, 0x08, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x73, 0x74, + 0x6f, 0x63, 0x6b, 0x12, 0x3d, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x73, + 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x42, + 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x73, 0x12, 0x39, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x45, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x38, - 0x0a, 0x06, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, - 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, - 0x52, 0x06, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x07, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x69, 0x74, 0x79, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x31, 0x0a, + 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, + 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, + 0x12, 0x3d, 0x0a, 0x09, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, + 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x1a, + 0xac, 0x01, 0x0a, 0x09, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x12, 0x1b, 0x0a, + 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x65, + 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x73, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x53, 0x74, 0x61, + 0x73, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, + 0x64, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x49, 0x64, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0xbd, + 0x01, 0x0a, 0x04, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x09, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x23, + 0x0a, 0x0d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, + 0x61, 0x72, 0x69, 0x6f, 0x47, 0x61, 0x6d, 0x65, 0x5f, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x53, + 0x70, 0x61, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x06, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x1a, 0x55, + 0x0a, 0x0f, 0x54, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, + 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x74, 0x69, 0x65, 0x72, 0x1a, 0xa9, 0x02, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1f, + 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x4b, 0x0a, 0x0d, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x54, + 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0c, + 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, + 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0e, + 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x4b, 0x69, + 0x6c, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x5f, 0x63, 0x6f, 0x6f, + 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x67, 0x6c, 0x79, + 0x70, 0x68, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x61, + 0x64, 0x61, 0x72, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0d, 0x72, 0x61, 0x64, 0x61, 0x72, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, + 0x6e, 0x1a, 0x40, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x74, + 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x1a, 0x42, 0x0a, 0x0d, 0x48, 0x65, 0x72, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x46, + 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x90, 0x02, 0x0a, 0x11, 0x44, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, + 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, + 0x0a, 0x16, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x5f, 0x72, + 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x50, 0x72, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, + 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x15, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x50, + 0x6f, 0x73, 0x74, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, + 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x64, + 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x6f, 0x75, + 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x70, + 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x15, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, + 0x74, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x37, 0x0a, 0x0b, 0x48, 0x65, + 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x1a, 0xed, 0x13, 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x19, 0x0a, 0x08, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, + 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x78, 0x70, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x58, 0x70, 0x12, 0x28, 0x0a, 0x10, + 0x62, 0x6b, 0x62, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x62, 0x6b, 0x62, 0x43, 0x68, 0x61, 0x72, 0x67, + 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x65, 0x6f, 0x6e, 0x5f, 0x63, + 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0f, 0x61, 0x65, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x55, 0x73, + 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, + 0x6f, 0x6c, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x69, 0x61, + 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x6e, 0x72, 0x65, 0x6c, + 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x75, 0x6e, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, 0x64, + 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, + 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x45, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0a, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x24, 0x0a, + 0x0e, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x68, 0x65, 0x72, 0x6f, 0x4b, 0x69, 0x6c, 0x6c, 0x47, + 0x6f, 0x6c, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x6b, 0x69, 0x6c, + 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x72, + 0x65, 0x65, 0x70, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x6e, + 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, 0x6f, 0x6c, 0x64, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x4b, + 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x72, 0x69, + 0x65, 0x72, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, + 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, + 0x75, 0x6e, 0x74, 0x79, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, + 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x23, 0x0a, 0x0d, + 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x6f, 0x6c, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, + 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x47, 0x6f, 0x6c, 0x64, + 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, + 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x47, 0x6f, 0x6c, + 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x67, + 0x6f, 0x6c, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x61, 0x72, 0x64, 0x4b, + 0x69, 0x6c, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, + 0x6e, 0x69, 0x65, 0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, 0x6e, 0x69, + 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, + 0x1e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, + 0x26, 0x0a, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, + 0x61, 0x6b, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, + 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x2c, 0x0a, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x5f, + 0x68, 0x69, 0x74, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x20, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x4d, 0x75, 0x6c, 0x74, + 0x69, 0x6b, 0x69, 0x6c, 0x6c, 0x12, 0x37, 0x0a, 0x18, 0x6e, 0x65, 0x61, 0x72, 0x62, 0x79, 0x5f, + 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, 0x05, 0x52, 0x15, 0x6e, 0x65, 0x61, 0x72, 0x62, 0x79, 0x43, + 0x72, 0x65, 0x65, 0x70, 0x44, 0x65, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, + 0x0a, 0x12, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x6e, 0x79, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x22, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6c, 0x61, 0x69, + 0x6d, 0x65, 0x64, 0x44, 0x65, 0x6e, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, + 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x23, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, + 0x64, 0x4d, 0x69, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x69, + 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x6d, 0x69, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x62, 0x75, 0x79, + 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x28, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, + 0x6b, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, + 0x17, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x29, 0x20, 0x01, 0x28, 0x02, 0x52, 0x14, + 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x47, 0x6f, 0x6c, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x75, 0x6e, 0x5f, 0x64, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x74, 0x75, + 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, + 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x68, 0x65, 0x61, 0x6c, + 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6b, 0x69, 0x6c, + 0x6c, 0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x4b, + 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x5f, 0x6b, + 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x6f, 0x73, 0x68, + 0x61, 0x6e, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x6f, 0x62, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, + 0x18, 0x30, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x73, + 0x65, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x64, 0x18, 0x31, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x79, + 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, + 0x72, 0x65, 0x65, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x32, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x65, 0x70, 0x73, 0x53, 0x74, 0x61, 0x63, 0x6b, + 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6d, 0x70, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x63, + 0x6b, 0x65, 0x64, 0x18, 0x33, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x61, 0x6d, 0x70, 0x73, + 0x53, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x75, 0x6e, 0x65, 0x5f, + 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x18, 0x34, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, + 0x75, 0x6e, 0x65, 0x50, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x67, 0x6f, + 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x18, 0x35, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x67, 0x6f, 0x6c, 0x64, 0x53, + 0x70, 0x65, 0x6e, 0x74, 0x4f, 0x6e, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1f, 0x0a, + 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x36, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x27, + 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, + 0x64, 0x18, 0x37, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x64, 0x73, + 0x5f, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x38, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x77, 0x61, 0x72, 0x64, 0x73, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, + 0x12, 0x39, 0x0a, 0x19, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x5f, 0x6f, + 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x3a, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x16, 0x67, 0x6f, 0x6c, 0x64, 0x53, 0x70, 0x65, 0x6e, 0x74, 0x4f, 0x6e, + 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x13, 0x67, + 0x6f, 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x69, 0x74, 0x65, + 0x6d, 0x73, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x67, 0x6f, 0x6c, 0x64, 0x53, 0x70, + 0x65, 0x6e, 0x74, 0x4f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x67, 0x6f, + 0x6c, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x79, 0x62, + 0x61, 0x63, 0x6b, 0x73, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x67, 0x6f, 0x6c, 0x64, + 0x53, 0x70, 0x65, 0x6e, 0x74, 0x4f, 0x6e, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, + 0x2b, 0x0a, 0x12, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x6f, 0x5f, + 0x64, 0x65, 0x61, 0x74, 0x68, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x67, 0x6f, 0x6c, + 0x64, 0x4c, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, + 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6b, 0x69, 0x6c, + 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x18, 0x3f, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x64, 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x40, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, + 0x61, 0x74, 0x68, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x72, + 0x65, 0x61, 0x6b, 0x18, 0x41, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6b, 0x69, 0x6c, 0x6c, 0x53, + 0x74, 0x72, 0x65, 0x61, 0x6b, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, + 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x44, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x72, 0x65, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x2a, + 0x0a, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x45, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x42, + 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x69, + 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, + 0x64, 0x18, 0x47, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, + 0x6f, 0x6f, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x69, + 0x72, 0x73, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x18, + 0x48, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, + 0x64, 0x47, 0x69, 0x76, 0x65, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x74, 0x79, + 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x49, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x62, 0x6f, + 0x75, 0x6e, 0x74, 0x79, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, + 0x70, 0x6f, 0x73, 0x74, 0x73, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x18, 0x4a, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x43, 0x61, + 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x44, 0x0a, 0x0b, + 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x96, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, + 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x48, + 0x65, 0x72, 0x6f, 0x49, 0x6e, 0x74, 0x52, 0x0a, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x4b, 0x69, 0x6c, + 0x6c, 0x73, 0x12, 0x4c, 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x73, 0x18, 0x97, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, - 0x6f, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x52, 0x07, 0x61, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x2d, 0x0a, 0x12, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, - 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x6c, 0x69, - 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, - 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x35, 0x0a, 0x17, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, - 0x69, 0x66, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x49, 0x66, 0x45, - 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x69, - 0x74, 0x68, 0x6f, 0x75, 0x74, 0x43, 0x61, 0x73, 0x74, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x16, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x5f, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x12, 0x38, 0x0a, 0x18, 0x6d, 0x6f, 0x6f, 0x6e, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x63, - 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x64, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x16, 0x6d, 0x6f, 0x6f, 0x6e, 0x73, 0x68, 0x61, 0x72, 0x64, 0x43, 0x6f, - 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x50, 0x0a, 0x25, 0x6d, - 0x6f, 0x6f, 0x6e, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, - 0x64, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x76, 0x69, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x65, 0x20, 0x01, 0x28, 0x05, 0x52, 0x21, 0x6d, 0x6f, 0x6f, 0x6e, - 0x73, 0x68, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x42, 0x6f, 0x6e, - 0x75, 0x73, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x56, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, - 0x13, 0x77, 0x61, 0x72, 0x64, 0x74, 0x72, 0x75, 0x65, 0x73, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x72, - 0x61, 0x6e, 0x67, 0x65, 0x18, 0x6e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x77, 0x61, 0x72, 0x64, - 0x74, 0x72, 0x75, 0x65, 0x73, 0x69, 0x67, 0x68, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x6a, - 0x0a, 0x33, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, - 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x5f, 0x61, 0x6c, 0x63, 0x68, - 0x65, 0x6d, 0x69, 0x73, 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, - 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x78, 0x20, 0x01, 0x28, 0x05, 0x52, 0x2d, 0x75, 0x6c, 0x74, - 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x73, - 0x75, 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x42, 0x6f, 0x6e, - 0x75, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x65, 0x0a, 0x30, 0x75, 0x6c, - 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x63, - 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x5f, 0x61, 0x6c, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, - 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x79, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x2b, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x63, - 0x65, 0x70, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x63, - 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, - 0x68, 0x12, 0x61, 0x0a, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, - 0x65, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x5f, 0x61, - 0x6c, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x6d, - 0x61, 0x6e, 0x61, 0x18, 0x7a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x29, 0x75, 0x6c, 0x74, 0x69, 0x6d, - 0x61, 0x74, 0x65, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, - 0x65, 0x64, 0x41, 0x6c, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x42, 0x6f, 0x6e, 0x75, 0x73, - 0x4d, 0x61, 0x6e, 0x61, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, - 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x6f, 0x2e, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x79, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x12, 0x41, 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x98, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x48, 0x65, 0x72, + 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x1a, 0xbb, 0x01, 0x0a, 0x05, 0x53, 0x74, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x63, 0x6b, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, + 0x74, 0x6f, 0x63, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, + 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x53, 0x74, 0x6f, 0x63, + 0x6b, 0x1a, 0xab, 0x01, 0x0a, 0x08, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x1f, + 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x43, 0x6c, 0x61, + 0x73, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x69, + 0x73, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0b, 0x69, 0x73, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x66, 0x72, 0x61, 0x63, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x0a, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x46, 0x72, 0x61, 0x63, 0x1a, + 0xeb, 0x01, 0x0a, 0x06, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x6f, + 0x75, 0x72, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x5f, + 0x43, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, + 0x12, 0x28, 0x0a, 0x03, 0x6e, 0x70, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x45, 0x6e, + 0x74, 0x5f, 0x4e, 0x50, 0x43, 0x52, 0x03, 0x6e, 0x70, 0x63, 0x12, 0x3e, 0x0a, 0x0b, 0x73, 0x70, + 0x69, 0x72, 0x69, 0x74, 0x5f, 0x62, 0x65, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, + 0x45, 0x6e, 0x74, 0x5f, 0x53, 0x70, 0x69, 0x72, 0x69, 0x74, 0x42, 0x65, 0x61, 0x72, 0x52, 0x0a, + 0x73, 0x70, 0x69, 0x72, 0x69, 0x74, 0x42, 0x65, 0x61, 0x72, 0x12, 0x41, 0x0a, 0x0c, 0x64, 0x72, + 0x6f, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, + 0x6f, 0x45, 0x6e, 0x74, 0x5f, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, + 0x52, 0x0b, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x1a, 0xc9, 0x02, + 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, + 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x52, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x53, 0x6c, 0x6f, 0x74, + 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x64, 0x72, 0x6f, 0x70, + 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6e, 0x65, 0x75, + 0x74, 0x72, 0x61, 0x6c, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, + 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, + 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, + 0x28, 0x0a, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x74, 0x6f, 0x72, 0x65, + 0x64, 0x52, 0x75, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x1a, 0xce, 0x07, 0x0a, 0x08, 0x4d, 0x6f, + 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x70, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, + 0x69, 0x6f, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x52, 0x06, 0x70, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x12, 0x38, 0x0a, 0x06, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x44, 0x6f, 0x74, 0x61, 0x53, 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x45, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x52, 0x65, 0x66, 0x52, 0x06, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x12, 0x3a, + 0x0a, 0x07, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x6f, 0x74, 0x61, 0x53, + 0x63, 0x65, 0x6e, 0x61, 0x72, 0x69, 0x6f, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, + 0x66, 0x52, 0x07, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d, 0x0a, 0x12, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, + 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x11, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x61, + 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, + 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x35, 0x0a, 0x17, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x5f, 0x69, 0x66, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, + 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, + 0x76, 0x65, 0x6e, 0x49, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x32, 0x0a, + 0x15, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x5f, + 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x43, 0x61, 0x73, 0x74, 0x65, + 0x72, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x77, 0x69, 0x74, 0x68, + 0x6f, 0x75, 0x74, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, + 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x38, 0x0a, 0x18, 0x6d, 0x6f, 0x6f, 0x6e, 0x73, + 0x68, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x6f, + 0x6e, 0x75, 0x73, 0x18, 0x64, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x6d, 0x6f, 0x6f, 0x6e, 0x73, + 0x68, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x42, 0x6f, 0x6e, 0x75, + 0x73, 0x12, 0x50, 0x0a, 0x25, 0x6d, 0x6f, 0x6f, 0x6e, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x63, + 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x6e, 0x69, + 0x67, 0x68, 0x74, 0x5f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x65, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x21, 0x6d, 0x6f, 0x6f, 0x6e, 0x73, 0x68, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x73, 0x75, + 0x6d, 0x65, 0x64, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x56, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x77, 0x61, 0x72, 0x64, 0x74, 0x72, 0x75, 0x65, 0x73, + 0x69, 0x67, 0x68, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x6e, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x12, 0x77, 0x61, 0x72, 0x64, 0x74, 0x72, 0x75, 0x65, 0x73, 0x69, 0x67, 0x68, 0x74, 0x52, + 0x61, 0x6e, 0x67, 0x65, 0x12, 0x6a, 0x0a, 0x33, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, + 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, + 0x64, 0x5f, 0x61, 0x6c, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, + 0x73, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x78, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x2d, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x63, 0x65, 0x70, 0x74, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x63, 0x68, 0x65, 0x6d, + 0x69, 0x73, 0x74, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x12, 0x65, 0x0a, 0x30, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x65, + 0x70, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x5f, 0x61, 0x6c, + 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x68, 0x65, + 0x61, 0x6c, 0x74, 0x68, 0x18, 0x79, 0x20, 0x01, 0x28, 0x05, 0x52, 0x2b, 0x75, 0x6c, 0x74, 0x69, + 0x6d, 0x61, 0x74, 0x65, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x73, 0x75, + 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x42, 0x6f, 0x6e, 0x75, + 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x61, 0x0a, 0x2e, 0x75, 0x6c, 0x74, 0x69, 0x6d, + 0x61, 0x74, 0x65, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x73, + 0x75, 0x6d, 0x65, 0x64, 0x5f, 0x61, 0x6c, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x5f, 0x62, + 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x18, 0x7a, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x29, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, + 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, + 0x74, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, + 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, + 0x61, } var ( diff --git a/dota/dota_scenariomessages.proto b/dota/dota_scenariomessages.proto index 2c95975d..875ba1e1 100644 --- a/dota/dota_scenariomessages.proto +++ b/dota/dota_scenariomessages.proto @@ -14,6 +14,7 @@ message CScenarioGame_RoshanSpawner { optional int32 kill_count = 1; optional int32 state = 2; optional float cooldown = 3; + optional int32 killer_team = 4; } message CScenarioEnt_Courier { @@ -61,6 +62,7 @@ message CMsgDotaScenario { message TeamNeutralItem { optional string name = 1; optional bool consumed = 2; + optional int32 tier = 3; } message Team { diff --git a/dota/dota_shared_enums.pb.go b/dota/dota_shared_enums.pb.go index e9826dec..51e85089 100644 --- a/dota/dota_shared_enums.pb.go +++ b/dota/dota_shared_enums.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_shared_enums.proto @@ -381,6 +381,11 @@ const ( EEvent_EVENT_ID_MUERTA_RELEASE_SPRING2023 EEvent = 40 EEvent_EVENT_ID_TEAM_2023_TOUR1 EEvent = 41 EEvent_EVENT_ID_TEAM_2023_TOUR2 EEvent = 42 + EEvent_EVENT_ID_TEAM_2023_TOUR3 EEvent = 43 + EEvent_EVENT_ID_INTERNATIONAL_2023 EEvent = 45 + EEvent_EVENT_ID_10TH_ANNIVERSARY EEvent = 46 + EEvent_EVENT_ID_CROWNFALL EEvent = 47 + EEvent_EVENT_ID_FROSTIVUS_2023 EEvent = 48 ) // Enum value maps for EEvent. @@ -429,6 +434,11 @@ var ( 40: "EVENT_ID_MUERTA_RELEASE_SPRING2023", 41: "EVENT_ID_TEAM_2023_TOUR1", 42: "EVENT_ID_TEAM_2023_TOUR2", + 43: "EVENT_ID_TEAM_2023_TOUR3", + 45: "EVENT_ID_INTERNATIONAL_2023", + 46: "EVENT_ID_10TH_ANNIVERSARY", + 47: "EVENT_ID_CROWNFALL", + 48: "EVENT_ID_FROSTIVUS_2023", } EEvent_value = map[string]int32{ "EVENT_ID_NONE": 0, @@ -474,6 +484,11 @@ var ( "EVENT_ID_MUERTA_RELEASE_SPRING2023": 40, "EVENT_ID_TEAM_2023_TOUR1": 41, "EVENT_ID_TEAM_2023_TOUR2": 42, + "EVENT_ID_TEAM_2023_TOUR3": 43, + "EVENT_ID_INTERNATIONAL_2023": 45, + "EVENT_ID_10TH_ANNIVERSARY": 46, + "EVENT_ID_CROWNFALL": 47, + "EVENT_ID_FROSTIVUS_2023": 48, } ) @@ -517,43 +532,46 @@ func (EEvent) EnumDescriptor() ([]byte, []int) { type ERankType int32 const ( - ERankType_k_ERankType_Invalid ERankType = 0 - ERankType_k_ERankType_Casual ERankType = 1 - ERankType_k_ERankType_Ranked ERankType = 2 - ERankType_k_ERankType_CasualLegacy ERankType = 3 - ERankType_k_ERankType_RankedLegacy ERankType = 4 - ERankType_k_ERankType_CasualGlicko ERankType = 5 - ERankType_k_ERankType_RankedGlicko ERankType = 6 - ERankType_k_ERankType_CasualRemapped ERankType = 7 - ERankType_k_ERankType_CasualRemappedGlicko ERankType = 8 - ERankType_k_ERankType_CasualShiftedGlicko ERankType = 9 + ERankType_k_ERankType_Invalid ERankType = 0 + ERankType_k_ERankType_Casual ERankType = 1 + ERankType_k_ERankType_Ranked ERankType = 2 + ERankType_k_ERankType_CasualLegacy ERankType = 3 + ERankType_k_ERankType_RankedLegacy ERankType = 4 + ERankType_k_ERankType_CasualGlicko ERankType = 5 + ERankType_k_ERankType_RankedGlicko ERankType = 6 + ERankType_k_ERankType_RankMax ERankType = 7 + ERankType_k_ERankType_BehaviorPrivate ERankType = 100 + ERankType_k_ERankType_BehaviorPublic ERankType = 101 + ERankType_k_ERankType_Max ERankType = 102 ) // Enum value maps for ERankType. var ( ERankType_name = map[int32]string{ - 0: "k_ERankType_Invalid", - 1: "k_ERankType_Casual", - 2: "k_ERankType_Ranked", - 3: "k_ERankType_CasualLegacy", - 4: "k_ERankType_RankedLegacy", - 5: "k_ERankType_CasualGlicko", - 6: "k_ERankType_RankedGlicko", - 7: "k_ERankType_CasualRemapped", - 8: "k_ERankType_CasualRemappedGlicko", - 9: "k_ERankType_CasualShiftedGlicko", + 0: "k_ERankType_Invalid", + 1: "k_ERankType_Casual", + 2: "k_ERankType_Ranked", + 3: "k_ERankType_CasualLegacy", + 4: "k_ERankType_RankedLegacy", + 5: "k_ERankType_CasualGlicko", + 6: "k_ERankType_RankedGlicko", + 7: "k_ERankType_RankMax", + 100: "k_ERankType_BehaviorPrivate", + 101: "k_ERankType_BehaviorPublic", + 102: "k_ERankType_Max", } ERankType_value = map[string]int32{ - "k_ERankType_Invalid": 0, - "k_ERankType_Casual": 1, - "k_ERankType_Ranked": 2, - "k_ERankType_CasualLegacy": 3, - "k_ERankType_RankedLegacy": 4, - "k_ERankType_CasualGlicko": 5, - "k_ERankType_RankedGlicko": 6, - "k_ERankType_CasualRemapped": 7, - "k_ERankType_CasualRemappedGlicko": 8, - "k_ERankType_CasualShiftedGlicko": 9, + "k_ERankType_Invalid": 0, + "k_ERankType_Casual": 1, + "k_ERankType_Ranked": 2, + "k_ERankType_CasualLegacy": 3, + "k_ERankType_RankedLegacy": 4, + "k_ERankType_CasualGlicko": 5, + "k_ERankType_RankedGlicko": 6, + "k_ERankType_RankMax": 7, + "k_ERankType_BehaviorPrivate": 100, + "k_ERankType_BehaviorPublic": 101, + "k_ERankType_Max": 102, } ) @@ -606,6 +624,7 @@ const ( DOTALeaverStatusT_DOTA_LEAVER_NEVER_CONNECTED_TOO_LONG DOTALeaverStatusT = 6 DOTALeaverStatusT_DOTA_LEAVER_FAILED_TO_READY_UP DOTALeaverStatusT = 7 DOTALeaverStatusT_DOTA_LEAVER_DECLINED DOTALeaverStatusT = 8 + DOTALeaverStatusT_DOTA_LEAVER_DECLINED_REQUEUE DOTALeaverStatusT = 9 ) // Enum value maps for DOTALeaverStatusT. @@ -620,6 +639,7 @@ var ( 6: "DOTA_LEAVER_NEVER_CONNECTED_TOO_LONG", 7: "DOTA_LEAVER_FAILED_TO_READY_UP", 8: "DOTA_LEAVER_DECLINED", + 9: "DOTA_LEAVER_DECLINED_REQUEUE", } DOTALeaverStatusT_value = map[string]int32{ "DOTA_LEAVER_NONE": 0, @@ -631,6 +651,7 @@ var ( "DOTA_LEAVER_NEVER_CONNECTED_TOO_LONG": 6, "DOTA_LEAVER_FAILED_TO_READY_UP": 7, "DOTA_LEAVER_DECLINED": 8, + "DOTA_LEAVER_DECLINED_REQUEUE": 9, } ) @@ -807,6 +828,116 @@ func (Fantasy_Roles) EnumDescriptor() ([]byte, []int) { return file_dota_shared_enums_proto_rawDescGZIP(), []int{7} } +type Fantasy_Scoring int32 + +const ( + Fantasy_Scoring_FANTASY_SCORING_KILLS Fantasy_Scoring = 0 + Fantasy_Scoring_FANTASY_SCORING_DEATHS Fantasy_Scoring = 1 + Fantasy_Scoring_FANTASY_SCORING_CS Fantasy_Scoring = 2 + Fantasy_Scoring_FANTASY_SCORING_GPM Fantasy_Scoring = 3 + Fantasy_Scoring_FANTASY_SCORING_TOWER_KILLS Fantasy_Scoring = 4 + Fantasy_Scoring_FANTASY_SCORING_ROSHAN_KILLS Fantasy_Scoring = 5 + Fantasy_Scoring_FANTASY_SCORING_TEAMFIGHT_PARTICIPATION Fantasy_Scoring = 6 + Fantasy_Scoring_FANTASY_SCORING_WARDS_PLANTED Fantasy_Scoring = 7 + Fantasy_Scoring_FANTASY_SCORING_CAMPS_STACKED Fantasy_Scoring = 8 + Fantasy_Scoring_FANTASY_SCORING_RUNES_GRABBED Fantasy_Scoring = 9 + Fantasy_Scoring_FANTASY_SCORING_FIRST_BLOOD Fantasy_Scoring = 10 + Fantasy_Scoring_FANTASY_SCORING_STUNS Fantasy_Scoring = 11 + Fantasy_Scoring_FANTASY_SCORING_SMOKES_USED Fantasy_Scoring = 12 + Fantasy_Scoring_FANTASY_SCORING_NEUTRAL_TOKENS_FOUND Fantasy_Scoring = 13 + Fantasy_Scoring_FANTASY_SCORING_WATCHERS_TAKEN Fantasy_Scoring = 14 + Fantasy_Scoring_FANTASY_SCORING_LOTUSES_GAINED Fantasy_Scoring = 15 + Fantasy_Scoring_FANTASY_SCORING_TORMENTOR_KILLS Fantasy_Scoring = 16 + Fantasy_Scoring_FANTASY_SCORING_COURIER_KILLS Fantasy_Scoring = 17 + Fantasy_Scoring_FANTASY_SCORING_TYPES Fantasy_Scoring = 18 + Fantasy_Scoring_FANTASY_SCORING_INVALID Fantasy_Scoring = 19 +) + +// Enum value maps for Fantasy_Scoring. +var ( + Fantasy_Scoring_name = map[int32]string{ + 0: "FANTASY_SCORING_KILLS", + 1: "FANTASY_SCORING_DEATHS", + 2: "FANTASY_SCORING_CS", + 3: "FANTASY_SCORING_GPM", + 4: "FANTASY_SCORING_TOWER_KILLS", + 5: "FANTASY_SCORING_ROSHAN_KILLS", + 6: "FANTASY_SCORING_TEAMFIGHT_PARTICIPATION", + 7: "FANTASY_SCORING_WARDS_PLANTED", + 8: "FANTASY_SCORING_CAMPS_STACKED", + 9: "FANTASY_SCORING_RUNES_GRABBED", + 10: "FANTASY_SCORING_FIRST_BLOOD", + 11: "FANTASY_SCORING_STUNS", + 12: "FANTASY_SCORING_SMOKES_USED", + 13: "FANTASY_SCORING_NEUTRAL_TOKENS_FOUND", + 14: "FANTASY_SCORING_WATCHERS_TAKEN", + 15: "FANTASY_SCORING_LOTUSES_GAINED", + 16: "FANTASY_SCORING_TORMENTOR_KILLS", + 17: "FANTASY_SCORING_COURIER_KILLS", + 18: "FANTASY_SCORING_TYPES", + 19: "FANTASY_SCORING_INVALID", + } + Fantasy_Scoring_value = map[string]int32{ + "FANTASY_SCORING_KILLS": 0, + "FANTASY_SCORING_DEATHS": 1, + "FANTASY_SCORING_CS": 2, + "FANTASY_SCORING_GPM": 3, + "FANTASY_SCORING_TOWER_KILLS": 4, + "FANTASY_SCORING_ROSHAN_KILLS": 5, + "FANTASY_SCORING_TEAMFIGHT_PARTICIPATION": 6, + "FANTASY_SCORING_WARDS_PLANTED": 7, + "FANTASY_SCORING_CAMPS_STACKED": 8, + "FANTASY_SCORING_RUNES_GRABBED": 9, + "FANTASY_SCORING_FIRST_BLOOD": 10, + "FANTASY_SCORING_STUNS": 11, + "FANTASY_SCORING_SMOKES_USED": 12, + "FANTASY_SCORING_NEUTRAL_TOKENS_FOUND": 13, + "FANTASY_SCORING_WATCHERS_TAKEN": 14, + "FANTASY_SCORING_LOTUSES_GAINED": 15, + "FANTASY_SCORING_TORMENTOR_KILLS": 16, + "FANTASY_SCORING_COURIER_KILLS": 17, + "FANTASY_SCORING_TYPES": 18, + "FANTASY_SCORING_INVALID": 19, + } +) + +func (x Fantasy_Scoring) Enum() *Fantasy_Scoring { + p := new(Fantasy_Scoring) + *p = x + return p +} + +func (x Fantasy_Scoring) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Fantasy_Scoring) Descriptor() protoreflect.EnumDescriptor { + return file_dota_shared_enums_proto_enumTypes[8].Descriptor() +} + +func (Fantasy_Scoring) Type() protoreflect.EnumType { + return &file_dota_shared_enums_proto_enumTypes[8] +} + +func (x Fantasy_Scoring) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *Fantasy_Scoring) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = Fantasy_Scoring(num) + return nil +} + +// Deprecated: Use Fantasy_Scoring.Descriptor instead. +func (Fantasy_Scoring) EnumDescriptor() ([]byte, []int) { + return file_dota_shared_enums_proto_rawDescGZIP(), []int{8} +} + type Fantasy_Team_Slots int32 const ( @@ -846,11 +977,11 @@ func (x Fantasy_Team_Slots) String() string { } func (Fantasy_Team_Slots) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[8].Descriptor() + return file_dota_shared_enums_proto_enumTypes[9].Descriptor() } func (Fantasy_Team_Slots) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[8] + return &file_dota_shared_enums_proto_enumTypes[9] } func (x Fantasy_Team_Slots) Number() protoreflect.EnumNumber { @@ -869,7 +1000,7 @@ func (x *Fantasy_Team_Slots) UnmarshalJSON(b []byte) error { // Deprecated: Use Fantasy_Team_Slots.Descriptor instead. func (Fantasy_Team_Slots) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{8} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{9} } type Fantasy_Selection_Mode int32 @@ -926,11 +1057,11 @@ func (x Fantasy_Selection_Mode) String() string { } func (Fantasy_Selection_Mode) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[9].Descriptor() + return file_dota_shared_enums_proto_enumTypes[10].Descriptor() } func (Fantasy_Selection_Mode) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[9] + return &file_dota_shared_enums_proto_enumTypes[10] } func (x Fantasy_Selection_Mode) Number() protoreflect.EnumNumber { @@ -949,7 +1080,66 @@ func (x *Fantasy_Selection_Mode) UnmarshalJSON(b []byte) error { // Deprecated: Use Fantasy_Selection_Mode.Descriptor instead. func (Fantasy_Selection_Mode) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{9} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{10} +} + +type Fantasy_Gem_Type int32 + +const ( + Fantasy_Gem_Type_FANTASY_GEM_TYPE_RUBY Fantasy_Gem_Type = 0 + Fantasy_Gem_Type_FANTASY_GEM_TYPE_SAPPHIRE Fantasy_Gem_Type = 1 + Fantasy_Gem_Type_FANTASY_GEM_TYPE_EMERALD Fantasy_Gem_Type = 2 +) + +// Enum value maps for Fantasy_Gem_Type. +var ( + Fantasy_Gem_Type_name = map[int32]string{ + 0: "FANTASY_GEM_TYPE_RUBY", + 1: "FANTASY_GEM_TYPE_SAPPHIRE", + 2: "FANTASY_GEM_TYPE_EMERALD", + } + Fantasy_Gem_Type_value = map[string]int32{ + "FANTASY_GEM_TYPE_RUBY": 0, + "FANTASY_GEM_TYPE_SAPPHIRE": 1, + "FANTASY_GEM_TYPE_EMERALD": 2, + } +) + +func (x Fantasy_Gem_Type) Enum() *Fantasy_Gem_Type { + p := new(Fantasy_Gem_Type) + *p = x + return p +} + +func (x Fantasy_Gem_Type) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Fantasy_Gem_Type) Descriptor() protoreflect.EnumDescriptor { + return file_dota_shared_enums_proto_enumTypes[11].Descriptor() +} + +func (Fantasy_Gem_Type) Type() protoreflect.EnumType { + return &file_dota_shared_enums_proto_enumTypes[11] +} + +func (x Fantasy_Gem_Type) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *Fantasy_Gem_Type) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = Fantasy_Gem_Type(num) + return nil +} + +// Deprecated: Use Fantasy_Gem_Type.Descriptor instead. +func (Fantasy_Gem_Type) EnumDescriptor() ([]byte, []int) { + return file_dota_shared_enums_proto_rawDescGZIP(), []int{11} } type DOTAChatChannelTypeT int32 @@ -1051,11 +1241,11 @@ func (x DOTAChatChannelTypeT) String() string { } func (DOTAChatChannelTypeT) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[10].Descriptor() + return file_dota_shared_enums_proto_enumTypes[12].Descriptor() } func (DOTAChatChannelTypeT) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[10] + return &file_dota_shared_enums_proto_enumTypes[12] } func (x DOTAChatChannelTypeT) Number() protoreflect.EnumNumber { @@ -1074,7 +1264,7 @@ func (x *DOTAChatChannelTypeT) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTAChatChannelTypeT.Descriptor instead. func (DOTAChatChannelTypeT) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{10} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{12} } type EChatSpecialPrivileges int32 @@ -1110,11 +1300,11 @@ func (x EChatSpecialPrivileges) String() string { } func (EChatSpecialPrivileges) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[11].Descriptor() + return file_dota_shared_enums_proto_enumTypes[13].Descriptor() } func (EChatSpecialPrivileges) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[11] + return &file_dota_shared_enums_proto_enumTypes[13] } func (x EChatSpecialPrivileges) Number() protoreflect.EnumNumber { @@ -1133,7 +1323,244 @@ func (x *EChatSpecialPrivileges) UnmarshalJSON(b []byte) error { // Deprecated: Use EChatSpecialPrivileges.Descriptor instead. func (EChatSpecialPrivileges) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{11} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{13} +} + +type DOTACommTypeT int32 + +const ( + DOTACommTypeT_DOTA_COMM_TYPE_NONE DOTACommTypeT = 0 + DOTACommTypeT_DOTA_COMM_TYPE_PING DOTACommTypeT = 1 + DOTACommTypeT_DOTA_COMM_TYPE_CHATWHEEL DOTACommTypeT = 2 + DOTACommTypeT_DOTA_COMM_TYPE_TIP DOTACommTypeT = 3 + DOTACommTypeT_DOTA_COMM_TYPE_TEXT DOTACommTypeT = 4 + DOTACommTypeT_DOTA_COMM_TYPE_SHOWCASE DOTACommTypeT = 5 + DOTACommTypeT_DOTA_COMM_TYPE_VOICE DOTACommTypeT = 6 + DOTACommTypeT_DOTA_COMM_TYPE_ALLY_ABILITY DOTACommTypeT = 7 + DOTACommTypeT_DOTA_COMM_TYPE_PAUSE DOTACommTypeT = 8 + DOTACommTypeT_DOTA_COMM_TYPE_COACHING DOTACommTypeT = 9 + DOTACommTypeT_DOTA_COMM_TYPE_NOCOOLDOWN DOTACommTypeT = 10 + DOTACommTypeT_DOTA_COMM_TYPE_RANKEDMATCHMAKE DOTACommTypeT = 11 + DOTACommTypeT_DOTA_COMM_TYPE_DROPS DOTACommTypeT = 12 + DOTACommTypeT_DOTA_COMM_TYPE_NEWPLAYER_EXPERT DOTACommTypeT = 13 + DOTACommTypeT_DOTA_COMM_TYPE_COACHED DOTACommTypeT = 14 + DOTACommTypeT_DOTA_COMM_TYPE_MAPDRAWING DOTACommTypeT = 15 +) + +// Enum value maps for DOTACommTypeT. +var ( + DOTACommTypeT_name = map[int32]string{ + 0: "DOTA_COMM_TYPE_NONE", + 1: "DOTA_COMM_TYPE_PING", + 2: "DOTA_COMM_TYPE_CHATWHEEL", + 3: "DOTA_COMM_TYPE_TIP", + 4: "DOTA_COMM_TYPE_TEXT", + 5: "DOTA_COMM_TYPE_SHOWCASE", + 6: "DOTA_COMM_TYPE_VOICE", + 7: "DOTA_COMM_TYPE_ALLY_ABILITY", + 8: "DOTA_COMM_TYPE_PAUSE", + 9: "DOTA_COMM_TYPE_COACHING", + 10: "DOTA_COMM_TYPE_NOCOOLDOWN", + 11: "DOTA_COMM_TYPE_RANKEDMATCHMAKE", + 12: "DOTA_COMM_TYPE_DROPS", + 13: "DOTA_COMM_TYPE_NEWPLAYER_EXPERT", + 14: "DOTA_COMM_TYPE_COACHED", + 15: "DOTA_COMM_TYPE_MAPDRAWING", + } + DOTACommTypeT_value = map[string]int32{ + "DOTA_COMM_TYPE_NONE": 0, + "DOTA_COMM_TYPE_PING": 1, + "DOTA_COMM_TYPE_CHATWHEEL": 2, + "DOTA_COMM_TYPE_TIP": 3, + "DOTA_COMM_TYPE_TEXT": 4, + "DOTA_COMM_TYPE_SHOWCASE": 5, + "DOTA_COMM_TYPE_VOICE": 6, + "DOTA_COMM_TYPE_ALLY_ABILITY": 7, + "DOTA_COMM_TYPE_PAUSE": 8, + "DOTA_COMM_TYPE_COACHING": 9, + "DOTA_COMM_TYPE_NOCOOLDOWN": 10, + "DOTA_COMM_TYPE_RANKEDMATCHMAKE": 11, + "DOTA_COMM_TYPE_DROPS": 12, + "DOTA_COMM_TYPE_NEWPLAYER_EXPERT": 13, + "DOTA_COMM_TYPE_COACHED": 14, + "DOTA_COMM_TYPE_MAPDRAWING": 15, + } +) + +func (x DOTACommTypeT) Enum() *DOTACommTypeT { + p := new(DOTACommTypeT) + *p = x + return p +} + +func (x DOTACommTypeT) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (DOTACommTypeT) Descriptor() protoreflect.EnumDescriptor { + return file_dota_shared_enums_proto_enumTypes[14].Descriptor() +} + +func (DOTACommTypeT) Type() protoreflect.EnumType { + return &file_dota_shared_enums_proto_enumTypes[14] +} + +func (x DOTACommTypeT) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *DOTACommTypeT) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = DOTACommTypeT(num) + return nil +} + +// Deprecated: Use DOTACommTypeT.Descriptor instead. +func (DOTACommTypeT) EnumDescriptor() ([]byte, []int) { + return file_dota_shared_enums_proto_rawDescGZIP(), []int{14} +} + +type DOTACommLevelT int32 + +const ( + DOTACommLevelT_DOTA_COMM_LEVEL_NONE DOTACommLevelT = 0 + DOTACommLevelT_DOTA_COMM_LEVEL_COOLDOWN DOTACommLevelT = 1 + DOTACommLevelT_DOTA_COMM_LEVEL_PINGS DOTACommLevelT = 2 + DOTACommLevelT_DOTA_COMM_LEVEL_MAPDRAWING DOTACommLevelT = 3 + DOTACommLevelT_DOTA_COMM_LEVEL_CHAT DOTACommLevelT = 4 + DOTACommLevelT_DOTA_COMM_LEVEL_TIPPING DOTACommLevelT = 5 + DOTACommLevelT_DOTA_COMM_LEVEL_VOICE DOTACommLevelT = 6 + DOTACommLevelT_DOTA_COMM_LEVEL_ALLIED_ABILITY DOTACommLevelT = 7 +) + +// Enum value maps for DOTACommLevelT. +var ( + DOTACommLevelT_name = map[int32]string{ + 0: "DOTA_COMM_LEVEL_NONE", + 1: "DOTA_COMM_LEVEL_COOLDOWN", + 2: "DOTA_COMM_LEVEL_PINGS", + 3: "DOTA_COMM_LEVEL_MAPDRAWING", + 4: "DOTA_COMM_LEVEL_CHAT", + 5: "DOTA_COMM_LEVEL_TIPPING", + 6: "DOTA_COMM_LEVEL_VOICE", + 7: "DOTA_COMM_LEVEL_ALLIED_ABILITY", + } + DOTACommLevelT_value = map[string]int32{ + "DOTA_COMM_LEVEL_NONE": 0, + "DOTA_COMM_LEVEL_COOLDOWN": 1, + "DOTA_COMM_LEVEL_PINGS": 2, + "DOTA_COMM_LEVEL_MAPDRAWING": 3, + "DOTA_COMM_LEVEL_CHAT": 4, + "DOTA_COMM_LEVEL_TIPPING": 5, + "DOTA_COMM_LEVEL_VOICE": 6, + "DOTA_COMM_LEVEL_ALLIED_ABILITY": 7, + } +) + +func (x DOTACommLevelT) Enum() *DOTACommLevelT { + p := new(DOTACommLevelT) + *p = x + return p +} + +func (x DOTACommLevelT) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (DOTACommLevelT) Descriptor() protoreflect.EnumDescriptor { + return file_dota_shared_enums_proto_enumTypes[15].Descriptor() +} + +func (DOTACommLevelT) Type() protoreflect.EnumType { + return &file_dota_shared_enums_proto_enumTypes[15] +} + +func (x DOTACommLevelT) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *DOTACommLevelT) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = DOTACommLevelT(num) + return nil +} + +// Deprecated: Use DOTACommLevelT.Descriptor instead. +func (DOTACommLevelT) EnumDescriptor() ([]byte, []int) { + return file_dota_shared_enums_proto_rawDescGZIP(), []int{15} +} + +type DOTABehaviorLevelT int32 + +const ( + DOTABehaviorLevelT_DOTA_BEHAVIOR_LEVEL_NONE DOTABehaviorLevelT = 0 + DOTABehaviorLevelT_DOTA_BEHAVIOR_LEVEL_RANKED_ALLOWED DOTABehaviorLevelT = 1 + DOTABehaviorLevelT_DOTA_BEHAVIOR_LEVEL_PAUSING DOTABehaviorLevelT = 2 + DOTABehaviorLevelT_DOTA_BEHAVIOR_LEVEL_DROPS DOTABehaviorLevelT = 3 + DOTABehaviorLevelT_DOTA_BEHAVIOR_LEVEL_COACHING DOTABehaviorLevelT = 4 +) + +// Enum value maps for DOTABehaviorLevelT. +var ( + DOTABehaviorLevelT_name = map[int32]string{ + 0: "DOTA_BEHAVIOR_LEVEL_NONE", + 1: "DOTA_BEHAVIOR_LEVEL_RANKED_ALLOWED", + 2: "DOTA_BEHAVIOR_LEVEL_PAUSING", + 3: "DOTA_BEHAVIOR_LEVEL_DROPS", + 4: "DOTA_BEHAVIOR_LEVEL_COACHING", + } + DOTABehaviorLevelT_value = map[string]int32{ + "DOTA_BEHAVIOR_LEVEL_NONE": 0, + "DOTA_BEHAVIOR_LEVEL_RANKED_ALLOWED": 1, + "DOTA_BEHAVIOR_LEVEL_PAUSING": 2, + "DOTA_BEHAVIOR_LEVEL_DROPS": 3, + "DOTA_BEHAVIOR_LEVEL_COACHING": 4, + } +) + +func (x DOTABehaviorLevelT) Enum() *DOTABehaviorLevelT { + p := new(DOTABehaviorLevelT) + *p = x + return p +} + +func (x DOTABehaviorLevelT) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (DOTABehaviorLevelT) Descriptor() protoreflect.EnumDescriptor { + return file_dota_shared_enums_proto_enumTypes[16].Descriptor() +} + +func (DOTABehaviorLevelT) Type() protoreflect.EnumType { + return &file_dota_shared_enums_proto_enumTypes[16] +} + +func (x DOTABehaviorLevelT) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *DOTABehaviorLevelT) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = DOTABehaviorLevelT(num) + return nil +} + +// Deprecated: Use DOTABehaviorLevelT.Descriptor instead. +func (DOTABehaviorLevelT) EnumDescriptor() ([]byte, []int) { + return file_dota_shared_enums_proto_rawDescGZIP(), []int{16} } type EProfileCardSlotType int32 @@ -1181,11 +1608,11 @@ func (x EProfileCardSlotType) String() string { } func (EProfileCardSlotType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[12].Descriptor() + return file_dota_shared_enums_proto_enumTypes[17].Descriptor() } func (EProfileCardSlotType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[12] + return &file_dota_shared_enums_proto_enumTypes[17] } func (x EProfileCardSlotType) Number() protoreflect.EnumNumber { @@ -1204,7 +1631,7 @@ func (x *EProfileCardSlotType) UnmarshalJSON(b []byte) error { // Deprecated: Use EProfileCardSlotType.Descriptor instead. func (EProfileCardSlotType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{12} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{17} } type EMatchGroupServerStatus int32 @@ -1240,11 +1667,11 @@ func (x EMatchGroupServerStatus) String() string { } func (EMatchGroupServerStatus) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[13].Descriptor() + return file_dota_shared_enums_proto_enumTypes[18].Descriptor() } func (EMatchGroupServerStatus) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[13] + return &file_dota_shared_enums_proto_enumTypes[18] } func (x EMatchGroupServerStatus) Number() protoreflect.EnumNumber { @@ -1263,7 +1690,7 @@ func (x *EMatchGroupServerStatus) UnmarshalJSON(b []byte) error { // Deprecated: Use EMatchGroupServerStatus.Descriptor instead. func (EMatchGroupServerStatus) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{13} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{18} } type DOTA_CM_PICK int32 @@ -1299,11 +1726,11 @@ func (x DOTA_CM_PICK) String() string { } func (DOTA_CM_PICK) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[14].Descriptor() + return file_dota_shared_enums_proto_enumTypes[19].Descriptor() } func (DOTA_CM_PICK) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[14] + return &file_dota_shared_enums_proto_enumTypes[19] } func (x DOTA_CM_PICK) Number() protoreflect.EnumNumber { @@ -1322,7 +1749,7 @@ func (x *DOTA_CM_PICK) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTA_CM_PICK.Descriptor instead. func (DOTA_CM_PICK) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{14} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{19} } type DOTALowPriorityBanType int32 @@ -1361,11 +1788,11 @@ func (x DOTALowPriorityBanType) String() string { } func (DOTALowPriorityBanType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[15].Descriptor() + return file_dota_shared_enums_proto_enumTypes[20].Descriptor() } func (DOTALowPriorityBanType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[15] + return &file_dota_shared_enums_proto_enumTypes[20] } func (x DOTALowPriorityBanType) Number() protoreflect.EnumNumber { @@ -1384,15 +1811,16 @@ func (x *DOTALowPriorityBanType) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTALowPriorityBanType.Descriptor instead. func (DOTALowPriorityBanType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{15} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{20} } type DOTALobbyReadyState int32 const ( - DOTALobbyReadyState_DOTALobbyReadyState_UNDECLARED DOTALobbyReadyState = 0 - DOTALobbyReadyState_DOTALobbyReadyState_ACCEPTED DOTALobbyReadyState = 1 - DOTALobbyReadyState_DOTALobbyReadyState_DECLINED DOTALobbyReadyState = 2 + DOTALobbyReadyState_DOTALobbyReadyState_UNDECLARED DOTALobbyReadyState = 0 + DOTALobbyReadyState_DOTALobbyReadyState_ACCEPTED DOTALobbyReadyState = 1 + DOTALobbyReadyState_DOTALobbyReadyState_DECLINED DOTALobbyReadyState = 2 + DOTALobbyReadyState_DOTALobbyReadyState_DECLINED_REQUEUE DOTALobbyReadyState = 3 ) // Enum value maps for DOTALobbyReadyState. @@ -1401,11 +1829,13 @@ var ( 0: "DOTALobbyReadyState_UNDECLARED", 1: "DOTALobbyReadyState_ACCEPTED", 2: "DOTALobbyReadyState_DECLINED", + 3: "DOTALobbyReadyState_DECLINED_REQUEUE", } DOTALobbyReadyState_value = map[string]int32{ - "DOTALobbyReadyState_UNDECLARED": 0, - "DOTALobbyReadyState_ACCEPTED": 1, - "DOTALobbyReadyState_DECLINED": 2, + "DOTALobbyReadyState_UNDECLARED": 0, + "DOTALobbyReadyState_ACCEPTED": 1, + "DOTALobbyReadyState_DECLINED": 2, + "DOTALobbyReadyState_DECLINED_REQUEUE": 3, } ) @@ -1420,11 +1850,11 @@ func (x DOTALobbyReadyState) String() string { } func (DOTALobbyReadyState) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[16].Descriptor() + return file_dota_shared_enums_proto_enumTypes[21].Descriptor() } func (DOTALobbyReadyState) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[16] + return &file_dota_shared_enums_proto_enumTypes[21] } func (x DOTALobbyReadyState) Number() protoreflect.EnumNumber { @@ -1443,7 +1873,7 @@ func (x *DOTALobbyReadyState) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTALobbyReadyState.Descriptor instead. func (DOTALobbyReadyState) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{16} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{21} } type DOTAJoinLobbyResult int32 @@ -1515,11 +1945,11 @@ func (x DOTAJoinLobbyResult) String() string { } func (DOTAJoinLobbyResult) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[17].Descriptor() + return file_dota_shared_enums_proto_enumTypes[22].Descriptor() } func (DOTAJoinLobbyResult) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[17] + return &file_dota_shared_enums_proto_enumTypes[22] } func (x DOTAJoinLobbyResult) Number() protoreflect.EnumNumber { @@ -1538,7 +1968,7 @@ func (x *DOTAJoinLobbyResult) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTAJoinLobbyResult.Descriptor instead. func (DOTAJoinLobbyResult) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{17} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{22} } type DOTASelectionPriorityRules int32 @@ -1571,11 +2001,11 @@ func (x DOTASelectionPriorityRules) String() string { } func (DOTASelectionPriorityRules) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[18].Descriptor() + return file_dota_shared_enums_proto_enumTypes[23].Descriptor() } func (DOTASelectionPriorityRules) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[18] + return &file_dota_shared_enums_proto_enumTypes[23] } func (x DOTASelectionPriorityRules) Number() protoreflect.EnumNumber { @@ -1594,7 +2024,7 @@ func (x *DOTASelectionPriorityRules) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTASelectionPriorityRules.Descriptor instead. func (DOTASelectionPriorityRules) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{18} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{23} } type DOTASelectionPriorityChoice int32 @@ -1636,11 +2066,11 @@ func (x DOTASelectionPriorityChoice) String() string { } func (DOTASelectionPriorityChoice) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[19].Descriptor() + return file_dota_shared_enums_proto_enumTypes[24].Descriptor() } func (DOTASelectionPriorityChoice) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[19] + return &file_dota_shared_enums_proto_enumTypes[24] } func (x DOTASelectionPriorityChoice) Number() protoreflect.EnumNumber { @@ -1659,7 +2089,7 @@ func (x *DOTASelectionPriorityChoice) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTASelectionPriorityChoice.Descriptor instead. func (DOTASelectionPriorityChoice) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{19} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{24} } type DOTAMatchVote int32 @@ -1695,11 +2125,11 @@ func (x DOTAMatchVote) String() string { } func (DOTAMatchVote) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[20].Descriptor() + return file_dota_shared_enums_proto_enumTypes[25].Descriptor() } func (DOTAMatchVote) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[20] + return &file_dota_shared_enums_proto_enumTypes[25] } func (x DOTAMatchVote) Number() protoreflect.EnumNumber { @@ -1718,7 +2148,7 @@ func (x *DOTAMatchVote) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTAMatchVote.Descriptor instead. func (DOTAMatchVote) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{20} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{25} } type DOTALobbyVisibility int32 @@ -1754,11 +2184,11 @@ func (x DOTALobbyVisibility) String() string { } func (DOTALobbyVisibility) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[21].Descriptor() + return file_dota_shared_enums_proto_enumTypes[26].Descriptor() } func (DOTALobbyVisibility) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[21] + return &file_dota_shared_enums_proto_enumTypes[26] } func (x DOTALobbyVisibility) Number() protoreflect.EnumNumber { @@ -1777,7 +2207,7 @@ func (x *DOTALobbyVisibility) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTALobbyVisibility.Descriptor instead. func (DOTALobbyVisibility) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{21} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{26} } type EDOTAPlayerMMRType int32 @@ -1813,11 +2243,11 @@ func (x EDOTAPlayerMMRType) String() string { } func (EDOTAPlayerMMRType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[22].Descriptor() + return file_dota_shared_enums_proto_enumTypes[27].Descriptor() } func (EDOTAPlayerMMRType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[22] + return &file_dota_shared_enums_proto_enumTypes[27] } func (x EDOTAPlayerMMRType) Number() protoreflect.EnumNumber { @@ -1836,7 +2266,7 @@ func (x *EDOTAPlayerMMRType) UnmarshalJSON(b []byte) error { // Deprecated: Use EDOTAPlayerMMRType.Descriptor instead. func (EDOTAPlayerMMRType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{22} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{27} } type EDOTAMMRBoostType int32 @@ -1872,11 +2302,11 @@ func (x EDOTAMMRBoostType) String() string { } func (EDOTAMMRBoostType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[23].Descriptor() + return file_dota_shared_enums_proto_enumTypes[28].Descriptor() } func (EDOTAMMRBoostType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[23] + return &file_dota_shared_enums_proto_enumTypes[28] } func (x EDOTAMMRBoostType) Number() protoreflect.EnumNumber { @@ -1895,7 +2325,7 @@ func (x *EDOTAMMRBoostType) UnmarshalJSON(b []byte) error { // Deprecated: Use EDOTAMMRBoostType.Descriptor instead. func (EDOTAMMRBoostType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{23} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{28} } type MatchType int32 @@ -1943,11 +2373,11 @@ func (x MatchType) String() string { } func (MatchType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[24].Descriptor() + return file_dota_shared_enums_proto_enumTypes[29].Descriptor() } func (MatchType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[24] + return &file_dota_shared_enums_proto_enumTypes[29] } func (x MatchType) Number() protoreflect.EnumNumber { @@ -1966,7 +2396,7 @@ func (x *MatchType) UnmarshalJSON(b []byte) error { // Deprecated: Use MatchType.Descriptor instead. func (MatchType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{24} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{29} } type DOTABotDifficulty int32 @@ -2023,11 +2453,11 @@ func (x DOTABotDifficulty) String() string { } func (DOTABotDifficulty) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[25].Descriptor() + return file_dota_shared_enums_proto_enumTypes[30].Descriptor() } func (DOTABotDifficulty) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[25] + return &file_dota_shared_enums_proto_enumTypes[30] } func (x DOTABotDifficulty) Number() protoreflect.EnumNumber { @@ -2046,7 +2476,7 @@ func (x *DOTABotDifficulty) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTABotDifficulty.Descriptor instead. func (DOTABotDifficulty) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{25} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{30} } type DOTA_BOT_MODE int32 @@ -2154,11 +2584,11 @@ func (x DOTA_BOT_MODE) String() string { } func (DOTA_BOT_MODE) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[26].Descriptor() + return file_dota_shared_enums_proto_enumTypes[31].Descriptor() } func (DOTA_BOT_MODE) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[26] + return &file_dota_shared_enums_proto_enumTypes[31] } func (x DOTA_BOT_MODE) Number() protoreflect.EnumNumber { @@ -2177,7 +2607,7 @@ func (x *DOTA_BOT_MODE) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTA_BOT_MODE.Descriptor instead. func (DOTA_BOT_MODE) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{26} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{31} } type MatchLanguages int32 @@ -2228,11 +2658,11 @@ func (x MatchLanguages) String() string { } func (MatchLanguages) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[27].Descriptor() + return file_dota_shared_enums_proto_enumTypes[32].Descriptor() } func (MatchLanguages) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[27] + return &file_dota_shared_enums_proto_enumTypes[32] } func (x MatchLanguages) Number() protoreflect.EnumNumber { @@ -2251,7 +2681,7 @@ func (x *MatchLanguages) UnmarshalJSON(b []byte) error { // Deprecated: Use MatchLanguages.Descriptor instead. func (MatchLanguages) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{27} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{32} } type ETourneyQueueDeadlineState int32 @@ -2299,11 +2729,11 @@ func (x ETourneyQueueDeadlineState) String() string { } func (ETourneyQueueDeadlineState) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[28].Descriptor() + return file_dota_shared_enums_proto_enumTypes[33].Descriptor() } func (ETourneyQueueDeadlineState) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[28] + return &file_dota_shared_enums_proto_enumTypes[33] } func (x ETourneyQueueDeadlineState) Number() protoreflect.EnumNumber { @@ -2322,7 +2752,7 @@ func (x *ETourneyQueueDeadlineState) UnmarshalJSON(b []byte) error { // Deprecated: Use ETourneyQueueDeadlineState.Descriptor instead. func (ETourneyQueueDeadlineState) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{28} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{33} } type EMatchOutcome int32 @@ -2406,11 +2836,11 @@ func (x EMatchOutcome) String() string { } func (EMatchOutcome) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[29].Descriptor() + return file_dota_shared_enums_proto_enumTypes[34].Descriptor() } func (EMatchOutcome) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[29] + return &file_dota_shared_enums_proto_enumTypes[34] } func (x EMatchOutcome) Number() protoreflect.EnumNumber { @@ -2429,7 +2859,7 @@ func (x *EMatchOutcome) UnmarshalJSON(b []byte) error { // Deprecated: Use EMatchOutcome.Descriptor instead. func (EMatchOutcome) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{29} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{34} } type ELaneType int32 @@ -2474,11 +2904,11 @@ func (x ELaneType) String() string { } func (ELaneType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[30].Descriptor() + return file_dota_shared_enums_proto_enumTypes[35].Descriptor() } func (ELaneType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[30] + return &file_dota_shared_enums_proto_enumTypes[35] } func (x ELaneType) Number() protoreflect.EnumNumber { @@ -2497,12 +2927,13 @@ func (x *ELaneType) UnmarshalJSON(b []byte) error { // Deprecated: Use ELaneType.Descriptor instead. func (ELaneType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{30} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{35} } type EBadgeType int32 const ( + EBadgeType_k_EBadgeType_Invalid EBadgeType = 0 EBadgeType_k_EBadgeType_TI7_Midweek EBadgeType = 1 EBadgeType_k_EBadgeType_TI7_Finals EBadgeType = 2 EBadgeType_k_EBadgeType_TI7_AllEvent EBadgeType = 3 @@ -2515,11 +2946,17 @@ const ( EBadgeType_k_EBadgeType_TI11_PlayoffsDay3 EBadgeType = 10 EBadgeType_k_EBadgeType_TI11_PlayoffsDay4 EBadgeType = 11 EBadgeType_k_EBadgeType_TI11_FinalsWeekend EBadgeType = 12 + EBadgeType_k_EBadgeType_TI12_PlayoffsDay1 EBadgeType = 13 + EBadgeType_k_EBadgeType_TI12_PlayoffsDay2 EBadgeType = 14 + EBadgeType_k_EBadgeType_TI12_PlayoffsDay3 EBadgeType = 15 + EBadgeType_k_EBadgeType_TI12_FinalsWeekend EBadgeType = 16 + EBadgeType_k_EBadgeType_TI12_Special EBadgeType = 17 ) // Enum value maps for EBadgeType. var ( EBadgeType_name = map[int32]string{ + 0: "k_EBadgeType_Invalid", 1: "k_EBadgeType_TI7_Midweek", 2: "k_EBadgeType_TI7_Finals", 3: "k_EBadgeType_TI7_AllEvent", @@ -2532,8 +2969,14 @@ var ( 10: "k_EBadgeType_TI11_PlayoffsDay3", 11: "k_EBadgeType_TI11_PlayoffsDay4", 12: "k_EBadgeType_TI11_FinalsWeekend", + 13: "k_EBadgeType_TI12_PlayoffsDay1", + 14: "k_EBadgeType_TI12_PlayoffsDay2", + 15: "k_EBadgeType_TI12_PlayoffsDay3", + 16: "k_EBadgeType_TI12_FinalsWeekend", + 17: "k_EBadgeType_TI12_Special", } EBadgeType_value = map[string]int32{ + "k_EBadgeType_Invalid": 0, "k_EBadgeType_TI7_Midweek": 1, "k_EBadgeType_TI7_Finals": 2, "k_EBadgeType_TI7_AllEvent": 3, @@ -2546,6 +2989,11 @@ var ( "k_EBadgeType_TI11_PlayoffsDay3": 10, "k_EBadgeType_TI11_PlayoffsDay4": 11, "k_EBadgeType_TI11_FinalsWeekend": 12, + "k_EBadgeType_TI12_PlayoffsDay1": 13, + "k_EBadgeType_TI12_PlayoffsDay2": 14, + "k_EBadgeType_TI12_PlayoffsDay3": 15, + "k_EBadgeType_TI12_FinalsWeekend": 16, + "k_EBadgeType_TI12_Special": 17, } ) @@ -2560,11 +3008,11 @@ func (x EBadgeType) String() string { } func (EBadgeType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[31].Descriptor() + return file_dota_shared_enums_proto_enumTypes[36].Descriptor() } func (EBadgeType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[31] + return &file_dota_shared_enums_proto_enumTypes[36] } func (x EBadgeType) Number() protoreflect.EnumNumber { @@ -2583,7 +3031,7 @@ func (x *EBadgeType) UnmarshalJSON(b []byte) error { // Deprecated: Use EBadgeType.Descriptor instead. func (EBadgeType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{31} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{36} } type ELeagueStatus int32 @@ -2631,11 +3079,11 @@ func (x ELeagueStatus) String() string { } func (ELeagueStatus) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[32].Descriptor() + return file_dota_shared_enums_proto_enumTypes[37].Descriptor() } func (ELeagueStatus) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[32] + return &file_dota_shared_enums_proto_enumTypes[37] } func (x ELeagueStatus) Number() protoreflect.EnumNumber { @@ -2654,7 +3102,7 @@ func (x *ELeagueStatus) UnmarshalJSON(b []byte) error { // Deprecated: Use ELeagueStatus.Descriptor instead. func (ELeagueStatus) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{32} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{37} } type ELeagueRegion int32 @@ -2702,11 +3150,11 @@ func (x ELeagueRegion) String() string { } func (ELeagueRegion) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[33].Descriptor() + return file_dota_shared_enums_proto_enumTypes[38].Descriptor() } func (ELeagueRegion) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[33] + return &file_dota_shared_enums_proto_enumTypes[38] } func (x ELeagueRegion) Number() protoreflect.EnumNumber { @@ -2725,7 +3173,7 @@ func (x *ELeagueRegion) UnmarshalJSON(b []byte) error { // Deprecated: Use ELeagueRegion.Descriptor instead. func (ELeagueRegion) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{33} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{38} } type ELeagueTier int32 @@ -2782,11 +3230,11 @@ func (x ELeagueTier) String() string { } func (ELeagueTier) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[34].Descriptor() + return file_dota_shared_enums_proto_enumTypes[39].Descriptor() } func (ELeagueTier) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[34] + return &file_dota_shared_enums_proto_enumTypes[39] } func (x ELeagueTier) Number() protoreflect.EnumNumber { @@ -2805,7 +3253,7 @@ func (x *ELeagueTier) UnmarshalJSON(b []byte) error { // Deprecated: Use ELeagueTier.Descriptor instead. func (ELeagueTier) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{34} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{39} } type ELeagueTierCategory int32 @@ -2841,11 +3289,11 @@ func (x ELeagueTierCategory) String() string { } func (ELeagueTierCategory) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[35].Descriptor() + return file_dota_shared_enums_proto_enumTypes[40].Descriptor() } func (ELeagueTierCategory) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[35] + return &file_dota_shared_enums_proto_enumTypes[40] } func (x ELeagueTierCategory) Number() protoreflect.EnumNumber { @@ -2864,7 +3312,7 @@ func (x *ELeagueTierCategory) UnmarshalJSON(b []byte) error { // Deprecated: Use ELeagueTierCategory.Descriptor instead. func (ELeagueTierCategory) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{35} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{40} } type ELeagueDivision int32 @@ -2900,11 +3348,11 @@ func (x ELeagueDivision) String() string { } func (ELeagueDivision) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[36].Descriptor() + return file_dota_shared_enums_proto_enumTypes[41].Descriptor() } func (ELeagueDivision) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[36] + return &file_dota_shared_enums_proto_enumTypes[41] } func (x ELeagueDivision) Number() protoreflect.EnumNumber { @@ -2923,7 +3371,7 @@ func (x *ELeagueDivision) UnmarshalJSON(b []byte) error { // Deprecated: Use ELeagueDivision.Descriptor instead. func (ELeagueDivision) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{36} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{41} } type ELeagueBroadcastProvider int32 @@ -2965,11 +3413,11 @@ func (x ELeagueBroadcastProvider) String() string { } func (ELeagueBroadcastProvider) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[37].Descriptor() + return file_dota_shared_enums_proto_enumTypes[42].Descriptor() } func (ELeagueBroadcastProvider) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[37] + return &file_dota_shared_enums_proto_enumTypes[42] } func (x ELeagueBroadcastProvider) Number() protoreflect.EnumNumber { @@ -2988,7 +3436,7 @@ func (x *ELeagueBroadcastProvider) UnmarshalJSON(b []byte) error { // Deprecated: Use ELeagueBroadcastProvider.Descriptor instead. func (ELeagueBroadcastProvider) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{37} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{42} } type ELeaguePhase int32 @@ -3027,11 +3475,11 @@ func (x ELeaguePhase) String() string { } func (ELeaguePhase) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[38].Descriptor() + return file_dota_shared_enums_proto_enumTypes[43].Descriptor() } func (ELeaguePhase) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[38] + return &file_dota_shared_enums_proto_enumTypes[43] } func (x ELeaguePhase) Number() protoreflect.EnumNumber { @@ -3050,7 +3498,7 @@ func (x *ELeaguePhase) UnmarshalJSON(b []byte) error { // Deprecated: Use ELeaguePhase.Descriptor instead. func (ELeaguePhase) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{38} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{43} } type ELeagueAuditAction int32 @@ -3203,11 +3651,11 @@ func (x ELeagueAuditAction) String() string { } func (ELeagueAuditAction) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[39].Descriptor() + return file_dota_shared_enums_proto_enumTypes[44].Descriptor() } func (ELeagueAuditAction) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[39] + return &file_dota_shared_enums_proto_enumTypes[44] } func (x ELeagueAuditAction) Number() protoreflect.EnumNumber { @@ -3226,7 +3674,7 @@ func (x *ELeagueAuditAction) UnmarshalJSON(b []byte) error { // Deprecated: Use ELeagueAuditAction.Descriptor instead. func (ELeagueAuditAction) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{39} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{44} } type DOTA_COMBATLOG_TYPES int32 @@ -3388,11 +3836,11 @@ func (x DOTA_COMBATLOG_TYPES) String() string { } func (DOTA_COMBATLOG_TYPES) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[40].Descriptor() + return file_dota_shared_enums_proto_enumTypes[45].Descriptor() } func (DOTA_COMBATLOG_TYPES) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[40] + return &file_dota_shared_enums_proto_enumTypes[45] } func (x DOTA_COMBATLOG_TYPES) Number() protoreflect.EnumNumber { @@ -3411,7 +3859,7 @@ func (x *DOTA_COMBATLOG_TYPES) UnmarshalJSON(b []byte) error { // Deprecated: Use DOTA_COMBATLOG_TYPES.Descriptor instead. func (DOTA_COMBATLOG_TYPES) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{40} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{45} } type EDPCFavoriteType int32 @@ -3450,11 +3898,11 @@ func (x EDPCFavoriteType) String() string { } func (EDPCFavoriteType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[41].Descriptor() + return file_dota_shared_enums_proto_enumTypes[46].Descriptor() } func (EDPCFavoriteType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[41] + return &file_dota_shared_enums_proto_enumTypes[46] } func (x EDPCFavoriteType) Number() protoreflect.EnumNumber { @@ -3473,7 +3921,7 @@ func (x *EDPCFavoriteType) UnmarshalJSON(b []byte) error { // Deprecated: Use EDPCFavoriteType.Descriptor instead. func (EDPCFavoriteType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{41} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{46} } type EDPCPushNotification int32 @@ -3533,11 +3981,11 @@ func (x EDPCPushNotification) String() string { } func (EDPCPushNotification) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[42].Descriptor() + return file_dota_shared_enums_proto_enumTypes[47].Descriptor() } func (EDPCPushNotification) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[42] + return &file_dota_shared_enums_proto_enumTypes[47] } func (x EDPCPushNotification) Number() protoreflect.EnumNumber { @@ -3556,7 +4004,7 @@ func (x *EDPCPushNotification) UnmarshalJSON(b []byte) error { // Deprecated: Use EDPCPushNotification.Descriptor instead. func (EDPCPushNotification) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{42} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{47} } type EEventActionScoreMode int32 @@ -3589,11 +4037,11 @@ func (x EEventActionScoreMode) String() string { } func (EEventActionScoreMode) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[43].Descriptor() + return file_dota_shared_enums_proto_enumTypes[48].Descriptor() } func (EEventActionScoreMode) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[43] + return &file_dota_shared_enums_proto_enumTypes[48] } func (x EEventActionScoreMode) Number() protoreflect.EnumNumber { @@ -3612,7 +4060,7 @@ func (x *EEventActionScoreMode) UnmarshalJSON(b []byte) error { // Deprecated: Use EEventActionScoreMode.Descriptor instead. func (EEventActionScoreMode) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{43} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{48} } type EPlayerChallengeHistoryType int32 @@ -3657,11 +4105,11 @@ func (x EPlayerChallengeHistoryType) String() string { } func (EPlayerChallengeHistoryType) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[44].Descriptor() + return file_dota_shared_enums_proto_enumTypes[49].Descriptor() } func (EPlayerChallengeHistoryType) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[44] + return &file_dota_shared_enums_proto_enumTypes[49] } func (x EPlayerChallengeHistoryType) Number() protoreflect.EnumNumber { @@ -3680,7 +4128,7 @@ func (x *EPlayerChallengeHistoryType) UnmarshalJSON(b []byte) error { // Deprecated: Use EPlayerChallengeHistoryType.Descriptor instead. func (EPlayerChallengeHistoryType) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{44} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{49} } type EOverwatchReportReason int32 @@ -3725,11 +4173,11 @@ func (x EOverwatchReportReason) String() string { } func (EOverwatchReportReason) Descriptor() protoreflect.EnumDescriptor { - return file_dota_shared_enums_proto_enumTypes[45].Descriptor() + return file_dota_shared_enums_proto_enumTypes[50].Descriptor() } func (EOverwatchReportReason) Type() protoreflect.EnumType { - return &file_dota_shared_enums_proto_enumTypes[45] + return &file_dota_shared_enums_proto_enumTypes[50] } func (x EOverwatchReportReason) Number() protoreflect.EnumNumber { @@ -3748,7 +4196,7 @@ func (x *EOverwatchReportReason) UnmarshalJSON(b []byte) error { // Deprecated: Use EOverwatchReportReason.Descriptor instead. func (EOverwatchReportReason) EnumDescriptor() ([]byte, []int) { - return file_dota_shared_enums_proto_rawDescGZIP(), []int{45} + return file_dota_shared_enums_proto_rawDescGZIP(), []int{50} } type CDOTAClientHardwareSpecs struct { @@ -3756,12 +4204,13 @@ type CDOTAClientHardwareSpecs struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LogicalProcessors *uint32 `protobuf:"varint,1,opt,name=logical_processors,json=logicalProcessors" json:"logical_processors,omitempty"` - CpuCyclesPerSecond *uint64 `protobuf:"fixed64,2,opt,name=cpu_cycles_per_second,json=cpuCyclesPerSecond" json:"cpu_cycles_per_second,omitempty"` - TotalPhysicalMemory *uint64 `protobuf:"fixed64,3,opt,name=total_physical_memory,json=totalPhysicalMemory" json:"total_physical_memory,omitempty"` - Is_64BitOs *bool `protobuf:"varint,4,opt,name=is_64_bit_os,json=is64BitOs" json:"is_64_bit_os,omitempty"` - UploadMeasurement *uint64 `protobuf:"varint,5,opt,name=upload_measurement,json=uploadMeasurement" json:"upload_measurement,omitempty"` - PreferNotHost *bool `protobuf:"varint,6,opt,name=prefer_not_host,json=preferNotHost" json:"prefer_not_host,omitempty"` + LogicalProcessors *uint32 `protobuf:"varint,1,opt,name=logical_processors,json=logicalProcessors" json:"logical_processors,omitempty"` + CpuCyclesPerSecond *uint64 `protobuf:"fixed64,2,opt,name=cpu_cycles_per_second,json=cpuCyclesPerSecond" json:"cpu_cycles_per_second,omitempty"` + TotalPhysicalMemory *uint64 `protobuf:"fixed64,3,opt,name=total_physical_memory,json=totalPhysicalMemory" json:"total_physical_memory,omitempty"` + Is_64BitOs *bool `protobuf:"varint,4,opt,name=is_64_bit_os,json=is64BitOs" json:"is_64_bit_os,omitempty"` + UploadMeasurement *uint64 `protobuf:"varint,5,opt,name=upload_measurement,json=uploadMeasurement" json:"upload_measurement,omitempty"` + PreferNotHost *bool `protobuf:"varint,6,opt,name=prefer_not_host,json=preferNotHost" json:"prefer_not_host,omitempty"` + Crc []uint32 `protobuf:"varint,7,rep,name=crc" json:"crc,omitempty"` } func (x *CDOTAClientHardwareSpecs) Reset() { @@ -3838,6 +4287,13 @@ func (x *CDOTAClientHardwareSpecs) GetPreferNotHost() bool { return false } +func (x *CDOTAClientHardwareSpecs) GetCrc() []uint32 { + if x != nil { + return x.Crc + } + return nil +} + type CDOTASaveGame struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4877,7 +5333,7 @@ var File_dota_shared_enums_proto protoreflect.FileDescriptor var file_dota_shared_enums_proto_rawDesc = []byte{ 0x0a, 0x17, 0x64, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x22, - 0xa8, 0x02, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, + 0xba, 0x02, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, @@ -4895,1319 +5351,1454 @@ var file_dota_shared_enums_proto_rawDesc = []byte{ 0x11, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x70, 0x72, 0x65, - 0x66, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x48, 0x6f, 0x73, 0x74, 0x22, 0xd2, 0x04, 0x0a, 0x0d, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x61, 0x76, 0x65, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x61, 0x76, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x47, 0x0a, 0x0e, 0x73, 0x61, - 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x53, - 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x52, 0x0d, 0x73, 0x61, 0x76, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x73, 0x1a, 0x58, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x26, 0x0a, - 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x52, - 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, - 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x1a, 0xaf, 0x02, - 0x0a, 0x0c, 0x53, 0x61, 0x76, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, - 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, - 0x65, 0x61, 0x6d, 0x31, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x31, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x74, 0x65, 0x61, 0x6d, 0x32, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x32, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x5b, 0x0a, - 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x2e, 0x53, 0x61, 0x76, - 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x61, - 0x76, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x61, 0x76, - 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x61, 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x1a, 0x2d, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, - 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x22, - 0xb1, 0x19, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6d, 0x62, - 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x53, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x74, 0x74, - 0x61, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, - 0x0a, 0x12, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x64, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, - 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x69, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, - 0x65, 0x72, 0x5f, 0x69, 0x6c, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x12, 0x69, 0x73, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x6c, 0x6c, - 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, - 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0e, 0x69, 0x73, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x12, - 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x6c, 0x6c, - 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x54, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x6c, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, - 0x0e, 0x69, 0x73, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, - 0x65, 0x72, 0x6f, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, - 0x65, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x10, 0x69, 0x73, 0x56, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, - 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x5f, - 0x64, 0x69, 0x72, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x56, 0x69, - 0x73, 0x69, 0x62, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x75, 0x6e, 0x5f, 0x64, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x74, - 0x75, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6c, - 0x6f, 0x77, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0c, 0x73, 0x6c, 0x6f, 0x77, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x2f, 0x0a, 0x14, 0x69, 0x73, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x6f, - 0x67, 0x67, 0x6c, 0x65, 0x5f, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, - 0x73, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x4f, 0x6e, - 0x12, 0x31, 0x0a, 0x15, 0x69, 0x73, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x74, - 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x12, 0x69, 0x73, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, - 0x4f, 0x66, 0x66, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6c, - 0x65, 0x76, 0x65, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x18, 0x16, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x72, - 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x6c, - 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x72, 0x61, 0x77, 0x18, 0x18, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x61, 0x77, 0x12, 0x2b, 0x0a, 0x11, - 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x78, 0x70, 0x5f, - 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x78, 0x70, - 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, - 0x69, 0x74, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, - 0x69, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x5f, - 0x74, 0x65, 0x61, 0x6d, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, - 0x63, 0x6b, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x62, 0x73, - 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x1e, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x62, 0x73, 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, - 0x63, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x30, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x73, 0x73, - 0x69, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x30, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, - 0x73, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x31, 0x18, 0x20, 0x20, 0x01, + 0x66, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x72, + 0x63, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x03, 0x63, 0x72, 0x63, 0x22, 0xd2, 0x04, 0x0a, + 0x0d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x19, + 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x61, 0x76, + 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x61, + 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x2e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x47, 0x0a, 0x0e, + 0x73, 0x61, 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x0d, 0x73, 0x61, 0x76, 0x65, 0x49, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x73, 0x1a, 0x58, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, + 0x26, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, + 0x4d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, + 0x65, 0x72, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x1a, + 0xaf, 0x02, 0x0a, 0x0c, 0x53, 0x61, 0x76, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, + 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x31, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x31, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1f, + 0x0a, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x32, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x65, 0x61, 0x6d, 0x32, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, + 0x5b, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x2e, 0x53, + 0x61, 0x76, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0f, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x17, 0x0a, 0x07, + 0x73, 0x61, 0x76, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, + 0x61, 0x76, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x61, 0x76, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x1a, 0x2d, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, + 0x79, 0x22, 0xb1, 0x19, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, + 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x2e, 0x0a, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x53, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, + 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, + 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x2c, 0x0a, 0x12, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x64, 0x61, + 0x6d, 0x61, 0x67, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, + 0x0a, 0x0e, 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x6f, + 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x69, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, + 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x6c, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x73, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x49, + 0x6c, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x73, 0x5f, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0e, 0x69, 0x73, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x48, 0x65, 0x72, + 0x6f, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, + 0x6c, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, + 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x6c, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x12, + 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, + 0x6f, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x76, 0x69, 0x73, 0x69, + 0x62, 0x6c, 0x65, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x10, 0x69, 0x73, 0x56, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x52, 0x61, 0x64, 0x69, + 0x61, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, + 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, + 0x56, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x75, 0x6e, 0x5f, + 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, + 0x73, 0x74, 0x75, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, + 0x73, 0x6c, 0x6f, 0x77, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x6c, 0x6f, 0x77, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x2f, 0x0a, 0x14, 0x69, 0x73, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x5f, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x11, 0x69, 0x73, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, + 0x4f, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x69, 0x73, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x5f, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x12, 0x69, 0x73, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x67, 0x67, + 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x58, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x18, 0x16, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x6f, 0x6c, 0x64, + 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, + 0x6f, 0x6c, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x72, 0x61, 0x77, 0x18, 0x18, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x61, 0x77, 0x12, 0x2b, + 0x0a, 0x11, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x78, + 0x70, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x78, 0x70, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, + 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, + 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, + 0x72, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x10, 0x6f, + 0x62, 0x73, 0x5f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, + 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x62, 0x73, 0x57, 0x61, 0x72, 0x64, 0x73, 0x50, + 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x30, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, + 0x73, 0x73, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x30, 0x12, 0x25, 0x0a, 0x0e, + 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x31, 0x18, 0x20, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x31, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x32, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x73, 0x73, + 0x69, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x32, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, + 0x73, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x33, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x31, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x32, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x73, 0x73, 0x69, 0x73, - 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x32, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x69, - 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x33, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x33, 0x12, - 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x23, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x27, 0x0a, 0x0f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, - 0x69, 0x65, 0x72, 0x18, 0x24, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x68, 0x69, 0x64, 0x64, 0x65, - 0x6e, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x18, - 0x25, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x42, - 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, 0x75, 0x74, 0x72, - 0x61, 0x6c, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x26, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x43, 0x61, 0x6d, 0x70, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x75, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0d, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x68, 0x65, - 0x61, 0x6c, 0x5f, 0x73, 0x61, 0x76, 0x65, 0x18, 0x29, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, - 0x73, 0x48, 0x65, 0x61, 0x6c, 0x53, 0x61, 0x76, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x73, 0x5f, - 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x18, 0x2a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x73, 0x55, 0x6c, 0x74, 0x69, 0x6d, 0x61, - 0x74, 0x65, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x74, 0x74, - 0x61, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, - 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x2c, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x65, 0x72, 0x6f, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x78, 0x70, 0x6d, 0x18, 0x2d, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x03, 0x78, 0x70, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x70, 0x6d, 0x18, 0x2e, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x67, 0x70, 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x2f, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x73, 0x5f, 0x73, 0x65, - 0x6c, 0x66, 0x18, 0x30, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x49, 0x73, 0x53, 0x65, 0x6c, 0x66, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x61, 0x6d, - 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x15, 0x69, 0x6e, 0x76, 0x69, 0x73, - 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, - 0x18, 0x32, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x69, 0x6e, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, - 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x61, 0x74, - 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, - 0x68, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x74, - 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, - 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x19, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, - 0x65, 0x72, 0x5f, 0x65, 0x6c, 0x61, 0x70, 0x73, 0x65, 0x64, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x36, 0x20, 0x01, 0x28, 0x02, 0x52, 0x17, 0x6d, 0x6f, 0x64, 0x69, 0x66, - 0x69, 0x65, 0x72, 0x45, 0x6c, 0x61, 0x70, 0x73, 0x65, 0x64, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x69, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x6f, - 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x37, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x73, 0x69, - 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x2e, 0x0a, - 0x13, 0x68, 0x65, 0x61, 0x6c, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6c, 0x69, 0x66, 0x65, 0x73, - 0x74, 0x65, 0x61, 0x6c, 0x18, 0x38, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x68, 0x65, 0x61, 0x6c, - 0x46, 0x72, 0x6f, 0x6d, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x74, 0x65, 0x61, 0x6c, 0x12, 0x27, 0x0a, - 0x0f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x72, 0x67, 0x65, 0x64, - 0x18, 0x39, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, - 0x50, 0x75, 0x72, 0x67, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x5f, - 0x65, 0x76, 0x61, 0x64, 0x65, 0x64, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x70, - 0x65, 0x6c, 0x6c, 0x45, 0x76, 0x61, 0x64, 0x65, 0x64, 0x12, 0x3c, 0x0a, 0x1a, 0x6d, 0x6f, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6d, - 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x6d, - 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4d, - 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, - 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0d, 0x6c, 0x6f, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x12, - 0x34, 0x0a, 0x16, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x72, 0x67, - 0x65, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x14, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x75, 0x72, 0x67, 0x65, 0x41, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x5f, 0x70, 0x75, 0x72, 0x67, 0x65, 0x5f, 0x6e, 0x70, 0x63, 0x18, 0x3e, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x75, 0x72, 0x67, 0x65, - 0x4e, 0x70, 0x63, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x69, - 0x66, 0x69, 0x65, 0x72, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x6f, 0x6f, 0x74, - 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x55, - 0x6e, 0x69, 0x74, 0x44, 0x65, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, - 0x0d, 0x61, 0x75, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x41, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x75, 0x72, 0x61, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, - 0x65, 0x72, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x5f, 0x64, 0x65, 0x62, 0x75, - 0x66, 0x66, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x42, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x13, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x44, 0x65, 0x62, 0x75, 0x66, 0x66, 0x4d, 0x6f, - 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x3d, 0x0a, 0x1b, 0x6e, 0x6f, 0x5f, 0x70, 0x68, 0x79, - 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x6f, 0x64, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x43, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x6e, 0x6f, 0x50, - 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x4d, 0x6f, 0x64, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x44, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x64, - 0x64, 0x65, 0x6e, 0x18, 0x45, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6d, 0x6f, 0x64, 0x69, 0x66, - 0x69, 0x65, 0x72, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x3d, 0x0a, 0x1b, 0x69, 0x6e, 0x66, - 0x6c, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x6f, 0x6c, 0x65, 0x6e, - 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x46, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, - 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x73, 0x53, 0x74, 0x6f, 0x6c, 0x65, - 0x6e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6b, 0x69, 0x6c, 0x6c, - 0x5f, 0x65, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x47, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0e, 0x6b, 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x75, - 0x6e, 0x69, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x34, - 0x0a, 0x16, 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x18, 0x49, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, - 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x74, 0x61, 0x63, 0x6b, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x74, 0x5f, 0x6e, 0x69, 0x67, 0x68, 0x74, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x74, 0x4e, - 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x74, 0x74, 0x61, - 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, - 0x18, 0x4b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, - 0x48, 0x61, 0x73, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, - 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, - 0x4c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x43, 0x61, - 0x6d, 0x70, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x4d, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x11, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x48, - 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x29, 0x0a, 0x10, 0x77, 0x69, 0x6c, 0x6c, 0x5f, 0x72, 0x65, - 0x69, 0x6e, 0x63, 0x61, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x18, 0x4e, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0f, 0x77, 0x69, 0x6c, 0x6c, 0x52, 0x65, 0x69, 0x6e, 0x63, 0x61, 0x72, 0x6e, 0x61, 0x74, 0x65, - 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, - 0x18, 0x4f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x73, 0x43, 0x68, 0x61, 0x72, - 0x67, 0x65, 0x73, 0x22, 0xfd, 0x01, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x27, 0x0a, - 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x6f, 0x5f, 0x67, 0x72, - 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x54, 0x6f, - 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x0a, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x6d, - 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, - 0x61, 0x74, 0x61, 0x2a, 0x9a, 0x05, 0x0a, 0x0d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, - 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, - 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x14, 0x0a, - 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, - 0x50, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, - 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x4d, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x44, 0x10, 0x03, 0x12, + 0x33, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x23, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x24, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x68, 0x69, 0x64, + 0x64, 0x65, 0x6e, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x12, 0x69, + 0x73, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x18, 0x25, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x65, 0x75, + 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x26, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x43, 0x61, 0x6d, + 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x75, 0x6e, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0d, 0x61, 0x73, 0x73, 0x69, + 0x73, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x73, 0x5f, + 0x68, 0x65, 0x61, 0x6c, 0x5f, 0x73, 0x61, 0x76, 0x65, 0x18, 0x29, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0a, 0x69, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x53, 0x61, 0x76, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x69, + 0x73, 0x5f, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x73, 0x55, 0x6c, 0x74, 0x69, + 0x6d, 0x61, 0x74, 0x65, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2e, 0x0a, 0x13, 0x61, + 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6c, 0x65, 0x76, + 0x65, 0x6c, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, + 0x65, 0x72, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x65, + 0x72, 0x6f, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x78, 0x70, 0x6d, 0x18, 0x2d, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x78, 0x70, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x70, 0x6d, + 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x67, 0x70, 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x2f, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x73, 0x5f, + 0x73, 0x65, 0x6c, 0x66, 0x18, 0x30, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x49, 0x73, 0x53, 0x65, 0x6c, 0x66, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, + 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x15, 0x69, 0x6e, 0x76, + 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x18, 0x32, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x69, 0x6e, 0x76, 0x69, 0x73, 0x69, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x27, + 0x0a, 0x0f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x74, 0x68, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, + 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x19, 0x6d, 0x6f, 0x64, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x5f, 0x65, 0x6c, 0x61, 0x70, 0x73, 0x65, 0x64, 0x5f, 0x64, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x36, 0x20, 0x01, 0x28, 0x02, 0x52, 0x17, 0x6d, 0x6f, 0x64, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x45, 0x6c, 0x61, 0x70, 0x73, 0x65, 0x64, 0x44, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x69, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x5f, + 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x37, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, + 0x73, 0x69, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, + 0x2e, 0x0a, 0x13, 0x68, 0x65, 0x61, 0x6c, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6c, 0x69, 0x66, + 0x65, 0x73, 0x74, 0x65, 0x61, 0x6c, 0x18, 0x38, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x68, 0x65, + 0x61, 0x6c, 0x46, 0x72, 0x6f, 0x6d, 0x4c, 0x69, 0x66, 0x65, 0x73, 0x74, 0x65, 0x61, 0x6c, 0x12, + 0x27, 0x0a, 0x0f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x72, 0x67, + 0x65, 0x64, 0x18, 0x39, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x50, 0x75, 0x72, 0x67, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x70, 0x65, 0x6c, + 0x6c, 0x5f, 0x65, 0x76, 0x61, 0x64, 0x65, 0x64, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, + 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x45, 0x76, 0x61, 0x64, 0x65, 0x64, 0x12, 0x3c, 0x0a, 0x1a, 0x6d, + 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, + 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x18, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, + 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x6f, 0x6e, + 0x67, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x3c, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0d, 0x6c, 0x6f, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x4b, 0x69, 0x6c, + 0x6c, 0x12, 0x34, 0x0a, 0x16, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x70, 0x75, + 0x72, 0x67, 0x65, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x3d, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x14, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x75, 0x72, 0x67, 0x65, + 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x6f, 0x64, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x5f, 0x70, 0x75, 0x72, 0x67, 0x65, 0x5f, 0x6e, 0x70, 0x63, 0x18, 0x3e, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x50, 0x75, 0x72, + 0x67, 0x65, 0x4e, 0x70, 0x63, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x6d, 0x6f, + 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x6f, + 0x6f, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x33, 0x0a, 0x16, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x64, 0x65, 0x61, 0x74, 0x68, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x6f, 0x74, 0x61, + 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x44, 0x65, 0x61, 0x74, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x18, 0x41, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x75, 0x72, 0x61, 0x4d, 0x6f, 0x64, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x5f, 0x64, 0x65, + 0x62, 0x75, 0x66, 0x66, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x42, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x13, 0x61, 0x72, 0x6d, 0x6f, 0x72, 0x44, 0x65, 0x62, 0x75, 0x66, 0x66, + 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x3d, 0x0a, 0x1b, 0x6e, 0x6f, 0x5f, 0x70, + 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6d, + 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x43, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x6e, + 0x6f, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x4d, + 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x6f, 0x64, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x44, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x41, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x68, + 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x45, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6d, 0x6f, 0x64, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x3d, 0x0a, 0x1b, 0x69, + 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x6f, 0x6c, + 0x65, 0x6e, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x46, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x18, 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x73, 0x53, 0x74, 0x6f, + 0x6c, 0x65, 0x6e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6b, 0x69, + 0x6c, 0x6c, 0x5f, 0x65, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x47, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6b, 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x48, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x75, 0x6e, 0x69, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x61, 0x62, 0x65, 0x6c, + 0x12, 0x34, 0x0a, 0x16, 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x18, 0x49, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x14, 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x74, 0x5f, 0x6e, 0x69, 0x67, + 0x68, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, + 0x74, 0x4e, 0x69, 0x67, 0x68, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, + 0x65, 0x72, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, + 0x65, 0x72, 0x48, 0x61, 0x73, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x11, + 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x5f, 0x74, 0x65, 0x61, + 0x6d, 0x18, 0x4c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, + 0x43, 0x61, 0x6d, 0x70, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x67, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x18, 0x4d, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x72, 0x65, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, + 0x64, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x29, 0x0a, 0x10, 0x77, 0x69, 0x6c, 0x6c, 0x5f, + 0x72, 0x65, 0x69, 0x6e, 0x63, 0x61, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x18, 0x4e, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0f, 0x77, 0x69, 0x6c, 0x6c, 0x52, 0x65, 0x69, 0x6e, 0x63, 0x61, 0x72, 0x6e, 0x61, + 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, + 0x65, 0x73, 0x18, 0x4f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x73, 0x43, 0x68, + 0x61, 0x72, 0x67, 0x65, 0x73, 0x22, 0xfd, 0x01, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x65, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x12, + 0x27, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x0c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, + 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x6f, 0x5f, + 0x67, 0x72, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x75, 0x6d, + 0x54, 0x6f, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x0a, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x4d, + 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x2a, 0x9a, 0x05, 0x0a, 0x0d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, + 0x61, 0x6d, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, - 0x5f, 0x53, 0x44, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, - 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x52, 0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x54, - 0x52, 0x4f, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, - 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x48, 0x57, 0x10, 0x07, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x45, 0x56, 0x45, - 0x52, 0x53, 0x45, 0x5f, 0x43, 0x4d, 0x10, 0x08, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x58, 0x4d, 0x41, 0x53, 0x10, 0x09, - 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, - 0x45, 0x5f, 0x54, 0x55, 0x54, 0x4f, 0x52, 0x49, 0x41, 0x4c, 0x10, 0x0a, 0x12, 0x14, 0x0a, 0x10, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4d, 0x4f, - 0x10, 0x0b, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, - 0x4f, 0x44, 0x45, 0x5f, 0x4c, 0x50, 0x10, 0x0c, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x31, 0x10, - 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, - 0x44, 0x45, 0x5f, 0x46, 0x48, 0x10, 0x0e, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, - 0x0f, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, - 0x44, 0x45, 0x5f, 0x43, 0x44, 0x10, 0x10, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x42, 0x44, 0x10, 0x11, 0x12, 0x1f, 0x0a, - 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, - 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x10, 0x12, 0x12, 0x17, - 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x13, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x52, 0x44, 0x4d, 0x10, 0x14, 0x12, - 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, - 0x5f, 0x31, 0x56, 0x31, 0x4d, 0x49, 0x44, 0x10, 0x15, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x5f, 0x44, - 0x52, 0x41, 0x46, 0x54, 0x10, 0x16, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, - 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x55, 0x52, 0x42, 0x4f, 0x10, 0x17, 0x12, - 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, - 0x5f, 0x4d, 0x55, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x18, 0x12, 0x23, 0x0a, 0x1f, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x4f, 0x41, - 0x43, 0x48, 0x45, 0x53, 0x5f, 0x43, 0x48, 0x41, 0x4c, 0x4c, 0x45, 0x4e, 0x47, 0x45, 0x10, 0x19, - 0x2a, 0xbc, 0x04, 0x0a, 0x0e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, - 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x49, 0x4e, 0x49, 0x54, - 0x10, 0x00, 0x12, 0x31, 0x0a, 0x2d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, - 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x57, 0x41, 0x49, 0x54, 0x5f, - 0x46, 0x4f, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x5f, 0x54, 0x4f, 0x5f, 0x4c, - 0x4f, 0x41, 0x44, 0x10, 0x01, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, - 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x48, 0x45, - 0x52, 0x4f, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x26, - 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, - 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, 0x59, 0x5f, - 0x54, 0x49, 0x4d, 0x45, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, - 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, - 0x52, 0x45, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f, 0x47, 0x52, 0x45, - 0x53, 0x53, 0x10, 0x05, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, - 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x4f, 0x53, - 0x54, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x06, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x41, 0x50, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, + 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x4d, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x44, 0x10, + 0x03, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, + 0x44, 0x45, 0x5f, 0x53, 0x44, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x52, 0x10, 0x05, 0x12, 0x17, 0x0a, + 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x49, + 0x4e, 0x54, 0x52, 0x4f, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, + 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x48, 0x57, 0x10, 0x07, 0x12, 0x1c, 0x0a, 0x18, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x45, + 0x56, 0x45, 0x52, 0x53, 0x45, 0x5f, 0x43, 0x4d, 0x10, 0x08, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x58, 0x4d, 0x41, 0x53, + 0x10, 0x09, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, + 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x55, 0x54, 0x4f, 0x52, 0x49, 0x41, 0x4c, 0x10, 0x0a, 0x12, 0x14, + 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, + 0x4d, 0x4f, 0x10, 0x0b, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, + 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4c, 0x50, 0x10, 0x0c, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, + 0x31, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, + 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x46, 0x48, 0x10, 0x0e, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, + 0x4d, 0x10, 0x0f, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, + 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x44, 0x10, 0x10, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x42, 0x44, 0x10, 0x11, 0x12, + 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, + 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x10, 0x12, + 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, + 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x13, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x52, 0x44, 0x4d, 0x10, + 0x14, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, + 0x44, 0x45, 0x5f, 0x31, 0x56, 0x31, 0x4d, 0x49, 0x44, 0x10, 0x15, 0x12, 0x1b, 0x0a, 0x17, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x4c, 0x4c, + 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x10, 0x16, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x55, 0x52, 0x42, 0x4f, 0x10, + 0x17, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, + 0x44, 0x45, 0x5f, 0x4d, 0x55, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x18, 0x12, 0x23, 0x0a, + 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x43, + 0x4f, 0x41, 0x43, 0x48, 0x45, 0x53, 0x5f, 0x43, 0x48, 0x41, 0x4c, 0x4c, 0x45, 0x4e, 0x47, 0x45, + 0x10, 0x19, 0x2a, 0xbc, 0x04, 0x0a, 0x0e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x61, 0x6d, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, + 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x49, 0x4e, + 0x49, 0x54, 0x10, 0x00, 0x12, 0x31, 0x0a, 0x2d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, + 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x57, 0x41, 0x49, + 0x54, 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x5f, 0x54, 0x4f, + 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x10, 0x01, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, + 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, + 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, + 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x41, 0x54, 0x45, 0x47, + 0x59, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, - 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x07, 0x12, 0x26, 0x0a, - 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, - 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x53, 0x48, 0x4f, 0x57, 0x43, - 0x41, 0x53, 0x45, 0x10, 0x08, 0x12, 0x2a, 0x0a, 0x26, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, - 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x55, - 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x55, 0x50, 0x10, - 0x09, 0x12, 0x2d, 0x0a, 0x29, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, - 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x57, 0x41, 0x49, 0x54, 0x5f, 0x46, - 0x4f, 0x52, 0x5f, 0x4d, 0x41, 0x50, 0x5f, 0x54, 0x4f, 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x10, 0x0a, - 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, - 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x41, 0x52, 0x49, - 0x4f, 0x5f, 0x53, 0x45, 0x54, 0x55, 0x50, 0x10, 0x0b, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x10, 0x0c, - 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, - 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x41, 0x53, 0x54, 0x10, 0x0d, 0x2a, - 0xa9, 0x03, 0x0a, 0x0c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x5f, 0x47, 0x4f, 0x4f, 0x44, 0x5f, 0x47, 0x55, 0x59, 0x53, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x42, 0x41, 0x44, - 0x5f, 0x47, 0x55, 0x59, 0x53, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, - 0x54, 0x45, 0x52, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, - 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, 0x52, 0x10, - 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, - 0x4d, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x10, 0x04, 0x12, - 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, - 0x4e, 0x4f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, - 0x31, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, - 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x32, 0x10, 0x07, 0x12, 0x19, - 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, - 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x33, 0x10, 0x08, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, - 0x5f, 0x34, 0x10, 0x09, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, - 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x35, 0x10, 0x0a, 0x12, - 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, - 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x36, 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, + 0x5f, 0x50, 0x52, 0x45, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f, 0x47, + 0x52, 0x45, 0x53, 0x53, 0x10, 0x05, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, + 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, + 0x4f, 0x53, 0x54, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x06, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, + 0x54, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x07, 0x12, + 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, + 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x53, 0x48, 0x4f, + 0x57, 0x43, 0x41, 0x53, 0x45, 0x10, 0x08, 0x12, 0x2a, 0x0a, 0x26, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, + 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x55, + 0x50, 0x10, 0x09, 0x12, 0x2d, 0x0a, 0x29, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, + 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x57, 0x41, 0x49, 0x54, + 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x4d, 0x41, 0x50, 0x5f, 0x54, 0x4f, 0x5f, 0x4c, 0x4f, 0x41, 0x44, + 0x10, 0x0a, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, + 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x41, + 0x52, 0x49, 0x4f, 0x5f, 0x53, 0x45, 0x54, 0x55, 0x50, 0x10, 0x0b, 0x12, 0x25, 0x0a, 0x21, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, + 0x10, 0x0c, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x52, + 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x41, 0x53, 0x54, 0x10, + 0x0d, 0x2a, 0xa9, 0x03, 0x0a, 0x0c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, + 0x41, 0x4d, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, + 0x41, 0x4d, 0x5f, 0x47, 0x4f, 0x4f, 0x44, 0x5f, 0x47, 0x55, 0x59, 0x53, 0x10, 0x00, 0x12, 0x19, + 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x42, + 0x41, 0x44, 0x5f, 0x47, 0x55, 0x59, 0x53, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, + 0x41, 0x53, 0x54, 0x45, 0x52, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, + 0x52, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, + 0x45, 0x41, 0x4d, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x10, + 0x04, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, + 0x4d, 0x5f, 0x4e, 0x4f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, - 0x4d, 0x5f, 0x37, 0x10, 0x0c, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, - 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x38, 0x10, 0x0d, + 0x4d, 0x5f, 0x31, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, + 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x32, 0x10, 0x07, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x53, 0x10, 0x0e, 0x2a, 0xa5, 0x0a, 0x0a, 0x06, - 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, - 0x49, 0x44, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x56, 0x45, - 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x44, 0x49, 0x52, 0x45, 0x54, 0x49, 0x44, 0x45, 0x10, 0x01, - 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x53, 0x50, 0x52, - 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x45, 0x53, 0x54, 0x49, 0x56, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1b, - 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, - 0x49, 0x56, 0x55, 0x53, 0x5f, 0x32, 0x30, 0x31, 0x33, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x45, 0x4e, 0x44, 0x49, - 0x55, 0x4d, 0x5f, 0x32, 0x30, 0x31, 0x34, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x56, 0x45, - 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x58, 0x4f, 0x4e, 0x5f, 0x50, 0x43, 0x5f, 0x42, - 0x41, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, - 0x44, 0x5f, 0x50, 0x57, 0x52, 0x44, 0x5f, 0x44, 0x41, 0x43, 0x5f, 0x32, 0x30, 0x31, 0x35, 0x10, - 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, - 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x4d, 0x5f, 0x32, 0x30, 0x31, 0x35, 0x10, 0x07, 0x12, 0x1f, + 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x33, 0x10, 0x08, 0x12, 0x19, 0x0a, 0x15, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, + 0x4f, 0x4d, 0x5f, 0x34, 0x10, 0x09, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, + 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x35, 0x10, + 0x0a, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, + 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x36, 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, + 0x54, 0x4f, 0x4d, 0x5f, 0x37, 0x10, 0x0c, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x47, 0x43, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x38, + 0x10, 0x0d, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x47, 0x43, 0x5f, 0x54, 0x45, + 0x41, 0x4d, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x53, 0x10, 0x0e, 0x2a, 0xb8, 0x0b, + 0x0a, 0x06, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x56, 0x45, 0x4e, + 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x44, 0x49, 0x52, 0x45, 0x54, 0x49, 0x44, 0x45, + 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x53, + 0x50, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x45, 0x53, 0x54, 0x49, 0x56, 0x41, 0x4c, 0x10, 0x02, + 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, + 0x53, 0x54, 0x49, 0x56, 0x55, 0x53, 0x5f, 0x32, 0x30, 0x31, 0x33, 0x10, 0x03, 0x12, 0x1c, 0x0a, + 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x45, 0x4e, + 0x44, 0x49, 0x55, 0x4d, 0x5f, 0x32, 0x30, 0x31, 0x34, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x58, 0x4f, 0x4e, 0x5f, 0x50, 0x43, + 0x5f, 0x42, 0x41, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x56, 0x45, 0x4e, 0x54, + 0x5f, 0x49, 0x44, 0x5f, 0x50, 0x57, 0x52, 0x44, 0x5f, 0x44, 0x41, 0x43, 0x5f, 0x32, 0x30, 0x31, + 0x35, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, + 0x4e, 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x4d, 0x5f, 0x32, 0x30, 0x31, 0x35, 0x10, 0x07, + 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, + 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x31, 0x35, 0x10, + 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x41, + 0x4c, 0x4c, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x5f, 0x32, 0x30, 0x31, 0x35, 0x10, 0x09, 0x12, + 0x16, 0x0a, 0x12, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4f, 0x52, 0x41, 0x43, + 0x4c, 0x45, 0x5f, 0x50, 0x41, 0x10, 0x0a, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x56, 0x45, 0x4e, 0x54, + 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x4d, 0x5f, 0x32, 0x30, + 0x31, 0x35, 0x5f, 0x50, 0x52, 0x45, 0x42, 0x45, 0x41, 0x53, 0x54, 0x10, 0x0b, 0x12, 0x16, 0x0a, + 0x12, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, + 0x56, 0x55, 0x53, 0x10, 0x0c, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, + 0x44, 0x5f, 0x57, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x5f, 0x32, + 0x30, 0x31, 0x36, 0x10, 0x0d, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, + 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, + 0x32, 0x30, 0x31, 0x36, 0x10, 0x0e, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, + 0x49, 0x44, 0x5f, 0x46, 0x41, 0x4c, 0x4c, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x5f, 0x32, 0x30, + 0x31, 0x36, 0x10, 0x0f, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, + 0x5f, 0x57, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x5f, 0x32, 0x30, + 0x31, 0x37, 0x10, 0x10, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, + 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x4d, 0x5f, 0x32, 0x30, 0x31, 0x37, 0x10, + 0x11, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, + 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x31, 0x37, + 0x10, 0x12, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x50, + 0x4c, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, + 0x10, 0x13, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x53, + 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x53, 0x5f, 0x44, 0x41, 0x59, 0x5f, 0x32, 0x30, 0x31, 0x37, 0x10, + 0x14, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, + 0x4f, 0x53, 0x54, 0x49, 0x56, 0x55, 0x53, 0x5f, 0x32, 0x30, 0x31, 0x37, 0x10, 0x15, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, - 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x31, 0x35, 0x10, 0x08, 0x12, - 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x41, 0x4c, 0x4c, - 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x5f, 0x32, 0x30, 0x31, 0x35, 0x10, 0x09, 0x12, 0x16, 0x0a, - 0x12, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4f, 0x52, 0x41, 0x43, 0x4c, 0x45, - 0x5f, 0x50, 0x41, 0x10, 0x0a, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, - 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x4d, 0x5f, 0x32, 0x30, 0x31, 0x35, - 0x5f, 0x50, 0x52, 0x45, 0x42, 0x45, 0x41, 0x53, 0x54, 0x10, 0x0b, 0x12, 0x16, 0x0a, 0x12, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, 0x56, 0x55, - 0x53, 0x10, 0x0c, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, - 0x57, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x5f, 0x32, 0x30, 0x31, - 0x36, 0x10, 0x0d, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, - 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, - 0x31, 0x36, 0x10, 0x0e, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, - 0x5f, 0x46, 0x41, 0x4c, 0x4c, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x5f, 0x32, 0x30, 0x31, 0x36, - 0x10, 0x0f, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x57, - 0x49, 0x4e, 0x54, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x5f, 0x32, 0x30, 0x31, 0x37, - 0x10, 0x10, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, - 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x4d, 0x5f, 0x32, 0x30, 0x31, 0x37, 0x10, 0x11, 0x12, - 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, - 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x31, 0x37, 0x10, 0x12, - 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x50, 0x4c, 0x55, - 0x53, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x13, - 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x53, 0x49, 0x4e, - 0x47, 0x4c, 0x45, 0x53, 0x5f, 0x44, 0x41, 0x59, 0x5f, 0x32, 0x30, 0x31, 0x37, 0x10, 0x14, 0x12, + 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x31, 0x38, 0x10, 0x16, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x53, - 0x54, 0x49, 0x56, 0x55, 0x53, 0x5f, 0x32, 0x30, 0x31, 0x37, 0x10, 0x15, 0x12, 0x1f, 0x0a, 0x1b, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, - 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x31, 0x38, 0x10, 0x16, 0x12, 0x1b, 0x0a, - 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, - 0x56, 0x55, 0x53, 0x5f, 0x32, 0x30, 0x31, 0x38, 0x10, 0x17, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, - 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x4d, - 0x5f, 0x32, 0x30, 0x31, 0x39, 0x10, 0x18, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, - 0x4c, 0x5f, 0x32, 0x30, 0x31, 0x39, 0x10, 0x19, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, - 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, - 0x45, 0x58, 0x50, 0x45, 0x52, 0x49, 0x45, 0x4e, 0x43, 0x45, 0x10, 0x1a, 0x12, 0x1b, 0x0a, 0x17, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, 0x56, - 0x55, 0x53, 0x5f, 0x32, 0x30, 0x31, 0x39, 0x10, 0x1b, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x56, 0x45, - 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x4d, 0x5f, - 0x32, 0x30, 0x32, 0x30, 0x10, 0x1c, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, - 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, - 0x5f, 0x32, 0x30, 0x32, 0x30, 0x10, 0x1d, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x46, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x10, - 0x1e, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x44, 0x49, - 0x52, 0x45, 0x54, 0x49, 0x44, 0x45, 0x5f, 0x32, 0x30, 0x32, 0x30, 0x10, 0x1f, 0x12, 0x18, 0x0a, - 0x14, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x53, 0x50, 0x52, 0x49, 0x4e, 0x47, - 0x5f, 0x32, 0x30, 0x32, 0x31, 0x10, 0x20, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x41, 0x4c, 0x4c, 0x5f, 0x32, 0x30, 0x32, 0x31, 0x10, 0x21, 0x12, - 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x5f, 0x46, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x5f, 0x46, 0x41, 0x4c, 0x4c, 0x5f, 0x32, 0x30, 0x32, - 0x31, 0x10, 0x22, 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, - 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x32, 0x30, 0x32, 0x31, 0x5f, 0x32, 0x30, 0x32, 0x32, 0x5f, 0x54, - 0x4f, 0x55, 0x52, 0x32, 0x10, 0x23, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, - 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, - 0x5f, 0x32, 0x30, 0x32, 0x32, 0x10, 0x24, 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x32, 0x30, 0x32, 0x31, 0x5f, 0x32, 0x30, - 0x32, 0x32, 0x5f, 0x54, 0x4f, 0x55, 0x52, 0x33, 0x10, 0x25, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x56, - 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x54, 0x45, - 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x32, 0x32, 0x10, 0x26, - 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x50, 0x45, 0x52, - 0x4d, 0x41, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x53, 0x10, 0x27, 0x12, - 0x26, 0x0a, 0x22, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4d, 0x55, 0x45, 0x52, - 0x54, 0x41, 0x5f, 0x52, 0x45, 0x4c, 0x45, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x50, 0x52, 0x49, 0x4e, - 0x47, 0x32, 0x30, 0x32, 0x33, 0x10, 0x28, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, + 0x54, 0x49, 0x56, 0x55, 0x53, 0x5f, 0x32, 0x30, 0x31, 0x38, 0x10, 0x17, 0x12, 0x1b, 0x0a, 0x17, + 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, + 0x4f, 0x4d, 0x5f, 0x32, 0x30, 0x31, 0x39, 0x10, 0x18, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x31, 0x39, 0x10, 0x19, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, + 0x52, 0x5f, 0x45, 0x58, 0x50, 0x45, 0x52, 0x49, 0x45, 0x4e, 0x43, 0x45, 0x10, 0x1a, 0x12, 0x1b, + 0x0a, 0x17, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, + 0x49, 0x56, 0x55, 0x53, 0x5f, 0x32, 0x30, 0x31, 0x39, 0x10, 0x1b, 0x12, 0x1b, 0x0a, 0x17, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, + 0x4d, 0x5f, 0x32, 0x30, 0x32, 0x30, 0x10, 0x1c, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, + 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x32, 0x30, 0x10, 0x1d, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x46, 0x41, 0x4e, 0x44, 0x4f, + 0x4d, 0x10, 0x1e, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, + 0x44, 0x49, 0x52, 0x45, 0x54, 0x49, 0x44, 0x45, 0x5f, 0x32, 0x30, 0x32, 0x30, 0x10, 0x1f, 0x12, + 0x18, 0x0a, 0x14, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x53, 0x50, 0x52, 0x49, + 0x4e, 0x47, 0x5f, 0x32, 0x30, 0x32, 0x31, 0x10, 0x20, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x41, 0x4c, 0x4c, 0x5f, 0x32, 0x30, 0x32, 0x31, 0x10, + 0x21, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, + 0x41, 0x4d, 0x5f, 0x46, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x5f, 0x46, 0x41, 0x4c, 0x4c, 0x5f, 0x32, + 0x30, 0x32, 0x31, 0x10, 0x22, 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, + 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x32, 0x30, 0x32, 0x31, 0x5f, 0x32, 0x30, 0x32, 0x32, + 0x5f, 0x54, 0x4f, 0x55, 0x52, 0x32, 0x10, 0x23, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, + 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x32, 0x32, 0x10, 0x24, 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x32, 0x30, 0x32, 0x31, 0x5f, + 0x32, 0x30, 0x32, 0x32, 0x5f, 0x54, 0x4f, 0x55, 0x52, 0x33, 0x10, 0x25, 0x12, 0x24, 0x0a, 0x20, + 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x49, 0x4e, + 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, 0x32, 0x32, + 0x10, 0x26, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x50, + 0x45, 0x52, 0x4d, 0x41, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x53, 0x10, + 0x27, 0x12, 0x26, 0x0a, 0x22, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x4d, 0x55, + 0x45, 0x52, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x4c, 0x45, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x50, 0x52, + 0x49, 0x4e, 0x47, 0x32, 0x30, 0x32, 0x33, 0x10, 0x28, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x5f, + 0x54, 0x4f, 0x55, 0x52, 0x31, 0x10, 0x29, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x5f, 0x54, 0x4f, - 0x55, 0x52, 0x31, 0x10, 0x29, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, + 0x55, 0x52, 0x32, 0x10, 0x2a, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x5f, 0x54, 0x4f, 0x55, 0x52, - 0x32, 0x10, 0x2a, 0x2a, 0xb7, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, - 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, - 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x61, 0x73, 0x75, 0x61, 0x6c, - 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x65, 0x64, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, - 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x61, 0x73, 0x75, 0x61, 0x6c, - 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x52, - 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x65, 0x64, 0x4c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, - 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x61, 0x73, 0x75, 0x61, 0x6c, 0x47, 0x6c, 0x69, 0x63, - 0x6b, 0x6f, 0x10, 0x05, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, - 0x79, 0x70, 0x65, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x65, 0x64, 0x47, 0x6c, 0x69, 0x63, 0x6b, 0x6f, - 0x10, 0x06, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x43, 0x61, 0x73, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x6d, 0x61, 0x70, 0x70, 0x65, 0x64, - 0x10, 0x07, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x43, 0x61, 0x73, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x6d, 0x61, 0x70, 0x70, 0x65, 0x64, - 0x47, 0x6c, 0x69, 0x63, 0x6b, 0x6f, 0x10, 0x08, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x52, - 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x61, 0x73, 0x75, 0x61, 0x6c, 0x53, 0x68, - 0x69, 0x66, 0x74, 0x65, 0x64, 0x47, 0x6c, 0x69, 0x63, 0x6b, 0x6f, 0x10, 0x09, 0x2a, 0xa8, 0x02, - 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x5f, 0x74, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, - 0x56, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, - 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x02, 0x12, - 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x41, - 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x41, 0x46, 0x4b, 0x10, 0x04, 0x12, - 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x4e, - 0x45, 0x56, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x05, - 0x12, 0x28, 0x0a, 0x24, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, - 0x4e, 0x45, 0x56, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x5f, - 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, - 0x5f, 0x54, 0x4f, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x55, 0x50, 0x10, 0x07, 0x12, 0x18, - 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x44, 0x45, - 0x43, 0x4c, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x08, 0x2a, 0x9e, 0x02, 0x0a, 0x15, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x5f, 0x74, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, - 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x2b, 0x0a, 0x27, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, - 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4e, - 0x4f, 0x54, 0x5f, 0x59, 0x45, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, - 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, - 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, - 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, - 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, - 0x45, 0x44, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, - 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x4f, - 0x41, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, - 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x06, 0x2a, 0x8c, 0x01, 0x0a, 0x0d, 0x46, 0x61, - 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x16, 0x46, - 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, - 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x41, 0x4e, 0x54, 0x41, - 0x53, 0x59, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x43, 0x4f, 0x52, 0x45, 0x10, 0x01, 0x12, 0x18, - 0x0a, 0x14, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x53, - 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x41, 0x4e, 0x54, - 0x41, 0x53, 0x59, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x4f, 0x46, 0x46, 0x4c, 0x41, 0x4e, 0x45, - 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x52, 0x4f, - 0x4c, 0x45, 0x5f, 0x4d, 0x49, 0x44, 0x10, 0x04, 0x2a, 0x8a, 0x01, 0x0a, 0x12, 0x46, 0x61, 0x6e, - 0x74, 0x61, 0x73, 0x79, 0x5f, 0x54, 0x65, 0x61, 0x6d, 0x5f, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, - 0x15, 0x0a, 0x11, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, - 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, - 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x43, 0x4f, 0x52, 0x45, 0x10, 0x01, 0x12, 0x18, 0x0a, - 0x14, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x53, 0x55, - 0x50, 0x50, 0x4f, 0x52, 0x54, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x41, 0x4e, 0x54, 0x41, - 0x53, 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x41, 0x4e, 0x59, 0x10, 0x03, 0x12, 0x16, 0x0a, - 0x12, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x42, 0x45, - 0x4e, 0x43, 0x48, 0x10, 0x04, 0x2a, 0xdd, 0x02, 0x0a, 0x16, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, - 0x79, 0x5f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x4d, 0x6f, 0x64, 0x65, - 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, - 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, - 0x1c, 0x0a, 0x18, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x01, 0x12, 0x1d, 0x0a, - 0x19, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x53, 0x48, 0x55, 0x46, 0x46, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, + 0x33, 0x10, 0x2b, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, + 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x32, 0x30, + 0x32, 0x33, 0x10, 0x2d, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, + 0x5f, 0x31, 0x30, 0x54, 0x48, 0x5f, 0x41, 0x4e, 0x4e, 0x49, 0x56, 0x45, 0x52, 0x53, 0x41, 0x52, + 0x59, 0x10, 0x2e, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, + 0x43, 0x52, 0x4f, 0x57, 0x4e, 0x46, 0x41, 0x4c, 0x4c, 0x10, 0x2f, 0x12, 0x1b, 0x0a, 0x17, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, 0x56, 0x55, + 0x53, 0x5f, 0x32, 0x30, 0x32, 0x33, 0x10, 0x30, 0x2a, 0xbb, 0x02, 0x0a, 0x09, 0x45, 0x52, 0x61, + 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, + 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, + 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, + 0x61, 0x73, 0x75, 0x61, 0x6c, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x52, 0x61, + 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x65, 0x64, 0x10, 0x02, 0x12, + 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, + 0x61, 0x73, 0x75, 0x61, 0x6c, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x10, 0x03, 0x12, 0x1c, 0x0a, + 0x18, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x52, 0x61, 0x6e, + 0x6b, 0x65, 0x64, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x6b, + 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x61, 0x73, 0x75, 0x61, + 0x6c, 0x47, 0x6c, 0x69, 0x63, 0x6b, 0x6f, 0x10, 0x05, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, + 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x65, 0x64, 0x47, + 0x6c, 0x69, 0x63, 0x6b, 0x6f, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x52, 0x61, + 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x52, 0x61, 0x6e, 0x6b, 0x4d, 0x61, 0x78, 0x10, 0x07, + 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x5f, + 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x10, + 0x64, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, + 0x5f, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x10, + 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x52, 0x61, 0x6e, 0x6b, 0x54, 0x79, 0x70, 0x65, + 0x5f, 0x4d, 0x61, 0x78, 0x10, 0x66, 0x2a, 0xca, 0x02, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x4c, + 0x65, 0x61, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x74, 0x12, 0x14, 0x0a, + 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x4e, + 0x45, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, + 0x45, 0x52, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, + 0x01, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, + 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x4f, + 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x45, + 0x44, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, + 0x45, 0x52, 0x5f, 0x41, 0x46, 0x4b, 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x4e, 0x45, 0x56, 0x45, 0x52, 0x5f, 0x43, 0x4f, + 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x05, 0x12, 0x28, 0x0a, 0x24, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x4e, 0x45, 0x56, 0x45, 0x52, 0x5f, 0x43, + 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, + 0x47, 0x10, 0x06, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, + 0x45, 0x52, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x5f, 0x52, 0x45, 0x41, + 0x44, 0x59, 0x5f, 0x55, 0x50, 0x10, 0x07, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x5f, 0x44, 0x45, 0x43, 0x4c, 0x49, 0x4e, 0x45, 0x44, 0x10, + 0x08, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, + 0x5f, 0x44, 0x45, 0x43, 0x4c, 0x49, 0x4e, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x55, + 0x45, 0x10, 0x09, 0x2a, 0x9e, 0x02, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x12, 0x21, 0x0a, + 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, + 0x12, 0x2b, 0x0a, 0x27, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x59, 0x45, + 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x23, 0x0a, + 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, + 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, + 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43, + 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x04, 0x12, + 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x49, 0x4e, 0x47, + 0x10, 0x05, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, + 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, + 0x45, 0x44, 0x10, 0x06, 0x2a, 0x8c, 0x01, 0x0a, 0x0d, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x5f, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x16, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, + 0x59, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x52, 0x4f, + 0x4c, 0x45, 0x5f, 0x43, 0x4f, 0x52, 0x45, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x41, 0x4e, + 0x54, 0x41, 0x53, 0x59, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, + 0x54, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x52, + 0x4f, 0x4c, 0x45, 0x5f, 0x4f, 0x46, 0x46, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x03, 0x12, 0x14, 0x0a, + 0x10, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x4d, 0x49, + 0x44, 0x10, 0x04, 0x2a, 0xa1, 0x05, 0x0a, 0x0f, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, + 0x53, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x19, 0x0a, 0x15, 0x46, 0x41, 0x4e, 0x54, 0x41, + 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x53, + 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, + 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x45, 0x41, 0x54, 0x48, 0x53, 0x10, 0x01, 0x12, 0x16, + 0x0a, 0x12, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, + 0x47, 0x5f, 0x43, 0x53, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, + 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x47, 0x50, 0x4d, 0x10, 0x03, 0x12, + 0x1f, 0x0a, 0x1b, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, + 0x4e, 0x47, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x53, 0x10, 0x04, + 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, + 0x49, 0x4e, 0x47, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x53, + 0x10, 0x05, 0x12, 0x2b, 0x0a, 0x27, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, + 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x46, 0x49, 0x47, 0x48, 0x54, 0x5f, + 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, + 0x21, 0x0a, 0x1d, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, + 0x4e, 0x47, 0x5f, 0x57, 0x41, 0x52, 0x44, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x4e, 0x54, 0x45, 0x44, + 0x10, 0x07, 0x12, 0x21, 0x0a, 0x1d, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, + 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x41, 0x4d, 0x50, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x43, + 0x4b, 0x45, 0x44, 0x10, 0x08, 0x12, 0x21, 0x0a, 0x1d, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, + 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x53, 0x5f, 0x47, + 0x52, 0x41, 0x42, 0x42, 0x45, 0x44, 0x10, 0x09, 0x12, 0x1f, 0x0a, 0x1b, 0x46, 0x41, 0x4e, 0x54, + 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x49, 0x52, 0x53, + 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x0a, 0x12, 0x19, 0x0a, 0x15, 0x46, 0x41, 0x4e, + 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x54, 0x55, + 0x4e, 0x53, 0x10, 0x0b, 0x12, 0x1f, 0x0a, 0x1b, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, + 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x4d, 0x4f, 0x4b, 0x45, 0x53, 0x5f, 0x55, + 0x53, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x28, 0x0a, 0x24, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, + 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, + 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x53, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x0d, 0x12, + 0x22, 0x0a, 0x1e, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, + 0x4e, 0x47, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x45, 0x52, 0x53, 0x5f, 0x54, 0x41, 0x4b, 0x45, + 0x4e, 0x10, 0x0e, 0x12, 0x22, 0x0a, 0x1e, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, + 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x54, 0x55, 0x53, 0x45, 0x53, 0x5f, 0x47, + 0x41, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x0f, 0x12, 0x23, 0x0a, 0x1f, 0x46, 0x41, 0x4e, 0x54, 0x41, + 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x54, 0x4f, 0x52, 0x4d, 0x45, + 0x4e, 0x54, 0x4f, 0x52, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x53, 0x10, 0x10, 0x12, 0x21, 0x0a, 0x1d, + 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, + 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x53, 0x10, 0x11, 0x12, + 0x19, 0x0a, 0x15, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, + 0x4e, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x53, 0x10, 0x12, 0x12, 0x1b, 0x0a, 0x17, 0x46, 0x41, + 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x49, 0x4e, + 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x13, 0x2a, 0x8a, 0x01, 0x0a, 0x12, 0x46, 0x61, 0x6e, 0x74, + 0x61, 0x73, 0x79, 0x5f, 0x54, 0x65, 0x61, 0x6d, 0x5f, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x15, + 0x0a, 0x11, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x4e, + 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, + 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x43, 0x4f, 0x52, 0x45, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, + 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x53, 0x55, 0x50, + 0x50, 0x4f, 0x52, 0x54, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, + 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x41, 0x4e, 0x59, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, + 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x4c, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x4e, + 0x43, 0x48, 0x10, 0x04, 0x2a, 0xdd, 0x02, 0x0a, 0x16, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x5f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x4d, 0x6f, 0x64, 0x65, 0x12, + 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1c, + 0x0a, 0x18, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, + 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x53, 0x48, 0x55, 0x46, 0x46, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, 0x46, + 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x10, 0x03, 0x12, 0x1b, 0x0a, - 0x17, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x04, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, - 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x50, 0x52, 0x45, 0x5f, 0x53, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x1f, 0x0a, 0x1b, + 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x04, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x4e, + 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, + 0x52, 0x45, 0x5f, 0x53, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x1f, 0x0a, 0x1b, 0x46, + 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x50, 0x52, 0x45, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x10, 0x06, 0x12, 0x1e, 0x0a, 0x1a, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x50, 0x52, 0x45, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x10, 0x06, 0x12, 0x1e, 0x0a, - 0x1a, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x07, 0x12, 0x24, 0x0a, - 0x20, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x55, 0x4c, 0x41, 0x52, 0x5f, 0x53, 0x45, 0x41, 0x53, 0x4f, - 0x4e, 0x10, 0x08, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, - 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x41, - 0x53, 0x45, 0x44, 0x10, 0x09, 0x2a, 0x82, 0x06, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, - 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x12, - 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, - 0x70, 0x65, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x10, 0x00, 0x12, 0x1a, 0x0a, - 0x16, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, - 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x50, 0x61, 0x72, - 0x74, 0x79, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0x03, 0x12, - 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, - 0x70, 0x65, 0x5f, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, - 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x10, 0x05, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x10, - 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x54, 0x79, 0x70, 0x65, 0x5f, 0x57, 0x68, 0x69, 0x73, 0x70, 0x65, 0x72, 0x10, 0x07, 0x12, 0x1b, - 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x10, 0x08, 0x12, 0x17, 0x0a, 0x13, 0x44, - 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, - 0x61, 0x62, 0x10, 0x09, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, - 0x0a, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x10, 0x0b, 0x12, 0x1e, - 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x69, 0x65, 0x73, 0x10, 0x0c, 0x12, 0x21, - 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x10, - 0x0d, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, - 0x67, 0x10, 0x0e, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x61, 0x66, 0x65, 0x10, 0x0f, 0x12, 0x1e, 0x0a, - 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, - 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x10, 0x12, 0x1b, 0x0a, - 0x17, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, - 0x5f, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x10, 0x11, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x50, 0x6f, - 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x12, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, - 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x43, 0x75, 0x70, 0x10, 0x13, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x43, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x48, 0x4c, 0x54, 0x56, 0x53, - 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x14, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x61, - 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x15, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, - 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x72, - 0x69, 0x76, 0x69, 0x61, 0x10, 0x16, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4e, 0x65, 0x77, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x10, 0x17, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, - 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x18, 0x2a, 0x90, 0x01, 0x0a, 0x16, 0x45, - 0x43, 0x68, 0x61, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, - 0x6c, 0x65, 0x67, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x43, 0x68, 0x61, 0x74, - 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, - 0x73, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x43, - 0x68, 0x61, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, - 0x65, 0x67, 0x65, 0x73, 0x5f, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x01, - 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x43, 0x68, 0x61, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, - 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x5f, 0x53, 0x75, 0x70, - 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x02, 0x2a, 0x84, 0x02, - 0x0a, 0x14, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, - 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, + 0x4e, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x07, 0x12, 0x24, 0x0a, 0x20, + 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x55, 0x4c, 0x41, 0x52, 0x5f, 0x53, 0x45, 0x41, 0x53, 0x4f, 0x4e, + 0x10, 0x08, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x53, 0x45, + 0x4c, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x41, 0x53, + 0x45, 0x44, 0x10, 0x09, 0x2a, 0x6a, 0x0a, 0x10, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x5f, + 0x47, 0x65, 0x6d, 0x5f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x46, 0x41, 0x4e, 0x54, + 0x41, 0x53, 0x59, 0x5f, 0x47, 0x45, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x55, 0x42, + 0x59, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x47, + 0x45, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x41, 0x50, 0x50, 0x48, 0x49, 0x52, 0x45, + 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x47, 0x45, + 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x4d, 0x45, 0x52, 0x41, 0x4c, 0x44, 0x10, 0x02, + 0x2a, 0x82, 0x06, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x52, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x79, 0x10, 0x02, 0x12, + 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, + 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x65, + 0x61, 0x6d, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x05, 0x12, + 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, + 0x57, 0x68, 0x69, 0x73, 0x70, 0x65, 0x72, 0x10, 0x07, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x10, 0x08, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x61, 0x62, 0x10, 0x09, 0x12, + 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x0a, 0x12, 0x1b, 0x0a, 0x17, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, + 0x47, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x10, 0x0b, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x61, 0x6d, + 0x65, 0x41, 0x6c, 0x6c, 0x69, 0x65, 0x73, 0x10, 0x0c, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x61, 0x6d, + 0x65, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x0d, 0x12, 0x20, 0x0a, 0x1c, + 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, + 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x0e, 0x12, 0x18, + 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, + 0x65, 0x5f, 0x43, 0x61, 0x66, 0x65, 0x10, 0x0f, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x10, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x50, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x10, 0x11, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x61, 0x6d, + 0x65, 0x10, 0x12, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x75, 0x70, + 0x10, 0x13, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x48, 0x4c, 0x54, 0x56, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, + 0x74, 0x6f, 0x72, 0x10, 0x14, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x73, 0x10, 0x15, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x72, 0x69, 0x76, 0x69, 0x61, 0x10, + 0x16, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4e, 0x65, 0x77, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x10, 0x17, + 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, + 0x79, 0x70, 0x65, 0x5f, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, + 0x69, 0x6e, 0x67, 0x10, 0x18, 0x2a, 0x90, 0x01, 0x0a, 0x16, 0x45, 0x43, 0x68, 0x61, 0x74, 0x53, + 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, + 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x43, 0x68, 0x61, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x5f, 0x4e, 0x6f, 0x6e, + 0x65, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x43, 0x68, 0x61, 0x74, 0x53, 0x70, + 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x5f, + 0x4d, 0x6f, 0x64, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, 0x6b, + 0x5f, 0x45, 0x43, 0x68, 0x61, 0x74, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x69, + 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x5f, 0x53, 0x75, 0x70, 0x65, 0x72, 0x4d, 0x6f, 0x64, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x02, 0x2a, 0xdd, 0x03, 0x0a, 0x0e, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6f, 0x6d, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x12, 0x17, 0x0a, 0x13, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x4f, + 0x4e, 0x45, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, + 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1c, 0x0a, + 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x43, 0x48, 0x41, 0x54, 0x57, 0x48, 0x45, 0x45, 0x4c, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x49, + 0x50, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, + 0x48, 0x4f, 0x57, 0x43, 0x41, 0x53, 0x45, 0x10, 0x05, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, 0x4f, 0x49, 0x43, + 0x45, 0x10, 0x06, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x59, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, + 0x54, 0x59, 0x10, 0x07, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, + 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x10, 0x08, 0x12, 0x1b, + 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x43, 0x4f, 0x41, 0x43, 0x48, 0x49, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x4f, + 0x43, 0x4f, 0x4f, 0x4c, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x41, 0x4e, + 0x4b, 0x45, 0x44, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x4d, 0x41, 0x4b, 0x45, 0x10, 0x0b, 0x12, 0x18, + 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x53, 0x10, 0x0c, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x50, 0x4c, + 0x41, 0x59, 0x45, 0x52, 0x5f, 0x45, 0x58, 0x50, 0x45, 0x52, 0x54, 0x10, 0x0d, 0x12, 0x1a, 0x0a, + 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x43, 0x4f, 0x41, 0x43, 0x48, 0x45, 0x44, 0x10, 0x0e, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x41, 0x50, 0x44, + 0x52, 0x41, 0x57, 0x49, 0x4e, 0x47, 0x10, 0x0f, 0x2a, 0xfa, 0x01, 0x0a, 0x0f, 0x44, 0x4f, 0x54, + 0x41, 0x43, 0x6f, 0x6d, 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x74, 0x12, 0x18, 0x0a, 0x14, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, + 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, + 0x4f, 0x4d, 0x4d, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x43, 0x4f, 0x4f, 0x4c, 0x44, 0x4f, + 0x57, 0x4e, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, + 0x4d, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x53, 0x10, 0x02, 0x12, + 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x4c, 0x45, 0x56, + 0x45, 0x4c, 0x5f, 0x4d, 0x41, 0x50, 0x44, 0x52, 0x41, 0x57, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, + 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x4c, 0x45, 0x56, + 0x45, 0x4c, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x54, 0x49, 0x50, + 0x50, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, + 0x4f, 0x4d, 0x4d, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x10, + 0x06, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x5f, 0x4c, + 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x49, 0x45, 0x44, 0x5f, 0x41, 0x42, 0x49, 0x4c, + 0x49, 0x54, 0x59, 0x10, 0x07, 0x2a, 0xbd, 0x01, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x65, + 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x74, 0x12, 0x1c, 0x0a, + 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x4c, + 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x4c, 0x45, 0x56, + 0x45, 0x4c, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x45, 0x44, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x57, 0x45, + 0x44, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x45, 0x48, 0x41, + 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x50, 0x41, 0x55, 0x53, 0x49, + 0x4e, 0x47, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x45, 0x48, + 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x44, 0x52, 0x4f, 0x50, + 0x53, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x45, 0x48, 0x41, + 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x43, 0x4f, 0x41, 0x43, 0x48, + 0x49, 0x4e, 0x47, 0x10, 0x04, 0x2a, 0x84, 0x02, 0x0a, 0x14, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, + 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, + 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x10, 0x00, + 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, + 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x10, + 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, + 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x72, 0x6f, 0x70, + 0x68, 0x79, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, + 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, + 0x48, 0x65, 0x72, 0x6f, 0x10, 0x04, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x50, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x5f, 0x54, 0x72, 0x6f, 0x70, 0x68, 0x79, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, - 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x03, 0x12, 0x1f, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, - 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x10, 0x04, 0x12, 0x23, - 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, - 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, - 0x6e, 0x10, 0x05, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x65, - 0x61, 0x6d, 0x10, 0x06, 0x2a, 0x95, 0x01, 0x0a, 0x17, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4f, 0x4b, - 0x10, 0x00, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, - 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x10, 0x01, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x5f, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x10, 0x02, 0x2a, 0x4f, 0x0a, 0x0c, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x12, 0x12, 0x0a, 0x0e, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x10, 0x00, - 0x12, 0x15, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x47, 0x4f, 0x4f, 0x44, - 0x5f, 0x47, 0x55, 0x59, 0x53, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x43, 0x4d, 0x5f, 0x42, 0x41, 0x44, 0x5f, 0x47, 0x55, 0x59, 0x53, 0x10, 0x02, 0x2a, 0xb4, 0x01, - 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x42, 0x61, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x42, 0x41, - 0x4e, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, - 0x5f, 0x42, 0x41, 0x4e, 0x5f, 0x52, 0x45, 0x50, 0x4f, 0x52, 0x54, 0x53, 0x10, 0x01, 0x12, 0x2b, - 0x0a, 0x27, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, - 0x49, 0x54, 0x59, 0x5f, 0x42, 0x41, 0x4e, 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x41, 0x52, - 0x59, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, - 0x5f, 0x42, 0x41, 0x4e, 0x5f, 0x50, 0x52, 0x45, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x52, 0x4f, - 0x4c, 0x45, 0x10, 0x03, 0x2a, 0x7d, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x44, - 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x5f, 0x55, 0x4e, 0x44, 0x45, 0x43, 0x4c, 0x41, 0x52, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x61, 0x64, - 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x45, 0x44, 0x10, - 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, - 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x44, 0x45, 0x43, 0x4c, 0x49, 0x4e, 0x45, - 0x44, 0x10, 0x02, 0x2a, 0xba, 0x04, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x4a, 0x6f, 0x69, 0x6e, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1c, 0x0a, 0x18, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, - 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x41, 0x4c, - 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x49, 0x4e, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x01, 0x12, - 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, - 0x55, 0x4c, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4c, 0x4f, 0x42, 0x42, - 0x59, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, - 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, - 0x54, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, + 0x5f, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x10, 0x05, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, + 0x5f, 0x45, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x53, 0x6c, 0x6f, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x06, 0x2a, 0x95, 0x01, 0x0a, + 0x17, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4f, 0x4b, 0x10, 0x00, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, + 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x41, + 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x10, 0x01, 0x12, 0x25, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4f, 0x66, 0x66, 0x6c, 0x69, + 0x6e, 0x65, 0x10, 0x02, 0x2a, 0x4f, 0x0a, 0x0c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, + 0x50, 0x49, 0x43, 0x4b, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, + 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x43, 0x4d, 0x5f, 0x47, 0x4f, 0x4f, 0x44, 0x5f, 0x47, 0x55, 0x59, 0x53, 0x10, 0x01, 0x12, + 0x14, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4d, 0x5f, 0x42, 0x41, 0x44, 0x5f, 0x47, + 0x55, 0x59, 0x53, 0x10, 0x02, 0x2a, 0xb4, 0x01, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, + 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x42, 0x61, 0x6e, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, + 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x42, 0x41, 0x4e, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, + 0x4e, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, + 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x42, 0x41, 0x4e, 0x5f, 0x52, 0x45, 0x50, + 0x4f, 0x52, 0x54, 0x53, 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, + 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x42, 0x41, 0x4e, 0x5f, + 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x41, 0x52, 0x59, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, + 0x4e, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, + 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x42, 0x41, 0x4e, 0x5f, 0x50, 0x52, 0x45, + 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x10, 0x03, 0x2a, 0xa7, 0x01, 0x0a, + 0x13, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x55, 0x4e, 0x44, 0x45, + 0x43, 0x4c, 0x41, 0x52, 0x45, 0x44, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, + 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, + 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x5f, 0x44, 0x45, 0x43, 0x4c, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24, + 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x5f, 0x44, 0x45, 0x43, 0x4c, 0x49, 0x4e, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x51, + 0x55, 0x45, 0x55, 0x45, 0x10, 0x03, 0x2a, 0xba, 0x04, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x4a, + 0x6f, 0x69, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1c, + 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, + 0x4c, 0x54, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, - 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x44, 0x45, 0x4e, 0x49, 0x45, 0x44, 0x10, 0x04, - 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, - 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x5f, 0x45, 0x52, 0x52, - 0x4f, 0x52, 0x10, 0x05, 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, - 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, - 0x43, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, 0x22, 0x0a, 0x1e, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, - 0x5f, 0x49, 0x4e, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x59, 0x10, 0x07, - 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, - 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x4e, 0x4f, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, 0x46, 0x4f, - 0x55, 0x4e, 0x44, 0x10, 0x08, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, - 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, - 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x09, 0x12, 0x32, 0x0a, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, - 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, - 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, - 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x0a, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, - 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x0b, 0x12, 0x29, 0x0a, 0x25, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x43, 0x55, 0x53, - 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x43, 0x4f, 0x4f, 0x4c, 0x44, 0x4f, 0x57, - 0x4e, 0x10, 0x0c, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, - 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x42, 0x55, 0x53, 0x59, 0x10, 0x0d, 0x12, 0x20, - 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, - 0x4c, 0x54, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x0e, - 0x2a, 0x71, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x27, - 0x0a, 0x23, 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x4d, - 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x10, 0x00, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x44, 0x4f, 0x54, - 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, - 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, - 0x63, 0x10, 0x01, 0x2a, 0xf6, 0x01, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, - 0x69, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, - 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x2b, - 0x0a, 0x27, 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x49, 0x4e, 0x5f, 0x47, 0x41, 0x4d, 0x45, + 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, + 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4c, + 0x4f, 0x42, 0x42, 0x59, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, + 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, + 0x52, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x03, 0x12, + 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, + 0x55, 0x4c, 0x54, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x44, 0x45, 0x4e, 0x49, 0x45, + 0x44, 0x10, 0x04, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, + 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x5f, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x49, 0x4e, 0x43, 0x4f, + 0x52, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, + 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, + 0x55, 0x4c, 0x54, 0x5f, 0x49, 0x4e, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x50, 0x41, 0x52, 0x54, + 0x59, 0x10, 0x07, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, + 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x4e, 0x4f, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, + 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x08, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x4c, 0x4f, 0x42, + 0x42, 0x59, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x09, 0x12, 0x32, 0x0a, 0x2e, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x43, 0x55, + 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, + 0x45, 0x43, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x0a, 0x12, 0x1c, 0x0a, + 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, + 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x0b, 0x12, 0x29, 0x0a, 0x25, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, + 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x43, 0x4f, 0x4f, 0x4c, + 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x0c, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, + 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x42, 0x55, 0x53, 0x59, 0x10, + 0x0d, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, + 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x54, 0x49, 0x4d, + 0x45, 0x10, 0x0e, 0x2a, 0x71, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x5f, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x10, 0x00, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, + 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, + 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x41, 0x75, 0x74, 0x6f, 0x6d, + 0x61, 0x74, 0x69, 0x63, 0x10, 0x01, 0x2a, 0xf6, 0x01, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x53, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, + 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, + 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, + 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, + 0x00, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, + 0x63, 0x65, 0x5f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x10, 0x01, 0x12, 0x2c, + 0x0a, 0x28, 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, - 0x46, 0x69, 0x72, 0x73, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x10, 0x01, 0x12, 0x2c, 0x0a, 0x28, 0x6b, - 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, - 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x53, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x50, 0x69, 0x63, 0x6b, 0x10, 0x02, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x44, - 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x52, 0x61, 0x64, 0x69, 0x61, - 0x6e, 0x74, 0x10, 0x03, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, - 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x44, 0x69, 0x72, 0x65, 0x10, 0x04, 0x2a, 0x62, 0x0a, 0x0d, - 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x12, 0x19, 0x0a, - 0x15, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x5f, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, - 0x56, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x56, 0x6f, 0x74, 0x65, 0x5f, 0x4e, 0x45, 0x47, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, - 0x2a, 0x78, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, - 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x63, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, - 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, - 0x55, 0x6e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x10, 0x02, 0x2a, 0x8b, 0x01, 0x0a, 0x12, 0x45, - 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x4d, 0x52, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x4d, 0x4d, 0x52, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x4d, 0x4d, 0x52, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x6c, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, 0x6b, - 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x4d, 0x52, 0x54, - 0x79, 0x70, 0x65, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x65, - 0x74, 0x69, 0x74, 0x69, 0x76, 0x65, 0x10, 0x03, 0x2a, 0x73, 0x0a, 0x11, 0x45, 0x44, 0x4f, 0x54, - 0x41, 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, - 0x18, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, - 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x5f, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x6b, - 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x5f, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x10, 0x02, 0x2a, 0xd0, 0x01, - 0x0a, 0x09, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x4d, - 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x41, 0x53, 0x55, 0x41, 0x4c, - 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x43, 0x4f, 0x4f, 0x50, 0x5f, 0x42, 0x4f, 0x54, 0x53, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, - 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x45, - 0x54, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a, 0x4d, 0x41, 0x54, 0x43, - 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x57, 0x45, 0x45, 0x4b, 0x45, 0x4e, 0x44, 0x5f, 0x54, - 0x4f, 0x55, 0x52, 0x4e, 0x45, 0x59, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x4d, 0x41, 0x54, 0x43, - 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x07, 0x12, 0x20, - 0x0a, 0x1c, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4f, 0x41, - 0x43, 0x48, 0x45, 0x53, 0x5f, 0x43, 0x48, 0x41, 0x4c, 0x4c, 0x45, 0x4e, 0x47, 0x45, 0x10, 0x0c, - 0x12, 0x1e, 0x0a, 0x1a, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, - 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x10, 0x0e, - 0x2a, 0x9c, 0x02, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, 0x69, 0x66, 0x66, - 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, - 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x49, 0x56, 0x45, - 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, - 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x45, 0x41, 0x53, 0x59, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x42, - 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x4d, 0x45, - 0x44, 0x49, 0x55, 0x4d, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, - 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x48, 0x41, 0x52, 0x44, 0x10, 0x03, 0x12, + 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x50, 0x69, 0x63, 0x6b, 0x10, 0x02, 0x12, 0x29, 0x0a, 0x25, + 0x6b, 0x5f, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, + 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x52, 0x61, + 0x64, 0x69, 0x61, 0x6e, 0x74, 0x10, 0x03, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x44, 0x4f, 0x54, + 0x41, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x44, 0x69, 0x72, 0x65, 0x10, 0x04, 0x2a, + 0x62, 0x0a, 0x0d, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, + 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, + 0x65, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x44, + 0x4f, 0x54, 0x41, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x5f, 0x50, 0x4f, 0x53, + 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x56, 0x6f, 0x74, 0x65, 0x5f, 0x4e, 0x45, 0x47, 0x41, 0x54, 0x49, 0x56, + 0x45, 0x10, 0x02, 0x2a, 0x78, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, + 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, + 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x44, + 0x4f, 0x54, 0x41, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x5f, 0x55, 0x6e, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x10, 0x02, 0x2a, 0x8b, 0x01, + 0x0a, 0x12, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x4d, 0x52, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x4d, 0x52, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, + 0x41, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x4d, 0x52, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x10, 0x01, 0x12, 0x2b, + 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, + 0x4d, 0x52, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6f, + 0x6d, 0x70, 0x65, 0x74, 0x69, 0x74, 0x69, 0x76, 0x65, 0x10, 0x03, 0x2a, 0x73, 0x0a, 0x11, 0x45, + 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, 0x6f, + 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x1e, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x10, 0x01, 0x12, 0x20, + 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x4d, 0x52, 0x42, 0x6f, 0x6f, 0x73, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x10, 0x02, + 0x2a, 0xd0, 0x01, 0x0a, 0x09, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, + 0x0a, 0x11, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x41, 0x53, + 0x55, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4f, 0x4f, 0x50, 0x5f, 0x42, 0x4f, 0x54, 0x53, 0x10, 0x01, 0x12, + 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4f, + 0x4d, 0x50, 0x45, 0x54, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a, 0x4d, + 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x57, 0x45, 0x45, 0x4b, 0x45, 0x4e, + 0x44, 0x5f, 0x54, 0x4f, 0x55, 0x52, 0x4e, 0x45, 0x59, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x4d, + 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, + 0x07, 0x12, 0x20, 0x0a, 0x1c, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x43, 0x4f, 0x41, 0x43, 0x48, 0x45, 0x53, 0x5f, 0x43, 0x48, 0x41, 0x4c, 0x4c, 0x45, 0x4e, 0x47, + 0x45, 0x10, 0x0c, 0x12, 0x1e, 0x0a, 0x1a, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x50, 0x4f, 0x4f, + 0x4c, 0x10, 0x0e, 0x2a, 0x9c, 0x02, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x42, 0x6f, 0x74, 0x44, + 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x4f, 0x54, + 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x50, 0x41, 0x53, 0x53, + 0x49, 0x56, 0x45, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, + 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x45, 0x41, 0x53, 0x59, 0x10, 0x01, 0x12, 0x19, + 0x0a, 0x15, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, + 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x55, 0x4d, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x4f, 0x54, + 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x48, 0x41, 0x52, 0x44, + 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, + 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x55, 0x4e, 0x46, 0x41, 0x49, 0x52, 0x10, 0x04, 0x12, 0x1a, 0x0a, + 0x16, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, + 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x42, 0x4f, 0x54, + 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x45, 0x58, 0x54, 0x52, + 0x41, 0x31, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, + 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x45, 0x58, 0x54, 0x52, 0x41, 0x32, 0x10, 0x07, 0x12, 0x19, 0x0a, 0x15, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, - 0x59, 0x5f, 0x55, 0x4e, 0x46, 0x41, 0x49, 0x52, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x4f, - 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x49, 0x4e, 0x56, - 0x41, 0x4c, 0x49, 0x44, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, - 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x45, 0x58, 0x54, 0x52, 0x41, 0x31, 0x10, - 0x06, 0x12, 0x19, 0x0a, 0x15, 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, - 0x4c, 0x54, 0x59, 0x5f, 0x45, 0x58, 0x54, 0x52, 0x41, 0x32, 0x10, 0x07, 0x12, 0x19, 0x0a, 0x15, - 0x42, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x45, - 0x58, 0x54, 0x52, 0x41, 0x33, 0x10, 0x08, 0x12, 0x16, 0x0a, 0x12, 0x42, 0x4f, 0x54, 0x5f, 0x44, - 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x4e, 0x50, 0x58, 0x10, 0x09, 0x2a, - 0xae, 0x06, 0x0a, 0x0d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, - 0x45, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, - 0x44, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4c, 0x41, 0x4e, 0x49, 0x4e, - 0x47, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, - 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x4b, 0x10, 0x02, 0x12, 0x16, 0x0a, - 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, - 0x4f, 0x41, 0x4d, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, - 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x45, 0x54, 0x52, 0x45, 0x41, 0x54, 0x10, 0x04, - 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, - 0x45, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x10, 0x05, 0x12, - 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, - 0x5f, 0x53, 0x49, 0x44, 0x45, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x55, - 0x4e, 0x45, 0x10, 0x07, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, - 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, - 0x5f, 0x54, 0x4f, 0x50, 0x10, 0x08, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, - 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x54, 0x4f, 0x57, - 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x44, 0x10, 0x09, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x54, - 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x42, 0x4f, 0x54, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x45, - 0x4e, 0x44, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x4f, 0x50, 0x10, 0x0b, 0x12, 0x22, - 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, - 0x44, 0x45, 0x46, 0x45, 0x4e, 0x44, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x44, - 0x10, 0x0c, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, - 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x45, 0x4e, 0x44, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, - 0x5f, 0x42, 0x4f, 0x54, 0x10, 0x0d, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, - 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x53, 0x53, 0x45, 0x4d, 0x42, 0x4c, 0x45, - 0x10, 0x0e, 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, - 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x53, 0x53, 0x45, 0x4d, 0x42, 0x4c, 0x45, 0x5f, 0x57, 0x49, 0x54, - 0x48, 0x5f, 0x48, 0x55, 0x4d, 0x41, 0x4e, 0x53, 0x10, 0x0f, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x5f, 0x52, 0x4f, 0x41, 0x4d, 0x10, 0x10, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x46, 0x41, 0x52, 0x4d, 0x10, 0x11, 0x12, - 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, - 0x5f, 0x44, 0x45, 0x46, 0x45, 0x4e, 0x44, 0x5f, 0x41, 0x4c, 0x4c, 0x59, 0x10, 0x12, 0x12, 0x23, - 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, - 0x45, 0x56, 0x41, 0x53, 0x49, 0x56, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x45, 0x55, 0x56, 0x45, 0x52, - 0x53, 0x10, 0x13, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, - 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x10, 0x14, 0x12, 0x16, 0x0a, - 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x49, - 0x54, 0x45, 0x4d, 0x10, 0x15, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, - 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x57, 0x41, 0x52, 0x44, 0x10, 0x16, 0x12, 0x1b, 0x0a, - 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x43, - 0x4f, 0x4d, 0x50, 0x41, 0x4e, 0x49, 0x4f, 0x4e, 0x10, 0x17, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x55, 0x54, 0x4f, - 0x52, 0x49, 0x41, 0x4c, 0x5f, 0x42, 0x4f, 0x53, 0x53, 0x10, 0x18, 0x12, 0x18, 0x0a, 0x14, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4d, 0x49, 0x4e, - 0x49, 0x4f, 0x4e, 0x10, 0x19, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, - 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x50, 0x4f, 0x53, 0x54, 0x10, 0x1a, - 0x2a, 0xf3, 0x01, 0x0a, 0x0e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, - 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, - 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, - 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, - 0x45, 0x5f, 0x45, 0x4e, 0x47, 0x4c, 0x49, 0x53, 0x48, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x4d, - 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x55, - 0x53, 0x53, 0x49, 0x41, 0x4e, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, - 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x48, 0x49, 0x4e, 0x45, 0x53, - 0x45, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, - 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x4b, 0x4f, 0x52, 0x45, 0x41, 0x4e, 0x10, 0x04, 0x12, 0x1a, + 0x59, 0x5f, 0x45, 0x58, 0x54, 0x52, 0x41, 0x33, 0x10, 0x08, 0x12, 0x16, 0x0a, 0x12, 0x42, 0x4f, + 0x54, 0x5f, 0x44, 0x49, 0x46, 0x46, 0x49, 0x43, 0x55, 0x4c, 0x54, 0x59, 0x5f, 0x4e, 0x50, 0x58, + 0x10, 0x09, 0x2a, 0xae, 0x06, 0x0a, 0x0d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, + 0x4d, 0x4f, 0x44, 0x45, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, + 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4c, 0x41, + 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, + 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x4b, 0x10, 0x02, + 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, + 0x45, 0x5f, 0x52, 0x4f, 0x41, 0x4d, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x45, 0x54, 0x52, 0x45, 0x41, + 0x54, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, + 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x50, + 0x10, 0x05, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, + 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x49, 0x44, 0x45, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x10, 0x06, 0x12, + 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, + 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x10, 0x07, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x54, 0x4f, + 0x57, 0x45, 0x52, 0x5f, 0x54, 0x4f, 0x50, 0x10, 0x08, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, + 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x44, 0x10, 0x09, 0x12, 0x20, 0x0a, 0x1c, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x55, 0x53, + 0x48, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x42, 0x4f, 0x54, 0x10, 0x0a, 0x12, 0x22, 0x0a, + 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x44, + 0x45, 0x46, 0x45, 0x4e, 0x44, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x4f, 0x50, 0x10, + 0x0b, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, + 0x44, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x45, 0x4e, 0x44, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, + 0x4d, 0x49, 0x44, 0x10, 0x0c, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, + 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x45, 0x4e, 0x44, 0x5f, 0x54, 0x4f, + 0x57, 0x45, 0x52, 0x5f, 0x42, 0x4f, 0x54, 0x10, 0x0d, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x53, 0x53, 0x45, 0x4d, + 0x42, 0x4c, 0x45, 0x10, 0x0e, 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, + 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x53, 0x53, 0x45, 0x4d, 0x42, 0x4c, 0x45, 0x5f, + 0x57, 0x49, 0x54, 0x48, 0x5f, 0x48, 0x55, 0x4d, 0x41, 0x4e, 0x53, 0x10, 0x0f, 0x12, 0x1b, 0x0a, + 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, + 0x45, 0x41, 0x4d, 0x5f, 0x52, 0x4f, 0x41, 0x4d, 0x10, 0x10, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x46, 0x41, 0x52, 0x4d, + 0x10, 0x11, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, + 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x45, 0x4e, 0x44, 0x5f, 0x41, 0x4c, 0x4c, 0x59, 0x10, + 0x12, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, + 0x44, 0x45, 0x5f, 0x45, 0x56, 0x41, 0x53, 0x49, 0x56, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x45, 0x55, + 0x56, 0x45, 0x52, 0x53, 0x10, 0x13, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, + 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x10, 0x14, + 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, + 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x15, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x57, 0x41, 0x52, 0x44, 0x10, 0x16, + 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, + 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x4e, 0x49, 0x4f, 0x4e, 0x10, 0x17, 0x12, 0x1f, 0x0a, + 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, + 0x55, 0x54, 0x4f, 0x52, 0x49, 0x41, 0x4c, 0x5f, 0x42, 0x4f, 0x53, 0x53, 0x10, 0x18, 0x12, 0x18, + 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, + 0x4d, 0x49, 0x4e, 0x49, 0x4f, 0x4e, 0x10, 0x19, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x42, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x55, 0x54, 0x50, 0x4f, 0x53, + 0x54, 0x10, 0x1a, 0x2a, 0xf3, 0x01, 0x0a, 0x0e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, + 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, + 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, + 0x55, 0x41, 0x47, 0x45, 0x5f, 0x45, 0x4e, 0x47, 0x4c, 0x49, 0x53, 0x48, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, - 0x5f, 0x53, 0x50, 0x41, 0x4e, 0x49, 0x53, 0x48, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x4d, 0x41, - 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4f, 0x52, - 0x54, 0x55, 0x47, 0x55, 0x45, 0x53, 0x45, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x41, 0x54, - 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x45, 0x4e, 0x47, 0x4c, - 0x49, 0x53, 0x48, 0x32, 0x10, 0x07, 0x2a, 0xd8, 0x02, 0x0a, 0x1a, 0x45, 0x54, 0x6f, 0x75, 0x72, - 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, - 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x10, 0x00, 0x12, 0x27, - 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, - 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4d, - 0x69, 0x73, 0x73, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x54, 0x6f, - 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, - 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x4f, - 0x4b, 0x10, 0x02, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, + 0x5f, 0x52, 0x55, 0x53, 0x53, 0x49, 0x41, 0x4e, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x41, + 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x48, 0x49, + 0x4e, 0x45, 0x53, 0x45, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, + 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x4b, 0x4f, 0x52, 0x45, 0x41, 0x4e, 0x10, + 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, + 0x41, 0x47, 0x45, 0x5f, 0x53, 0x50, 0x41, 0x4e, 0x49, 0x53, 0x48, 0x10, 0x05, 0x12, 0x1d, 0x0a, + 0x19, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, + 0x50, 0x4f, 0x52, 0x54, 0x55, 0x47, 0x55, 0x45, 0x53, 0x45, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, + 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4c, 0x41, 0x4e, 0x47, 0x55, 0x41, 0x47, 0x45, 0x5f, 0x45, + 0x4e, 0x47, 0x4c, 0x49, 0x53, 0x48, 0x32, 0x10, 0x07, 0x2a, 0xd8, 0x02, 0x0a, 0x1a, 0x45, 0x54, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, + 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x54, + 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, + 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x10, + 0x00, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, + 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, + 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, + 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x45, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x64, 0x4f, 0x4b, 0x10, 0x02, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, + 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x53, 0x65, 0x65, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x79, + 0x65, 0x10, 0x03, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x5f, 0x53, 0x65, 0x65, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x65, 0x10, 0x03, - 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, - 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x5f, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x52, 0x65, 0x66, 0x75, - 0x6e, 0x64, 0x10, 0x04, 0x12, 0x2c, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, - 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4e, 0x41, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x01, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, - 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x5f, 0x45, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x6f, 0x6f, 0x6e, 0x10, - 0x65, 0x2a, 0xd7, 0x05, 0x0a, 0x0d, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, - 0x6f, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, - 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, - 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, - 0x6f, 0x6d, 0x65, 0x5f, 0x52, 0x61, 0x64, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x02, - 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, - 0x6f, 0x6d, 0x65, 0x5f, 0x44, 0x69, 0x72, 0x65, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, - 0x03, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, - 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x56, 0x69, 0x63, 0x74, - 0x6f, 0x72, 0x79, 0x10, 0x04, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x54, 0x65, 0x61, 0x6d, 0x57, - 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x10, 0x05, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x31, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x06, 0x12, 0x22, 0x0a, 0x1e, 0x6b, - 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x32, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x07, 0x12, - 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, - 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x33, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, - 0x79, 0x10, 0x08, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, - 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x34, 0x56, 0x69, - 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x09, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x35, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x6b, - 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x36, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x0b, 0x12, - 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, - 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x37, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, - 0x79, 0x10, 0x0c, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, - 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x38, 0x56, 0x69, - 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x0d, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, - 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x40, 0x12, 0x24, 0x0a, 0x20, + 0x61, 0x74, 0x65, 0x5f, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x52, + 0x65, 0x66, 0x75, 0x6e, 0x64, 0x10, 0x04, 0x12, 0x2c, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x54, 0x6f, + 0x75, 0x72, 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, + 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x4e, 0x41, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x54, 0x6f, 0x75, 0x72, + 0x6e, 0x65, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x45, 0x78, 0x70, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x6f, + 0x6f, 0x6e, 0x10, 0x65, 0x2a, 0xd7, 0x05, 0x0a, 0x0d, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, + 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, + 0x6e, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, + 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x52, 0x61, 0x64, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, + 0x79, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, + 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x44, 0x69, 0x72, 0x65, 0x56, 0x69, 0x63, 0x74, 0x6f, + 0x72, 0x79, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x56, + 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x04, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x54, 0x65, + 0x61, 0x6d, 0x57, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x10, 0x05, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x31, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x06, 0x12, 0x22, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, + 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x32, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, + 0x10, 0x07, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, + 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x33, 0x56, 0x69, 0x63, + 0x74, 0x6f, 0x72, 0x79, 0x10, 0x08, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x34, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x09, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x35, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x0a, 0x12, 0x22, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, + 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x36, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, + 0x10, 0x0b, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, + 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x37, 0x56, 0x69, 0x63, + 0x74, 0x6f, 0x72, 0x79, 0x10, 0x0c, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x38, 0x56, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x10, 0x0d, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, + 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, + 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x50, 0x6f, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x40, 0x12, + 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, + 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x4c, 0x65, 0x61, + 0x76, 0x65, 0x72, 0x10, 0x41, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x64, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x61, 0x73, 0x68, 0x10, 0x42, + 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, + 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x4e, 0x65, + 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0x43, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, - 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x72, - 0x10, 0x41, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, - 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x72, 0x61, 0x73, 0x68, 0x10, 0x42, 0x12, 0x2a, 0x0a, - 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, - 0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x4e, 0x65, 0x76, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0x43, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x74, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x65, 0x64, 0x10, - 0x44, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, - 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x53, - 0x75, 0x73, 0x70, 0x69, 0x63, 0x69, 0x6f, 0x75, 0x73, 0x10, 0x45, 0x2a, 0x86, 0x01, 0x0a, 0x09, - 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x41, 0x4e, - 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, - 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x41, - 0x46, 0x45, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x41, 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x41, 0x4e, 0x45, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x49, 0x44, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x41, - 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4a, 0x55, 0x4e, 0x47, 0x4c, 0x45, 0x10, 0x04, - 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x4f, - 0x41, 0x4d, 0x10, 0x05, 0x2a, 0x8c, 0x03, 0x0a, 0x0a, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x37, 0x5f, 0x4d, 0x69, 0x64, 0x77, 0x65, 0x65, 0x6b, 0x10, - 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x54, 0x49, 0x37, 0x5f, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x10, 0x02, 0x12, 0x1d, - 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, - 0x49, 0x37, 0x5f, 0x41, 0x6c, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x03, 0x12, 0x1c, 0x0a, - 0x18, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, - 0x38, 0x5f, 0x4d, 0x69, 0x64, 0x77, 0x65, 0x65, 0x6b, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x6b, - 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x38, 0x5f, - 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x42, - 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x38, 0x5f, 0x41, 0x6c, 0x6c, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x42, 0x61, - 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x30, 0x10, 0x07, 0x12, 0x22, - 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, - 0x49, 0x31, 0x31, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x6f, 0x66, 0x66, 0x73, 0x44, 0x61, 0x79, 0x31, - 0x10, 0x08, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, - 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x31, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x6f, 0x66, 0x66, 0x73, - 0x44, 0x61, 0x79, 0x32, 0x10, 0x09, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, - 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x31, 0x5f, 0x50, 0x6c, 0x61, 0x79, - 0x6f, 0x66, 0x66, 0x73, 0x44, 0x61, 0x79, 0x33, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x31, 0x5f, - 0x50, 0x6c, 0x61, 0x79, 0x6f, 0x66, 0x66, 0x73, 0x44, 0x61, 0x79, 0x34, 0x10, 0x0b, 0x12, 0x23, - 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, - 0x49, 0x31, 0x31, 0x5f, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, - 0x64, 0x10, 0x0c, 0x2a, 0xd4, 0x01, 0x0a, 0x0d, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x17, 0x0a, 0x13, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, - 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x1d, - 0x0a, 0x19, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, - 0x55, 0x4e, 0x53, 0x55, 0x42, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x1b, 0x0a, - 0x17, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, - 0x55, 0x42, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x45, - 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x41, 0x43, 0x43, 0x45, - 0x50, 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, - 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x45, 0x44, - 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, - 0x54, 0x55, 0x53, 0x5f, 0x43, 0x4f, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x44, 0x10, 0x05, 0x12, - 0x19, 0x0a, 0x15, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, - 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x06, 0x2a, 0xb2, 0x01, 0x0a, 0x0d, 0x45, - 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x13, - 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, - 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, - 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x41, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x4c, - 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x41, 0x10, - 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, - 0x4f, 0x4e, 0x5f, 0x57, 0x45, 0x55, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, - 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x45, 0x45, 0x55, 0x10, 0x04, 0x12, - 0x17, 0x0a, 0x13, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, - 0x5f, 0x43, 0x48, 0x49, 0x4e, 0x41, 0x10, 0x05, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, - 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x45, 0x41, 0x10, 0x06, 0x2a, - 0xac, 0x02, 0x0a, 0x0b, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x54, 0x69, 0x65, 0x72, 0x12, - 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x55, - 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, - 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x41, 0x4d, 0x41, 0x54, 0x45, 0x55, 0x52, 0x10, 0x01, 0x12, - 0x1c, 0x0a, 0x18, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x50, - 0x52, 0x4f, 0x46, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x15, 0x0a, - 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x4e, - 0x4f, 0x52, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, - 0x49, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x4c, - 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, - 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x4c, 0x45, - 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x50, 0x43, 0x5f, 0x51, 0x55, - 0x41, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x06, 0x12, 0x24, 0x0a, 0x20, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x50, 0x43, 0x5f, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x07, 0x12, - 0x1a, 0x0a, 0x16, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x44, - 0x50, 0x43, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x10, 0x08, 0x12, 0x21, 0x0a, 0x1d, 0x4c, - 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x50, 0x43, 0x5f, 0x4c, - 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x53, 0x10, 0x09, 0x2a, 0x7c, - 0x0a, 0x13, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x54, 0x69, 0x65, 0x72, 0x43, 0x61, 0x74, - 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x1c, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, - 0x54, 0x49, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, 0x41, 0x4d, - 0x41, 0x54, 0x45, 0x55, 0x52, 0x10, 0x01, 0x12, 0x25, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, 0x55, - 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, - 0x50, 0x52, 0x4f, 0x46, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1c, - 0x0a, 0x18, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x43, 0x41, - 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, 0x44, 0x50, 0x43, 0x10, 0x03, 0x2a, 0x5b, 0x0a, 0x0f, - 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, - 0x19, 0x0a, 0x15, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x44, 0x49, 0x56, 0x49, 0x53, 0x49, - 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, - 0x41, 0x47, 0x55, 0x45, 0x5f, 0x44, 0x49, 0x56, 0x49, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x10, - 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x44, 0x49, 0x56, 0x49, - 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x49, 0x10, 0x02, 0x2a, 0xab, 0x01, 0x0a, 0x18, 0x45, 0x4c, - 0x65, 0x61, 0x67, 0x75, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x18, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, - 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, - 0x57, 0x4e, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x42, - 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x01, - 0x12, 0x1b, 0x0a, 0x17, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, - 0x43, 0x41, 0x53, 0x54, 0x5f, 0x54, 0x57, 0x49, 0x54, 0x43, 0x48, 0x10, 0x02, 0x12, 0x1c, 0x0a, - 0x18, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, - 0x54, 0x5f, 0x59, 0x4f, 0x55, 0x54, 0x55, 0x42, 0x45, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x4c, - 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, - 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x64, 0x2a, 0x86, 0x01, 0x0a, 0x0c, 0x45, 0x4c, 0x65, 0x61, - 0x67, 0x75, 0x65, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x45, 0x41, 0x47, - 0x55, 0x45, 0x5f, 0x50, 0x48, 0x41, 0x53, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, - 0x12, 0x23, 0x0a, 0x1f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x50, 0x48, 0x41, 0x53, 0x45, - 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x49, 0x46, - 0x49, 0x45, 0x52, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, - 0x50, 0x48, 0x41, 0x53, 0x45, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x54, 0x41, 0x47, - 0x45, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x50, 0x48, - 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x03, - 0x2a, 0xda, 0x0e, 0x0a, 0x12, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x75, 0x64, 0x69, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x4c, 0x45, 0x41, 0x47, 0x55, - 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, + 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, + 0x65, 0x64, 0x10, 0x44, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x4f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x4e, 0x6f, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x64, 0x5f, 0x53, 0x75, 0x73, 0x70, 0x69, 0x63, 0x69, 0x6f, 0x75, 0x73, 0x10, 0x45, 0x2a, 0x86, + 0x01, 0x0a, 0x09, 0x45, 0x4c, 0x61, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, + 0x4c, 0x41, 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, + 0x4e, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x53, 0x41, 0x46, 0x45, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x41, 0x4e, 0x45, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x41, + 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x49, 0x44, 0x10, 0x03, 0x12, 0x14, 0x0a, + 0x10, 0x4c, 0x41, 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4a, 0x55, 0x4e, 0x47, 0x4c, + 0x45, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x4e, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x52, 0x4f, 0x41, 0x4d, 0x10, 0x05, 0x2a, 0xd6, 0x04, 0x0a, 0x0a, 0x45, 0x42, 0x61, 0x64, + 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, + 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, + 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x5f, 0x54, 0x49, 0x37, 0x5f, 0x4d, 0x69, 0x64, 0x77, 0x65, 0x65, 0x6b, 0x10, 0x01, 0x12, 0x1b, + 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, + 0x49, 0x37, 0x5f, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x6b, + 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x37, 0x5f, + 0x41, 0x6c, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, + 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x38, 0x5f, 0x4d, + 0x69, 0x64, 0x77, 0x65, 0x65, 0x6b, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x42, + 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x38, 0x5f, 0x46, 0x69, 0x6e, + 0x61, 0x6c, 0x73, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x38, 0x5f, 0x41, 0x6c, 0x6c, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x30, 0x10, 0x07, 0x12, 0x22, 0x0a, 0x1e, 0x6b, + 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x31, + 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x6f, 0x66, 0x66, 0x73, 0x44, 0x61, 0x79, 0x31, 0x10, 0x08, 0x12, + 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, + 0x54, 0x49, 0x31, 0x31, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x6f, 0x66, 0x66, 0x73, 0x44, 0x61, 0x79, + 0x32, 0x10, 0x09, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x31, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x6f, 0x66, 0x66, + 0x73, 0x44, 0x61, 0x79, 0x33, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, 0x61, + 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x31, 0x5f, 0x50, 0x6c, 0x61, + 0x79, 0x6f, 0x66, 0x66, 0x73, 0x44, 0x61, 0x79, 0x34, 0x10, 0x0b, 0x12, 0x23, 0x0a, 0x1f, 0x6b, + 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x31, + 0x5f, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x10, 0x0c, + 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x5f, 0x54, 0x49, 0x31, 0x32, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x6f, 0x66, 0x66, 0x73, 0x44, 0x61, + 0x79, 0x31, 0x10, 0x0d, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x32, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x6f, 0x66, + 0x66, 0x73, 0x44, 0x61, 0x79, 0x32, 0x10, 0x0e, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x42, + 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, 0x32, 0x5f, 0x50, 0x6c, + 0x61, 0x79, 0x6f, 0x66, 0x66, 0x73, 0x44, 0x61, 0x79, 0x33, 0x10, 0x0f, 0x12, 0x23, 0x0a, 0x1f, + 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x54, 0x49, 0x31, + 0x32, 0x5f, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x57, 0x65, 0x65, 0x6b, 0x65, 0x6e, 0x64, 0x10, + 0x10, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x42, 0x61, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x5f, 0x54, 0x49, 0x31, 0x32, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x10, 0x11, + 0x2a, 0xd4, 0x01, 0x0a, 0x0d, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x17, 0x0a, 0x13, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, + 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x4c, + 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, + 0x55, 0x42, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x4c, 0x45, + 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x42, 0x4d, + 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x45, 0x41, 0x47, 0x55, + 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x45, + 0x44, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, + 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, + 0x1b, 0x0a, 0x17, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, + 0x5f, 0x43, 0x4f, 0x4e, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x44, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, + 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x06, 0x2a, 0xb2, 0x01, 0x0a, 0x0d, 0x45, 0x4c, 0x65, 0x61, + 0x67, 0x75, 0x65, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x13, 0x4c, 0x45, 0x41, + 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, + 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, + 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x41, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x45, 0x41, 0x47, + 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x41, 0x10, 0x02, 0x12, 0x15, + 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, + 0x57, 0x45, 0x55, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, + 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x45, 0x45, 0x55, 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x48, + 0x49, 0x4e, 0x41, 0x10, 0x05, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, + 0x52, 0x45, 0x47, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x45, 0x41, 0x10, 0x06, 0x2a, 0xac, 0x02, 0x0a, + 0x0b, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x54, 0x69, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x11, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x45, + 0x54, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, + 0x45, 0x52, 0x5f, 0x41, 0x4d, 0x41, 0x54, 0x45, 0x55, 0x52, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x50, 0x52, 0x4f, 0x46, + 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, + 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x4d, 0x49, 0x4e, 0x4f, 0x52, 0x10, + 0x03, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, + 0x5f, 0x4d, 0x41, 0x4a, 0x4f, 0x52, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x4c, 0x45, 0x41, 0x47, + 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x54, + 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x4c, 0x45, 0x41, 0x47, 0x55, + 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x50, 0x43, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x49, + 0x46, 0x49, 0x45, 0x52, 0x10, 0x06, 0x12, 0x24, 0x0a, 0x20, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x50, 0x43, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x07, 0x12, 0x1a, 0x0a, 0x16, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x50, 0x43, 0x5f, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x10, 0x08, 0x12, 0x21, 0x0a, 0x1d, 0x4c, 0x45, 0x41, 0x47, + 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x44, 0x50, 0x43, 0x5f, 0x4c, 0x45, 0x41, 0x47, + 0x55, 0x45, 0x5f, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x53, 0x10, 0x09, 0x2a, 0x7c, 0x0a, 0x13, 0x45, + 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x54, 0x69, 0x65, 0x72, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, + 0x72, 0x79, 0x12, 0x20, 0x0a, 0x1c, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, + 0x52, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, 0x41, 0x4d, 0x41, 0x54, 0x45, + 0x55, 0x52, 0x10, 0x01, 0x12, 0x25, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, + 0x49, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, 0x50, 0x52, 0x4f, + 0x46, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x4c, + 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, + 0x4f, 0x52, 0x59, 0x5f, 0x44, 0x50, 0x43, 0x10, 0x03, 0x2a, 0x5b, 0x0a, 0x0f, 0x45, 0x4c, 0x65, + 0x61, 0x67, 0x75, 0x65, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x15, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x44, 0x49, 0x56, 0x49, 0x53, 0x49, 0x4f, 0x4e, 0x5f, + 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x45, 0x41, 0x47, 0x55, + 0x45, 0x5f, 0x44, 0x49, 0x56, 0x49, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x10, 0x01, 0x12, 0x16, + 0x0a, 0x12, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x44, 0x49, 0x56, 0x49, 0x53, 0x49, 0x4f, + 0x4e, 0x5f, 0x49, 0x49, 0x10, 0x02, 0x2a, 0xab, 0x01, 0x0a, 0x18, 0x45, 0x4c, 0x65, 0x61, 0x67, + 0x75, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x18, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x42, 0x52, + 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, + 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x42, 0x52, 0x4f, 0x41, + 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x01, 0x12, 0x1b, 0x0a, + 0x17, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, + 0x54, 0x5f, 0x54, 0x57, 0x49, 0x54, 0x43, 0x48, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x4c, 0x45, + 0x41, 0x47, 0x55, 0x45, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x59, + 0x4f, 0x55, 0x54, 0x55, 0x42, 0x45, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x45, 0x41, 0x47, + 0x55, 0x45, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x5f, 0x4f, 0x54, 0x48, + 0x45, 0x52, 0x10, 0x64, 0x2a, 0x86, 0x01, 0x0a, 0x0c, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, + 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, + 0x50, 0x48, 0x41, 0x53, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x23, 0x0a, + 0x1f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x50, 0x48, 0x41, 0x53, 0x45, 0x5f, 0x52, 0x45, + 0x47, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, + 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x50, 0x48, 0x41, + 0x53, 0x45, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x54, 0x41, 0x47, 0x45, 0x10, 0x02, + 0x12, 0x1b, 0x0a, 0x17, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x50, 0x48, 0x41, 0x53, 0x45, + 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x03, 0x2a, 0xda, 0x0e, + 0x0a, 0x12, 0x45, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, + 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, + 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, + 0x47, 0x55, 0x45, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, + 0x02, 0x12, 0x25, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, + 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, + 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x03, 0x12, 0x28, 0x0a, 0x24, 0x4c, 0x45, 0x41, 0x47, + 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x5f, 0x41, 0x44, 0x44, + 0x10, 0x04, 0x12, 0x2b, 0x0a, 0x27, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, + 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x56, 0x4f, 0x4b, 0x45, 0x10, 0x05, 0x12, + 0x2c, 0x0a, 0x28, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, + 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x44, + 0x4d, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x06, 0x12, 0x29, 0x0a, + 0x25, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x45, + 0x41, 0x4d, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x07, 0x12, 0x2c, 0x0a, 0x28, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, - 0x23, 0x0a, 0x1f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, - 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x45, 0x44, - 0x49, 0x54, 0x10, 0x02, 0x12, 0x25, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x5f, 0x52, 0x45, + 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x08, 0x12, 0x2c, 0x0a, 0x28, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, + 0x41, 0x47, 0x55, 0x45, 0x5f, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, + 0x45, 0x44, 0x10, 0x09, 0x12, 0x2c, 0x0a, 0x28, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, - 0x55, 0x45, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x03, 0x12, 0x28, 0x0a, 0x24, 0x4c, + 0x55, 0x45, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x44, 0x44, 0x45, 0x44, + 0x10, 0x0a, 0x12, 0x28, 0x0a, 0x24, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, + 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x53, 0x55, 0x42, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x0b, 0x12, 0x2d, 0x0a, 0x29, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x50, + 0x52, 0x49, 0x5a, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x10, 0x0c, 0x12, 0x32, 0x0a, 0x2e, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x5f, - 0x41, 0x44, 0x44, 0x10, 0x04, 0x12, 0x2b, 0x0a, 0x27, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, - 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x56, 0x4f, 0x4b, 0x45, - 0x10, 0x05, 0x12, 0x2c, 0x0a, 0x28, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, + 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x50, 0x52, + 0x49, 0x5a, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x0d, 0x12, + 0x35, 0x0a, 0x31, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, + 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, + 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x5a, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x5f, + 0x49, 0x54, 0x45, 0x4d, 0x10, 0x0e, 0x12, 0x2a, 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, + 0x41, 0x47, 0x55, 0x45, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, + 0x10, 0x0f, 0x12, 0x28, 0x0a, 0x24, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, - 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x06, - 0x12, 0x29, 0x0a, 0x25, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, + 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x45, 0x4e, 0x44, 0x10, 0x10, 0x12, 0x2f, 0x0a, 0x2b, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x49, + 0x4e, 0x56, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x11, 0x12, 0x32, 0x0a, + 0x2e, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x4d, 0x4f, + 0x56, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, + 0x12, 0x12, 0x2d, 0x0a, 0x29, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, + 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x10, 0x13, + 0x12, 0x2a, 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, - 0x54, 0x52, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x07, 0x12, 0x2c, 0x0a, 0x28, 0x4c, + 0x54, 0x52, 0x45, 0x41, 0x4d, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, 0x14, 0x12, 0x28, 0x0a, 0x24, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, + 0x53, 0x57, 0x41, 0x50, 0x10, 0x15, 0x12, 0x28, 0x0a, 0x24, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, + 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x64, + 0x12, 0x29, 0x0a, 0x25, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, + 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, + 0x50, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x10, 0x65, 0x12, 0x2a, 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, - 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x08, 0x12, 0x2c, 0x0a, 0x28, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x55, 0x50, - 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x09, 0x12, 0x2c, 0x0a, 0x28, 0x4c, 0x45, 0x41, 0x47, 0x55, - 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, - 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x44, - 0x44, 0x45, 0x44, 0x10, 0x0a, 0x12, 0x28, 0x0a, 0x24, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, - 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x53, 0x55, 0x42, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x0b, 0x12, - 0x2d, 0x0a, 0x29, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, - 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x53, 0x45, - 0x54, 0x5f, 0x50, 0x52, 0x49, 0x5a, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x10, 0x0c, 0x12, 0x32, - 0x0a, 0x2e, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, - 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x44, 0x44, - 0x5f, 0x50, 0x52, 0x49, 0x5a, 0x45, 0x5f, 0x50, 0x4f, 0x4f, 0x4c, 0x5f, 0x49, 0x54, 0x45, 0x4d, - 0x10, 0x0d, 0x12, 0x35, 0x0a, 0x31, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, - 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, - 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x5a, 0x45, 0x5f, 0x50, 0x4f, - 0x4f, 0x4c, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x0e, 0x12, 0x2a, 0x0a, 0x26, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x53, 0x54, - 0x41, 0x52, 0x54, 0x10, 0x0f, 0x12, 0x28, 0x0a, 0x24, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, - 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x45, 0x4e, 0x44, 0x10, 0x10, 0x12, - 0x2f, 0x0a, 0x2b, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, - 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x44, - 0x44, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x11, - 0x12, 0x32, 0x0a, 0x2e, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, - 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, - 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x45, - 0x41, 0x4d, 0x10, 0x12, 0x12, 0x2d, 0x0a, 0x29, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, - 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, - 0x55, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, - 0x44, 0x10, 0x13, 0x12, 0x2a, 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, - 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, - 0x45, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, 0x14, 0x12, - 0x28, 0x0a, 0x24, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, - 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x54, 0x45, - 0x41, 0x4d, 0x5f, 0x53, 0x57, 0x41, 0x50, 0x10, 0x15, 0x12, 0x28, 0x0a, 0x24, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, - 0x45, 0x10, 0x64, 0x12, 0x29, 0x0a, 0x25, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, + 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x41, 0x44, 0x44, + 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x66, 0x12, 0x2d, 0x0a, 0x29, 0x4c, 0x45, 0x41, 0x47, 0x55, + 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, + 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, + 0x54, 0x45, 0x41, 0x4d, 0x10, 0x67, 0x12, 0x2f, 0x0a, 0x2b, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, + 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x41, 0x44, 0x56, 0x41, + 0x4e, 0x43, 0x49, 0x4e, 0x47, 0x10, 0x68, 0x12, 0x26, 0x0a, 0x22, 0x4c, 0x45, 0x41, 0x47, 0x55, + 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, + 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, 0x69, 0x12, + 0x2a, 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, + 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, + 0x5f, 0x50, 0x4f, 0x50, 0x55, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x6a, 0x12, 0x2b, 0x0a, 0x27, 0x4c, + 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x43, 0x4f, 0x4d, + 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x6b, 0x12, 0x39, 0x0a, 0x35, 0x4c, 0x45, 0x41, 0x47, + 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, + 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x45, + 0x43, 0x4f, 0x4e, 0x44, 0x41, 0x52, 0x59, 0x5f, 0x41, 0x44, 0x56, 0x41, 0x4e, 0x43, 0x49, 0x4e, + 0x47, 0x10, 0x6c, 0x12, 0x38, 0x0a, 0x34, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, - 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x10, 0x65, 0x12, 0x2a, - 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, - 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, - 0x41, 0x44, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x66, 0x12, 0x2d, 0x0a, 0x29, 0x4c, 0x45, + 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x45, 0x52, 0x54, 0x49, 0x41, 0x52, + 0x59, 0x5f, 0x41, 0x44, 0x56, 0x41, 0x4e, 0x43, 0x49, 0x4e, 0x47, 0x10, 0x6d, 0x12, 0x24, 0x0a, + 0x1f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, + 0x10, 0xc8, 0x01, 0x12, 0x25, 0x0a, 0x20, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, + 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, + 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x10, 0xc9, 0x01, 0x12, 0x28, 0x0a, 0x23, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x52, 0x45, 0x4d, 0x4f, - 0x56, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x67, 0x12, 0x2f, 0x0a, 0x2b, 0x4c, 0x45, 0x41, + 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x43, 0x52, 0x45, 0x41, 0x54, + 0x45, 0x10, 0xca, 0x01, 0x12, 0x26, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, + 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, + 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0xcb, 0x01, 0x12, 0x2b, 0x0a, 0x26, + 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x45, 0x52, + 0x49, 0x45, 0x53, 0x5f, 0x49, 0x44, 0x10, 0xcc, 0x01, 0x12, 0x2b, 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x41, - 0x44, 0x56, 0x41, 0x4e, 0x43, 0x49, 0x4e, 0x47, 0x10, 0x68, 0x12, 0x26, 0x0a, 0x22, 0x4c, 0x45, - 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x45, 0x44, 0x49, 0x54, - 0x10, 0x69, 0x12, 0x2a, 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, - 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, - 0x4f, 0x55, 0x50, 0x5f, 0x50, 0x4f, 0x50, 0x55, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x6a, 0x12, 0x2b, - 0x0a, 0x27, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, - 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, - 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x6b, 0x12, 0x39, 0x0a, 0x35, 0x4c, - 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x45, 0x54, - 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x41, 0x52, 0x59, 0x5f, 0x41, 0x44, 0x56, 0x41, 0x4e, - 0x43, 0x49, 0x4e, 0x47, 0x10, 0x6c, 0x12, 0x38, 0x0a, 0x34, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x41, 0x44, 0x56, 0x41, 0x4e, 0x43, + 0x49, 0x4e, 0x47, 0x10, 0xcd, 0x01, 0x12, 0x26, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, - 0x44, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x45, 0x52, 0x54, - 0x49, 0x41, 0x52, 0x59, 0x5f, 0x41, 0x44, 0x56, 0x41, 0x4e, 0x43, 0x49, 0x4e, 0x47, 0x10, 0x6d, - 0x12, 0x24, 0x0a, 0x1f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, - 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x52, 0x45, - 0x41, 0x54, 0x45, 0x10, 0xc8, 0x01, 0x12, 0x25, 0x0a, 0x20, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, + 0x44, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0xce, 0x01, 0x12, 0x2d, + 0x0a, 0x28, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, + 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, + 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0xcf, 0x01, 0x12, 0x27, 0x0a, + 0x22, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, + 0x54, 0x45, 0x44, 0x10, 0xd0, 0x01, 0x12, 0x22, 0x0a, 0x1d, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, - 0x44, 0x45, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x10, 0xc9, 0x01, 0x12, 0x28, 0x0a, - 0x23, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x43, 0x52, - 0x45, 0x41, 0x54, 0x45, 0x10, 0xca, 0x01, 0x12, 0x26, 0x0a, 0x21, 0x4c, 0x45, 0x41, 0x47, 0x55, - 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, - 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0xcb, 0x01, 0x12, - 0x2b, 0x0a, 0x26, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, - 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, - 0x53, 0x45, 0x52, 0x49, 0x45, 0x53, 0x5f, 0x49, 0x44, 0x10, 0xcc, 0x01, 0x12, 0x2b, 0x0a, 0x26, - 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x41, 0x44, 0x56, - 0x41, 0x4e, 0x43, 0x49, 0x4e, 0x47, 0x10, 0xcd, 0x01, 0x12, 0x26, 0x0a, 0x21, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0xce, - 0x01, 0x12, 0x2d, 0x0a, 0x28, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, - 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x4d, 0x41, - 0x54, 0x43, 0x48, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0xcf, 0x01, - 0x12, 0x27, 0x0a, 0x22, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, - 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x43, 0x4f, 0x4d, - 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0xd0, 0x01, 0x12, 0x22, 0x0a, 0x1d, 0x4c, 0x45, 0x41, - 0x47, 0x55, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, 0xd1, 0x01, 0x2a, 0xe7, 0x0b, - 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x53, 0x12, 0x23, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, - 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x44, 0x41, - 0x4d, 0x41, 0x47, 0x45, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x48, 0x45, 0x41, 0x4c, 0x10, 0x01, 0x12, - 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, - 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x02, - 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, - 0x4f, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x4d, 0x4f, - 0x56, 0x45, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, - 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x44, 0x45, 0x41, 0x54, 0x48, 0x10, 0x04, 0x12, 0x1a, - 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, - 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x49, 0x54, 0x45, - 0x4d, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, - 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x07, - 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, - 0x4f, 0x47, 0x5f, 0x47, 0x4f, 0x4c, 0x44, 0x10, 0x08, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x47, 0x41, 0x4d, 0x45, - 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x58, 0x50, 0x10, 0x0a, 0x12, - 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, - 0x47, 0x5f, 0x50, 0x55, 0x52, 0x43, 0x48, 0x41, 0x53, 0x45, 0x10, 0x0b, 0x12, 0x1a, 0x0a, 0x16, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x42, - 0x55, 0x59, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x0c, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, - 0x54, 0x59, 0x5f, 0x54, 0x52, 0x49, 0x47, 0x47, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x1e, 0x0a, 0x1a, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x50, - 0x4c, 0x41, 0x59, 0x45, 0x52, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x0e, 0x12, 0x1c, 0x0a, 0x18, + 0x44, 0x45, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, 0xd1, 0x01, 0x2a, 0xe7, 0x0b, 0x0a, 0x14, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x53, 0x12, 0x23, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, + 0x45, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x48, 0x45, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, - 0x55, 0x4c, 0x54, 0x49, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x0f, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4b, 0x49, 0x4c, - 0x4c, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x10, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x45, 0x41, 0x4d, - 0x5f, 0x42, 0x55, 0x49, 0x4c, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x11, - 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, - 0x4f, 0x47, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x12, - 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, - 0x4f, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x43, - 0x4b, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x13, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4e, 0x45, 0x55, 0x54, - 0x52, 0x41, 0x4c, 0x5f, 0x43, 0x41, 0x4d, 0x50, 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x10, 0x14, - 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, - 0x4f, 0x47, 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x10, 0x15, - 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, - 0x4f, 0x47, 0x5f, 0x52, 0x45, 0x56, 0x45, 0x41, 0x4c, 0x45, 0x44, 0x5f, 0x49, 0x4e, 0x56, 0x49, - 0x53, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x16, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x53, - 0x41, 0x56, 0x45, 0x44, 0x10, 0x17, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x5f, 0x52, 0x45, - 0x53, 0x54, 0x4f, 0x52, 0x45, 0x44, 0x10, 0x18, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, - 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x55, 0x50, 0x10, 0x19, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x42, 0x4f, 0x54, 0x54, - 0x4c, 0x45, 0x5f, 0x48, 0x45, 0x41, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x59, 0x10, 0x1a, 0x12, 0x20, - 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, - 0x5f, 0x45, 0x4e, 0x44, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x1b, - 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, - 0x4f, 0x47, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x52, 0x55, 0x50, 0x54, 0x5f, 0x43, 0x48, 0x41, - 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x1c, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x4c, 0x4c, 0x49, 0x45, 0x44, 0x5f, - 0x47, 0x4f, 0x4c, 0x44, 0x10, 0x1d, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x45, 0x47, 0x49, 0x53, 0x5f, 0x54, - 0x41, 0x4b, 0x45, 0x4e, 0x10, 0x1e, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x5f, 0x44, 0x41, - 0x4d, 0x41, 0x47, 0x45, 0x10, 0x1f, 0x12, 0x2c, 0x0a, 0x28, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x50, 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, - 0x4c, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x45, 0x44, 0x10, 0x20, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, - 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x53, 0x55, 0x4d, 0x4d, - 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x21, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x4b, 0x5f, - 0x45, 0x56, 0x41, 0x44, 0x45, 0x10, 0x22, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x52, 0x45, 0x45, 0x5f, 0x43, - 0x55, 0x54, 0x10, 0x23, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, - 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x46, 0x55, - 0x4c, 0x5f, 0x53, 0x43, 0x41, 0x4e, 0x10, 0x24, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x45, 0x4e, 0x44, 0x5f, 0x4b, - 0x49, 0x4c, 0x4c, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x25, 0x12, 0x24, 0x0a, 0x20, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x42, 0x4c, - 0x4f, 0x4f, 0x44, 0x53, 0x54, 0x4f, 0x4e, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x10, - 0x26, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, - 0x4c, 0x4f, 0x47, 0x5f, 0x43, 0x52, 0x49, 0x54, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x44, 0x41, 0x4d, - 0x41, 0x47, 0x45, 0x10, 0x27, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, - 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x53, 0x50, 0x45, 0x4c, 0x4c, 0x5f, 0x41, 0x42, - 0x53, 0x4f, 0x52, 0x42, 0x10, 0x28, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, - 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x54, 0x45, - 0x4c, 0x45, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x29, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4b, 0x49, 0x4c, - 0x4c, 0x5f, 0x45, 0x41, 0x54, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x2a, 0x12, - 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, - 0x47, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x45, - 0x41, 0x52, 0x4e, 0x45, 0x44, 0x10, 0x2b, 0x2a, 0x75, 0x0a, 0x10, 0x45, 0x44, 0x50, 0x43, 0x46, - 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x46, - 0x41, 0x56, 0x4f, 0x52, 0x49, 0x54, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x4c, 0x4c, - 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x41, 0x56, 0x4f, 0x52, 0x49, 0x54, 0x45, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, - 0x46, 0x41, 0x56, 0x4f, 0x52, 0x49, 0x54, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x45, - 0x41, 0x4d, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x41, 0x56, 0x4f, 0x52, 0x49, 0x54, 0x45, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x10, 0x03, 0x2a, 0xa8, - 0x04, 0x0a, 0x14, 0x45, 0x44, 0x50, 0x43, 0x50, 0x75, 0x73, 0x68, 0x4e, 0x6f, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x24, 0x44, 0x50, 0x43, 0x5f, 0x50, - 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, - 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, - 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, - 0x52, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x0a, 0x12, 0x2c, 0x0a, - 0x28, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, - 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4a, 0x4f, - 0x49, 0x4e, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x0b, 0x12, 0x35, 0x0a, 0x31, 0x44, - 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, - 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x53, 0x5f, 0x43, 0x4f, 0x41, 0x43, 0x48, - 0x10, 0x0c, 0x12, 0x33, 0x0a, 0x2f, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, - 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x45, 0x52, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x53, 0x5f, - 0x43, 0x4f, 0x41, 0x43, 0x48, 0x10, 0x0d, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x50, 0x43, 0x5f, 0x50, - 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x10, 0x14, - 0x12, 0x36, 0x0a, 0x32, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, - 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x45, 0x53, 0x5f, 0x41, 0x56, 0x41, - 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x1e, 0x12, 0x2b, 0x0a, 0x27, 0x44, 0x50, 0x43, 0x5f, + 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x02, 0x12, 0x22, 0x0a, + 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, + 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, + 0x03, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, + 0x4c, 0x4f, 0x47, 0x5f, 0x44, 0x45, 0x41, 0x54, 0x48, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x42, + 0x49, 0x4c, 0x49, 0x54, 0x59, 0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x06, + 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, + 0x4f, 0x47, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x07, 0x12, 0x17, 0x0a, + 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, + 0x47, 0x4f, 0x4c, 0x44, 0x10, 0x08, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, + 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, + 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x58, 0x50, 0x10, 0x0a, 0x12, 0x1b, 0x0a, 0x17, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x50, + 0x55, 0x52, 0x43, 0x48, 0x41, 0x53, 0x45, 0x10, 0x0b, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x42, 0x55, 0x59, 0x42, + 0x41, 0x43, 0x4b, 0x10, 0x0c, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, + 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, + 0x54, 0x52, 0x49, 0x47, 0x47, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x50, 0x4c, 0x41, 0x59, + 0x45, 0x52, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x0e, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x55, 0x4c, 0x54, + 0x49, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x0f, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x53, 0x54, + 0x52, 0x45, 0x41, 0x4b, 0x10, 0x10, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, + 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x42, 0x55, + 0x49, 0x4c, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x11, 0x12, 0x1e, 0x0a, + 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, + 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x12, 0x12, 0x27, 0x0a, + 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, + 0x4d, 0x4f, 0x44, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x5f, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x10, 0x13, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, + 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, + 0x5f, 0x43, 0x41, 0x4d, 0x50, 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x10, 0x14, 0x12, 0x1e, 0x0a, + 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, + 0x50, 0x49, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x10, 0x15, 0x12, 0x25, 0x0a, + 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, + 0x52, 0x45, 0x56, 0x45, 0x41, 0x4c, 0x45, 0x44, 0x5f, 0x49, 0x4e, 0x56, 0x49, 0x53, 0x49, 0x42, + 0x4c, 0x45, 0x10, 0x16, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, + 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x53, 0x41, 0x56, 0x45, + 0x44, 0x10, 0x17, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x5f, 0x52, 0x45, 0x53, 0x54, 0x4f, + 0x52, 0x45, 0x44, 0x10, 0x18, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, + 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x4c, 0x45, 0x56, + 0x45, 0x4c, 0x55, 0x50, 0x10, 0x19, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, + 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4c, 0x45, 0x5f, + 0x48, 0x45, 0x41, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x59, 0x10, 0x1a, 0x12, 0x20, 0x0a, 0x1c, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x45, 0x4e, + 0x44, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x1b, 0x12, 0x24, 0x0a, + 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, + 0x49, 0x4e, 0x54, 0x45, 0x52, 0x52, 0x55, 0x50, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, + 0x4c, 0x10, 0x1c, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x4c, 0x4c, 0x49, 0x45, 0x44, 0x5f, 0x47, 0x4f, 0x4c, + 0x44, 0x10, 0x1d, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x45, 0x47, 0x49, 0x53, 0x5f, 0x54, 0x41, 0x4b, 0x45, + 0x4e, 0x10, 0x1e, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, + 0x45, 0x10, 0x1f, 0x12, 0x2c, 0x0a, 0x28, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x50, 0x48, 0x59, 0x53, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x44, + 0x41, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x45, 0x44, 0x10, + 0x20, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, + 0x4c, 0x4f, 0x47, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x53, 0x55, 0x4d, 0x4d, 0x4f, 0x4e, 0x45, + 0x44, 0x10, 0x21, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x4b, 0x5f, 0x45, 0x56, 0x41, + 0x44, 0x45, 0x10, 0x22, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, + 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x52, 0x45, 0x45, 0x5f, 0x43, 0x55, 0x54, 0x10, + 0x23, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, + 0x4c, 0x4f, 0x47, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x46, 0x55, 0x4c, 0x5f, 0x53, + 0x43, 0x41, 0x4e, 0x10, 0x24, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, + 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x45, 0x4e, 0x44, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, + 0x53, 0x54, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x25, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, + 0x53, 0x54, 0x4f, 0x4e, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x10, 0x26, 0x12, 0x22, + 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, + 0x5f, 0x43, 0x52, 0x49, 0x54, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, + 0x10, 0x27, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, + 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x53, 0x50, 0x45, 0x4c, 0x4c, 0x5f, 0x41, 0x42, 0x53, 0x4f, 0x52, + 0x42, 0x10, 0x28, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, + 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x54, 0x45, 0x4c, 0x45, 0x50, + 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x29, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x5f, 0x45, + 0x41, 0x54, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x10, 0x2a, 0x12, 0x26, 0x0a, 0x22, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x41, 0x54, 0x4c, 0x4f, 0x47, 0x5f, 0x4e, + 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x45, 0x41, 0x52, 0x4e, + 0x45, 0x44, 0x10, 0x2b, 0x2a, 0x75, 0x0a, 0x10, 0x45, 0x44, 0x50, 0x43, 0x46, 0x61, 0x76, 0x6f, + 0x72, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x41, 0x56, 0x4f, + 0x52, 0x49, 0x54, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x00, 0x12, + 0x18, 0x0a, 0x14, 0x46, 0x41, 0x56, 0x4f, 0x52, 0x49, 0x54, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x41, 0x56, + 0x4f, 0x52, 0x49, 0x54, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, + 0x02, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x41, 0x56, 0x4f, 0x52, 0x49, 0x54, 0x45, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x4c, 0x45, 0x41, 0x47, 0x55, 0x45, 0x10, 0x03, 0x2a, 0xa8, 0x04, 0x0a, 0x14, + 0x45, 0x44, 0x50, 0x43, 0x50, 0x75, 0x73, 0x68, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x24, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, + 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x41, + 0x54, 0x43, 0x48, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x2a, + 0x0a, 0x26, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, + 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4c, + 0x45, 0x46, 0x54, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x0a, 0x12, 0x2c, 0x0a, 0x28, 0x44, 0x50, + 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x45, + 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x0b, 0x12, 0x35, 0x0a, 0x31, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x53, - 0x55, 0x4c, 0x54, 0x10, 0x1f, 0x12, 0x30, 0x0a, 0x2c, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, + 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x45, 0x44, 0x5f, + 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x53, 0x5f, 0x43, 0x4f, 0x41, 0x43, 0x48, 0x10, 0x0c, 0x12, + 0x33, 0x0a, 0x2f, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, + 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, + 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x5f, 0x41, 0x53, 0x5f, 0x43, 0x4f, 0x41, + 0x43, 0x48, 0x10, 0x0d, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, + 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, + 0x41, 0x47, 0x55, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x10, 0x14, 0x12, 0x36, 0x0a, + 0x32, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, + 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x45, 0x53, 0x5f, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, + 0x42, 0x4c, 0x45, 0x10, 0x1e, 0x12, 0x2b, 0x0a, 0x27, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, + 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, + 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, + 0x10, 0x1f, 0x12, 0x30, 0x0a, 0x2c, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, + 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x41, 0x4e, 0x54, + 0x41, 0x53, 0x59, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x45, 0x41, 0x52, + 0x45, 0x44, 0x10, 0x28, 0x12, 0x2f, 0x0a, 0x2b, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, + 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x41, + 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x44, 0x41, 0x49, 0x4c, 0x59, 0x5f, 0x53, 0x55, 0x4d, 0x4d, + 0x41, 0x52, 0x59, 0x10, 0x29, 0x12, 0x2f, 0x0a, 0x2b, 0x44, 0x50, 0x43, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, - 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x43, 0x4c, - 0x45, 0x41, 0x52, 0x45, 0x44, 0x10, 0x28, 0x12, 0x2f, 0x0a, 0x2b, 0x44, 0x50, 0x43, 0x5f, 0x50, - 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x44, 0x41, 0x49, 0x4c, 0x59, 0x5f, 0x53, - 0x55, 0x4d, 0x4d, 0x41, 0x52, 0x59, 0x10, 0x29, 0x12, 0x2f, 0x0a, 0x2b, 0x44, 0x50, 0x43, 0x5f, - 0x50, 0x55, 0x53, 0x48, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x46, 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, - 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x2a, 0x2a, 0x59, 0x0a, 0x15, 0x45, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x4d, 0x6f, - 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x5f, 0x41, 0x64, - 0x64, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x5f, 0x4d, - 0x69, 0x6e, 0x10, 0x01, 0x2a, 0xce, 0x02, 0x0a, 0x1b, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, - 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, - 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, - 0x5f, 0x4b, 0x69, 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, 0x10, 0x01, 0x12, 0x2f, 0x0a, 0x2b, - 0x6b, 0x5f, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x44, 0x6f, - 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x10, 0x02, 0x12, 0x3d, 0x0a, - 0x39, 0x6b, 0x5f, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x44, - 0x6f, 0x74, 0x61, 0x50, 0x6c, 0x75, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0x03, 0x12, 0x36, 0x0a, 0x32, + 0x41, 0x4e, 0x54, 0x41, 0x53, 0x59, 0x5f, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x53, + 0x55, 0x4c, 0x54, 0x53, 0x10, 0x2a, 0x2a, 0x59, 0x0a, 0x15, 0x45, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, + 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x5f, 0x41, 0x64, 0x64, 0x10, 0x00, + 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x5f, 0x4d, 0x69, 0x6e, 0x10, + 0x01, 0x2a, 0xce, 0x02, 0x0a, 0x1b, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, - 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x10, 0x04, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, - 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x10, 0x05, 0x2a, 0x86, 0x02, 0x0a, 0x16, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, - 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, - 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x55, 0x6e, 0x6b, - 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, - 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, - 0x6f, 0x6e, 0x5f, 0x43, 0x68, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12, 0x24, 0x0a, + 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4b, 0x69, + 0x6c, 0x6c, 0x45, 0x61, 0x74, 0x65, 0x72, 0x10, 0x01, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x44, 0x6f, 0x74, 0x61, 0x50, + 0x6c, 0x75, 0x73, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x10, 0x02, 0x12, 0x3d, 0x0a, 0x39, 0x6b, 0x5f, + 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x44, 0x6f, 0x74, 0x61, + 0x50, 0x6c, 0x75, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0x03, 0x12, 0x36, 0x0a, 0x32, 0x6b, 0x5f, 0x45, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x49, 0x6e, 0x47, 0x61, 0x6d, + 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, + 0x04, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x10, 0x05, 0x2a, 0x86, 0x02, 0x0a, 0x16, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x46, 0x65, 0x65, 0x64, 0x69, 0x6e, - 0x67, 0x10, 0x02, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, + 0x6e, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, - 0x47, 0x72, 0x69, 0x65, 0x66, 0x69, 0x6e, 0x67, 0x10, 0x03, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, + 0x43, 0x68, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x53, 0x75, 0x73, 0x70, 0x69, 0x63, 0x69, 0x6f, 0x75, - 0x73, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, - 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x41, 0x62, 0x75, 0x73, 0x65, 0x10, 0x05, 0x42, 0x25, - 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, - 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, - 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x46, 0x65, 0x65, 0x64, 0x69, 0x6e, 0x67, 0x10, 0x02, + 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x47, 0x72, 0x69, + 0x65, 0x66, 0x69, 0x6e, 0x67, 0x10, 0x03, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4f, 0x76, + 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x5f, 0x53, 0x75, 0x73, 0x70, 0x69, 0x63, 0x69, 0x6f, 0x75, 0x73, 0x10, 0x04, + 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x41, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x41, 0x62, 0x75, 0x73, 0x65, 0x10, 0x05, 0x42, 0x25, 0x5a, 0x23, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, + 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, + 0x74, 0x61, } var ( @@ -6222,7 +6813,7 @@ func file_dota_shared_enums_proto_rawDescGZIP() []byte { return file_dota_shared_enums_proto_rawDescData } -var file_dota_shared_enums_proto_enumTypes = make([]protoimpl.EnumInfo, 46) +var file_dota_shared_enums_proto_enumTypes = make([]protoimpl.EnumInfo, 51) var file_dota_shared_enums_proto_msgTypes = make([]protoimpl.MessageInfo, 7) var file_dota_shared_enums_proto_goTypes = []interface{}{ (DOTA_GameMode)(0), // 0: dota.DOTA_GameMode @@ -6233,60 +6824,65 @@ var file_dota_shared_enums_proto_goTypes = []interface{}{ (DOTALeaverStatusT)(0), // 5: dota.DOTALeaverStatus_t (DOTAConnectionStateT)(0), // 6: dota.DOTAConnectionState_t (Fantasy_Roles)(0), // 7: dota.Fantasy_Roles - (Fantasy_Team_Slots)(0), // 8: dota.Fantasy_Team_Slots - (Fantasy_Selection_Mode)(0), // 9: dota.Fantasy_Selection_Mode - (DOTAChatChannelTypeT)(0), // 10: dota.DOTAChatChannelType_t - (EChatSpecialPrivileges)(0), // 11: dota.EChatSpecialPrivileges - (EProfileCardSlotType)(0), // 12: dota.EProfileCardSlotType - (EMatchGroupServerStatus)(0), // 13: dota.EMatchGroupServerStatus - (DOTA_CM_PICK)(0), // 14: dota.DOTA_CM_PICK - (DOTALowPriorityBanType)(0), // 15: dota.DOTALowPriorityBanType - (DOTALobbyReadyState)(0), // 16: dota.DOTALobbyReadyState - (DOTAJoinLobbyResult)(0), // 17: dota.DOTAJoinLobbyResult - (DOTASelectionPriorityRules)(0), // 18: dota.DOTASelectionPriorityRules - (DOTASelectionPriorityChoice)(0), // 19: dota.DOTASelectionPriorityChoice - (DOTAMatchVote)(0), // 20: dota.DOTAMatchVote - (DOTALobbyVisibility)(0), // 21: dota.DOTALobbyVisibility - (EDOTAPlayerMMRType)(0), // 22: dota.EDOTAPlayerMMRType - (EDOTAMMRBoostType)(0), // 23: dota.EDOTAMMRBoostType - (MatchType)(0), // 24: dota.MatchType - (DOTABotDifficulty)(0), // 25: dota.DOTABotDifficulty - (DOTA_BOT_MODE)(0), // 26: dota.DOTA_BOT_MODE - (MatchLanguages)(0), // 27: dota.MatchLanguages - (ETourneyQueueDeadlineState)(0), // 28: dota.ETourneyQueueDeadlineState - (EMatchOutcome)(0), // 29: dota.EMatchOutcome - (ELaneType)(0), // 30: dota.ELaneType - (EBadgeType)(0), // 31: dota.EBadgeType - (ELeagueStatus)(0), // 32: dota.ELeagueStatus - (ELeagueRegion)(0), // 33: dota.ELeagueRegion - (ELeagueTier)(0), // 34: dota.ELeagueTier - (ELeagueTierCategory)(0), // 35: dota.ELeagueTierCategory - (ELeagueDivision)(0), // 36: dota.ELeagueDivision - (ELeagueBroadcastProvider)(0), // 37: dota.ELeagueBroadcastProvider - (ELeaguePhase)(0), // 38: dota.ELeaguePhase - (ELeagueAuditAction)(0), // 39: dota.ELeagueAuditAction - (DOTA_COMBATLOG_TYPES)(0), // 40: dota.DOTA_COMBATLOG_TYPES - (EDPCFavoriteType)(0), // 41: dota.EDPCFavoriteType - (EDPCPushNotification)(0), // 42: dota.EDPCPushNotification - (EEventActionScoreMode)(0), // 43: dota.EEventActionScoreMode - (EPlayerChallengeHistoryType)(0), // 44: dota.EPlayerChallengeHistoryType - (EOverwatchReportReason)(0), // 45: dota.EOverwatchReportReason - (*CDOTAClientHardwareSpecs)(nil), // 46: dota.CDOTAClientHardwareSpecs - (*CDOTASaveGame)(nil), // 47: dota.CDOTASaveGame - (*CMsgDOTACombatLogEntry)(nil), // 48: dota.CMsgDOTACombatLogEntry - (*CMsgPendingEventAward)(nil), // 49: dota.CMsgPendingEventAward - (*CDOTASaveGame_Player)(nil), // 50: dota.CDOTASaveGame.Player - (*CDOTASaveGame_SaveInstance)(nil), // 51: dota.CDOTASaveGame.SaveInstance - (*CDOTASaveGame_SaveInstance_PlayerPositions)(nil), // 52: dota.CDOTASaveGame.SaveInstance.PlayerPositions + (Fantasy_Scoring)(0), // 8: dota.Fantasy_Scoring + (Fantasy_Team_Slots)(0), // 9: dota.Fantasy_Team_Slots + (Fantasy_Selection_Mode)(0), // 10: dota.Fantasy_Selection_Mode + (Fantasy_Gem_Type)(0), // 11: dota.Fantasy_Gem_Type + (DOTAChatChannelTypeT)(0), // 12: dota.DOTAChatChannelType_t + (EChatSpecialPrivileges)(0), // 13: dota.EChatSpecialPrivileges + (DOTACommTypeT)(0), // 14: dota.DOTACommType_t + (DOTACommLevelT)(0), // 15: dota.DOTACommLevel_t + (DOTABehaviorLevelT)(0), // 16: dota.DOTABehaviorLevel_t + (EProfileCardSlotType)(0), // 17: dota.EProfileCardSlotType + (EMatchGroupServerStatus)(0), // 18: dota.EMatchGroupServerStatus + (DOTA_CM_PICK)(0), // 19: dota.DOTA_CM_PICK + (DOTALowPriorityBanType)(0), // 20: dota.DOTALowPriorityBanType + (DOTALobbyReadyState)(0), // 21: dota.DOTALobbyReadyState + (DOTAJoinLobbyResult)(0), // 22: dota.DOTAJoinLobbyResult + (DOTASelectionPriorityRules)(0), // 23: dota.DOTASelectionPriorityRules + (DOTASelectionPriorityChoice)(0), // 24: dota.DOTASelectionPriorityChoice + (DOTAMatchVote)(0), // 25: dota.DOTAMatchVote + (DOTALobbyVisibility)(0), // 26: dota.DOTALobbyVisibility + (EDOTAPlayerMMRType)(0), // 27: dota.EDOTAPlayerMMRType + (EDOTAMMRBoostType)(0), // 28: dota.EDOTAMMRBoostType + (MatchType)(0), // 29: dota.MatchType + (DOTABotDifficulty)(0), // 30: dota.DOTABotDifficulty + (DOTA_BOT_MODE)(0), // 31: dota.DOTA_BOT_MODE + (MatchLanguages)(0), // 32: dota.MatchLanguages + (ETourneyQueueDeadlineState)(0), // 33: dota.ETourneyQueueDeadlineState + (EMatchOutcome)(0), // 34: dota.EMatchOutcome + (ELaneType)(0), // 35: dota.ELaneType + (EBadgeType)(0), // 36: dota.EBadgeType + (ELeagueStatus)(0), // 37: dota.ELeagueStatus + (ELeagueRegion)(0), // 38: dota.ELeagueRegion + (ELeagueTier)(0), // 39: dota.ELeagueTier + (ELeagueTierCategory)(0), // 40: dota.ELeagueTierCategory + (ELeagueDivision)(0), // 41: dota.ELeagueDivision + (ELeagueBroadcastProvider)(0), // 42: dota.ELeagueBroadcastProvider + (ELeaguePhase)(0), // 43: dota.ELeaguePhase + (ELeagueAuditAction)(0), // 44: dota.ELeagueAuditAction + (DOTA_COMBATLOG_TYPES)(0), // 45: dota.DOTA_COMBATLOG_TYPES + (EDPCFavoriteType)(0), // 46: dota.EDPCFavoriteType + (EDPCPushNotification)(0), // 47: dota.EDPCPushNotification + (EEventActionScoreMode)(0), // 48: dota.EEventActionScoreMode + (EPlayerChallengeHistoryType)(0), // 49: dota.EPlayerChallengeHistoryType + (EOverwatchReportReason)(0), // 50: dota.EOverwatchReportReason + (*CDOTAClientHardwareSpecs)(nil), // 51: dota.CDOTAClientHardwareSpecs + (*CDOTASaveGame)(nil), // 52: dota.CDOTASaveGame + (*CMsgDOTACombatLogEntry)(nil), // 53: dota.CMsgDOTACombatLogEntry + (*CMsgPendingEventAward)(nil), // 54: dota.CMsgPendingEventAward + (*CDOTASaveGame_Player)(nil), // 55: dota.CDOTASaveGame.Player + (*CDOTASaveGame_SaveInstance)(nil), // 56: dota.CDOTASaveGame.SaveInstance + (*CDOTASaveGame_SaveInstance_PlayerPositions)(nil), // 57: dota.CDOTASaveGame.SaveInstance.PlayerPositions } var file_dota_shared_enums_proto_depIdxs = []int32{ - 50, // 0: dota.CDOTASaveGame.players:type_name -> dota.CDOTASaveGame.Player - 51, // 1: dota.CDOTASaveGame.save_instances:type_name -> dota.CDOTASaveGame.SaveInstance - 40, // 2: dota.CMsgDOTACombatLogEntry.type:type_name -> dota.DOTA_COMBATLOG_TYPES + 55, // 0: dota.CDOTASaveGame.players:type_name -> dota.CDOTASaveGame.Player + 56, // 1: dota.CDOTASaveGame.save_instances:type_name -> dota.CDOTASaveGame.SaveInstance + 45, // 2: dota.CMsgDOTACombatLogEntry.type:type_name -> dota.DOTA_COMBATLOG_TYPES 3, // 3: dota.CMsgPendingEventAward.event_id:type_name -> dota.EEvent - 43, // 4: dota.CMsgPendingEventAward.score_mode:type_name -> dota.EEventActionScoreMode + 48, // 4: dota.CMsgPendingEventAward.score_mode:type_name -> dota.EEventActionScoreMode 2, // 5: dota.CDOTASaveGame.Player.team:type_name -> dota.DOTA_GC_TEAM - 52, // 6: dota.CDOTASaveGame.SaveInstance.player_positions:type_name -> dota.CDOTASaveGame.SaveInstance.PlayerPositions + 57, // 6: dota.CDOTASaveGame.SaveInstance.player_positions:type_name -> dota.CDOTASaveGame.SaveInstance.PlayerPositions 7, // [7:7] is the sub-list for method output_type 7, // [7:7] is the sub-list for method input_type 7, // [7:7] is the sub-list for extension type_name @@ -6390,7 +6986,7 @@ func file_dota_shared_enums_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_shared_enums_proto_rawDesc, - NumEnums: 46, + NumEnums: 51, NumMessages: 7, NumExtensions: 0, NumServices: 0, diff --git a/dota/dota_shared_enums.proto b/dota/dota_shared_enums.proto index 6fd0c293..19f99e52 100644 --- a/dota/dota_shared_enums.proto +++ b/dota/dota_shared_enums.proto @@ -111,6 +111,11 @@ enum EEvent { EVENT_ID_MUERTA_RELEASE_SPRING2023 = 40; EVENT_ID_TEAM_2023_TOUR1 = 41; EVENT_ID_TEAM_2023_TOUR2 = 42; + EVENT_ID_TEAM_2023_TOUR3 = 43; + EVENT_ID_INTERNATIONAL_2023 = 45; + EVENT_ID_10TH_ANNIVERSARY = 46; + EVENT_ID_CROWNFALL = 47; + EVENT_ID_FROSTIVUS_2023 = 48; } enum ERankType { @@ -121,9 +126,10 @@ enum ERankType { k_ERankType_RankedLegacy = 4; k_ERankType_CasualGlicko = 5; k_ERankType_RankedGlicko = 6; - k_ERankType_CasualRemapped = 7; - k_ERankType_CasualRemappedGlicko = 8; - k_ERankType_CasualShiftedGlicko = 9; + k_ERankType_RankMax = 7; + k_ERankType_BehaviorPrivate = 100; + k_ERankType_BehaviorPublic = 101; + k_ERankType_Max = 102; } enum DOTALeaverStatus_t { @@ -136,6 +142,7 @@ enum DOTALeaverStatus_t { DOTA_LEAVER_NEVER_CONNECTED_TOO_LONG = 6; DOTA_LEAVER_FAILED_TO_READY_UP = 7; DOTA_LEAVER_DECLINED = 8; + DOTA_LEAVER_DECLINED_REQUEUE = 9; } enum DOTAConnectionState_t { @@ -156,6 +163,29 @@ enum Fantasy_Roles { FANTASY_ROLE_MID = 4; } +enum Fantasy_Scoring { + FANTASY_SCORING_KILLS = 0; + FANTASY_SCORING_DEATHS = 1; + FANTASY_SCORING_CS = 2; + FANTASY_SCORING_GPM = 3; + FANTASY_SCORING_TOWER_KILLS = 4; + FANTASY_SCORING_ROSHAN_KILLS = 5; + FANTASY_SCORING_TEAMFIGHT_PARTICIPATION = 6; + FANTASY_SCORING_WARDS_PLANTED = 7; + FANTASY_SCORING_CAMPS_STACKED = 8; + FANTASY_SCORING_RUNES_GRABBED = 9; + FANTASY_SCORING_FIRST_BLOOD = 10; + FANTASY_SCORING_STUNS = 11; + FANTASY_SCORING_SMOKES_USED = 12; + FANTASY_SCORING_NEUTRAL_TOKENS_FOUND = 13; + FANTASY_SCORING_WATCHERS_TAKEN = 14; + FANTASY_SCORING_LOTUSES_GAINED = 15; + FANTASY_SCORING_TORMENTOR_KILLS = 16; + FANTASY_SCORING_COURIER_KILLS = 17; + FANTASY_SCORING_TYPES = 18; + FANTASY_SCORING_INVALID = 19; +} + enum Fantasy_Team_Slots { FANTASY_SLOT_NONE = 0; FANTASY_SLOT_CORE = 1; @@ -177,6 +207,12 @@ enum Fantasy_Selection_Mode { FANTASY_SELECTION_CARD_BASED = 9; } +enum Fantasy_Gem_Type { + FANTASY_GEM_TYPE_RUBY = 0; + FANTASY_GEM_TYPE_SAPPHIRE = 1; + FANTASY_GEM_TYPE_EMERALD = 2; +} + enum DOTAChatChannelType_t { DOTAChannelType_Regional = 0; DOTAChannelType_Custom = 1; @@ -211,6 +247,44 @@ enum EChatSpecialPrivileges { k_EChatSpecialPrivileges_SuperModerator = 2; } +enum DOTACommType_t { + DOTA_COMM_TYPE_NONE = 0; + DOTA_COMM_TYPE_PING = 1; + DOTA_COMM_TYPE_CHATWHEEL = 2; + DOTA_COMM_TYPE_TIP = 3; + DOTA_COMM_TYPE_TEXT = 4; + DOTA_COMM_TYPE_SHOWCASE = 5; + DOTA_COMM_TYPE_VOICE = 6; + DOTA_COMM_TYPE_ALLY_ABILITY = 7; + DOTA_COMM_TYPE_PAUSE = 8; + DOTA_COMM_TYPE_COACHING = 9; + DOTA_COMM_TYPE_NOCOOLDOWN = 10; + DOTA_COMM_TYPE_RANKEDMATCHMAKE = 11; + DOTA_COMM_TYPE_DROPS = 12; + DOTA_COMM_TYPE_NEWPLAYER_EXPERT = 13; + DOTA_COMM_TYPE_COACHED = 14; + DOTA_COMM_TYPE_MAPDRAWING = 15; +} + +enum DOTACommLevel_t { + DOTA_COMM_LEVEL_NONE = 0; + DOTA_COMM_LEVEL_COOLDOWN = 1; + DOTA_COMM_LEVEL_PINGS = 2; + DOTA_COMM_LEVEL_MAPDRAWING = 3; + DOTA_COMM_LEVEL_CHAT = 4; + DOTA_COMM_LEVEL_TIPPING = 5; + DOTA_COMM_LEVEL_VOICE = 6; + DOTA_COMM_LEVEL_ALLIED_ABILITY = 7; +} + +enum DOTABehaviorLevel_t { + DOTA_BEHAVIOR_LEVEL_NONE = 0; + DOTA_BEHAVIOR_LEVEL_RANKED_ALLOWED = 1; + DOTA_BEHAVIOR_LEVEL_PAUSING = 2; + DOTA_BEHAVIOR_LEVEL_DROPS = 3; + DOTA_BEHAVIOR_LEVEL_COACHING = 4; +} + enum EProfileCardSlotType { k_EProfileCardSlotType_Empty = 0; k_EProfileCardSlotType_Stat = 1; @@ -244,6 +318,7 @@ enum DOTALobbyReadyState { DOTALobbyReadyState_UNDECLARED = 0; DOTALobbyReadyState_ACCEPTED = 1; DOTALobbyReadyState_DECLINED = 2; + DOTALobbyReadyState_DECLINED_REQUEUE = 3; } enum DOTAJoinLobbyResult { @@ -407,6 +482,7 @@ enum ELaneType { } enum EBadgeType { + k_EBadgeType_Invalid = 0; k_EBadgeType_TI7_Midweek = 1; k_EBadgeType_TI7_Finals = 2; k_EBadgeType_TI7_AllEvent = 3; @@ -419,6 +495,11 @@ enum EBadgeType { k_EBadgeType_TI11_PlayoffsDay3 = 10; k_EBadgeType_TI11_PlayoffsDay4 = 11; k_EBadgeType_TI11_FinalsWeekend = 12; + k_EBadgeType_TI12_PlayoffsDay1 = 13; + k_EBadgeType_TI12_PlayoffsDay2 = 14; + k_EBadgeType_TI12_PlayoffsDay3 = 15; + k_EBadgeType_TI12_FinalsWeekend = 16; + k_EBadgeType_TI12_Special = 17; } enum ELeagueStatus { @@ -625,6 +706,7 @@ message CDOTAClientHardwareSpecs { optional bool is_64_bit_os = 4; optional uint64 upload_measurement = 5; optional bool prefer_not_host = 6; + repeated uint32 crc = 7; } message CDOTASaveGame { diff --git a/dota/dota_usercmd.pb.go b/dota/dota_usercmd.pb.go index 1fc62645..7b3fe220 100644 --- a/dota/dota_usercmd.pb.go +++ b/dota/dota_usercmd.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_usercmd.proto diff --git a/dota/dota_usermessages.pb.go b/dota/dota_usermessages.pb.go index 18170284..8926e236 100644 --- a/dota/dota_usermessages.pb.go +++ b/dota/dota_usermessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: dota_usermessages.proto @@ -179,6 +179,8 @@ const ( EDotaUserMessages_DOTA_UM_MuertaReleaseEvent_AssignedTargetKilled EDotaUserMessages = 619 EDotaUserMessages_DOTA_UM_PlayerDraftSuggestPick EDotaUserMessages = 620 EDotaUserMessages_DOTA_UM_PlayerDraftPick EDotaUserMessages = 621 + EDotaUserMessages_DOTA_UM_UpdateLinearProjectileCPData EDotaUserMessages = 622 + EDotaUserMessages_DOTA_UM_GiftPlayer EDotaUserMessages = 623 ) // Enum value maps for EDotaUserMessages. @@ -340,6 +342,8 @@ var ( 619: "DOTA_UM_MuertaReleaseEvent_AssignedTargetKilled", 620: "DOTA_UM_PlayerDraftSuggestPick", 621: "DOTA_UM_PlayerDraftPick", + 622: "DOTA_UM_UpdateLinearProjectileCPData", + 623: "DOTA_UM_GiftPlayer", } EDotaUserMessages_value = map[string]int32{ "DOTA_UM_AddUnitToSelection": 464, @@ -498,6 +502,8 @@ var ( "DOTA_UM_MuertaReleaseEvent_AssignedTargetKilled": 619, "DOTA_UM_PlayerDraftSuggestPick": 620, "DOTA_UM_PlayerDraftPick": 621, + "DOTA_UM_UpdateLinearProjectileCPData": 622, + "DOTA_UM_GiftPlayer": 623, } ) @@ -649,6 +655,9 @@ const ( DOTA_CHAT_MESSAGE_CHAT_MESSAGE_PRIVATE_COACH_CONNECTED DOTA_CHAT_MESSAGE = 113 DOTA_CHAT_MESSAGE_CHAT_MESSAGE_CANT_PAUSE_TOO_EARLY DOTA_CHAT_MESSAGE = 115 DOTA_CHAT_MESSAGE_CHAT_MESSAGE_HERO_KILL_WITH_PENGUIN DOTA_CHAT_MESSAGE = 116 + DOTA_CHAT_MESSAGE_CHAT_MESSAGE_MINIBOSS_KILL DOTA_CHAT_MESSAGE = 117 + DOTA_CHAT_MESSAGE_CHAT_MESSAGE_PLAYER_IN_GAME_BAN_TEXT DOTA_CHAT_MESSAGE = 118 + DOTA_CHAT_MESSAGE_CHAT_MESSAGE_BANNER_PLANTED DOTA_CHAT_MESSAGE = 119 ) // Enum value maps for DOTA_CHAT_MESSAGE. @@ -762,6 +771,9 @@ var ( 113: "CHAT_MESSAGE_PRIVATE_COACH_CONNECTED", 115: "CHAT_MESSAGE_CANT_PAUSE_TOO_EARLY", 116: "CHAT_MESSAGE_HERO_KILL_WITH_PENGUIN", + 117: "CHAT_MESSAGE_MINIBOSS_KILL", + 118: "CHAT_MESSAGE_PLAYER_IN_GAME_BAN_TEXT", + 119: "CHAT_MESSAGE_BANNER_PLANTED", } DOTA_CHAT_MESSAGE_value = map[string]int32{ "CHAT_MESSAGE_INVALID": -1, @@ -872,6 +884,9 @@ var ( "CHAT_MESSAGE_PRIVATE_COACH_CONNECTED": 113, "CHAT_MESSAGE_CANT_PAUSE_TOO_EARLY": 115, "CHAT_MESSAGE_HERO_KILL_WITH_PENGUIN": 116, + "CHAT_MESSAGE_MINIBOSS_KILL": 117, + "CHAT_MESSAGE_PLAYER_IN_GAME_BAN_TEXT": 118, + "CHAT_MESSAGE_BANNER_PLANTED": 119, } ) @@ -1961,7 +1976,7 @@ func (x *CDOTAUserMsg_PredictionResult_Prediction_EResult) UnmarshalJSON(b []byt // Deprecated: Use CDOTAUserMsg_PredictionResult_Prediction_EResult.Descriptor instead. func (CDOTAUserMsg_PredictionResult_Prediction_EResult) EnumDescriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{41, 0, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{42, 0, 0} } type CDOTAResponseQuerySerialized_Fact_ValueType int32 @@ -2023,7 +2038,7 @@ func (x *CDOTAResponseQuerySerialized_Fact_ValueType) UnmarshalJSON(b []byte) er // Deprecated: Use CDOTAResponseQuerySerialized_Fact_ValueType.Descriptor instead. func (CDOTAResponseQuerySerialized_Fact_ValueType) EnumDescriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{42, 0, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{43, 0, 0} } type CDOTAUserMsg_GuildChallenge_Progress_EChallengeType int32 @@ -2082,7 +2097,7 @@ func (x *CDOTAUserMsg_GuildChallenge_Progress_EChallengeType) UnmarshalJSON(b [] // Deprecated: Use CDOTAUserMsg_GuildChallenge_Progress_EChallengeType.Descriptor instead. func (CDOTAUserMsg_GuildChallenge_Progress_EChallengeType) EnumDescriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{145, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{147, 0} } type CDOTAUserMsg_AIDebugLine struct { @@ -2629,6 +2644,69 @@ func (x *CDOTAUserMsg_ProjectileParticleCPData) GetVector() *CMsgVector { return nil } +type CDOTAUserMsg_UpdateLinearProjectileCPData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Handle *int32 `protobuf:"varint,1,opt,name=handle" json:"handle,omitempty"` + ControlPoint *int32 `protobuf:"varint,2,opt,name=control_point,json=controlPoint" json:"control_point,omitempty"` + Vector *CMsgVector `protobuf:"bytes,3,opt,name=vector" json:"vector,omitempty"` +} + +func (x *CDOTAUserMsg_UpdateLinearProjectileCPData) Reset() { + *x = CDOTAUserMsg_UpdateLinearProjectileCPData{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_usermessages_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CDOTAUserMsg_UpdateLinearProjectileCPData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CDOTAUserMsg_UpdateLinearProjectileCPData) ProtoMessage() {} + +func (x *CDOTAUserMsg_UpdateLinearProjectileCPData) ProtoReflect() protoreflect.Message { + mi := &file_dota_usermessages_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CDOTAUserMsg_UpdateLinearProjectileCPData.ProtoReflect.Descriptor instead. +func (*CDOTAUserMsg_UpdateLinearProjectileCPData) Descriptor() ([]byte, []int) { + return file_dota_usermessages_proto_rawDescGZIP(), []int{8} +} + +func (x *CDOTAUserMsg_UpdateLinearProjectileCPData) GetHandle() int32 { + if x != nil && x.Handle != nil { + return *x.Handle + } + return 0 +} + +func (x *CDOTAUserMsg_UpdateLinearProjectileCPData) GetControlPoint() int32 { + if x != nil && x.ControlPoint != nil { + return *x.ControlPoint + } + return 0 +} + +func (x *CDOTAUserMsg_UpdateLinearProjectileCPData) GetVector() *CMsgVector { + if x != nil { + return x.Vector + } + return nil +} + type CDOTAUserMsg_MiniKillCamInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2640,7 +2718,7 @@ type CDOTAUserMsg_MiniKillCamInfo struct { func (x *CDOTAUserMsg_MiniKillCamInfo) Reset() { *x = CDOTAUserMsg_MiniKillCamInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[8] + mi := &file_dota_usermessages_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2653,7 +2731,7 @@ func (x *CDOTAUserMsg_MiniKillCamInfo) String() string { func (*CDOTAUserMsg_MiniKillCamInfo) ProtoMessage() {} func (x *CDOTAUserMsg_MiniKillCamInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[8] + mi := &file_dota_usermessages_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2666,7 +2744,7 @@ func (x *CDOTAUserMsg_MiniKillCamInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_MiniKillCamInfo.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MiniKillCamInfo) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{8} + return file_dota_usermessages_proto_rawDescGZIP(), []int{9} } func (x *CDOTAUserMsg_MiniKillCamInfo) GetAttackers() []*CDOTAUserMsg_MiniKillCamInfo_Attacker { @@ -2688,7 +2766,7 @@ type CDOTAUserMsg_GlobalLightColor struct { func (x *CDOTAUserMsg_GlobalLightColor) Reset() { *x = CDOTAUserMsg_GlobalLightColor{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[9] + mi := &file_dota_usermessages_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2701,7 +2779,7 @@ func (x *CDOTAUserMsg_GlobalLightColor) String() string { func (*CDOTAUserMsg_GlobalLightColor) ProtoMessage() {} func (x *CDOTAUserMsg_GlobalLightColor) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[9] + mi := &file_dota_usermessages_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2714,7 +2792,7 @@ func (x *CDOTAUserMsg_GlobalLightColor) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_GlobalLightColor.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_GlobalLightColor) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{9} + return file_dota_usermessages_proto_rawDescGZIP(), []int{10} } func (x *CDOTAUserMsg_GlobalLightColor) GetColor() uint32 { @@ -2743,7 +2821,7 @@ type CDOTAUserMsg_GlobalLightDirection struct { func (x *CDOTAUserMsg_GlobalLightDirection) Reset() { *x = CDOTAUserMsg_GlobalLightDirection{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[10] + mi := &file_dota_usermessages_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2756,7 +2834,7 @@ func (x *CDOTAUserMsg_GlobalLightDirection) String() string { func (*CDOTAUserMsg_GlobalLightDirection) ProtoMessage() {} func (x *CDOTAUserMsg_GlobalLightDirection) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[10] + mi := &file_dota_usermessages_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2769,7 +2847,7 @@ func (x *CDOTAUserMsg_GlobalLightDirection) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_GlobalLightDirection.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_GlobalLightDirection) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{10} + return file_dota_usermessages_proto_rawDescGZIP(), []int{11} } func (x *CDOTAUserMsg_GlobalLightDirection) GetDirection() *CMsgVector { @@ -2798,7 +2876,7 @@ type CDOTAUserMsg_LocationPing struct { func (x *CDOTAUserMsg_LocationPing) Reset() { *x = CDOTAUserMsg_LocationPing{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[11] + mi := &file_dota_usermessages_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2811,7 +2889,7 @@ func (x *CDOTAUserMsg_LocationPing) String() string { func (*CDOTAUserMsg_LocationPing) ProtoMessage() {} func (x *CDOTAUserMsg_LocationPing) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[11] + mi := &file_dota_usermessages_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2824,7 +2902,7 @@ func (x *CDOTAUserMsg_LocationPing) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_LocationPing.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_LocationPing) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{11} + return file_dota_usermessages_proto_rawDescGZIP(), []int{12} } func (x *CDOTAUserMsg_LocationPing) GetPlayerId() int32 { @@ -2855,7 +2933,7 @@ type CDOTAUserMsg_PingConfirmation struct { func (x *CDOTAUserMsg_PingConfirmation) Reset() { *x = CDOTAUserMsg_PingConfirmation{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[12] + mi := &file_dota_usermessages_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2868,7 +2946,7 @@ func (x *CDOTAUserMsg_PingConfirmation) String() string { func (*CDOTAUserMsg_PingConfirmation) ProtoMessage() {} func (x *CDOTAUserMsg_PingConfirmation) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[12] + mi := &file_dota_usermessages_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2881,7 +2959,7 @@ func (x *CDOTAUserMsg_PingConfirmation) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_PingConfirmation.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_PingConfirmation) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{12} + return file_dota_usermessages_proto_rawDescGZIP(), []int{13} } func (x *CDOTAUserMsg_PingConfirmation) GetPlayerIdOfOriginalPinger() int32 { @@ -2924,7 +3002,7 @@ type CDOTAUserMsg_ItemAlert struct { func (x *CDOTAUserMsg_ItemAlert) Reset() { *x = CDOTAUserMsg_ItemAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[13] + mi := &file_dota_usermessages_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2937,7 +3015,7 @@ func (x *CDOTAUserMsg_ItemAlert) String() string { func (*CDOTAUserMsg_ItemAlert) ProtoMessage() {} func (x *CDOTAUserMsg_ItemAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[13] + mi := &file_dota_usermessages_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2950,7 +3028,7 @@ func (x *CDOTAUserMsg_ItemAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ItemAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ItemAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{13} + return file_dota_usermessages_proto_rawDescGZIP(), []int{14} } func (x *CDOTAUserMsg_ItemAlert) GetPlayerId() int32 { @@ -2985,7 +3063,7 @@ type CDOTAUserMsg_EnemyItemAlert struct { func (x *CDOTAUserMsg_EnemyItemAlert) Reset() { *x = CDOTAUserMsg_EnemyItemAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[14] + mi := &file_dota_usermessages_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2998,7 +3076,7 @@ func (x *CDOTAUserMsg_EnemyItemAlert) String() string { func (*CDOTAUserMsg_EnemyItemAlert) ProtoMessage() {} func (x *CDOTAUserMsg_EnemyItemAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[14] + mi := &file_dota_usermessages_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3011,7 +3089,7 @@ func (x *CDOTAUserMsg_EnemyItemAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_EnemyItemAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_EnemyItemAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{14} + return file_dota_usermessages_proto_rawDescGZIP(), []int{15} } func (x *CDOTAUserMsg_EnemyItemAlert) GetPlayerId() int32 { @@ -3086,7 +3164,7 @@ type CDOTAUserMsg_ModifierAlert struct { func (x *CDOTAUserMsg_ModifierAlert) Reset() { *x = CDOTAUserMsg_ModifierAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[15] + mi := &file_dota_usermessages_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3099,7 +3177,7 @@ func (x *CDOTAUserMsg_ModifierAlert) String() string { func (*CDOTAUserMsg_ModifierAlert) ProtoMessage() {} func (x *CDOTAUserMsg_ModifierAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[15] + mi := &file_dota_usermessages_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3112,7 +3190,7 @@ func (x *CDOTAUserMsg_ModifierAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ModifierAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ModifierAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{15} + return file_dota_usermessages_proto_rawDescGZIP(), []int{16} } func (x *CDOTAUserMsg_ModifierAlert) GetPlayerId() int32 { @@ -3170,7 +3248,7 @@ type CDOTAUserMsg_HPManaAlert struct { func (x *CDOTAUserMsg_HPManaAlert) Reset() { *x = CDOTAUserMsg_HPManaAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[16] + mi := &file_dota_usermessages_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3183,7 +3261,7 @@ func (x *CDOTAUserMsg_HPManaAlert) String() string { func (*CDOTAUserMsg_HPManaAlert) ProtoMessage() {} func (x *CDOTAUserMsg_HPManaAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[16] + mi := &file_dota_usermessages_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3196,7 +3274,7 @@ func (x *CDOTAUserMsg_HPManaAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_HPManaAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_HPManaAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{16} + return file_dota_usermessages_proto_rawDescGZIP(), []int{17} } func (x *CDOTAUserMsg_HPManaAlert) GetPlayerId() int32 { @@ -3237,7 +3315,7 @@ type CDOTAUserMsg_NeutralCampAlert struct { func (x *CDOTAUserMsg_NeutralCampAlert) Reset() { *x = CDOTAUserMsg_NeutralCampAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[17] + mi := &file_dota_usermessages_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3250,7 +3328,7 @@ func (x *CDOTAUserMsg_NeutralCampAlert) String() string { func (*CDOTAUserMsg_NeutralCampAlert) ProtoMessage() {} func (x *CDOTAUserMsg_NeutralCampAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[17] + mi := &file_dota_usermessages_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3263,7 +3341,7 @@ func (x *CDOTAUserMsg_NeutralCampAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_NeutralCampAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_NeutralCampAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{17} + return file_dota_usermessages_proto_rawDescGZIP(), []int{18} } func (x *CDOTAUserMsg_NeutralCampAlert) GetPlayerId() int32 { @@ -3327,7 +3405,7 @@ type CDOTAUserMsg_GlyphAlert struct { func (x *CDOTAUserMsg_GlyphAlert) Reset() { *x = CDOTAUserMsg_GlyphAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[18] + mi := &file_dota_usermessages_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3340,7 +3418,7 @@ func (x *CDOTAUserMsg_GlyphAlert) String() string { func (*CDOTAUserMsg_GlyphAlert) ProtoMessage() {} func (x *CDOTAUserMsg_GlyphAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[18] + mi := &file_dota_usermessages_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3353,7 +3431,7 @@ func (x *CDOTAUserMsg_GlyphAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_GlyphAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_GlyphAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{18} + return file_dota_usermessages_proto_rawDescGZIP(), []int{19} } func (x *CDOTAUserMsg_GlyphAlert) GetPlayerId() int32 { @@ -3382,7 +3460,7 @@ type CDOTAUserMsg_RadarAlert struct { func (x *CDOTAUserMsg_RadarAlert) Reset() { *x = CDOTAUserMsg_RadarAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[19] + mi := &file_dota_usermessages_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3395,7 +3473,7 @@ func (x *CDOTAUserMsg_RadarAlert) String() string { func (*CDOTAUserMsg_RadarAlert) ProtoMessage() {} func (x *CDOTAUserMsg_RadarAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[19] + mi := &file_dota_usermessages_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3408,7 +3486,7 @@ func (x *CDOTAUserMsg_RadarAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_RadarAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_RadarAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{19} + return file_dota_usermessages_proto_rawDescGZIP(), []int{20} } func (x *CDOTAUserMsg_RadarAlert) GetPlayerId() int32 { @@ -3439,7 +3517,7 @@ type CDOTAUserMsg_WillPurchaseAlert struct { func (x *CDOTAUserMsg_WillPurchaseAlert) Reset() { *x = CDOTAUserMsg_WillPurchaseAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[20] + mi := &file_dota_usermessages_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3452,7 +3530,7 @@ func (x *CDOTAUserMsg_WillPurchaseAlert) String() string { func (*CDOTAUserMsg_WillPurchaseAlert) ProtoMessage() {} func (x *CDOTAUserMsg_WillPurchaseAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[20] + mi := &file_dota_usermessages_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3465,7 +3543,7 @@ func (x *CDOTAUserMsg_WillPurchaseAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_WillPurchaseAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_WillPurchaseAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{20} + return file_dota_usermessages_proto_rawDescGZIP(), []int{21} } func (x *CDOTAUserMsg_WillPurchaseAlert) GetItemAbilityId() int32 { @@ -3509,7 +3587,7 @@ type CDOTAUserMsg_EmptyTeleportAlert struct { func (x *CDOTAUserMsg_EmptyTeleportAlert) Reset() { *x = CDOTAUserMsg_EmptyTeleportAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[21] + mi := &file_dota_usermessages_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3522,7 +3600,7 @@ func (x *CDOTAUserMsg_EmptyTeleportAlert) String() string { func (*CDOTAUserMsg_EmptyTeleportAlert) ProtoMessage() {} func (x *CDOTAUserMsg_EmptyTeleportAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[21] + mi := &file_dota_usermessages_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3535,7 +3613,7 @@ func (x *CDOTAUserMsg_EmptyTeleportAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_EmptyTeleportAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_EmptyTeleportAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{21} + return file_dota_usermessages_proto_rawDescGZIP(), []int{22} } func (x *CDOTAUserMsg_EmptyTeleportAlert) GetSourcePlayerId() int32 { @@ -3572,7 +3650,7 @@ type CDOTAUserMsg_MarsArenaOfBloodAttack struct { func (x *CDOTAUserMsg_MarsArenaOfBloodAttack) Reset() { *x = CDOTAUserMsg_MarsArenaOfBloodAttack{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[22] + mi := &file_dota_usermessages_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3585,7 +3663,7 @@ func (x *CDOTAUserMsg_MarsArenaOfBloodAttack) String() string { func (*CDOTAUserMsg_MarsArenaOfBloodAttack) ProtoMessage() {} func (x *CDOTAUserMsg_MarsArenaOfBloodAttack) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[22] + mi := &file_dota_usermessages_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3598,7 +3676,7 @@ func (x *CDOTAUserMsg_MarsArenaOfBloodAttack) ProtoReflect() protoreflect.Messag // Deprecated: Use CDOTAUserMsg_MarsArenaOfBloodAttack.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MarsArenaOfBloodAttack) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{22} + return file_dota_usermessages_proto_rawDescGZIP(), []int{23} } func (x *CDOTAUserMsg_MarsArenaOfBloodAttack) GetSourceEhandle() uint32 { @@ -3634,7 +3712,7 @@ type CDOTAEntityMsg_InvokerSpellCast struct { func (x *CDOTAEntityMsg_InvokerSpellCast) Reset() { *x = CDOTAEntityMsg_InvokerSpellCast{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[23] + mi := &file_dota_usermessages_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3647,7 +3725,7 @@ func (x *CDOTAEntityMsg_InvokerSpellCast) String() string { func (*CDOTAEntityMsg_InvokerSpellCast) ProtoMessage() {} func (x *CDOTAEntityMsg_InvokerSpellCast) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[23] + mi := &file_dota_usermessages_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3660,7 +3738,7 @@ func (x *CDOTAEntityMsg_InvokerSpellCast) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAEntityMsg_InvokerSpellCast.ProtoReflect.Descriptor instead. func (*CDOTAEntityMsg_InvokerSpellCast) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{23} + return file_dota_usermessages_proto_rawDescGZIP(), []int{24} } func (x *CDOTAEntityMsg_InvokerSpellCast) GetEntityMsg() *CEntityMsg { @@ -3688,7 +3766,7 @@ type CDOTAUserMsg_BuyBackStateAlert struct { func (x *CDOTAUserMsg_BuyBackStateAlert) Reset() { *x = CDOTAUserMsg_BuyBackStateAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[24] + mi := &file_dota_usermessages_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3701,7 +3779,7 @@ func (x *CDOTAUserMsg_BuyBackStateAlert) String() string { func (*CDOTAUserMsg_BuyBackStateAlert) ProtoMessage() {} func (x *CDOTAUserMsg_BuyBackStateAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[24] + mi := &file_dota_usermessages_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3714,7 +3792,7 @@ func (x *CDOTAUserMsg_BuyBackStateAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_BuyBackStateAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_BuyBackStateAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{24} + return file_dota_usermessages_proto_rawDescGZIP(), []int{25} } func (x *CDOTAUserMsg_BuyBackStateAlert) GetPlayerId() int32 { @@ -3739,7 +3817,7 @@ type CDOTAUserMsg_QuickBuyAlert struct { func (x *CDOTAUserMsg_QuickBuyAlert) Reset() { *x = CDOTAUserMsg_QuickBuyAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[25] + mi := &file_dota_usermessages_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3752,7 +3830,7 @@ func (x *CDOTAUserMsg_QuickBuyAlert) String() string { func (*CDOTAUserMsg_QuickBuyAlert) ProtoMessage() {} func (x *CDOTAUserMsg_QuickBuyAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[25] + mi := &file_dota_usermessages_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3765,7 +3843,7 @@ func (x *CDOTAUserMsg_QuickBuyAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_QuickBuyAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_QuickBuyAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{25} + return file_dota_usermessages_proto_rawDescGZIP(), []int{26} } func (x *CDOTAUserMsg_QuickBuyAlert) GetPlayerId() int32 { @@ -3820,7 +3898,7 @@ type CDOTAUserMsg_CourierKilledAlert struct { func (x *CDOTAUserMsg_CourierKilledAlert) Reset() { *x = CDOTAUserMsg_CourierKilledAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[26] + mi := &file_dota_usermessages_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3833,7 +3911,7 @@ func (x *CDOTAUserMsg_CourierKilledAlert) String() string { func (*CDOTAUserMsg_CourierKilledAlert) ProtoMessage() {} func (x *CDOTAUserMsg_CourierKilledAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[26] + mi := &file_dota_usermessages_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3846,7 +3924,7 @@ func (x *CDOTAUserMsg_CourierKilledAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_CourierKilledAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CourierKilledAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{26} + return file_dota_usermessages_proto_rawDescGZIP(), []int{27} } func (x *CDOTAUserMsg_CourierKilledAlert) GetTeam() uint32 { @@ -3914,7 +3992,7 @@ type CDOTAUserMsg_MinimapEvent struct { func (x *CDOTAUserMsg_MinimapEvent) Reset() { *x = CDOTAUserMsg_MinimapEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[27] + mi := &file_dota_usermessages_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3927,7 +4005,7 @@ func (x *CDOTAUserMsg_MinimapEvent) String() string { func (*CDOTAUserMsg_MinimapEvent) ProtoMessage() {} func (x *CDOTAUserMsg_MinimapEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[27] + mi := &file_dota_usermessages_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3940,7 +4018,7 @@ func (x *CDOTAUserMsg_MinimapEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_MinimapEvent.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MinimapEvent) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{27} + return file_dota_usermessages_proto_rawDescGZIP(), []int{28} } func (x *CDOTAUserMsg_MinimapEvent) GetEventType() int32 { @@ -3997,7 +4075,7 @@ type CDOTAUserMsg_MapLine struct { func (x *CDOTAUserMsg_MapLine) Reset() { *x = CDOTAUserMsg_MapLine{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[28] + mi := &file_dota_usermessages_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4010,7 +4088,7 @@ func (x *CDOTAUserMsg_MapLine) String() string { func (*CDOTAUserMsg_MapLine) ProtoMessage() {} func (x *CDOTAUserMsg_MapLine) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[28] + mi := &file_dota_usermessages_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4023,7 +4101,7 @@ func (x *CDOTAUserMsg_MapLine) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_MapLine.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MapLine) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{28} + return file_dota_usermessages_proto_rawDescGZIP(), []int{29} } func (x *CDOTAUserMsg_MapLine) GetPlayerId() int32 { @@ -4055,7 +4133,7 @@ type CDOTAUserMsg_MinimapDebugPoint struct { func (x *CDOTAUserMsg_MinimapDebugPoint) Reset() { *x = CDOTAUserMsg_MinimapDebugPoint{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[29] + mi := &file_dota_usermessages_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4068,7 +4146,7 @@ func (x *CDOTAUserMsg_MinimapDebugPoint) String() string { func (*CDOTAUserMsg_MinimapDebugPoint) ProtoMessage() {} func (x *CDOTAUserMsg_MinimapDebugPoint) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[29] + mi := &file_dota_usermessages_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4081,7 +4159,7 @@ func (x *CDOTAUserMsg_MinimapDebugPoint) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_MinimapDebugPoint.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MinimapDebugPoint) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{29} + return file_dota_usermessages_proto_rawDescGZIP(), []int{30} } func (x *CDOTAUserMsg_MinimapDebugPoint) GetLocation() *CMsgVector { @@ -4141,7 +4219,7 @@ type CDOTAUserMsg_CreateLinearProjectile struct { func (x *CDOTAUserMsg_CreateLinearProjectile) Reset() { *x = CDOTAUserMsg_CreateLinearProjectile{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[30] + mi := &file_dota_usermessages_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4154,7 +4232,7 @@ func (x *CDOTAUserMsg_CreateLinearProjectile) String() string { func (*CDOTAUserMsg_CreateLinearProjectile) ProtoMessage() {} func (x *CDOTAUserMsg_CreateLinearProjectile) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[30] + mi := &file_dota_usermessages_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4167,7 +4245,7 @@ func (x *CDOTAUserMsg_CreateLinearProjectile) ProtoReflect() protoreflect.Messag // Deprecated: Use CDOTAUserMsg_CreateLinearProjectile.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CreateLinearProjectile) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{30} + return file_dota_usermessages_proto_rawDescGZIP(), []int{31} } func (x *CDOTAUserMsg_CreateLinearProjectile) GetOrigin() *CMsgVector { @@ -4265,7 +4343,7 @@ type CDOTAUserMsg_DestroyLinearProjectile struct { func (x *CDOTAUserMsg_DestroyLinearProjectile) Reset() { *x = CDOTAUserMsg_DestroyLinearProjectile{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[31] + mi := &file_dota_usermessages_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4278,7 +4356,7 @@ func (x *CDOTAUserMsg_DestroyLinearProjectile) String() string { func (*CDOTAUserMsg_DestroyLinearProjectile) ProtoMessage() {} func (x *CDOTAUserMsg_DestroyLinearProjectile) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[31] + mi := &file_dota_usermessages_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4291,7 +4369,7 @@ func (x *CDOTAUserMsg_DestroyLinearProjectile) ProtoReflect() protoreflect.Messa // Deprecated: Use CDOTAUserMsg_DestroyLinearProjectile.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_DestroyLinearProjectile) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{31} + return file_dota_usermessages_proto_rawDescGZIP(), []int{32} } func (x *CDOTAUserMsg_DestroyLinearProjectile) GetHandle() int32 { @@ -4313,7 +4391,7 @@ type CDOTAUserMsg_DodgeTrackingProjectiles struct { func (x *CDOTAUserMsg_DodgeTrackingProjectiles) Reset() { *x = CDOTAUserMsg_DodgeTrackingProjectiles{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[32] + mi := &file_dota_usermessages_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4326,7 +4404,7 @@ func (x *CDOTAUserMsg_DodgeTrackingProjectiles) String() string { func (*CDOTAUserMsg_DodgeTrackingProjectiles) ProtoMessage() {} func (x *CDOTAUserMsg_DodgeTrackingProjectiles) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[32] + mi := &file_dota_usermessages_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4339,7 +4417,7 @@ func (x *CDOTAUserMsg_DodgeTrackingProjectiles) ProtoReflect() protoreflect.Mess // Deprecated: Use CDOTAUserMsg_DodgeTrackingProjectiles.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_DodgeTrackingProjectiles) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{32} + return file_dota_usermessages_proto_rawDescGZIP(), []int{33} } func (x *CDOTAUserMsg_DodgeTrackingProjectiles) GetEntindex() int32 { @@ -4369,7 +4447,7 @@ type CDOTAUserMsg_SpectatorPlayerClick struct { func (x *CDOTAUserMsg_SpectatorPlayerClick) Reset() { *x = CDOTAUserMsg_SpectatorPlayerClick{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[33] + mi := &file_dota_usermessages_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4382,7 +4460,7 @@ func (x *CDOTAUserMsg_SpectatorPlayerClick) String() string { func (*CDOTAUserMsg_SpectatorPlayerClick) ProtoMessage() {} func (x *CDOTAUserMsg_SpectatorPlayerClick) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[33] + mi := &file_dota_usermessages_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4395,7 +4473,7 @@ func (x *CDOTAUserMsg_SpectatorPlayerClick) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_SpectatorPlayerClick.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SpectatorPlayerClick) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{33} + return file_dota_usermessages_proto_rawDescGZIP(), []int{34} } func (x *CDOTAUserMsg_SpectatorPlayerClick) GetEntindex() int32 { @@ -4438,7 +4516,7 @@ type CDOTAUserMsg_SpectatorPlayerUnitOrders struct { func (x *CDOTAUserMsg_SpectatorPlayerUnitOrders) Reset() { *x = CDOTAUserMsg_SpectatorPlayerUnitOrders{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[34] + mi := &file_dota_usermessages_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4451,7 +4529,7 @@ func (x *CDOTAUserMsg_SpectatorPlayerUnitOrders) String() string { func (*CDOTAUserMsg_SpectatorPlayerUnitOrders) ProtoMessage() {} func (x *CDOTAUserMsg_SpectatorPlayerUnitOrders) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[34] + mi := &file_dota_usermessages_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4464,7 +4542,7 @@ func (x *CDOTAUserMsg_SpectatorPlayerUnitOrders) ProtoReflect() protoreflect.Mes // Deprecated: Use CDOTAUserMsg_SpectatorPlayerUnitOrders.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SpectatorPlayerUnitOrders) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{34} + return file_dota_usermessages_proto_rawDescGZIP(), []int{35} } func (x *CDOTAUserMsg_SpectatorPlayerUnitOrders) GetEntindex() int32 { @@ -4544,7 +4622,7 @@ type CDOTAUserMsg_NevermoreRequiem struct { func (x *CDOTAUserMsg_NevermoreRequiem) Reset() { *x = CDOTAUserMsg_NevermoreRequiem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[35] + mi := &file_dota_usermessages_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4557,7 +4635,7 @@ func (x *CDOTAUserMsg_NevermoreRequiem) String() string { func (*CDOTAUserMsg_NevermoreRequiem) ProtoMessage() {} func (x *CDOTAUserMsg_NevermoreRequiem) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[35] + mi := &file_dota_usermessages_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4570,7 +4648,7 @@ func (x *CDOTAUserMsg_NevermoreRequiem) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_NevermoreRequiem.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_NevermoreRequiem) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{35} + return file_dota_usermessages_proto_rawDescGZIP(), []int{36} } func (x *CDOTAUserMsg_NevermoreRequiem) GetEntityHandle() uint32 { @@ -4613,7 +4691,7 @@ type CDOTAUserMsg_InvalidCommand struct { func (x *CDOTAUserMsg_InvalidCommand) Reset() { *x = CDOTAUserMsg_InvalidCommand{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[36] + mi := &file_dota_usermessages_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4626,7 +4704,7 @@ func (x *CDOTAUserMsg_InvalidCommand) String() string { func (*CDOTAUserMsg_InvalidCommand) ProtoMessage() {} func (x *CDOTAUserMsg_InvalidCommand) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[36] + mi := &file_dota_usermessages_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4639,7 +4717,7 @@ func (x *CDOTAUserMsg_InvalidCommand) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_InvalidCommand.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_InvalidCommand) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{36} + return file_dota_usermessages_proto_rawDescGZIP(), []int{37} } func (x *CDOTAUserMsg_InvalidCommand) GetMessage() string { @@ -4668,7 +4746,7 @@ type CDOTAUserMsg_HudError struct { func (x *CDOTAUserMsg_HudError) Reset() { *x = CDOTAUserMsg_HudError{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[37] + mi := &file_dota_usermessages_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4681,7 +4759,7 @@ func (x *CDOTAUserMsg_HudError) String() string { func (*CDOTAUserMsg_HudError) ProtoMessage() {} func (x *CDOTAUserMsg_HudError) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[37] + mi := &file_dota_usermessages_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4694,7 +4772,7 @@ func (x *CDOTAUserMsg_HudError) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_HudError.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_HudError) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{37} + return file_dota_usermessages_proto_rawDescGZIP(), []int{38} } func (x *CDOTAUserMsg_HudError) GetOrderId() int32 { @@ -4725,7 +4803,7 @@ type CDOTAUserMsg_SharedCooldown struct { func (x *CDOTAUserMsg_SharedCooldown) Reset() { *x = CDOTAUserMsg_SharedCooldown{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[38] + mi := &file_dota_usermessages_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4738,7 +4816,7 @@ func (x *CDOTAUserMsg_SharedCooldown) String() string { func (*CDOTAUserMsg_SharedCooldown) ProtoMessage() {} func (x *CDOTAUserMsg_SharedCooldown) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[38] + mi := &file_dota_usermessages_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4751,7 +4829,7 @@ func (x *CDOTAUserMsg_SharedCooldown) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SharedCooldown.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SharedCooldown) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{38} + return file_dota_usermessages_proto_rawDescGZIP(), []int{39} } func (x *CDOTAUserMsg_SharedCooldown) GetEntindex() int32 { @@ -4793,7 +4871,7 @@ type CDOTAUserMsg_SetNextAutobuyItem struct { func (x *CDOTAUserMsg_SetNextAutobuyItem) Reset() { *x = CDOTAUserMsg_SetNextAutobuyItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[39] + mi := &file_dota_usermessages_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4806,7 +4884,7 @@ func (x *CDOTAUserMsg_SetNextAutobuyItem) String() string { func (*CDOTAUserMsg_SetNextAutobuyItem) ProtoMessage() {} func (x *CDOTAUserMsg_SetNextAutobuyItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[39] + mi := &file_dota_usermessages_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4819,7 +4897,7 @@ func (x *CDOTAUserMsg_SetNextAutobuyItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SetNextAutobuyItem.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SetNextAutobuyItem) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{39} + return file_dota_usermessages_proto_rawDescGZIP(), []int{40} } func (x *CDOTAUserMsg_SetNextAutobuyItem) GetName() string { @@ -4842,7 +4920,7 @@ type CDOTAUserMsg_HalloweenDrops struct { func (x *CDOTAUserMsg_HalloweenDrops) Reset() { *x = CDOTAUserMsg_HalloweenDrops{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[40] + mi := &file_dota_usermessages_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4855,7 +4933,7 @@ func (x *CDOTAUserMsg_HalloweenDrops) String() string { func (*CDOTAUserMsg_HalloweenDrops) ProtoMessage() {} func (x *CDOTAUserMsg_HalloweenDrops) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[40] + mi := &file_dota_usermessages_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4868,7 +4946,7 @@ func (x *CDOTAUserMsg_HalloweenDrops) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_HalloweenDrops.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_HalloweenDrops) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{40} + return file_dota_usermessages_proto_rawDescGZIP(), []int{41} } func (x *CDOTAUserMsg_HalloweenDrops) GetItemDefs() []uint32 { @@ -4906,7 +4984,7 @@ type CDOTAUserMsg_PredictionResult struct { func (x *CDOTAUserMsg_PredictionResult) Reset() { *x = CDOTAUserMsg_PredictionResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[41] + mi := &file_dota_usermessages_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4919,7 +4997,7 @@ func (x *CDOTAUserMsg_PredictionResult) String() string { func (*CDOTAUserMsg_PredictionResult) ProtoMessage() {} func (x *CDOTAUserMsg_PredictionResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[41] + mi := &file_dota_usermessages_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4932,7 +5010,7 @@ func (x *CDOTAUserMsg_PredictionResult) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_PredictionResult.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_PredictionResult) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{41} + return file_dota_usermessages_proto_rawDescGZIP(), []int{42} } func (x *CDOTAUserMsg_PredictionResult) GetAccountId() uint32 { @@ -4974,7 +5052,7 @@ type CDOTAResponseQuerySerialized struct { func (x *CDOTAResponseQuerySerialized) Reset() { *x = CDOTAResponseQuerySerialized{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[42] + mi := &file_dota_usermessages_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4987,7 +5065,7 @@ func (x *CDOTAResponseQuerySerialized) String() string { func (*CDOTAResponseQuerySerialized) ProtoMessage() {} func (x *CDOTAResponseQuerySerialized) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[42] + mi := &file_dota_usermessages_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5000,7 +5078,7 @@ func (x *CDOTAResponseQuerySerialized) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAResponseQuerySerialized.ProtoReflect.Descriptor instead. func (*CDOTAResponseQuerySerialized) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{42} + return file_dota_usermessages_proto_rawDescGZIP(), []int{43} } func (x *CDOTAResponseQuerySerialized) GetFacts() []*CDOTAResponseQuerySerialized_Fact { @@ -5024,7 +5102,7 @@ type CDOTASpeechMatchOnClient struct { func (x *CDOTASpeechMatchOnClient) Reset() { *x = CDOTASpeechMatchOnClient{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[43] + mi := &file_dota_usermessages_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5037,7 +5115,7 @@ func (x *CDOTASpeechMatchOnClient) String() string { func (*CDOTASpeechMatchOnClient) ProtoMessage() {} func (x *CDOTASpeechMatchOnClient) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[43] + mi := &file_dota_usermessages_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5050,7 +5128,7 @@ func (x *CDOTASpeechMatchOnClient) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTASpeechMatchOnClient.ProtoReflect.Descriptor instead. func (*CDOTASpeechMatchOnClient) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{43} + return file_dota_usermessages_proto_rawDescGZIP(), []int{44} } func (x *CDOTASpeechMatchOnClient) GetSpeechConcept() int32 { @@ -5100,7 +5178,7 @@ type CDOTAUserMsg_UnitEvent struct { func (x *CDOTAUserMsg_UnitEvent) Reset() { *x = CDOTAUserMsg_UnitEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[44] + mi := &file_dota_usermessages_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5113,7 +5191,7 @@ func (x *CDOTAUserMsg_UnitEvent) String() string { func (*CDOTAUserMsg_UnitEvent) ProtoMessage() {} func (x *CDOTAUserMsg_UnitEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[44] + mi := &file_dota_usermessages_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5126,7 +5204,7 @@ func (x *CDOTAUserMsg_UnitEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_UnitEvent.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UnitEvent) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{44} + return file_dota_usermessages_proto_rawDescGZIP(), []int{45} } func (x *CDOTAUserMsg_UnitEvent) GetMsgType() EDotaEntityMessages { @@ -5203,7 +5281,7 @@ type CDOTAUserMsg_ItemPurchased struct { func (x *CDOTAUserMsg_ItemPurchased) Reset() { *x = CDOTAUserMsg_ItemPurchased{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[45] + mi := &file_dota_usermessages_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5216,7 +5294,7 @@ func (x *CDOTAUserMsg_ItemPurchased) String() string { func (*CDOTAUserMsg_ItemPurchased) ProtoMessage() {} func (x *CDOTAUserMsg_ItemPurchased) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[45] + mi := &file_dota_usermessages_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5229,7 +5307,7 @@ func (x *CDOTAUserMsg_ItemPurchased) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ItemPurchased.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ItemPurchased) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{45} + return file_dota_usermessages_proto_rawDescGZIP(), []int{46} } func (x *CDOTAUserMsg_ItemPurchased) GetItemAbilityId() int32 { @@ -5250,7 +5328,7 @@ type CDOTAUserMsg_ItemSold struct { func (x *CDOTAUserMsg_ItemSold) Reset() { *x = CDOTAUserMsg_ItemSold{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[46] + mi := &file_dota_usermessages_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5263,7 +5341,7 @@ func (x *CDOTAUserMsg_ItemSold) String() string { func (*CDOTAUserMsg_ItemSold) ProtoMessage() {} func (x *CDOTAUserMsg_ItemSold) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[46] + mi := &file_dota_usermessages_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5276,7 +5354,7 @@ func (x *CDOTAUserMsg_ItemSold) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ItemSold.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ItemSold) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{46} + return file_dota_usermessages_proto_rawDescGZIP(), []int{47} } func (x *CDOTAUserMsg_ItemSold) GetItemAbilityId() int32 { @@ -5301,7 +5379,7 @@ type CDOTAUserMsg_ItemFound struct { func (x *CDOTAUserMsg_ItemFound) Reset() { *x = CDOTAUserMsg_ItemFound{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[47] + mi := &file_dota_usermessages_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5314,7 +5392,7 @@ func (x *CDOTAUserMsg_ItemFound) String() string { func (*CDOTAUserMsg_ItemFound) ProtoMessage() {} func (x *CDOTAUserMsg_ItemFound) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[47] + mi := &file_dota_usermessages_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5327,7 +5405,7 @@ func (x *CDOTAUserMsg_ItemFound) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ItemFound.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ItemFound) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{47} + return file_dota_usermessages_proto_rawDescGZIP(), []int{48} } func (x *CDOTAUserMsg_ItemFound) GetPlayer() int32 { @@ -5380,7 +5458,7 @@ type CDOTAUserMsg_OverheadEvent struct { func (x *CDOTAUserMsg_OverheadEvent) Reset() { *x = CDOTAUserMsg_OverheadEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[48] + mi := &file_dota_usermessages_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5393,7 +5471,7 @@ func (x *CDOTAUserMsg_OverheadEvent) String() string { func (*CDOTAUserMsg_OverheadEvent) ProtoMessage() {} func (x *CDOTAUserMsg_OverheadEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[48] + mi := &file_dota_usermessages_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5406,7 +5484,7 @@ func (x *CDOTAUserMsg_OverheadEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_OverheadEvent.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_OverheadEvent) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{48} + return file_dota_usermessages_proto_rawDescGZIP(), []int{49} } func (x *CDOTAUserMsg_OverheadEvent) GetMessageType() DOTA_OVERHEAD_ALERT { @@ -5456,7 +5534,7 @@ type CDOTAUserMsg_TutorialTipInfo struct { func (x *CDOTAUserMsg_TutorialTipInfo) Reset() { *x = CDOTAUserMsg_TutorialTipInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[49] + mi := &file_dota_usermessages_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5469,7 +5547,7 @@ func (x *CDOTAUserMsg_TutorialTipInfo) String() string { func (*CDOTAUserMsg_TutorialTipInfo) ProtoMessage() {} func (x *CDOTAUserMsg_TutorialTipInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[49] + mi := &file_dota_usermessages_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5482,7 +5560,7 @@ func (x *CDOTAUserMsg_TutorialTipInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TutorialTipInfo.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TutorialTipInfo) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{49} + return file_dota_usermessages_proto_rawDescGZIP(), []int{50} } func (x *CDOTAUserMsg_TutorialTipInfo) GetName() string { @@ -5513,7 +5591,7 @@ type CDOTAUserMsg_TutorialFinish struct { func (x *CDOTAUserMsg_TutorialFinish) Reset() { *x = CDOTAUserMsg_TutorialFinish{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[50] + mi := &file_dota_usermessages_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5526,7 +5604,7 @@ func (x *CDOTAUserMsg_TutorialFinish) String() string { func (*CDOTAUserMsg_TutorialFinish) ProtoMessage() {} func (x *CDOTAUserMsg_TutorialFinish) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[50] + mi := &file_dota_usermessages_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5539,7 +5617,7 @@ func (x *CDOTAUserMsg_TutorialFinish) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TutorialFinish.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TutorialFinish) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{50} + return file_dota_usermessages_proto_rawDescGZIP(), []int{51} } func (x *CDOTAUserMsg_TutorialFinish) GetHeading() string { @@ -5579,7 +5657,7 @@ type CDOTAUserMsg_TutorialMinimapPosition struct { func (x *CDOTAUserMsg_TutorialMinimapPosition) Reset() { *x = CDOTAUserMsg_TutorialMinimapPosition{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[51] + mi := &file_dota_usermessages_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5592,7 +5670,7 @@ func (x *CDOTAUserMsg_TutorialMinimapPosition) String() string { func (*CDOTAUserMsg_TutorialMinimapPosition) ProtoMessage() {} func (x *CDOTAUserMsg_TutorialMinimapPosition) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[51] + mi := &file_dota_usermessages_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5605,7 +5683,7 @@ func (x *CDOTAUserMsg_TutorialMinimapPosition) ProtoReflect() protoreflect.Messa // Deprecated: Use CDOTAUserMsg_TutorialMinimapPosition.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TutorialMinimapPosition) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{51} + return file_dota_usermessages_proto_rawDescGZIP(), []int{52} } type CDOTAUserMsg_SendGenericToolTip struct { @@ -5622,7 +5700,7 @@ type CDOTAUserMsg_SendGenericToolTip struct { func (x *CDOTAUserMsg_SendGenericToolTip) Reset() { *x = CDOTAUserMsg_SendGenericToolTip{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[52] + mi := &file_dota_usermessages_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5635,7 +5713,7 @@ func (x *CDOTAUserMsg_SendGenericToolTip) String() string { func (*CDOTAUserMsg_SendGenericToolTip) ProtoMessage() {} func (x *CDOTAUserMsg_SendGenericToolTip) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[52] + mi := &file_dota_usermessages_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5648,7 +5726,7 @@ func (x *CDOTAUserMsg_SendGenericToolTip) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SendGenericToolTip.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SendGenericToolTip) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{52} + return file_dota_usermessages_proto_rawDescGZIP(), []int{53} } func (x *CDOTAUserMsg_SendGenericToolTip) GetTitle() string { @@ -5691,7 +5769,7 @@ type CDOTAUserMsg_WorldLine struct { func (x *CDOTAUserMsg_WorldLine) Reset() { *x = CDOTAUserMsg_WorldLine{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[53] + mi := &file_dota_usermessages_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5704,7 +5782,7 @@ func (x *CDOTAUserMsg_WorldLine) String() string { func (*CDOTAUserMsg_WorldLine) ProtoMessage() {} func (x *CDOTAUserMsg_WorldLine) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[53] + mi := &file_dota_usermessages_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5717,7 +5795,7 @@ func (x *CDOTAUserMsg_WorldLine) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_WorldLine.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_WorldLine) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{53} + return file_dota_usermessages_proto_rawDescGZIP(), []int{54} } func (x *CDOTAUserMsg_WorldLine) GetPlayerId() int32 { @@ -5749,7 +5827,7 @@ type CDOTAUserMsg_ChatWheel struct { func (x *CDOTAUserMsg_ChatWheel) Reset() { *x = CDOTAUserMsg_ChatWheel{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[54] + mi := &file_dota_usermessages_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5762,7 +5840,7 @@ func (x *CDOTAUserMsg_ChatWheel) String() string { func (*CDOTAUserMsg_ChatWheel) ProtoMessage() {} func (x *CDOTAUserMsg_ChatWheel) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[54] + mi := &file_dota_usermessages_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5775,7 +5853,7 @@ func (x *CDOTAUserMsg_ChatWheel) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ChatWheel.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ChatWheel) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{54} + return file_dota_usermessages_proto_rawDescGZIP(), []int{55} } func (x *CDOTAUserMsg_ChatWheel) GetChatMessageId() uint32 { @@ -5826,7 +5904,7 @@ type CDOTAUserMsg_ReceivedXmasGift struct { func (x *CDOTAUserMsg_ReceivedXmasGift) Reset() { *x = CDOTAUserMsg_ReceivedXmasGift{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[55] + mi := &file_dota_usermessages_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5839,7 +5917,7 @@ func (x *CDOTAUserMsg_ReceivedXmasGift) String() string { func (*CDOTAUserMsg_ReceivedXmasGift) ProtoMessage() {} func (x *CDOTAUserMsg_ReceivedXmasGift) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[55] + mi := &file_dota_usermessages_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5852,7 +5930,7 @@ func (x *CDOTAUserMsg_ReceivedXmasGift) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ReceivedXmasGift.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ReceivedXmasGift) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{55} + return file_dota_usermessages_proto_rawDescGZIP(), []int{56} } func (x *CDOTAUserMsg_ReceivedXmasGift) GetPlayerId() int32 { @@ -5892,7 +5970,7 @@ type CDOTAUserMsg_ShowSurvey struct { func (x *CDOTAUserMsg_ShowSurvey) Reset() { *x = CDOTAUserMsg_ShowSurvey{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[56] + mi := &file_dota_usermessages_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5905,7 +5983,7 @@ func (x *CDOTAUserMsg_ShowSurvey) String() string { func (*CDOTAUserMsg_ShowSurvey) ProtoMessage() {} func (x *CDOTAUserMsg_ShowSurvey) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[56] + mi := &file_dota_usermessages_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5918,7 +5996,7 @@ func (x *CDOTAUserMsg_ShowSurvey) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ShowSurvey.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ShowSurvey) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{56} + return file_dota_usermessages_proto_rawDescGZIP(), []int{57} } func (x *CDOTAUserMsg_ShowSurvey) GetSurveyId() int32 { @@ -5974,7 +6052,7 @@ type CDOTAUserMsg_UpdateSharedContent struct { func (x *CDOTAUserMsg_UpdateSharedContent) Reset() { *x = CDOTAUserMsg_UpdateSharedContent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[57] + mi := &file_dota_usermessages_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5987,7 +6065,7 @@ func (x *CDOTAUserMsg_UpdateSharedContent) String() string { func (*CDOTAUserMsg_UpdateSharedContent) ProtoMessage() {} func (x *CDOTAUserMsg_UpdateSharedContent) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[57] + mi := &file_dota_usermessages_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6000,7 +6078,7 @@ func (x *CDOTAUserMsg_UpdateSharedContent) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_UpdateSharedContent.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UpdateSharedContent) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{57} + return file_dota_usermessages_proto_rawDescGZIP(), []int{58} } func (x *CDOTAUserMsg_UpdateSharedContent) GetSlotType() int32 { @@ -6019,7 +6097,7 @@ type CDOTAUserMsg_TutorialRequestExp struct { func (x *CDOTAUserMsg_TutorialRequestExp) Reset() { *x = CDOTAUserMsg_TutorialRequestExp{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[58] + mi := &file_dota_usermessages_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6032,7 +6110,7 @@ func (x *CDOTAUserMsg_TutorialRequestExp) String() string { func (*CDOTAUserMsg_TutorialRequestExp) ProtoMessage() {} func (x *CDOTAUserMsg_TutorialRequestExp) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[58] + mi := &file_dota_usermessages_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6045,7 +6123,7 @@ func (x *CDOTAUserMsg_TutorialRequestExp) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TutorialRequestExp.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TutorialRequestExp) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{58} + return file_dota_usermessages_proto_rawDescGZIP(), []int{59} } type CDOTAUserMsg_TutorialFade struct { @@ -6059,7 +6137,7 @@ type CDOTAUserMsg_TutorialFade struct { func (x *CDOTAUserMsg_TutorialFade) Reset() { *x = CDOTAUserMsg_TutorialFade{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[59] + mi := &file_dota_usermessages_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6072,7 +6150,7 @@ func (x *CDOTAUserMsg_TutorialFade) String() string { func (*CDOTAUserMsg_TutorialFade) ProtoMessage() {} func (x *CDOTAUserMsg_TutorialFade) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[59] + mi := &file_dota_usermessages_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6085,7 +6163,7 @@ func (x *CDOTAUserMsg_TutorialFade) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TutorialFade.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TutorialFade) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{59} + return file_dota_usermessages_proto_rawDescGZIP(), []int{60} } func (x *CDOTAUserMsg_TutorialFade) GetTgtAlpha() int32 { @@ -6110,7 +6188,7 @@ type CDOTAUserMsg_TutorialPingMinimap struct { func (x *CDOTAUserMsg_TutorialPingMinimap) Reset() { *x = CDOTAUserMsg_TutorialPingMinimap{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[60] + mi := &file_dota_usermessages_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6123,7 +6201,7 @@ func (x *CDOTAUserMsg_TutorialPingMinimap) String() string { func (*CDOTAUserMsg_TutorialPingMinimap) ProtoMessage() {} func (x *CDOTAUserMsg_TutorialPingMinimap) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[60] + mi := &file_dota_usermessages_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6136,7 +6214,7 @@ func (x *CDOTAUserMsg_TutorialPingMinimap) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TutorialPingMinimap.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TutorialPingMinimap) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{60} + return file_dota_usermessages_proto_rawDescGZIP(), []int{61} } func (x *CDOTAUserMsg_TutorialPingMinimap) GetPlayerId() int32 { @@ -6185,7 +6263,7 @@ type CDOTAUserMsg_GamerulesStateChanged struct { func (x *CDOTAUserMsg_GamerulesStateChanged) Reset() { *x = CDOTAUserMsg_GamerulesStateChanged{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[61] + mi := &file_dota_usermessages_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6198,7 +6276,7 @@ func (x *CDOTAUserMsg_GamerulesStateChanged) String() string { func (*CDOTAUserMsg_GamerulesStateChanged) ProtoMessage() {} func (x *CDOTAUserMsg_GamerulesStateChanged) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[61] + mi := &file_dota_usermessages_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6211,7 +6289,7 @@ func (x *CDOTAUserMsg_GamerulesStateChanged) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_GamerulesStateChanged.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_GamerulesStateChanged) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{61} + return file_dota_usermessages_proto_rawDescGZIP(), []int{62} } func (x *CDOTAUserMsg_GamerulesStateChanged) GetState() uint32 { @@ -6233,7 +6311,7 @@ type CDOTAUserMsg_AddQuestLogEntry struct { func (x *CDOTAUserMsg_AddQuestLogEntry) Reset() { *x = CDOTAUserMsg_AddQuestLogEntry{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[62] + mi := &file_dota_usermessages_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6246,7 +6324,7 @@ func (x *CDOTAUserMsg_AddQuestLogEntry) String() string { func (*CDOTAUserMsg_AddQuestLogEntry) ProtoMessage() {} func (x *CDOTAUserMsg_AddQuestLogEntry) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[62] + mi := &file_dota_usermessages_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6259,7 +6337,7 @@ func (x *CDOTAUserMsg_AddQuestLogEntry) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_AddQuestLogEntry.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_AddQuestLogEntry) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{62} + return file_dota_usermessages_proto_rawDescGZIP(), []int{63} } func (x *CDOTAUserMsg_AddQuestLogEntry) GetNpcName() string { @@ -6288,7 +6366,7 @@ type CDOTAUserMsg_SendStatPopup struct { func (x *CDOTAUserMsg_SendStatPopup) Reset() { *x = CDOTAUserMsg_SendStatPopup{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[63] + mi := &file_dota_usermessages_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6301,7 +6379,7 @@ func (x *CDOTAUserMsg_SendStatPopup) String() string { func (*CDOTAUserMsg_SendStatPopup) ProtoMessage() {} func (x *CDOTAUserMsg_SendStatPopup) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[63] + mi := &file_dota_usermessages_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6314,7 +6392,7 @@ func (x *CDOTAUserMsg_SendStatPopup) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SendStatPopup.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SendStatPopup) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{63} + return file_dota_usermessages_proto_rawDescGZIP(), []int{64} } func (x *CDOTAUserMsg_SendStatPopup) GetPlayerId() int32 { @@ -6342,7 +6420,7 @@ type CDOTAUserMsg_DismissAllStatPopups struct { func (x *CDOTAUserMsg_DismissAllStatPopups) Reset() { *x = CDOTAUserMsg_DismissAllStatPopups{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[64] + mi := &file_dota_usermessages_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6355,7 +6433,7 @@ func (x *CDOTAUserMsg_DismissAllStatPopups) String() string { func (*CDOTAUserMsg_DismissAllStatPopups) ProtoMessage() {} func (x *CDOTAUserMsg_DismissAllStatPopups) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[64] + mi := &file_dota_usermessages_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6368,7 +6446,7 @@ func (x *CDOTAUserMsg_DismissAllStatPopups) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_DismissAllStatPopups.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_DismissAllStatPopups) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{64} + return file_dota_usermessages_proto_rawDescGZIP(), []int{65} } func (x *CDOTAUserMsg_DismissAllStatPopups) GetDismissallmsg() *CDOTAMsg_DismissAllStatPopups { @@ -6391,7 +6469,7 @@ type CDOTAUserMsg_SendRoshanSpectatorPhase struct { func (x *CDOTAUserMsg_SendRoshanSpectatorPhase) Reset() { *x = CDOTAUserMsg_SendRoshanSpectatorPhase{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[65] + mi := &file_dota_usermessages_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6404,7 +6482,7 @@ func (x *CDOTAUserMsg_SendRoshanSpectatorPhase) String() string { func (*CDOTAUserMsg_SendRoshanSpectatorPhase) ProtoMessage() {} func (x *CDOTAUserMsg_SendRoshanSpectatorPhase) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[65] + mi := &file_dota_usermessages_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6417,7 +6495,7 @@ func (x *CDOTAUserMsg_SendRoshanSpectatorPhase) ProtoReflect() protoreflect.Mess // Deprecated: Use CDOTAUserMsg_SendRoshanSpectatorPhase.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SendRoshanSpectatorPhase) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{65} + return file_dota_usermessages_proto_rawDescGZIP(), []int{66} } func (x *CDOTAUserMsg_SendRoshanSpectatorPhase) GetPhase() DOTA_ROSHAN_PHASE { @@ -6453,7 +6531,7 @@ type CDOTAUserMsg_SendRoshanPopup struct { func (x *CDOTAUserMsg_SendRoshanPopup) Reset() { *x = CDOTAUserMsg_SendRoshanPopup{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[66] + mi := &file_dota_usermessages_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6466,7 +6544,7 @@ func (x *CDOTAUserMsg_SendRoshanPopup) String() string { func (*CDOTAUserMsg_SendRoshanPopup) ProtoMessage() {} func (x *CDOTAUserMsg_SendRoshanPopup) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[66] + mi := &file_dota_usermessages_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6479,7 +6557,7 @@ func (x *CDOTAUserMsg_SendRoshanPopup) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SendRoshanPopup.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SendRoshanPopup) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{66} + return file_dota_usermessages_proto_rawDescGZIP(), []int{67} } func (x *CDOTAUserMsg_SendRoshanPopup) GetReclaimed() bool { @@ -6508,7 +6586,7 @@ type CDOTAUserMsg_SendFinalGold struct { func (x *CDOTAUserMsg_SendFinalGold) Reset() { *x = CDOTAUserMsg_SendFinalGold{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[67] + mi := &file_dota_usermessages_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6521,7 +6599,7 @@ func (x *CDOTAUserMsg_SendFinalGold) String() string { func (*CDOTAUserMsg_SendFinalGold) ProtoMessage() {} func (x *CDOTAUserMsg_SendFinalGold) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[67] + mi := &file_dota_usermessages_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6534,7 +6612,7 @@ func (x *CDOTAUserMsg_SendFinalGold) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SendFinalGold.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SendFinalGold) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{67} + return file_dota_usermessages_proto_rawDescGZIP(), []int{68} } func (x *CDOTAUserMsg_SendFinalGold) GetReliableGold() []uint32 { @@ -6564,7 +6642,7 @@ type CDOTAUserMsg_CustomMsg struct { func (x *CDOTAUserMsg_CustomMsg) Reset() { *x = CDOTAUserMsg_CustomMsg{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[68] + mi := &file_dota_usermessages_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6577,7 +6655,7 @@ func (x *CDOTAUserMsg_CustomMsg) String() string { func (*CDOTAUserMsg_CustomMsg) ProtoMessage() {} func (x *CDOTAUserMsg_CustomMsg) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[68] + mi := &file_dota_usermessages_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6590,7 +6668,7 @@ func (x *CDOTAUserMsg_CustomMsg) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_CustomMsg.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CustomMsg) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{68} + return file_dota_usermessages_proto_rawDescGZIP(), []int{69} } func (x *CDOTAUserMsg_CustomMsg) GetMessage() string { @@ -6626,7 +6704,7 @@ type CDOTAUserMsg_CoachHUDPing struct { func (x *CDOTAUserMsg_CoachHUDPing) Reset() { *x = CDOTAUserMsg_CoachHUDPing{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[69] + mi := &file_dota_usermessages_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6639,7 +6717,7 @@ func (x *CDOTAUserMsg_CoachHUDPing) String() string { func (*CDOTAUserMsg_CoachHUDPing) ProtoMessage() {} func (x *CDOTAUserMsg_CoachHUDPing) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[69] + mi := &file_dota_usermessages_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6652,7 +6730,7 @@ func (x *CDOTAUserMsg_CoachHUDPing) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_CoachHUDPing.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CoachHUDPing) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{69} + return file_dota_usermessages_proto_rawDescGZIP(), []int{70} } func (x *CDOTAUserMsg_CoachHUDPing) GetPlayerId() int32 { @@ -6678,7 +6756,7 @@ type CDOTAUserMsg_ClientLoadGridNav struct { func (x *CDOTAUserMsg_ClientLoadGridNav) Reset() { *x = CDOTAUserMsg_ClientLoadGridNav{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[70] + mi := &file_dota_usermessages_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6691,7 +6769,7 @@ func (x *CDOTAUserMsg_ClientLoadGridNav) String() string { func (*CDOTAUserMsg_ClientLoadGridNav) ProtoMessage() {} func (x *CDOTAUserMsg_ClientLoadGridNav) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[70] + mi := &file_dota_usermessages_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6704,7 +6782,7 @@ func (x *CDOTAUserMsg_ClientLoadGridNav) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ClientLoadGridNav.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ClientLoadGridNav) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{70} + return file_dota_usermessages_proto_rawDescGZIP(), []int{71} } type CDOTAUserMsg_TE_Projectile struct { @@ -6727,12 +6805,14 @@ type CDOTAUserMsg_TE_Projectile struct { TargetLoc *CMsgVector `protobuf:"bytes,14,opt,name=target_loc,json=targetLoc" json:"target_loc,omitempty"` ParticleCpData []*CDOTAUserMsg_ProjectileParticleCPData `protobuf:"bytes,15,rep,name=particle_cp_data,json=particleCpData" json:"particle_cp_data,omitempty"` AdditionalParticleSystemHandle *int64 `protobuf:"varint,16,opt,name=additional_particle_system_handle,json=additionalParticleSystemHandle" json:"additional_particle_system_handle,omitempty"` + OriginalMoveSpeed *int32 `protobuf:"varint,17,opt,name=original_move_speed,json=originalMoveSpeed" json:"original_move_speed,omitempty"` + Ability *uint32 `protobuf:"varint,18,opt,name=ability" json:"ability,omitempty"` } func (x *CDOTAUserMsg_TE_Projectile) Reset() { *x = CDOTAUserMsg_TE_Projectile{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[71] + mi := &file_dota_usermessages_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6745,7 +6825,7 @@ func (x *CDOTAUserMsg_TE_Projectile) String() string { func (*CDOTAUserMsg_TE_Projectile) ProtoMessage() {} func (x *CDOTAUserMsg_TE_Projectile) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[71] + mi := &file_dota_usermessages_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6758,7 +6838,7 @@ func (x *CDOTAUserMsg_TE_Projectile) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TE_Projectile.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TE_Projectile) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{71} + return file_dota_usermessages_proto_rawDescGZIP(), []int{72} } func (x *CDOTAUserMsg_TE_Projectile) GetSource() uint32 { @@ -6866,6 +6946,20 @@ func (x *CDOTAUserMsg_TE_Projectile) GetAdditionalParticleSystemHandle() int64 { return 0 } +func (x *CDOTAUserMsg_TE_Projectile) GetOriginalMoveSpeed() int32 { + if x != nil && x.OriginalMoveSpeed != nil { + return *x.OriginalMoveSpeed + } + return 0 +} + +func (x *CDOTAUserMsg_TE_Projectile) GetAbility() uint32 { + if x != nil && x.Ability != nil { + return *x.Ability + } + return 0 +} + type CDOTAUserMsg_TE_ProjectileLoc struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6886,12 +6980,13 @@ type CDOTAUserMsg_TE_ProjectileLoc struct { SourceAttachment *int32 `protobuf:"varint,15,opt,name=source_attachment,json=sourceAttachment" json:"source_attachment,omitempty"` ParticleCpData []*CDOTAUserMsg_ProjectileParticleCPData `protobuf:"bytes,16,rep,name=particle_cp_data,json=particleCpData" json:"particle_cp_data,omitempty"` AdditionalParticleSystemHandle *int64 `protobuf:"varint,17,opt,name=additional_particle_system_handle,json=additionalParticleSystemHandle" json:"additional_particle_system_handle,omitempty"` + OriginalMoveSpeed *int32 `protobuf:"varint,18,opt,name=original_move_speed,json=originalMoveSpeed" json:"original_move_speed,omitempty"` } func (x *CDOTAUserMsg_TE_ProjectileLoc) Reset() { *x = CDOTAUserMsg_TE_ProjectileLoc{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[72] + mi := &file_dota_usermessages_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6904,7 +6999,7 @@ func (x *CDOTAUserMsg_TE_ProjectileLoc) String() string { func (*CDOTAUserMsg_TE_ProjectileLoc) ProtoMessage() {} func (x *CDOTAUserMsg_TE_ProjectileLoc) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[72] + mi := &file_dota_usermessages_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6917,7 +7012,7 @@ func (x *CDOTAUserMsg_TE_ProjectileLoc) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TE_ProjectileLoc.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TE_ProjectileLoc) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{72} + return file_dota_usermessages_proto_rawDescGZIP(), []int{73} } func (x *CDOTAUserMsg_TE_ProjectileLoc) GetSourceLoc() *CMsgVector { @@ -7025,6 +7120,13 @@ func (x *CDOTAUserMsg_TE_ProjectileLoc) GetAdditionalParticleSystemHandle() int6 return 0 } +func (x *CDOTAUserMsg_TE_ProjectileLoc) GetOriginalMoveSpeed() int32 { + if x != nil && x.OriginalMoveSpeed != nil { + return *x.OriginalMoveSpeed + } + return 0 +} + type CDOTAUserMsg_TE_DestroyProjectile struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7036,7 +7138,7 @@ type CDOTAUserMsg_TE_DestroyProjectile struct { func (x *CDOTAUserMsg_TE_DestroyProjectile) Reset() { *x = CDOTAUserMsg_TE_DestroyProjectile{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[73] + mi := &file_dota_usermessages_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7049,7 +7151,7 @@ func (x *CDOTAUserMsg_TE_DestroyProjectile) String() string { func (*CDOTAUserMsg_TE_DestroyProjectile) ProtoMessage() {} func (x *CDOTAUserMsg_TE_DestroyProjectile) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[73] + mi := &file_dota_usermessages_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7062,7 +7164,7 @@ func (x *CDOTAUserMsg_TE_DestroyProjectile) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_TE_DestroyProjectile.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TE_DestroyProjectile) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{73} + return file_dota_usermessages_proto_rawDescGZIP(), []int{74} } func (x *CDOTAUserMsg_TE_DestroyProjectile) GetHandle() int32 { @@ -7086,7 +7188,7 @@ type CDOTAUserMsg_TE_DotaBloodImpact struct { func (x *CDOTAUserMsg_TE_DotaBloodImpact) Reset() { *x = CDOTAUserMsg_TE_DotaBloodImpact{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[74] + mi := &file_dota_usermessages_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7099,7 +7201,7 @@ func (x *CDOTAUserMsg_TE_DotaBloodImpact) String() string { func (*CDOTAUserMsg_TE_DotaBloodImpact) ProtoMessage() {} func (x *CDOTAUserMsg_TE_DotaBloodImpact) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[74] + mi := &file_dota_usermessages_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7112,7 +7214,7 @@ func (x *CDOTAUserMsg_TE_DotaBloodImpact) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TE_DotaBloodImpact.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TE_DotaBloodImpact) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{74} + return file_dota_usermessages_proto_rawDescGZIP(), []int{75} } func (x *CDOTAUserMsg_TE_DotaBloodImpact) GetEntity() uint32 { @@ -7165,7 +7267,7 @@ type CDOTAUserMsg_AbilityPing struct { func (x *CDOTAUserMsg_AbilityPing) Reset() { *x = CDOTAUserMsg_AbilityPing{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[75] + mi := &file_dota_usermessages_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7178,7 +7280,7 @@ func (x *CDOTAUserMsg_AbilityPing) String() string { func (*CDOTAUserMsg_AbilityPing) ProtoMessage() {} func (x *CDOTAUserMsg_AbilityPing) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[75] + mi := &file_dota_usermessages_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7191,7 +7293,7 @@ func (x *CDOTAUserMsg_AbilityPing) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_AbilityPing.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_AbilityPing) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{75} + return file_dota_usermessages_proto_rawDescGZIP(), []int{76} } func (x *CDOTAUserMsg_AbilityPing) GetPlayerId() int32 { @@ -7295,7 +7397,7 @@ type CDOTAUserMsg_TE_UnitAnimation struct { func (x *CDOTAUserMsg_TE_UnitAnimation) Reset() { *x = CDOTAUserMsg_TE_UnitAnimation{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[76] + mi := &file_dota_usermessages_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7308,7 +7410,7 @@ func (x *CDOTAUserMsg_TE_UnitAnimation) String() string { func (*CDOTAUserMsg_TE_UnitAnimation) ProtoMessage() {} func (x *CDOTAUserMsg_TE_UnitAnimation) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[76] + mi := &file_dota_usermessages_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7321,7 +7423,7 @@ func (x *CDOTAUserMsg_TE_UnitAnimation) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TE_UnitAnimation.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TE_UnitAnimation) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{76} + return file_dota_usermessages_proto_rawDescGZIP(), []int{77} } func (x *CDOTAUserMsg_TE_UnitAnimation) GetEntity() uint32 { @@ -7385,7 +7487,7 @@ type CDOTAUserMsg_TE_UnitAnimationEnd struct { func (x *CDOTAUserMsg_TE_UnitAnimationEnd) Reset() { *x = CDOTAUserMsg_TE_UnitAnimationEnd{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[77] + mi := &file_dota_usermessages_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7398,7 +7500,7 @@ func (x *CDOTAUserMsg_TE_UnitAnimationEnd) String() string { func (*CDOTAUserMsg_TE_UnitAnimationEnd) ProtoMessage() {} func (x *CDOTAUserMsg_TE_UnitAnimationEnd) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[77] + mi := &file_dota_usermessages_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7411,7 +7513,7 @@ func (x *CDOTAUserMsg_TE_UnitAnimationEnd) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TE_UnitAnimationEnd.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TE_UnitAnimationEnd) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{77} + return file_dota_usermessages_proto_rawDescGZIP(), []int{78} } func (x *CDOTAUserMsg_TE_UnitAnimationEnd) GetEntity() uint32 { @@ -7444,7 +7546,7 @@ type CDOTAUserMsg_ShowGenericPopup struct { func (x *CDOTAUserMsg_ShowGenericPopup) Reset() { *x = CDOTAUserMsg_ShowGenericPopup{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[78] + mi := &file_dota_usermessages_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7457,7 +7559,7 @@ func (x *CDOTAUserMsg_ShowGenericPopup) String() string { func (*CDOTAUserMsg_ShowGenericPopup) ProtoMessage() {} func (x *CDOTAUserMsg_ShowGenericPopup) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[78] + mi := &file_dota_usermessages_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7470,7 +7572,7 @@ func (x *CDOTAUserMsg_ShowGenericPopup) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ShowGenericPopup.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ShowGenericPopup) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{78} + return file_dota_usermessages_proto_rawDescGZIP(), []int{79} } func (x *CDOTAUserMsg_ShowGenericPopup) GetHeader() string { @@ -7529,7 +7631,7 @@ type CDOTAUserMsg_VoteStart struct { func (x *CDOTAUserMsg_VoteStart) Reset() { *x = CDOTAUserMsg_VoteStart{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[79] + mi := &file_dota_usermessages_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7542,7 +7644,7 @@ func (x *CDOTAUserMsg_VoteStart) String() string { func (*CDOTAUserMsg_VoteStart) ProtoMessage() {} func (x *CDOTAUserMsg_VoteStart) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[79] + mi := &file_dota_usermessages_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7555,7 +7657,7 @@ func (x *CDOTAUserMsg_VoteStart) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_VoteStart.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_VoteStart) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{79} + return file_dota_usermessages_proto_rawDescGZIP(), []int{80} } func (x *CDOTAUserMsg_VoteStart) GetTitle() string { @@ -7597,7 +7699,7 @@ type CDOTAUserMsg_VoteUpdate struct { func (x *CDOTAUserMsg_VoteUpdate) Reset() { *x = CDOTAUserMsg_VoteUpdate{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[80] + mi := &file_dota_usermessages_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7610,7 +7712,7 @@ func (x *CDOTAUserMsg_VoteUpdate) String() string { func (*CDOTAUserMsg_VoteUpdate) ProtoMessage() {} func (x *CDOTAUserMsg_VoteUpdate) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[80] + mi := &file_dota_usermessages_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7623,7 +7725,7 @@ func (x *CDOTAUserMsg_VoteUpdate) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_VoteUpdate.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_VoteUpdate) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{80} + return file_dota_usermessages_proto_rawDescGZIP(), []int{81} } func (x *CDOTAUserMsg_VoteUpdate) GetChoiceCounts() []int32 { @@ -7644,7 +7746,7 @@ type CDOTAUserMsg_VoteEnd struct { func (x *CDOTAUserMsg_VoteEnd) Reset() { *x = CDOTAUserMsg_VoteEnd{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[81] + mi := &file_dota_usermessages_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7657,7 +7759,7 @@ func (x *CDOTAUserMsg_VoteEnd) String() string { func (*CDOTAUserMsg_VoteEnd) ProtoMessage() {} func (x *CDOTAUserMsg_VoteEnd) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[81] + mi := &file_dota_usermessages_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7670,7 +7772,7 @@ func (x *CDOTAUserMsg_VoteEnd) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_VoteEnd.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_VoteEnd) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{81} + return file_dota_usermessages_proto_rawDescGZIP(), []int{82} } func (x *CDOTAUserMsg_VoteEnd) GetSelectedChoice() int32 { @@ -7695,7 +7797,7 @@ type CDOTAUserMsg_BoosterStatePlayer struct { func (x *CDOTAUserMsg_BoosterStatePlayer) Reset() { *x = CDOTAUserMsg_BoosterStatePlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[82] + mi := &file_dota_usermessages_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7708,7 +7810,7 @@ func (x *CDOTAUserMsg_BoosterStatePlayer) String() string { func (*CDOTAUserMsg_BoosterStatePlayer) ProtoMessage() {} func (x *CDOTAUserMsg_BoosterStatePlayer) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[82] + mi := &file_dota_usermessages_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7721,7 +7823,7 @@ func (x *CDOTAUserMsg_BoosterStatePlayer) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_BoosterStatePlayer.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_BoosterStatePlayer) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{82} + return file_dota_usermessages_proto_rawDescGZIP(), []int{83} } func (x *CDOTAUserMsg_BoosterStatePlayer) GetPlayerId() int32 { @@ -7770,7 +7872,7 @@ type CDOTAUserMsg_BoosterState struct { func (x *CDOTAUserMsg_BoosterState) Reset() { *x = CDOTAUserMsg_BoosterState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[83] + mi := &file_dota_usermessages_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7783,7 +7885,7 @@ func (x *CDOTAUserMsg_BoosterState) String() string { func (*CDOTAUserMsg_BoosterState) ProtoMessage() {} func (x *CDOTAUserMsg_BoosterState) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[83] + mi := &file_dota_usermessages_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7796,7 +7898,7 @@ func (x *CDOTAUserMsg_BoosterState) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_BoosterState.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_BoosterState) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{83} + return file_dota_usermessages_proto_rawDescGZIP(), []int{84} } func (x *CDOTAUserMsg_BoosterState) GetBoostedPlayers() []*CDOTAUserMsg_BoosterStatePlayer { @@ -7817,7 +7919,7 @@ type CDOTAUserMsg_PlayerMMR struct { func (x *CDOTAUserMsg_PlayerMMR) Reset() { *x = CDOTAUserMsg_PlayerMMR{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[84] + mi := &file_dota_usermessages_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7830,7 +7932,7 @@ func (x *CDOTAUserMsg_PlayerMMR) String() string { func (*CDOTAUserMsg_PlayerMMR) ProtoMessage() {} func (x *CDOTAUserMsg_PlayerMMR) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[84] + mi := &file_dota_usermessages_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7843,7 +7945,7 @@ func (x *CDOTAUserMsg_PlayerMMR) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_PlayerMMR.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_PlayerMMR) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{84} + return file_dota_usermessages_proto_rawDescGZIP(), []int{85} } func (x *CDOTAUserMsg_PlayerMMR) GetMmr() []int32 { @@ -7866,7 +7968,7 @@ type CDOTAUserMsg_AbilitySteal struct { func (x *CDOTAUserMsg_AbilitySteal) Reset() { *x = CDOTAUserMsg_AbilitySteal{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[85] + mi := &file_dota_usermessages_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7879,7 +7981,7 @@ func (x *CDOTAUserMsg_AbilitySteal) String() string { func (*CDOTAUserMsg_AbilitySteal) ProtoMessage() {} func (x *CDOTAUserMsg_AbilitySteal) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[85] + mi := &file_dota_usermessages_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7892,7 +7994,7 @@ func (x *CDOTAUserMsg_AbilitySteal) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_AbilitySteal.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_AbilitySteal) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{85} + return file_dota_usermessages_proto_rawDescGZIP(), []int{86} } func (x *CDOTAUserMsg_AbilitySteal) GetPlayerId() int32 { @@ -7930,7 +8032,7 @@ type CDOTAUserMsg_StatsHeroLookup struct { func (x *CDOTAUserMsg_StatsHeroLookup) Reset() { *x = CDOTAUserMsg_StatsHeroLookup{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[86] + mi := &file_dota_usermessages_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7943,7 +8045,7 @@ func (x *CDOTAUserMsg_StatsHeroLookup) String() string { func (*CDOTAUserMsg_StatsHeroLookup) ProtoMessage() {} func (x *CDOTAUserMsg_StatsHeroLookup) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[86] + mi := &file_dota_usermessages_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7956,7 +8058,7 @@ func (x *CDOTAUserMsg_StatsHeroLookup) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_StatsHeroLookup.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsHeroLookup) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{86} + return file_dota_usermessages_proto_rawDescGZIP(), []int{87} } func (x *CDOTAUserMsg_StatsHeroLookup) GetPlayerId() int32 { @@ -7999,7 +8101,7 @@ type CDOTAUserMsg_StatsHeroPositionInfo struct { func (x *CDOTAUserMsg_StatsHeroPositionInfo) Reset() { *x = CDOTAUserMsg_StatsHeroPositionInfo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[87] + mi := &file_dota_usermessages_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8012,7 +8114,7 @@ func (x *CDOTAUserMsg_StatsHeroPositionInfo) String() string { func (*CDOTAUserMsg_StatsHeroPositionInfo) ProtoMessage() {} func (x *CDOTAUserMsg_StatsHeroPositionInfo) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[87] + mi := &file_dota_usermessages_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8025,7 +8127,7 @@ func (x *CDOTAUserMsg_StatsHeroPositionInfo) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_StatsHeroPositionInfo.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsHeroPositionInfo) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{87} + return file_dota_usermessages_proto_rawDescGZIP(), []int{88} } func (x *CDOTAUserMsg_StatsHeroPositionInfo) GetAveragePosition() float32 { @@ -8067,7 +8169,7 @@ type CDOTAUserMsg_StatsHeroMinuteDetails struct { func (x *CDOTAUserMsg_StatsHeroMinuteDetails) Reset() { *x = CDOTAUserMsg_StatsHeroMinuteDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[88] + mi := &file_dota_usermessages_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8080,7 +8182,7 @@ func (x *CDOTAUserMsg_StatsHeroMinuteDetails) String() string { func (*CDOTAUserMsg_StatsHeroMinuteDetails) ProtoMessage() {} func (x *CDOTAUserMsg_StatsHeroMinuteDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[88] + mi := &file_dota_usermessages_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8093,7 +8195,7 @@ func (x *CDOTAUserMsg_StatsHeroMinuteDetails) ProtoReflect() protoreflect.Messag // Deprecated: Use CDOTAUserMsg_StatsHeroMinuteDetails.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsHeroMinuteDetails) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{88} + return file_dota_usermessages_proto_rawDescGZIP(), []int{89} } func (x *CDOTAUserMsg_StatsHeroMinuteDetails) GetLastHits() uint32 { @@ -8221,7 +8323,7 @@ type CDOTAUserMsg_StatsTeamMinuteDetails struct { func (x *CDOTAUserMsg_StatsTeamMinuteDetails) Reset() { *x = CDOTAUserMsg_StatsTeamMinuteDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[89] + mi := &file_dota_usermessages_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8234,7 +8336,7 @@ func (x *CDOTAUserMsg_StatsTeamMinuteDetails) String() string { func (*CDOTAUserMsg_StatsTeamMinuteDetails) ProtoMessage() {} func (x *CDOTAUserMsg_StatsTeamMinuteDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[89] + mi := &file_dota_usermessages_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8247,7 +8349,7 @@ func (x *CDOTAUserMsg_StatsTeamMinuteDetails) ProtoReflect() protoreflect.Messag // Deprecated: Use CDOTAUserMsg_StatsTeamMinuteDetails.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsTeamMinuteDetails) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{89} + return file_dota_usermessages_proto_rawDescGZIP(), []int{90} } func (x *CDOTAUserMsg_StatsTeamMinuteDetails) GetPlayerStats() []*CDOTAUserMsg_StatsHeroMinuteDetails { @@ -8336,7 +8438,7 @@ type CDOTAUserMsg_StatsPlayerKillShare struct { func (x *CDOTAUserMsg_StatsPlayerKillShare) Reset() { *x = CDOTAUserMsg_StatsPlayerKillShare{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[90] + mi := &file_dota_usermessages_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8349,7 +8451,7 @@ func (x *CDOTAUserMsg_StatsPlayerKillShare) String() string { func (*CDOTAUserMsg_StatsPlayerKillShare) ProtoMessage() {} func (x *CDOTAUserMsg_StatsPlayerKillShare) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[90] + mi := &file_dota_usermessages_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8362,7 +8464,7 @@ func (x *CDOTAUserMsg_StatsPlayerKillShare) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_StatsPlayerKillShare.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsPlayerKillShare) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{90} + return file_dota_usermessages_proto_rawDescGZIP(), []int{91} } func (x *CDOTAUserMsg_StatsPlayerKillShare) GetPlayerId() int32 { @@ -8423,7 +8525,7 @@ type CDOTAUserMsg_StatsKillDetails struct { func (x *CDOTAUserMsg_StatsKillDetails) Reset() { *x = CDOTAUserMsg_StatsKillDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[91] + mi := &file_dota_usermessages_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8436,7 +8538,7 @@ func (x *CDOTAUserMsg_StatsKillDetails) String() string { func (*CDOTAUserMsg_StatsKillDetails) ProtoMessage() {} func (x *CDOTAUserMsg_StatsKillDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[91] + mi := &file_dota_usermessages_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8449,7 +8551,7 @@ func (x *CDOTAUserMsg_StatsKillDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_StatsKillDetails.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsKillDetails) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{91} + return file_dota_usermessages_proto_rawDescGZIP(), []int{92} } func (x *CDOTAUserMsg_StatsKillDetails) GetVictimId() int32 { @@ -8510,7 +8612,7 @@ type CDOTAUserMsg_StatsMatchDetails struct { func (x *CDOTAUserMsg_StatsMatchDetails) Reset() { *x = CDOTAUserMsg_StatsMatchDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[92] + mi := &file_dota_usermessages_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8523,7 +8625,7 @@ func (x *CDOTAUserMsg_StatsMatchDetails) String() string { func (*CDOTAUserMsg_StatsMatchDetails) ProtoMessage() {} func (x *CDOTAUserMsg_StatsMatchDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[92] + mi := &file_dota_usermessages_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8536,7 +8638,7 @@ func (x *CDOTAUserMsg_StatsMatchDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_StatsMatchDetails.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsMatchDetails) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{92} + return file_dota_usermessages_proto_rawDescGZIP(), []int{93} } func (x *CDOTAUserMsg_StatsMatchDetails) GetHeroLookup() []*CDOTAUserMsg_StatsHeroLookup { @@ -8592,7 +8694,7 @@ type CDOTAUserMsg_MiniTaunt struct { func (x *CDOTAUserMsg_MiniTaunt) Reset() { *x = CDOTAUserMsg_MiniTaunt{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[93] + mi := &file_dota_usermessages_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8605,7 +8707,7 @@ func (x *CDOTAUserMsg_MiniTaunt) String() string { func (*CDOTAUserMsg_MiniTaunt) ProtoMessage() {} func (x *CDOTAUserMsg_MiniTaunt) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[93] + mi := &file_dota_usermessages_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8618,7 +8720,7 @@ func (x *CDOTAUserMsg_MiniTaunt) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_MiniTaunt.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MiniTaunt) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{93} + return file_dota_usermessages_proto_rawDescGZIP(), []int{94} } func (x *CDOTAUserMsg_MiniTaunt) GetTauntingPlayerId() int32 { @@ -8639,7 +8741,7 @@ type CDOTAUserMsg_SpeechBubble struct { func (x *CDOTAUserMsg_SpeechBubble) Reset() { *x = CDOTAUserMsg_SpeechBubble{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[94] + mi := &file_dota_usermessages_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8652,7 +8754,7 @@ func (x *CDOTAUserMsg_SpeechBubble) String() string { func (*CDOTAUserMsg_SpeechBubble) ProtoMessage() {} func (x *CDOTAUserMsg_SpeechBubble) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[94] + mi := &file_dota_usermessages_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8665,7 +8767,7 @@ func (x *CDOTAUserMsg_SpeechBubble) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SpeechBubble.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SpeechBubble) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{94} + return file_dota_usermessages_proto_rawDescGZIP(), []int{95} } func (x *CDOTAUserMsg_SpeechBubble) GetDestroyAll() bool { @@ -8689,7 +8791,7 @@ type CDOTAUserMsg_CustomHeaderMessage struct { func (x *CDOTAUserMsg_CustomHeaderMessage) Reset() { *x = CDOTAUserMsg_CustomHeaderMessage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[95] + mi := &file_dota_usermessages_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8702,7 +8804,7 @@ func (x *CDOTAUserMsg_CustomHeaderMessage) String() string { func (*CDOTAUserMsg_CustomHeaderMessage) ProtoMessage() {} func (x *CDOTAUserMsg_CustomHeaderMessage) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[95] + mi := &file_dota_usermessages_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8715,7 +8817,7 @@ func (x *CDOTAUserMsg_CustomHeaderMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_CustomHeaderMessage.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CustomHeaderMessage) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{95} + return file_dota_usermessages_proto_rawDescGZIP(), []int{96} } func (x *CDOTAUserMsg_CustomHeaderMessage) GetPlayerId() int32 { @@ -8759,7 +8861,7 @@ type CMsgHeroAbilityStat struct { func (x *CMsgHeroAbilityStat) Reset() { *x = CMsgHeroAbilityStat{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[96] + mi := &file_dota_usermessages_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8772,7 +8874,7 @@ func (x *CMsgHeroAbilityStat) String() string { func (*CMsgHeroAbilityStat) ProtoMessage() {} func (x *CMsgHeroAbilityStat) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[96] + mi := &file_dota_usermessages_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8785,7 +8887,7 @@ func (x *CMsgHeroAbilityStat) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgHeroAbilityStat.ProtoReflect.Descriptor instead. func (*CMsgHeroAbilityStat) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{96} + return file_dota_usermessages_proto_rawDescGZIP(), []int{97} } func (x *CMsgHeroAbilityStat) GetStatType() EHeroStatType { @@ -8821,7 +8923,7 @@ type CMsgCombatAnalyzerPlayerStat struct { func (x *CMsgCombatAnalyzerPlayerStat) Reset() { *x = CMsgCombatAnalyzerPlayerStat{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[97] + mi := &file_dota_usermessages_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8834,7 +8936,7 @@ func (x *CMsgCombatAnalyzerPlayerStat) String() string { func (*CMsgCombatAnalyzerPlayerStat) ProtoMessage() {} func (x *CMsgCombatAnalyzerPlayerStat) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[97] + mi := &file_dota_usermessages_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8847,7 +8949,7 @@ func (x *CMsgCombatAnalyzerPlayerStat) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgCombatAnalyzerPlayerStat.ProtoReflect.Descriptor instead. func (*CMsgCombatAnalyzerPlayerStat) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{97} + return file_dota_usermessages_proto_rawDescGZIP(), []int{98} } func (x *CMsgCombatAnalyzerPlayerStat) GetAccountId() uint32 { @@ -8876,7 +8978,7 @@ type CMsgCombatAnalyzerStats struct { func (x *CMsgCombatAnalyzerStats) Reset() { *x = CMsgCombatAnalyzerStats{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[98] + mi := &file_dota_usermessages_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8889,7 +8991,7 @@ func (x *CMsgCombatAnalyzerStats) String() string { func (*CMsgCombatAnalyzerStats) ProtoMessage() {} func (x *CMsgCombatAnalyzerStats) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[98] + mi := &file_dota_usermessages_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8902,7 +9004,7 @@ func (x *CMsgCombatAnalyzerStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgCombatAnalyzerStats.ProtoReflect.Descriptor instead. func (*CMsgCombatAnalyzerStats) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{98} + return file_dota_usermessages_proto_rawDescGZIP(), []int{99} } func (x *CMsgCombatAnalyzerStats) GetMatchId() uint64 { @@ -8933,7 +9035,7 @@ type CDOTAUserMsg_BeastChat struct { func (x *CDOTAUserMsg_BeastChat) Reset() { *x = CDOTAUserMsg_BeastChat{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[99] + mi := &file_dota_usermessages_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8946,7 +9048,7 @@ func (x *CDOTAUserMsg_BeastChat) String() string { func (*CDOTAUserMsg_BeastChat) ProtoMessage() {} func (x *CDOTAUserMsg_BeastChat) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[99] + mi := &file_dota_usermessages_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8959,7 +9061,7 @@ func (x *CDOTAUserMsg_BeastChat) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_BeastChat.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_BeastChat) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{99} + return file_dota_usermessages_proto_rawDescGZIP(), []int{100} } func (x *CDOTAUserMsg_BeastChat) GetTeam() uint32 { @@ -9003,7 +9105,7 @@ type CDOTAUserMsg_CustomHudElement_Create struct { func (x *CDOTAUserMsg_CustomHudElement_Create) Reset() { *x = CDOTAUserMsg_CustomHudElement_Create{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[100] + mi := &file_dota_usermessages_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9016,7 +9118,7 @@ func (x *CDOTAUserMsg_CustomHudElement_Create) String() string { func (*CDOTAUserMsg_CustomHudElement_Create) ProtoMessage() {} func (x *CDOTAUserMsg_CustomHudElement_Create) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[100] + mi := &file_dota_usermessages_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9029,7 +9131,7 @@ func (x *CDOTAUserMsg_CustomHudElement_Create) ProtoReflect() protoreflect.Messa // Deprecated: Use CDOTAUserMsg_CustomHudElement_Create.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CustomHudElement_Create) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{100} + return file_dota_usermessages_proto_rawDescGZIP(), []int{101} } func (x *CDOTAUserMsg_CustomHudElement_Create) GetElementId() string { @@ -9066,7 +9168,7 @@ type CDOTAUserMsg_CustomHudElement_Modify struct { func (x *CDOTAUserMsg_CustomHudElement_Modify) Reset() { *x = CDOTAUserMsg_CustomHudElement_Modify{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[101] + mi := &file_dota_usermessages_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9079,7 +9181,7 @@ func (x *CDOTAUserMsg_CustomHudElement_Modify) String() string { func (*CDOTAUserMsg_CustomHudElement_Modify) ProtoMessage() {} func (x *CDOTAUserMsg_CustomHudElement_Modify) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[101] + mi := &file_dota_usermessages_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9092,7 +9194,7 @@ func (x *CDOTAUserMsg_CustomHudElement_Modify) ProtoReflect() protoreflect.Messa // Deprecated: Use CDOTAUserMsg_CustomHudElement_Modify.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CustomHudElement_Modify) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{101} + return file_dota_usermessages_proto_rawDescGZIP(), []int{102} } func (x *CDOTAUserMsg_CustomHudElement_Modify) GetElementId() string { @@ -9127,7 +9229,7 @@ type CDOTAUserMsg_CustomHudElement_Destroy struct { func (x *CDOTAUserMsg_CustomHudElement_Destroy) Reset() { *x = CDOTAUserMsg_CustomHudElement_Destroy{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[102] + mi := &file_dota_usermessages_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9140,7 +9242,7 @@ func (x *CDOTAUserMsg_CustomHudElement_Destroy) String() string { func (*CDOTAUserMsg_CustomHudElement_Destroy) ProtoMessage() {} func (x *CDOTAUserMsg_CustomHudElement_Destroy) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[102] + mi := &file_dota_usermessages_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9153,7 +9255,7 @@ func (x *CDOTAUserMsg_CustomHudElement_Destroy) ProtoReflect() protoreflect.Mess // Deprecated: Use CDOTAUserMsg_CustomHudElement_Destroy.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CustomHudElement_Destroy) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{102} + return file_dota_usermessages_proto_rawDescGZIP(), []int{103} } func (x *CDOTAUserMsg_CustomHudElement_Destroy) GetElementId() string { @@ -9175,7 +9277,7 @@ type CDOTAUserMsg_CompendiumStatePlayer struct { func (x *CDOTAUserMsg_CompendiumStatePlayer) Reset() { *x = CDOTAUserMsg_CompendiumStatePlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[103] + mi := &file_dota_usermessages_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9188,7 +9290,7 @@ func (x *CDOTAUserMsg_CompendiumStatePlayer) String() string { func (*CDOTAUserMsg_CompendiumStatePlayer) ProtoMessage() {} func (x *CDOTAUserMsg_CompendiumStatePlayer) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[103] + mi := &file_dota_usermessages_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9201,7 +9303,7 @@ func (x *CDOTAUserMsg_CompendiumStatePlayer) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_CompendiumStatePlayer.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CompendiumStatePlayer) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{103} + return file_dota_usermessages_proto_rawDescGZIP(), []int{104} } func (x *CDOTAUserMsg_CompendiumStatePlayer) GetPlayerId() int32 { @@ -9229,7 +9331,7 @@ type CDOTAUserMsg_CompendiumState struct { func (x *CDOTAUserMsg_CompendiumState) Reset() { *x = CDOTAUserMsg_CompendiumState{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[104] + mi := &file_dota_usermessages_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9242,7 +9344,7 @@ func (x *CDOTAUserMsg_CompendiumState) String() string { func (*CDOTAUserMsg_CompendiumState) ProtoMessage() {} func (x *CDOTAUserMsg_CompendiumState) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[104] + mi := &file_dota_usermessages_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9255,7 +9357,7 @@ func (x *CDOTAUserMsg_CompendiumState) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_CompendiumState.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CompendiumState) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{104} + return file_dota_usermessages_proto_rawDescGZIP(), []int{105} } func (x *CDOTAUserMsg_CompendiumState) GetCompendiumPlayers() []*CDOTAUserMsg_CompendiumStatePlayer { @@ -9283,7 +9385,7 @@ type CDOTAUserMsg_ProjectionAbility struct { func (x *CDOTAUserMsg_ProjectionAbility) Reset() { *x = CDOTAUserMsg_ProjectionAbility{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[105] + mi := &file_dota_usermessages_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9296,7 +9398,7 @@ func (x *CDOTAUserMsg_ProjectionAbility) String() string { func (*CDOTAUserMsg_ProjectionAbility) ProtoMessage() {} func (x *CDOTAUserMsg_ProjectionAbility) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[105] + mi := &file_dota_usermessages_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9309,7 +9411,7 @@ func (x *CDOTAUserMsg_ProjectionAbility) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ProjectionAbility.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ProjectionAbility) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{105} + return file_dota_usermessages_proto_rawDescGZIP(), []int{106} } func (x *CDOTAUserMsg_ProjectionAbility) GetAbilityId() int32 { @@ -9380,7 +9482,7 @@ type CDOTAUserMsg_ProjectionEvent struct { func (x *CDOTAUserMsg_ProjectionEvent) Reset() { *x = CDOTAUserMsg_ProjectionEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[106] + mi := &file_dota_usermessages_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9393,7 +9495,7 @@ func (x *CDOTAUserMsg_ProjectionEvent) String() string { func (*CDOTAUserMsg_ProjectionEvent) ProtoMessage() {} func (x *CDOTAUserMsg_ProjectionEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[106] + mi := &file_dota_usermessages_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9406,7 +9508,7 @@ func (x *CDOTAUserMsg_ProjectionEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ProjectionEvent.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ProjectionEvent) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{106} + return file_dota_usermessages_proto_rawDescGZIP(), []int{107} } func (x *CDOTAUserMsg_ProjectionEvent) GetEventId() EProjectionEvent { @@ -9435,7 +9537,7 @@ type CDOTAUserMsg_XPAlert struct { func (x *CDOTAUserMsg_XPAlert) Reset() { *x = CDOTAUserMsg_XPAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[107] + mi := &file_dota_usermessages_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9448,7 +9550,7 @@ func (x *CDOTAUserMsg_XPAlert) String() string { func (*CDOTAUserMsg_XPAlert) ProtoMessage() {} func (x *CDOTAUserMsg_XPAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[107] + mi := &file_dota_usermessages_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9461,7 +9563,7 @@ func (x *CDOTAUserMsg_XPAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_XPAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_XPAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{107} + return file_dota_usermessages_proto_rawDescGZIP(), []int{108} } func (x *CDOTAUserMsg_XPAlert) GetPlayerId() int32 { @@ -9493,7 +9595,7 @@ type CDOTAUserMsg_TalentTreeAlert struct { func (x *CDOTAUserMsg_TalentTreeAlert) Reset() { *x = CDOTAUserMsg_TalentTreeAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[108] + mi := &file_dota_usermessages_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9506,7 +9608,7 @@ func (x *CDOTAUserMsg_TalentTreeAlert) String() string { func (*CDOTAUserMsg_TalentTreeAlert) ProtoMessage() {} func (x *CDOTAUserMsg_TalentTreeAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[108] + mi := &file_dota_usermessages_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9519,7 +9621,7 @@ func (x *CDOTAUserMsg_TalentTreeAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TalentTreeAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TalentTreeAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{108} + return file_dota_usermessages_proto_rawDescGZIP(), []int{109} } func (x *CDOTAUserMsg_TalentTreeAlert) GetPlayerId() int32 { @@ -9566,7 +9668,7 @@ type CDOTAUserMsg_UpdateQuestProgress struct { func (x *CDOTAUserMsg_UpdateQuestProgress) Reset() { *x = CDOTAUserMsg_UpdateQuestProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[109] + mi := &file_dota_usermessages_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9579,7 +9681,7 @@ func (x *CDOTAUserMsg_UpdateQuestProgress) String() string { func (*CDOTAUserMsg_UpdateQuestProgress) ProtoMessage() {} func (x *CDOTAUserMsg_UpdateQuestProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[109] + mi := &file_dota_usermessages_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9592,7 +9694,7 @@ func (x *CDOTAUserMsg_UpdateQuestProgress) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_UpdateQuestProgress.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UpdateQuestProgress) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{109} + return file_dota_usermessages_proto_rawDescGZIP(), []int{110} } type CDOTAUserMsg_QuestStatus struct { @@ -9613,7 +9715,7 @@ type CDOTAUserMsg_QuestStatus struct { func (x *CDOTAUserMsg_QuestStatus) Reset() { *x = CDOTAUserMsg_QuestStatus{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[110] + mi := &file_dota_usermessages_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9626,7 +9728,7 @@ func (x *CDOTAUserMsg_QuestStatus) String() string { func (*CDOTAUserMsg_QuestStatus) ProtoMessage() {} func (x *CDOTAUserMsg_QuestStatus) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[110] + mi := &file_dota_usermessages_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9639,7 +9741,7 @@ func (x *CDOTAUserMsg_QuestStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_QuestStatus.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_QuestStatus) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{110} + return file_dota_usermessages_proto_rawDescGZIP(), []int{111} } func (x *CDOTAUserMsg_QuestStatus) GetPlayerId() int32 { @@ -9711,7 +9813,7 @@ type CDOTAUserMsg_SuggestHeroPick struct { func (x *CDOTAUserMsg_SuggestHeroPick) Reset() { *x = CDOTAUserMsg_SuggestHeroPick{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[111] + mi := &file_dota_usermessages_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9724,7 +9826,7 @@ func (x *CDOTAUserMsg_SuggestHeroPick) String() string { func (*CDOTAUserMsg_SuggestHeroPick) ProtoMessage() {} func (x *CDOTAUserMsg_SuggestHeroPick) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[111] + mi := &file_dota_usermessages_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9737,7 +9839,7 @@ func (x *CDOTAUserMsg_SuggestHeroPick) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SuggestHeroPick.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SuggestHeroPick) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{111} + return file_dota_usermessages_proto_rawDescGZIP(), []int{112} } func (x *CDOTAUserMsg_SuggestHeroPick) GetPlayerId() int32 { @@ -9773,7 +9875,7 @@ type CDOTAUserMsg_SuggestHeroRole struct { func (x *CDOTAUserMsg_SuggestHeroRole) Reset() { *x = CDOTAUserMsg_SuggestHeroRole{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[112] + mi := &file_dota_usermessages_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9786,7 +9888,7 @@ func (x *CDOTAUserMsg_SuggestHeroRole) String() string { func (*CDOTAUserMsg_SuggestHeroRole) ProtoMessage() {} func (x *CDOTAUserMsg_SuggestHeroRole) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[112] + mi := &file_dota_usermessages_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9799,7 +9901,7 @@ func (x *CDOTAUserMsg_SuggestHeroRole) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SuggestHeroRole.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SuggestHeroRole) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{112} + return file_dota_usermessages_proto_rawDescGZIP(), []int{113} } func (x *CDOTAUserMsg_SuggestHeroRole) GetPlayerId() int32 { @@ -9832,7 +9934,7 @@ type CDOTAUserMsg_KillcamDamageTaken struct { func (x *CDOTAUserMsg_KillcamDamageTaken) Reset() { *x = CDOTAUserMsg_KillcamDamageTaken{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[113] + mi := &file_dota_usermessages_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9845,7 +9947,7 @@ func (x *CDOTAUserMsg_KillcamDamageTaken) String() string { func (*CDOTAUserMsg_KillcamDamageTaken) ProtoMessage() {} func (x *CDOTAUserMsg_KillcamDamageTaken) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[113] + mi := &file_dota_usermessages_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9858,7 +9960,7 @@ func (x *CDOTAUserMsg_KillcamDamageTaken) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_KillcamDamageTaken.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_KillcamDamageTaken) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{113} + return file_dota_usermessages_proto_rawDescGZIP(), []int{114} } func (x *CDOTAUserMsg_KillcamDamageTaken) GetPlayerId() int32 { @@ -9915,7 +10017,7 @@ type CDOTAUserMsg_SelectPenaltyGold struct { func (x *CDOTAUserMsg_SelectPenaltyGold) Reset() { *x = CDOTAUserMsg_SelectPenaltyGold{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[114] + mi := &file_dota_usermessages_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9928,7 +10030,7 @@ func (x *CDOTAUserMsg_SelectPenaltyGold) String() string { func (*CDOTAUserMsg_SelectPenaltyGold) ProtoMessage() {} func (x *CDOTAUserMsg_SelectPenaltyGold) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[114] + mi := &file_dota_usermessages_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9941,7 +10043,7 @@ func (x *CDOTAUserMsg_SelectPenaltyGold) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SelectPenaltyGold.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SelectPenaltyGold) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{114} + return file_dota_usermessages_proto_rawDescGZIP(), []int{115} } func (x *CDOTAUserMsg_SelectPenaltyGold) GetPlayerId() int32 { @@ -9973,7 +10075,7 @@ type CDOTAUserMsg_RollDiceResult struct { func (x *CDOTAUserMsg_RollDiceResult) Reset() { *x = CDOTAUserMsg_RollDiceResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[115] + mi := &file_dota_usermessages_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9986,7 +10088,7 @@ func (x *CDOTAUserMsg_RollDiceResult) String() string { func (*CDOTAUserMsg_RollDiceResult) ProtoMessage() {} func (x *CDOTAUserMsg_RollDiceResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[115] + mi := &file_dota_usermessages_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9999,7 +10101,7 @@ func (x *CDOTAUserMsg_RollDiceResult) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_RollDiceResult.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_RollDiceResult) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{115} + return file_dota_usermessages_proto_rawDescGZIP(), []int{116} } func (x *CDOTAUserMsg_RollDiceResult) GetPlayerId() int32 { @@ -10050,7 +10152,7 @@ type CDOTAUserMsg_FlipCoinResult struct { func (x *CDOTAUserMsg_FlipCoinResult) Reset() { *x = CDOTAUserMsg_FlipCoinResult{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[116] + mi := &file_dota_usermessages_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10063,7 +10165,7 @@ func (x *CDOTAUserMsg_FlipCoinResult) String() string { func (*CDOTAUserMsg_FlipCoinResult) ProtoMessage() {} func (x *CDOTAUserMsg_FlipCoinResult) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[116] + mi := &file_dota_usermessages_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10076,7 +10178,7 @@ func (x *CDOTAUserMsg_FlipCoinResult) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_FlipCoinResult.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_FlipCoinResult) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{116} + return file_dota_usermessages_proto_rawDescGZIP(), []int{117} } func (x *CDOTAUserMsg_FlipCoinResult) GetPlayerId() int32 { @@ -10111,7 +10213,7 @@ type CDOTAUserMessage_RequestItemSuggestions struct { func (x *CDOTAUserMessage_RequestItemSuggestions) Reset() { *x = CDOTAUserMessage_RequestItemSuggestions{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[117] + mi := &file_dota_usermessages_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10124,7 +10226,7 @@ func (x *CDOTAUserMessage_RequestItemSuggestions) String() string { func (*CDOTAUserMessage_RequestItemSuggestions) ProtoMessage() {} func (x *CDOTAUserMessage_RequestItemSuggestions) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[117] + mi := &file_dota_usermessages_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10137,7 +10239,7 @@ func (x *CDOTAUserMessage_RequestItemSuggestions) ProtoReflect() protoreflect.Me // Deprecated: Use CDOTAUserMessage_RequestItemSuggestions.ProtoReflect.Descriptor instead. func (*CDOTAUserMessage_RequestItemSuggestions) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{117} + return file_dota_usermessages_proto_rawDescGZIP(), []int{118} } func (x *CDOTAUserMessage_RequestItemSuggestions) GetPlayerId() int32 { @@ -10159,7 +10261,7 @@ type CDOTAUserMessage_TeamCaptainChanged struct { func (x *CDOTAUserMessage_TeamCaptainChanged) Reset() { *x = CDOTAUserMessage_TeamCaptainChanged{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[118] + mi := &file_dota_usermessages_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10172,7 +10274,7 @@ func (x *CDOTAUserMessage_TeamCaptainChanged) String() string { func (*CDOTAUserMessage_TeamCaptainChanged) ProtoMessage() {} func (x *CDOTAUserMessage_TeamCaptainChanged) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[118] + mi := &file_dota_usermessages_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10185,7 +10287,7 @@ func (x *CDOTAUserMessage_TeamCaptainChanged) ProtoReflect() protoreflect.Messag // Deprecated: Use CDOTAUserMessage_TeamCaptainChanged.ProtoReflect.Descriptor instead. func (*CDOTAUserMessage_TeamCaptainChanged) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{118} + return file_dota_usermessages_proto_rawDescGZIP(), []int{119} } func (x *CDOTAUserMessage_TeamCaptainChanged) GetTeam() uint32 { @@ -10214,7 +10316,7 @@ type CDOTAUserMsg_ChatWheelCooldown struct { func (x *CDOTAUserMsg_ChatWheelCooldown) Reset() { *x = CDOTAUserMsg_ChatWheelCooldown{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[119] + mi := &file_dota_usermessages_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10227,7 +10329,7 @@ func (x *CDOTAUserMsg_ChatWheelCooldown) String() string { func (*CDOTAUserMsg_ChatWheelCooldown) ProtoMessage() {} func (x *CDOTAUserMsg_ChatWheelCooldown) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[119] + mi := &file_dota_usermessages_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10240,7 +10342,7 @@ func (x *CDOTAUserMsg_ChatWheelCooldown) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ChatWheelCooldown.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ChatWheelCooldown) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{119} + return file_dota_usermessages_proto_rawDescGZIP(), []int{120} } func (x *CDOTAUserMsg_ChatWheelCooldown) GetMessageId() uint32 { @@ -10272,7 +10374,7 @@ type CDOTAUserMsg_HeroRelicProgress struct { func (x *CDOTAUserMsg_HeroRelicProgress) Reset() { *x = CDOTAUserMsg_HeroRelicProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[120] + mi := &file_dota_usermessages_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10285,7 +10387,7 @@ func (x *CDOTAUserMsg_HeroRelicProgress) String() string { func (*CDOTAUserMsg_HeroRelicProgress) ProtoMessage() {} func (x *CDOTAUserMsg_HeroRelicProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[120] + mi := &file_dota_usermessages_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10298,7 +10400,7 @@ func (x *CDOTAUserMsg_HeroRelicProgress) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_HeroRelicProgress.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_HeroRelicProgress) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{120} + return file_dota_usermessages_proto_rawDescGZIP(), []int{121} } func (x *CDOTAUserMsg_HeroRelicProgress) GetHeroRelicType() uint32 { @@ -10349,7 +10451,7 @@ type CDOTAUserMsg_AbilityDraftRequestAbility struct { func (x *CDOTAUserMsg_AbilityDraftRequestAbility) Reset() { *x = CDOTAUserMsg_AbilityDraftRequestAbility{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[121] + mi := &file_dota_usermessages_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10362,7 +10464,7 @@ func (x *CDOTAUserMsg_AbilityDraftRequestAbility) String() string { func (*CDOTAUserMsg_AbilityDraftRequestAbility) ProtoMessage() {} func (x *CDOTAUserMsg_AbilityDraftRequestAbility) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[121] + mi := &file_dota_usermessages_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10375,7 +10477,7 @@ func (x *CDOTAUserMsg_AbilityDraftRequestAbility) ProtoReflect() protoreflect.Me // Deprecated: Use CDOTAUserMsg_AbilityDraftRequestAbility.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_AbilityDraftRequestAbility) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{121} + return file_dota_usermessages_proto_rawDescGZIP(), []int{122} } func (x *CDOTAUserMsg_AbilityDraftRequestAbility) GetPlayerId() int32 { @@ -10414,7 +10516,7 @@ type CDOTAUserMsg_DamageReport struct { func (x *CDOTAUserMsg_DamageReport) Reset() { *x = CDOTAUserMsg_DamageReport{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[122] + mi := &file_dota_usermessages_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10427,7 +10529,7 @@ func (x *CDOTAUserMsg_DamageReport) String() string { func (*CDOTAUserMsg_DamageReport) ProtoMessage() {} func (x *CDOTAUserMsg_DamageReport) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[122] + mi := &file_dota_usermessages_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10440,7 +10542,7 @@ func (x *CDOTAUserMsg_DamageReport) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_DamageReport.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_DamageReport) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{122} + return file_dota_usermessages_proto_rawDescGZIP(), []int{123} } func (x *CDOTAUserMsg_DamageReport) GetPlayerId() int32 { @@ -10494,7 +10596,7 @@ type CDOTAUserMsg_SalutePlayer struct { func (x *CDOTAUserMsg_SalutePlayer) Reset() { *x = CDOTAUserMsg_SalutePlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[123] + mi := &file_dota_usermessages_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10507,7 +10609,7 @@ func (x *CDOTAUserMsg_SalutePlayer) String() string { func (*CDOTAUserMsg_SalutePlayer) ProtoMessage() {} func (x *CDOTAUserMsg_SalutePlayer) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[123] + mi := &file_dota_usermessages_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10520,7 +10622,7 @@ func (x *CDOTAUserMsg_SalutePlayer) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_SalutePlayer.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_SalutePlayer) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{123} + return file_dota_usermessages_proto_rawDescGZIP(), []int{124} } func (x *CDOTAUserMsg_SalutePlayer) GetSourcePlayerId() int32 { @@ -10565,32 +10667,95 @@ func (x *CDOTAUserMsg_SalutePlayer) GetNumRecentTips() uint32 { return 0 } -type CDOTAUserMsg_TipAlert struct { +type CDOTAUserMsg_GiftPlayer struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - PlayerId *int32 `protobuf:"varint,1,opt,name=player_id,json=playerId" json:"player_id,omitempty"` - TipText *string `protobuf:"bytes,2,opt,name=tip_text,json=tipText" json:"tip_text,omitempty"` + SourcePlayerId *int32 `protobuf:"varint,1,opt,name=source_player_id,json=sourcePlayerId" json:"source_player_id,omitempty"` + TargetPlayerId *int32 `protobuf:"varint,2,opt,name=target_player_id,json=targetPlayerId" json:"target_player_id,omitempty"` + GiftItemDefIndex *uint32 `protobuf:"varint,3,opt,name=gift_item_def_index,json=giftItemDefIndex" json:"gift_item_def_index,omitempty"` } -func (x *CDOTAUserMsg_TipAlert) Reset() { - *x = CDOTAUserMsg_TipAlert{} +func (x *CDOTAUserMsg_GiftPlayer) Reset() { + *x = CDOTAUserMsg_GiftPlayer{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[124] + mi := &file_dota_usermessages_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CDOTAUserMsg_TipAlert) String() string { +func (x *CDOTAUserMsg_GiftPlayer) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CDOTAUserMsg_TipAlert) ProtoMessage() {} +func (*CDOTAUserMsg_GiftPlayer) ProtoMessage() {} + +func (x *CDOTAUserMsg_GiftPlayer) ProtoReflect() protoreflect.Message { + mi := &file_dota_usermessages_proto_msgTypes[125] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CDOTAUserMsg_GiftPlayer.ProtoReflect.Descriptor instead. +func (*CDOTAUserMsg_GiftPlayer) Descriptor() ([]byte, []int) { + return file_dota_usermessages_proto_rawDescGZIP(), []int{125} +} + +func (x *CDOTAUserMsg_GiftPlayer) GetSourcePlayerId() int32 { + if x != nil && x.SourcePlayerId != nil { + return *x.SourcePlayerId + } + return 0 +} + +func (x *CDOTAUserMsg_GiftPlayer) GetTargetPlayerId() int32 { + if x != nil && x.TargetPlayerId != nil { + return *x.TargetPlayerId + } + return 0 +} + +func (x *CDOTAUserMsg_GiftPlayer) GetGiftItemDefIndex() uint32 { + if x != nil && x.GiftItemDefIndex != nil { + return *x.GiftItemDefIndex + } + return 0 +} + +type CDOTAUserMsg_TipAlert struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlayerId *int32 `protobuf:"varint,1,opt,name=player_id,json=playerId" json:"player_id,omitempty"` + TipText *string `protobuf:"bytes,2,opt,name=tip_text,json=tipText" json:"tip_text,omitempty"` +} + +func (x *CDOTAUserMsg_TipAlert) Reset() { + *x = CDOTAUserMsg_TipAlert{} + if protoimpl.UnsafeEnabled { + mi := &file_dota_usermessages_proto_msgTypes[126] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CDOTAUserMsg_TipAlert) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CDOTAUserMsg_TipAlert) ProtoMessage() {} func (x *CDOTAUserMsg_TipAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[124] + mi := &file_dota_usermessages_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10603,7 +10768,7 @@ func (x *CDOTAUserMsg_TipAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_TipAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_TipAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{124} + return file_dota_usermessages_proto_rawDescGZIP(), []int{126} } func (x *CDOTAUserMsg_TipAlert) GetPlayerId() int32 { @@ -10633,7 +10798,7 @@ type CDOTAUserMsg_ReplaceQueryUnit struct { func (x *CDOTAUserMsg_ReplaceQueryUnit) Reset() { *x = CDOTAUserMsg_ReplaceQueryUnit{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[125] + mi := &file_dota_usermessages_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10646,7 +10811,7 @@ func (x *CDOTAUserMsg_ReplaceQueryUnit) String() string { func (*CDOTAUserMsg_ReplaceQueryUnit) ProtoMessage() {} func (x *CDOTAUserMsg_ReplaceQueryUnit) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[125] + mi := &file_dota_usermessages_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10659,7 +10824,7 @@ func (x *CDOTAUserMsg_ReplaceQueryUnit) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ReplaceQueryUnit.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ReplaceQueryUnit) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{125} + return file_dota_usermessages_proto_rawDescGZIP(), []int{127} } func (x *CDOTAUserMsg_ReplaceQueryUnit) GetPlayerId() int32 { @@ -10696,7 +10861,7 @@ type CDOTAUserMsg_ESArcanaCombo struct { func (x *CDOTAUserMsg_ESArcanaCombo) Reset() { *x = CDOTAUserMsg_ESArcanaCombo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[126] + mi := &file_dota_usermessages_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10709,7 +10874,7 @@ func (x *CDOTAUserMsg_ESArcanaCombo) String() string { func (*CDOTAUserMsg_ESArcanaCombo) ProtoMessage() {} func (x *CDOTAUserMsg_ESArcanaCombo) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[126] + mi := &file_dota_usermessages_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10722,7 +10887,7 @@ func (x *CDOTAUserMsg_ESArcanaCombo) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ESArcanaCombo.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ESArcanaCombo) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{126} + return file_dota_usermessages_proto_rawDescGZIP(), []int{128} } func (x *CDOTAUserMsg_ESArcanaCombo) GetEhandle() uint32 { @@ -10759,7 +10924,7 @@ type CDOTAUserMsg_ESArcanaComboSummary struct { func (x *CDOTAUserMsg_ESArcanaComboSummary) Reset() { *x = CDOTAUserMsg_ESArcanaComboSummary{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[127] + mi := &file_dota_usermessages_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10772,7 +10937,7 @@ func (x *CDOTAUserMsg_ESArcanaComboSummary) String() string { func (*CDOTAUserMsg_ESArcanaComboSummary) ProtoMessage() {} func (x *CDOTAUserMsg_ESArcanaComboSummary) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[127] + mi := &file_dota_usermessages_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10785,7 +10950,7 @@ func (x *CDOTAUserMsg_ESArcanaComboSummary) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_ESArcanaComboSummary.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ESArcanaComboSummary) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{127} + return file_dota_usermessages_proto_rawDescGZIP(), []int{129} } func (x *CDOTAUserMsg_ESArcanaComboSummary) GetEhandle() uint32 { @@ -10823,7 +10988,7 @@ type CDOTAUserMsg_OMArcanaCombo struct { func (x *CDOTAUserMsg_OMArcanaCombo) Reset() { *x = CDOTAUserMsg_OMArcanaCombo{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[128] + mi := &file_dota_usermessages_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10836,7 +11001,7 @@ func (x *CDOTAUserMsg_OMArcanaCombo) String() string { func (*CDOTAUserMsg_OMArcanaCombo) ProtoMessage() {} func (x *CDOTAUserMsg_OMArcanaCombo) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[128] + mi := &file_dota_usermessages_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10849,7 +11014,7 @@ func (x *CDOTAUserMsg_OMArcanaCombo) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_OMArcanaCombo.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_OMArcanaCombo) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{128} + return file_dota_usermessages_proto_rawDescGZIP(), []int{130} } func (x *CDOTAUserMsg_OMArcanaCombo) GetEhandle() uint32 { @@ -10894,7 +11059,7 @@ type CDOTAUserMsg_HighFiveCompleted struct { func (x *CDOTAUserMsg_HighFiveCompleted) Reset() { *x = CDOTAUserMsg_HighFiveCompleted{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[129] + mi := &file_dota_usermessages_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10907,7 +11072,7 @@ func (x *CDOTAUserMsg_HighFiveCompleted) String() string { func (*CDOTAUserMsg_HighFiveCompleted) ProtoMessage() {} func (x *CDOTAUserMsg_HighFiveCompleted) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[129] + mi := &file_dota_usermessages_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10920,7 +11085,7 @@ func (x *CDOTAUserMsg_HighFiveCompleted) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_HighFiveCompleted.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_HighFiveCompleted) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{129} + return file_dota_usermessages_proto_rawDescGZIP(), []int{131} } func (x *CDOTAUserMsg_HighFiveCompleted) GetPlayerId_1() int32 { @@ -10962,7 +11127,7 @@ type CDOTAUserMsg_HighFiveLeftHanging struct { func (x *CDOTAUserMsg_HighFiveLeftHanging) Reset() { *x = CDOTAUserMsg_HighFiveLeftHanging{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[130] + mi := &file_dota_usermessages_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10975,7 +11140,7 @@ func (x *CDOTAUserMsg_HighFiveLeftHanging) String() string { func (*CDOTAUserMsg_HighFiveLeftHanging) ProtoMessage() {} func (x *CDOTAUserMsg_HighFiveLeftHanging) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[130] + mi := &file_dota_usermessages_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10988,7 +11153,7 @@ func (x *CDOTAUserMsg_HighFiveLeftHanging) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_HighFiveLeftHanging.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_HighFiveLeftHanging) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{130} + return file_dota_usermessages_proto_rawDescGZIP(), []int{132} } func (x *CDOTAUserMsg_HighFiveLeftHanging) GetPlayerId() int32 { @@ -11012,7 +11177,7 @@ type CDOTAUserMsg_ShovelUnearth struct { func (x *CDOTAUserMsg_ShovelUnearth) Reset() { *x = CDOTAUserMsg_ShovelUnearth{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[131] + mi := &file_dota_usermessages_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11025,7 +11190,7 @@ func (x *CDOTAUserMsg_ShovelUnearth) String() string { func (*CDOTAUserMsg_ShovelUnearth) ProtoMessage() {} func (x *CDOTAUserMsg_ShovelUnearth) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[131] + mi := &file_dota_usermessages_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11038,7 +11203,7 @@ func (x *CDOTAUserMsg_ShovelUnearth) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ShovelUnearth.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ShovelUnearth) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{131} + return file_dota_usermessages_proto_rawDescGZIP(), []int{133} } func (x *CDOTAUserMsg_ShovelUnearth) GetPlayerId() int32 { @@ -11084,7 +11249,7 @@ type CDOTAUserMsg_AllStarEvent struct { func (x *CDOTAUserMsg_AllStarEvent) Reset() { *x = CDOTAUserMsg_AllStarEvent{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[132] + mi := &file_dota_usermessages_proto_msgTypes[134] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11097,7 +11262,7 @@ func (x *CDOTAUserMsg_AllStarEvent) String() string { func (*CDOTAUserMsg_AllStarEvent) ProtoMessage() {} func (x *CDOTAUserMsg_AllStarEvent) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[132] + mi := &file_dota_usermessages_proto_msgTypes[134] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11110,7 +11275,7 @@ func (x *CDOTAUserMsg_AllStarEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_AllStarEvent.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_AllStarEvent) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{132} + return file_dota_usermessages_proto_rawDescGZIP(), []int{134} } func (x *CDOTAUserMsg_AllStarEvent) GetSourcePlayerId() int32 { @@ -11159,7 +11324,7 @@ type CDOTAUserMsg_QueuedOrderRemoved struct { func (x *CDOTAUserMsg_QueuedOrderRemoved) Reset() { *x = CDOTAUserMsg_QueuedOrderRemoved{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[133] + mi := &file_dota_usermessages_proto_msgTypes[135] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11172,7 +11337,7 @@ func (x *CDOTAUserMsg_QueuedOrderRemoved) String() string { func (*CDOTAUserMsg_QueuedOrderRemoved) ProtoMessage() {} func (x *CDOTAUserMsg_QueuedOrderRemoved) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[133] + mi := &file_dota_usermessages_proto_msgTypes[135] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11185,7 +11350,7 @@ func (x *CDOTAUserMsg_QueuedOrderRemoved) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_QueuedOrderRemoved.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_QueuedOrderRemoved) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{133} + return file_dota_usermessages_proto_rawDescGZIP(), []int{135} } func (x *CDOTAUserMsg_QueuedOrderRemoved) GetUnitOrderSequence() []uint32 { @@ -11212,7 +11377,7 @@ type CDOTAUserMsg_DebugChallenge struct { func (x *CDOTAUserMsg_DebugChallenge) Reset() { *x = CDOTAUserMsg_DebugChallenge{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[134] + mi := &file_dota_usermessages_proto_msgTypes[136] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11225,7 +11390,7 @@ func (x *CDOTAUserMsg_DebugChallenge) String() string { func (*CDOTAUserMsg_DebugChallenge) ProtoMessage() {} func (x *CDOTAUserMsg_DebugChallenge) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[134] + mi := &file_dota_usermessages_proto_msgTypes[136] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11238,7 +11403,7 @@ func (x *CDOTAUserMsg_DebugChallenge) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_DebugChallenge.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_DebugChallenge) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{134} + return file_dota_usermessages_proto_rawDescGZIP(), []int{136} } func (x *CDOTAUserMsg_DebugChallenge) GetChallengeType() uint32 { @@ -11304,7 +11469,7 @@ type CDOTAUserMsg_FoundNeutralItem struct { func (x *CDOTAUserMsg_FoundNeutralItem) Reset() { *x = CDOTAUserMsg_FoundNeutralItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[135] + mi := &file_dota_usermessages_proto_msgTypes[137] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11317,7 +11482,7 @@ func (x *CDOTAUserMsg_FoundNeutralItem) String() string { func (*CDOTAUserMsg_FoundNeutralItem) ProtoMessage() {} func (x *CDOTAUserMsg_FoundNeutralItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[135] + mi := &file_dota_usermessages_proto_msgTypes[137] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11330,7 +11495,7 @@ func (x *CDOTAUserMsg_FoundNeutralItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_FoundNeutralItem.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_FoundNeutralItem) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{135} + return file_dota_usermessages_proto_rawDescGZIP(), []int{137} } func (x *CDOTAUserMsg_FoundNeutralItem) GetPlayerId() int32 { @@ -11373,7 +11538,7 @@ type CDOTAUserMsg_OutpostCaptured struct { func (x *CDOTAUserMsg_OutpostCaptured) Reset() { *x = CDOTAUserMsg_OutpostCaptured{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[136] + mi := &file_dota_usermessages_proto_msgTypes[138] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11386,7 +11551,7 @@ func (x *CDOTAUserMsg_OutpostCaptured) String() string { func (*CDOTAUserMsg_OutpostCaptured) ProtoMessage() {} func (x *CDOTAUserMsg_OutpostCaptured) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[136] + mi := &file_dota_usermessages_proto_msgTypes[138] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11399,7 +11564,7 @@ func (x *CDOTAUserMsg_OutpostCaptured) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_OutpostCaptured.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_OutpostCaptured) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{136} + return file_dota_usermessages_proto_rawDescGZIP(), []int{138} } func (x *CDOTAUserMsg_OutpostCaptured) GetOutpostEntindex() int32 { @@ -11428,7 +11593,7 @@ type CDOTAUserMsg_OutpostGrantedXP struct { func (x *CDOTAUserMsg_OutpostGrantedXP) Reset() { *x = CDOTAUserMsg_OutpostGrantedXP{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[137] + mi := &file_dota_usermessages_proto_msgTypes[139] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11441,7 +11606,7 @@ func (x *CDOTAUserMsg_OutpostGrantedXP) String() string { func (*CDOTAUserMsg_OutpostGrantedXP) ProtoMessage() {} func (x *CDOTAUserMsg_OutpostGrantedXP) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[137] + mi := &file_dota_usermessages_proto_msgTypes[139] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11454,7 +11619,7 @@ func (x *CDOTAUserMsg_OutpostGrantedXP) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_OutpostGrantedXP.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_OutpostGrantedXP) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{137} + return file_dota_usermessages_proto_rawDescGZIP(), []int{139} } func (x *CDOTAUserMsg_OutpostGrantedXP) GetTeamId() uint32 { @@ -11482,7 +11647,7 @@ type CDOTAUserMsg_MoveCameraToUnit struct { func (x *CDOTAUserMsg_MoveCameraToUnit) Reset() { *x = CDOTAUserMsg_MoveCameraToUnit{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[138] + mi := &file_dota_usermessages_proto_msgTypes[140] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11495,7 +11660,7 @@ func (x *CDOTAUserMsg_MoveCameraToUnit) String() string { func (*CDOTAUserMsg_MoveCameraToUnit) ProtoMessage() {} func (x *CDOTAUserMsg_MoveCameraToUnit) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[138] + mi := &file_dota_usermessages_proto_msgTypes[140] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11508,7 +11673,7 @@ func (x *CDOTAUserMsg_MoveCameraToUnit) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_MoveCameraToUnit.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MoveCameraToUnit) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{138} + return file_dota_usermessages_proto_rawDescGZIP(), []int{140} } func (x *CDOTAUserMsg_MoveCameraToUnit) GetUnitEhandle() uint32 { @@ -11529,7 +11694,7 @@ type CDOTAUserMsg_PauseMinigameData struct { func (x *CDOTAUserMsg_PauseMinigameData) Reset() { *x = CDOTAUserMsg_PauseMinigameData{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[139] + mi := &file_dota_usermessages_proto_msgTypes[141] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11542,7 +11707,7 @@ func (x *CDOTAUserMsg_PauseMinigameData) String() string { func (*CDOTAUserMsg_PauseMinigameData) ProtoMessage() {} func (x *CDOTAUserMsg_PauseMinigameData) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[139] + mi := &file_dota_usermessages_proto_msgTypes[141] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11555,7 +11720,7 @@ func (x *CDOTAUserMsg_PauseMinigameData) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_PauseMinigameData.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_PauseMinigameData) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{139} + return file_dota_usermessages_proto_rawDescGZIP(), []int{141} } func (x *CDOTAUserMsg_PauseMinigameData) GetDataBits() []*CDOTAUserMsg_PauseMinigameData_DataBit { @@ -11580,7 +11745,7 @@ type CDOTAUserMsg_VersusScene_PlayerBehavior struct { func (x *CDOTAUserMsg_VersusScene_PlayerBehavior) Reset() { *x = CDOTAUserMsg_VersusScene_PlayerBehavior{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[140] + mi := &file_dota_usermessages_proto_msgTypes[142] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11593,7 +11758,7 @@ func (x *CDOTAUserMsg_VersusScene_PlayerBehavior) String() string { func (*CDOTAUserMsg_VersusScene_PlayerBehavior) ProtoMessage() {} func (x *CDOTAUserMsg_VersusScene_PlayerBehavior) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[140] + mi := &file_dota_usermessages_proto_msgTypes[142] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11606,7 +11771,7 @@ func (x *CDOTAUserMsg_VersusScene_PlayerBehavior) ProtoReflect() protoreflect.Me // Deprecated: Use CDOTAUserMsg_VersusScene_PlayerBehavior.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_VersusScene_PlayerBehavior) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{140} + return file_dota_usermessages_proto_rawDescGZIP(), []int{142} } func (x *CDOTAUserMsg_VersusScene_PlayerBehavior) GetPlayerId() int32 { @@ -11658,7 +11823,7 @@ type CDOTAUserMsg_QoP_ArcanaSummary struct { func (x *CDOTAUserMsg_QoP_ArcanaSummary) Reset() { *x = CDOTAUserMsg_QoP_ArcanaSummary{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[141] + mi := &file_dota_usermessages_proto_msgTypes[143] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11671,7 +11836,7 @@ func (x *CDOTAUserMsg_QoP_ArcanaSummary) String() string { func (*CDOTAUserMsg_QoP_ArcanaSummary) ProtoMessage() {} func (x *CDOTAUserMsg_QoP_ArcanaSummary) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[141] + mi := &file_dota_usermessages_proto_msgTypes[143] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11684,7 +11849,7 @@ func (x *CDOTAUserMsg_QoP_ArcanaSummary) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_QoP_ArcanaSummary.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_QoP_ArcanaSummary) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{141} + return file_dota_usermessages_proto_rawDescGZIP(), []int{143} } func (x *CDOTAUserMsg_QoP_ArcanaSummary) GetEhandle() uint32 { @@ -11727,7 +11892,7 @@ type CDOTAUserMsg_HotPotato_Created struct { func (x *CDOTAUserMsg_HotPotato_Created) Reset() { *x = CDOTAUserMsg_HotPotato_Created{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[142] + mi := &file_dota_usermessages_proto_msgTypes[144] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11740,7 +11905,7 @@ func (x *CDOTAUserMsg_HotPotato_Created) String() string { func (*CDOTAUserMsg_HotPotato_Created) ProtoMessage() {} func (x *CDOTAUserMsg_HotPotato_Created) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[142] + mi := &file_dota_usermessages_proto_msgTypes[144] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11753,7 +11918,7 @@ func (x *CDOTAUserMsg_HotPotato_Created) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_HotPotato_Created.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_HotPotato_Created) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{142} + return file_dota_usermessages_proto_rawDescGZIP(), []int{144} } func (x *CDOTAUserMsg_HotPotato_Created) GetPlayerId_1() int32 { @@ -11781,7 +11946,7 @@ type CDOTAUserMsg_HotPotato_Exploded struct { func (x *CDOTAUserMsg_HotPotato_Exploded) Reset() { *x = CDOTAUserMsg_HotPotato_Exploded{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[143] + mi := &file_dota_usermessages_proto_msgTypes[145] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11794,7 +11959,7 @@ func (x *CDOTAUserMsg_HotPotato_Exploded) String() string { func (*CDOTAUserMsg_HotPotato_Exploded) ProtoMessage() {} func (x *CDOTAUserMsg_HotPotato_Exploded) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[143] + mi := &file_dota_usermessages_proto_msgTypes[145] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11807,7 +11972,7 @@ func (x *CDOTAUserMsg_HotPotato_Exploded) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_HotPotato_Exploded.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_HotPotato_Exploded) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{143} + return file_dota_usermessages_proto_rawDescGZIP(), []int{145} } func (x *CDOTAUserMsg_HotPotato_Exploded) GetPlayerId() int32 { @@ -11830,7 +11995,7 @@ type CDOTAUserMsg_WK_Arcana_Progress struct { func (x *CDOTAUserMsg_WK_Arcana_Progress) Reset() { *x = CDOTAUserMsg_WK_Arcana_Progress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[144] + mi := &file_dota_usermessages_proto_msgTypes[146] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11843,7 +12008,7 @@ func (x *CDOTAUserMsg_WK_Arcana_Progress) String() string { func (*CDOTAUserMsg_WK_Arcana_Progress) ProtoMessage() {} func (x *CDOTAUserMsg_WK_Arcana_Progress) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[144] + mi := &file_dota_usermessages_proto_msgTypes[146] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11856,7 +12021,7 @@ func (x *CDOTAUserMsg_WK_Arcana_Progress) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_WK_Arcana_Progress.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_WK_Arcana_Progress) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{144} + return file_dota_usermessages_proto_rawDescGZIP(), []int{146} } func (x *CDOTAUserMsg_WK_Arcana_Progress) GetEhandle() uint32 { @@ -11897,7 +12062,7 @@ type CDOTAUserMsg_GuildChallenge_Progress struct { func (x *CDOTAUserMsg_GuildChallenge_Progress) Reset() { *x = CDOTAUserMsg_GuildChallenge_Progress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[145] + mi := &file_dota_usermessages_proto_msgTypes[147] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11910,7 +12075,7 @@ func (x *CDOTAUserMsg_GuildChallenge_Progress) String() string { func (*CDOTAUserMsg_GuildChallenge_Progress) ProtoMessage() {} func (x *CDOTAUserMsg_GuildChallenge_Progress) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[145] + mi := &file_dota_usermessages_proto_msgTypes[147] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11923,7 +12088,7 @@ func (x *CDOTAUserMsg_GuildChallenge_Progress) ProtoReflect() protoreflect.Messa // Deprecated: Use CDOTAUserMsg_GuildChallenge_Progress.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_GuildChallenge_Progress) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{145} + return file_dota_usermessages_proto_rawDescGZIP(), []int{147} } func (x *CDOTAUserMsg_GuildChallenge_Progress) GetPlayerProgress() []*CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress { @@ -11992,7 +12157,7 @@ type CDOTAUserMsg_WRArcanaProgress struct { func (x *CDOTAUserMsg_WRArcanaProgress) Reset() { *x = CDOTAUserMsg_WRArcanaProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[146] + mi := &file_dota_usermessages_proto_msgTypes[148] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12005,7 +12170,7 @@ func (x *CDOTAUserMsg_WRArcanaProgress) String() string { func (*CDOTAUserMsg_WRArcanaProgress) ProtoMessage() {} func (x *CDOTAUserMsg_WRArcanaProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[146] + mi := &file_dota_usermessages_proto_msgTypes[148] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12018,7 +12183,7 @@ func (x *CDOTAUserMsg_WRArcanaProgress) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_WRArcanaProgress.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_WRArcanaProgress) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{146} + return file_dota_usermessages_proto_rawDescGZIP(), []int{148} } func (x *CDOTAUserMsg_WRArcanaProgress) GetEhandle() uint32 { @@ -12088,7 +12253,7 @@ type CDOTAUserMsg_WRArcanaSummary struct { func (x *CDOTAUserMsg_WRArcanaSummary) Reset() { *x = CDOTAUserMsg_WRArcanaSummary{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[147] + mi := &file_dota_usermessages_proto_msgTypes[149] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12101,7 +12266,7 @@ func (x *CDOTAUserMsg_WRArcanaSummary) String() string { func (*CDOTAUserMsg_WRArcanaSummary) ProtoMessage() {} func (x *CDOTAUserMsg_WRArcanaSummary) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[147] + mi := &file_dota_usermessages_proto_msgTypes[149] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12114,7 +12279,7 @@ func (x *CDOTAUserMsg_WRArcanaSummary) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_WRArcanaSummary.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_WRArcanaSummary) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{147} + return file_dota_usermessages_proto_rawDescGZIP(), []int{149} } func (x *CDOTAUserMsg_WRArcanaSummary) GetEhandle() uint32 { @@ -12187,7 +12352,7 @@ type CDOTAUserMsg_EmptyItemSlotAlert struct { func (x *CDOTAUserMsg_EmptyItemSlotAlert) Reset() { *x = CDOTAUserMsg_EmptyItemSlotAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[148] + mi := &file_dota_usermessages_proto_msgTypes[150] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12200,7 +12365,7 @@ func (x *CDOTAUserMsg_EmptyItemSlotAlert) String() string { func (*CDOTAUserMsg_EmptyItemSlotAlert) ProtoMessage() {} func (x *CDOTAUserMsg_EmptyItemSlotAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[148] + mi := &file_dota_usermessages_proto_msgTypes[150] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12213,7 +12378,7 @@ func (x *CDOTAUserMsg_EmptyItemSlotAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_EmptyItemSlotAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_EmptyItemSlotAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{148} + return file_dota_usermessages_proto_rawDescGZIP(), []int{150} } func (x *CDOTAUserMsg_EmptyItemSlotAlert) GetSourcePlayerId() int32 { @@ -12260,7 +12425,7 @@ type CDOTAUserMsg_AghsStatusAlert struct { func (x *CDOTAUserMsg_AghsStatusAlert) Reset() { *x = CDOTAUserMsg_AghsStatusAlert{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[149] + mi := &file_dota_usermessages_proto_msgTypes[151] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12273,7 +12438,7 @@ func (x *CDOTAUserMsg_AghsStatusAlert) String() string { func (*CDOTAUserMsg_AghsStatusAlert) ProtoMessage() {} func (x *CDOTAUserMsg_AghsStatusAlert) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[149] + mi := &file_dota_usermessages_proto_msgTypes[151] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12286,7 +12451,7 @@ func (x *CDOTAUserMsg_AghsStatusAlert) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_AghsStatusAlert.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_AghsStatusAlert) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{149} + return file_dota_usermessages_proto_rawDescGZIP(), []int{151} } func (x *CDOTAUserMsg_AghsStatusAlert) GetSourcePlayerId() int32 { @@ -12343,7 +12508,7 @@ type CDOTAUserMsg_MutedPlayers struct { func (x *CDOTAUserMsg_MutedPlayers) Reset() { *x = CDOTAUserMsg_MutedPlayers{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[150] + mi := &file_dota_usermessages_proto_msgTypes[152] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12356,7 +12521,7 @@ func (x *CDOTAUserMsg_MutedPlayers) String() string { func (*CDOTAUserMsg_MutedPlayers) ProtoMessage() {} func (x *CDOTAUserMsg_MutedPlayers) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[150] + mi := &file_dota_usermessages_proto_msgTypes[152] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12369,7 +12534,7 @@ func (x *CDOTAUserMsg_MutedPlayers) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_MutedPlayers.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MutedPlayers) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{150} + return file_dota_usermessages_proto_rawDescGZIP(), []int{152} } func (x *CDOTAUserMsg_MutedPlayers) GetTextMutedPlayerIds() []int32 { @@ -12411,7 +12576,7 @@ type CDOTAUserMsg_ContextualTip struct { func (x *CDOTAUserMsg_ContextualTip) Reset() { *x = CDOTAUserMsg_ContextualTip{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[151] + mi := &file_dota_usermessages_proto_msgTypes[153] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12424,7 +12589,7 @@ func (x *CDOTAUserMsg_ContextualTip) String() string { func (*CDOTAUserMsg_ContextualTip) ProtoMessage() {} func (x *CDOTAUserMsg_ContextualTip) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[151] + mi := &file_dota_usermessages_proto_msgTypes[153] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12437,7 +12602,7 @@ func (x *CDOTAUserMsg_ContextualTip) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ContextualTip.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ContextualTip) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{151} + return file_dota_usermessages_proto_rawDescGZIP(), []int{153} } func (x *CDOTAUserMsg_ContextualTip) GetTipId() int32 { @@ -12558,7 +12723,7 @@ type CDOTAUserMsg_ChatMessage struct { func (x *CDOTAUserMsg_ChatMessage) Reset() { *x = CDOTAUserMsg_ChatMessage{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[152] + mi := &file_dota_usermessages_proto_msgTypes[154] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12571,7 +12736,7 @@ func (x *CDOTAUserMsg_ChatMessage) String() string { func (*CDOTAUserMsg_ChatMessage) ProtoMessage() {} func (x *CDOTAUserMsg_ChatMessage) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[152] + mi := &file_dota_usermessages_proto_msgTypes[154] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12584,7 +12749,7 @@ func (x *CDOTAUserMsg_ChatMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_ChatMessage.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_ChatMessage) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{152} + return file_dota_usermessages_proto_rawDescGZIP(), []int{154} } func (x *CDOTAUserMsg_ChatMessage) GetSourcePlayerId() int32 { @@ -12620,7 +12785,7 @@ type CDOTAUserMsg_RockPaperScissorsStarted struct { func (x *CDOTAUserMsg_RockPaperScissorsStarted) Reset() { *x = CDOTAUserMsg_RockPaperScissorsStarted{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[153] + mi := &file_dota_usermessages_proto_msgTypes[155] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12633,7 +12798,7 @@ func (x *CDOTAUserMsg_RockPaperScissorsStarted) String() string { func (*CDOTAUserMsg_RockPaperScissorsStarted) ProtoMessage() {} func (x *CDOTAUserMsg_RockPaperScissorsStarted) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[153] + mi := &file_dota_usermessages_proto_msgTypes[155] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12646,7 +12811,7 @@ func (x *CDOTAUserMsg_RockPaperScissorsStarted) ProtoReflect() protoreflect.Mess // Deprecated: Use CDOTAUserMsg_RockPaperScissorsStarted.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_RockPaperScissorsStarted) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{153} + return file_dota_usermessages_proto_rawDescGZIP(), []int{155} } func (x *CDOTAUserMsg_RockPaperScissorsStarted) GetPlayerIdSource() int32 { @@ -12677,7 +12842,7 @@ type CDOTAUserMsg_RockPaperScissorsFinished struct { func (x *CDOTAUserMsg_RockPaperScissorsFinished) Reset() { *x = CDOTAUserMsg_RockPaperScissorsFinished{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[154] + mi := &file_dota_usermessages_proto_msgTypes[156] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12690,7 +12855,7 @@ func (x *CDOTAUserMsg_RockPaperScissorsFinished) String() string { func (*CDOTAUserMsg_RockPaperScissorsFinished) ProtoMessage() {} func (x *CDOTAUserMsg_RockPaperScissorsFinished) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[154] + mi := &file_dota_usermessages_proto_msgTypes[156] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12703,7 +12868,7 @@ func (x *CDOTAUserMsg_RockPaperScissorsFinished) ProtoReflect() protoreflect.Mes // Deprecated: Use CDOTAUserMsg_RockPaperScissorsFinished.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_RockPaperScissorsFinished) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{154} + return file_dota_usermessages_proto_rawDescGZIP(), []int{156} } func (x *CDOTAUserMsg_RockPaperScissorsFinished) GetPlayerId_1() int32 { @@ -12746,7 +12911,7 @@ type CDOTAUserMsg_DuelOpponentKilled struct { func (x *CDOTAUserMsg_DuelOpponentKilled) Reset() { *x = CDOTAUserMsg_DuelOpponentKilled{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[155] + mi := &file_dota_usermessages_proto_msgTypes[157] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12759,7 +12924,7 @@ func (x *CDOTAUserMsg_DuelOpponentKilled) String() string { func (*CDOTAUserMsg_DuelOpponentKilled) ProtoMessage() {} func (x *CDOTAUserMsg_DuelOpponentKilled) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[155] + mi := &file_dota_usermessages_proto_msgTypes[157] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12772,7 +12937,7 @@ func (x *CDOTAUserMsg_DuelOpponentKilled) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_DuelOpponentKilled.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_DuelOpponentKilled) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{155} + return file_dota_usermessages_proto_rawDescGZIP(), []int{157} } func (x *CDOTAUserMsg_DuelOpponentKilled) GetPlayerIdWinner() int32 { @@ -12801,7 +12966,7 @@ type CDOTAUserMsg_DuelAccepted struct { func (x *CDOTAUserMsg_DuelAccepted) Reset() { *x = CDOTAUserMsg_DuelAccepted{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[156] + mi := &file_dota_usermessages_proto_msgTypes[158] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12814,7 +12979,7 @@ func (x *CDOTAUserMsg_DuelAccepted) String() string { func (*CDOTAUserMsg_DuelAccepted) ProtoMessage() {} func (x *CDOTAUserMsg_DuelAccepted) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[156] + mi := &file_dota_usermessages_proto_msgTypes[158] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12827,7 +12992,7 @@ func (x *CDOTAUserMsg_DuelAccepted) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_DuelAccepted.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_DuelAccepted) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{156} + return file_dota_usermessages_proto_rawDescGZIP(), []int{158} } func (x *CDOTAUserMsg_DuelAccepted) GetPlayerId_1() int32 { @@ -12855,7 +13020,7 @@ type CDOTAUserMsg_DuelRequested struct { func (x *CDOTAUserMsg_DuelRequested) Reset() { *x = CDOTAUserMsg_DuelRequested{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[157] + mi := &file_dota_usermessages_proto_msgTypes[159] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12868,7 +13033,7 @@ func (x *CDOTAUserMsg_DuelRequested) String() string { func (*CDOTAUserMsg_DuelRequested) ProtoMessage() {} func (x *CDOTAUserMsg_DuelRequested) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[157] + mi := &file_dota_usermessages_proto_msgTypes[159] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12881,7 +13046,7 @@ func (x *CDOTAUserMsg_DuelRequested) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_DuelRequested.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_DuelRequested) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{157} + return file_dota_usermessages_proto_rawDescGZIP(), []int{159} } func (x *CDOTAUserMsg_DuelRequested) GetPlayerIdRequestor() int32 { @@ -12906,7 +13071,7 @@ type CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled struct { func (x *CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled) Reset() { *x = CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[158] + mi := &file_dota_usermessages_proto_msgTypes[160] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12919,7 +13084,7 @@ func (x *CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled) String() string { func (*CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled) ProtoMessage() {} func (x *CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[158] + mi := &file_dota_usermessages_proto_msgTypes[160] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12932,7 +13097,7 @@ func (x *CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled) ProtoReflect() pr // Deprecated: Use CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{158} + return file_dota_usermessages_proto_rawDescGZIP(), []int{160} } func (x *CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled) GetPlayerIdKiller() int32 { @@ -12982,7 +13147,7 @@ type CDOTAUserMsg_PlayerDraftSuggestPick struct { func (x *CDOTAUserMsg_PlayerDraftSuggestPick) Reset() { *x = CDOTAUserMsg_PlayerDraftSuggestPick{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[159] + mi := &file_dota_usermessages_proto_msgTypes[161] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12995,7 +13160,7 @@ func (x *CDOTAUserMsg_PlayerDraftSuggestPick) String() string { func (*CDOTAUserMsg_PlayerDraftSuggestPick) ProtoMessage() {} func (x *CDOTAUserMsg_PlayerDraftSuggestPick) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[159] + mi := &file_dota_usermessages_proto_msgTypes[161] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13008,7 +13173,7 @@ func (x *CDOTAUserMsg_PlayerDraftSuggestPick) ProtoReflect() protoreflect.Messag // Deprecated: Use CDOTAUserMsg_PlayerDraftSuggestPick.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_PlayerDraftSuggestPick) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{159} + return file_dota_usermessages_proto_rawDescGZIP(), []int{161} } func (x *CDOTAUserMsg_PlayerDraftSuggestPick) GetPlayerId() int32 { @@ -13038,7 +13203,7 @@ type CDOTAUserMsg_PlayerDraftPick struct { func (x *CDOTAUserMsg_PlayerDraftPick) Reset() { *x = CDOTAUserMsg_PlayerDraftPick{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[160] + mi := &file_dota_usermessages_proto_msgTypes[162] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13051,7 +13216,7 @@ func (x *CDOTAUserMsg_PlayerDraftPick) String() string { func (*CDOTAUserMsg_PlayerDraftPick) ProtoMessage() {} func (x *CDOTAUserMsg_PlayerDraftPick) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[160] + mi := &file_dota_usermessages_proto_msgTypes[162] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13064,7 +13229,7 @@ func (x *CDOTAUserMsg_PlayerDraftPick) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_PlayerDraftPick.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_PlayerDraftPick) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{160} + return file_dota_usermessages_proto_rawDescGZIP(), []int{162} } func (x *CDOTAUserMsg_PlayerDraftPick) GetPlayerIdCaptain() int32 { @@ -13102,7 +13267,7 @@ type CDOTAUserMsg_MiniKillCamInfo_Attacker struct { func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker) Reset() { *x = CDOTAUserMsg_MiniKillCamInfo_Attacker{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[161] + mi := &file_dota_usermessages_proto_msgTypes[163] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13115,7 +13280,7 @@ func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker) String() string { func (*CDOTAUserMsg_MiniKillCamInfo_Attacker) ProtoMessage() {} func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[161] + mi := &file_dota_usermessages_proto_msgTypes[163] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13128,7 +13293,7 @@ func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker) ProtoReflect() protoreflect.Mess // Deprecated: Use CDOTAUserMsg_MiniKillCamInfo_Attacker.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MiniKillCamInfo_Attacker) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{8, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{9, 0} } func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker) GetAttacker() uint32 { @@ -13171,7 +13336,7 @@ type CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability struct { func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability) Reset() { *x = CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[162] + mi := &file_dota_usermessages_proto_msgTypes[164] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13184,7 +13349,7 @@ func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability) String() string { func (*CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability) ProtoMessage() {} func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[162] + mi := &file_dota_usermessages_proto_msgTypes[164] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13197,7 +13362,7 @@ func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability) ProtoReflect() protorefl // Deprecated: Use CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{8, 0, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{9, 0, 0} } func (x *CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability) GetAbilityId() int32 { @@ -13226,7 +13391,7 @@ type CDOTAUserMsg_CourierKilledAlert_LostItem struct { func (x *CDOTAUserMsg_CourierKilledAlert_LostItem) Reset() { *x = CDOTAUserMsg_CourierKilledAlert_LostItem{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[163] + mi := &file_dota_usermessages_proto_msgTypes[165] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13239,7 +13404,7 @@ func (x *CDOTAUserMsg_CourierKilledAlert_LostItem) String() string { func (*CDOTAUserMsg_CourierKilledAlert_LostItem) ProtoMessage() {} func (x *CDOTAUserMsg_CourierKilledAlert_LostItem) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[163] + mi := &file_dota_usermessages_proto_msgTypes[165] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13252,7 +13417,7 @@ func (x *CDOTAUserMsg_CourierKilledAlert_LostItem) ProtoReflect() protoreflect.M // Deprecated: Use CDOTAUserMsg_CourierKilledAlert_LostItem.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_CourierKilledAlert_LostItem) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{26, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{27, 0} } func (x *CDOTAUserMsg_CourierKilledAlert_LostItem) GetItemAbilityId() int32 { @@ -13284,7 +13449,7 @@ type CDOTAUserMsg_PredictionResult_Prediction struct { func (x *CDOTAUserMsg_PredictionResult_Prediction) Reset() { *x = CDOTAUserMsg_PredictionResult_Prediction{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[164] + mi := &file_dota_usermessages_proto_msgTypes[166] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13297,7 +13462,7 @@ func (x *CDOTAUserMsg_PredictionResult_Prediction) String() string { func (*CDOTAUserMsg_PredictionResult_Prediction) ProtoMessage() {} func (x *CDOTAUserMsg_PredictionResult_Prediction) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[164] + mi := &file_dota_usermessages_proto_msgTypes[166] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13310,7 +13475,7 @@ func (x *CDOTAUserMsg_PredictionResult_Prediction) ProtoReflect() protoreflect.M // Deprecated: Use CDOTAUserMsg_PredictionResult_Prediction.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_PredictionResult_Prediction) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{41, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{42, 0} } func (x *CDOTAUserMsg_PredictionResult_Prediction) GetItemDef() uint32 { @@ -13364,7 +13529,7 @@ type CDOTAResponseQuerySerialized_Fact struct { func (x *CDOTAResponseQuerySerialized_Fact) Reset() { *x = CDOTAResponseQuerySerialized_Fact{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[165] + mi := &file_dota_usermessages_proto_msgTypes[167] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13377,7 +13542,7 @@ func (x *CDOTAResponseQuerySerialized_Fact) String() string { func (*CDOTAResponseQuerySerialized_Fact) ProtoMessage() {} func (x *CDOTAResponseQuerySerialized_Fact) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[165] + mi := &file_dota_usermessages_proto_msgTypes[167] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13390,7 +13555,7 @@ func (x *CDOTAResponseQuerySerialized_Fact) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAResponseQuerySerialized_Fact.ProtoReflect.Descriptor instead. func (*CDOTAResponseQuerySerialized_Fact) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{42, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{43, 0} } func (x *CDOTAResponseQuerySerialized_Fact) GetKey() int32 { @@ -13447,7 +13612,7 @@ type CDOTAUserMsg_UnitEvent_Interval struct { func (x *CDOTAUserMsg_UnitEvent_Interval) Reset() { *x = CDOTAUserMsg_UnitEvent_Interval{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[166] + mi := &file_dota_usermessages_proto_msgTypes[168] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13460,7 +13625,7 @@ func (x *CDOTAUserMsg_UnitEvent_Interval) String() string { func (*CDOTAUserMsg_UnitEvent_Interval) ProtoMessage() {} func (x *CDOTAUserMsg_UnitEvent_Interval) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[166] + mi := &file_dota_usermessages_proto_msgTypes[168] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13473,7 +13638,7 @@ func (x *CDOTAUserMsg_UnitEvent_Interval) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_UnitEvent_Interval.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UnitEvent_Interval) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{44, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{45, 0} } func (x *CDOTAUserMsg_UnitEvent_Interval) GetStart() float32 { @@ -13506,7 +13671,7 @@ type CDOTAUserMsg_UnitEvent_Speech struct { func (x *CDOTAUserMsg_UnitEvent_Speech) Reset() { *x = CDOTAUserMsg_UnitEvent_Speech{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[167] + mi := &file_dota_usermessages_proto_msgTypes[169] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13519,7 +13684,7 @@ func (x *CDOTAUserMsg_UnitEvent_Speech) String() string { func (*CDOTAUserMsg_UnitEvent_Speech) ProtoMessage() {} func (x *CDOTAUserMsg_UnitEvent_Speech) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[167] + mi := &file_dota_usermessages_proto_msgTypes[169] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13532,7 +13697,7 @@ func (x *CDOTAUserMsg_UnitEvent_Speech) ProtoReflect() protoreflect.Message { // Deprecated: Use CDOTAUserMsg_UnitEvent_Speech.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UnitEvent_Speech) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{44, 1} + return file_dota_usermessages_proto_rawDescGZIP(), []int{45, 1} } func (x *CDOTAUserMsg_UnitEvent_Speech) GetSpeechConcept() int32 { @@ -13588,7 +13753,7 @@ type CDOTAUserMsg_UnitEvent_SpeechMute struct { func (x *CDOTAUserMsg_UnitEvent_SpeechMute) Reset() { *x = CDOTAUserMsg_UnitEvent_SpeechMute{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[168] + mi := &file_dota_usermessages_proto_msgTypes[170] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13601,7 +13766,7 @@ func (x *CDOTAUserMsg_UnitEvent_SpeechMute) String() string { func (*CDOTAUserMsg_UnitEvent_SpeechMute) ProtoMessage() {} func (x *CDOTAUserMsg_UnitEvent_SpeechMute) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[168] + mi := &file_dota_usermessages_proto_msgTypes[170] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13614,7 +13779,7 @@ func (x *CDOTAUserMsg_UnitEvent_SpeechMute) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_UnitEvent_SpeechMute.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UnitEvent_SpeechMute) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{44, 2} + return file_dota_usermessages_proto_rawDescGZIP(), []int{45, 2} } func (x *CDOTAUserMsg_UnitEvent_SpeechMute) GetDelay() float32 { @@ -13640,7 +13805,7 @@ type CDOTAUserMsg_UnitEvent_AddGesture struct { func (x *CDOTAUserMsg_UnitEvent_AddGesture) Reset() { *x = CDOTAUserMsg_UnitEvent_AddGesture{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[169] + mi := &file_dota_usermessages_proto_msgTypes[171] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13653,7 +13818,7 @@ func (x *CDOTAUserMsg_UnitEvent_AddGesture) String() string { func (*CDOTAUserMsg_UnitEvent_AddGesture) ProtoMessage() {} func (x *CDOTAUserMsg_UnitEvent_AddGesture) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[169] + mi := &file_dota_usermessages_proto_msgTypes[171] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13666,7 +13831,7 @@ func (x *CDOTAUserMsg_UnitEvent_AddGesture) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_UnitEvent_AddGesture.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UnitEvent_AddGesture) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{44, 3} + return file_dota_usermessages_proto_rawDescGZIP(), []int{45, 3} } func (x *CDOTAUserMsg_UnitEvent_AddGesture) GetActivity() int32 { @@ -13722,7 +13887,7 @@ type CDOTAUserMsg_UnitEvent_RemoveGesture struct { func (x *CDOTAUserMsg_UnitEvent_RemoveGesture) Reset() { *x = CDOTAUserMsg_UnitEvent_RemoveGesture{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[170] + mi := &file_dota_usermessages_proto_msgTypes[172] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13735,7 +13900,7 @@ func (x *CDOTAUserMsg_UnitEvent_RemoveGesture) String() string { func (*CDOTAUserMsg_UnitEvent_RemoveGesture) ProtoMessage() {} func (x *CDOTAUserMsg_UnitEvent_RemoveGesture) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[170] + mi := &file_dota_usermessages_proto_msgTypes[172] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13748,7 +13913,7 @@ func (x *CDOTAUserMsg_UnitEvent_RemoveGesture) ProtoReflect() protoreflect.Messa // Deprecated: Use CDOTAUserMsg_UnitEvent_RemoveGesture.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UnitEvent_RemoveGesture) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{44, 4} + return file_dota_usermessages_proto_rawDescGZIP(), []int{45, 4} } func (x *CDOTAUserMsg_UnitEvent_RemoveGesture) GetActivity() int32 { @@ -13771,7 +13936,7 @@ type CDOTAUserMsg_UnitEvent_BloodImpact struct { func (x *CDOTAUserMsg_UnitEvent_BloodImpact) Reset() { *x = CDOTAUserMsg_UnitEvent_BloodImpact{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[171] + mi := &file_dota_usermessages_proto_msgTypes[173] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13784,7 +13949,7 @@ func (x *CDOTAUserMsg_UnitEvent_BloodImpact) String() string { func (*CDOTAUserMsg_UnitEvent_BloodImpact) ProtoMessage() {} func (x *CDOTAUserMsg_UnitEvent_BloodImpact) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[171] + mi := &file_dota_usermessages_proto_msgTypes[173] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13797,7 +13962,7 @@ func (x *CDOTAUserMsg_UnitEvent_BloodImpact) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_UnitEvent_BloodImpact.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UnitEvent_BloodImpact) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{44, 5} + return file_dota_usermessages_proto_rawDescGZIP(), []int{45, 5} } func (x *CDOTAUserMsg_UnitEvent_BloodImpact) GetScale() int32 { @@ -13832,7 +13997,7 @@ type CDOTAUserMsg_UnitEvent_FadeGesture struct { func (x *CDOTAUserMsg_UnitEvent_FadeGesture) Reset() { *x = CDOTAUserMsg_UnitEvent_FadeGesture{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[172] + mi := &file_dota_usermessages_proto_msgTypes[174] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13845,7 +14010,7 @@ func (x *CDOTAUserMsg_UnitEvent_FadeGesture) String() string { func (*CDOTAUserMsg_UnitEvent_FadeGesture) ProtoMessage() {} func (x *CDOTAUserMsg_UnitEvent_FadeGesture) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[172] + mi := &file_dota_usermessages_proto_msgTypes[174] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13858,7 +14023,7 @@ func (x *CDOTAUserMsg_UnitEvent_FadeGesture) ProtoReflect() protoreflect.Message // Deprecated: Use CDOTAUserMsg_UnitEvent_FadeGesture.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_UnitEvent_FadeGesture) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{44, 6} + return file_dota_usermessages_proto_rawDescGZIP(), []int{45, 6} } func (x *CDOTAUserMsg_UnitEvent_FadeGesture) GetActivity() int32 { @@ -13880,7 +14045,7 @@ type CDOTAUserMsg_StatsHeroPositionInfo_PositionPair struct { func (x *CDOTAUserMsg_StatsHeroPositionInfo_PositionPair) Reset() { *x = CDOTAUserMsg_StatsHeroPositionInfo_PositionPair{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[173] + mi := &file_dota_usermessages_proto_msgTypes[175] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13893,7 +14058,7 @@ func (x *CDOTAUserMsg_StatsHeroPositionInfo_PositionPair) String() string { func (*CDOTAUserMsg_StatsHeroPositionInfo_PositionPair) ProtoMessage() {} func (x *CDOTAUserMsg_StatsHeroPositionInfo_PositionPair) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[173] + mi := &file_dota_usermessages_proto_msgTypes[175] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13906,7 +14071,7 @@ func (x *CDOTAUserMsg_StatsHeroPositionInfo_PositionPair) ProtoReflect() protore // Deprecated: Use CDOTAUserMsg_StatsHeroPositionInfo_PositionPair.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsHeroPositionInfo_PositionPair) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{87, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{88, 0} } func (x *CDOTAUserMsg_StatsHeroPositionInfo_PositionPair) GetPositionCategory() DOTA_POSITION_CATEGORY { @@ -13936,7 +14101,7 @@ type CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance struct { func (x *CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance) Reset() { *x = CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[174] + mi := &file_dota_usermessages_proto_msgTypes[176] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -13949,7 +14114,7 @@ func (x *CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance) String() strin func (*CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance) ProtoMessage() {} func (x *CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[174] + mi := &file_dota_usermessages_proto_msgTypes[176] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -13962,7 +14127,7 @@ func (x *CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance) ProtoReflect() // Deprecated: Use CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{89, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{90, 0} } func (x *CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance) GetLocationCategory() uint32 { @@ -14000,7 +14165,7 @@ type CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails struct { func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails) Reset() { *x = CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[175] + mi := &file_dota_usermessages_proto_msgTypes[177] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14013,7 +14178,7 @@ func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails) Stri func (*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails) ProtoMessage() {} func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[175] + mi := &file_dota_usermessages_proto_msgTypes[177] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14026,7 +14191,7 @@ func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails) Prot // Deprecated: Use CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{92, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{93, 0} } func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails) GetParticipants() []int32 { @@ -14071,7 +14236,7 @@ type CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails struct { func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails) Reset() { *x = CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[176] + mi := &file_dota_usermessages_proto_msgTypes[178] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14084,7 +14249,7 @@ func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails) String() func (*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails) ProtoMessage() {} func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[176] + mi := &file_dota_usermessages_proto_msgTypes[178] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14097,7 +14262,7 @@ func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails) ProtoRef // Deprecated: Use CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{92, 1} + return file_dota_usermessages_proto_rawDescGZIP(), []int{93, 1} } func (x *CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails) GetStartTime() float32 { @@ -14140,7 +14305,7 @@ type CDOTAUserMsg_AllStarEvent_PlayerScore struct { func (x *CDOTAUserMsg_AllStarEvent_PlayerScore) Reset() { *x = CDOTAUserMsg_AllStarEvent_PlayerScore{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[177] + mi := &file_dota_usermessages_proto_msgTypes[179] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14153,7 +14318,7 @@ func (x *CDOTAUserMsg_AllStarEvent_PlayerScore) String() string { func (*CDOTAUserMsg_AllStarEvent_PlayerScore) ProtoMessage() {} func (x *CDOTAUserMsg_AllStarEvent_PlayerScore) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[177] + mi := &file_dota_usermessages_proto_msgTypes[179] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14166,7 +14331,7 @@ func (x *CDOTAUserMsg_AllStarEvent_PlayerScore) ProtoReflect() protoreflect.Mess // Deprecated: Use CDOTAUserMsg_AllStarEvent_PlayerScore.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_AllStarEvent_PlayerScore) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{132, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{134, 0} } func (x *CDOTAUserMsg_AllStarEvent_PlayerScore) GetPlayerId() int32 { @@ -14196,7 +14361,7 @@ type CDOTAUserMsg_PauseMinigameData_DataBit struct { func (x *CDOTAUserMsg_PauseMinigameData_DataBit) Reset() { *x = CDOTAUserMsg_PauseMinigameData_DataBit{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[178] + mi := &file_dota_usermessages_proto_msgTypes[180] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14209,7 +14374,7 @@ func (x *CDOTAUserMsg_PauseMinigameData_DataBit) String() string { func (*CDOTAUserMsg_PauseMinigameData_DataBit) ProtoMessage() {} func (x *CDOTAUserMsg_PauseMinigameData_DataBit) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[178] + mi := &file_dota_usermessages_proto_msgTypes[180] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14222,7 +14387,7 @@ func (x *CDOTAUserMsg_PauseMinigameData_DataBit) ProtoReflect() protoreflect.Mes // Deprecated: Use CDOTAUserMsg_PauseMinigameData_DataBit.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_PauseMinigameData_DataBit) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{139, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{141, 0} } func (x *CDOTAUserMsg_PauseMinigameData_DataBit) GetIndex() uint32 { @@ -14258,7 +14423,7 @@ type CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress struct { func (x *CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress) Reset() { *x = CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress{} if protoimpl.UnsafeEnabled { - mi := &file_dota_usermessages_proto_msgTypes[179] + mi := &file_dota_usermessages_proto_msgTypes[181] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14271,7 +14436,7 @@ func (x *CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress) String() string { func (*CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress) ProtoMessage() {} func (x *CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress) ProtoReflect() protoreflect.Message { - mi := &file_dota_usermessages_proto_msgTypes[179] + mi := &file_dota_usermessages_proto_msgTypes[181] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14284,7 +14449,7 @@ func (x *CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress) ProtoReflect() pro // Deprecated: Use CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress.ProtoReflect.Descriptor instead. func (*CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress) Descriptor() ([]byte, []int) { - return file_dota_usermessages_proto_rawDescGZIP(), []int{145, 0} + return file_dota_usermessages_proto_rawDescGZIP(), []int{147, 0} } func (x *CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress) GetPlayerId() int32 { @@ -14381,1638 +14546,1648 @@ var file_dota_usermessages_proto_rawDesc = []byte{ 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x76, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0xef, 0x02, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x4b, 0x69, 0x6c, 0x6c, 0x43, - 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x49, 0x0a, 0x09, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, - 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x69, - 0x6e, 0x69, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, - 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x52, 0x09, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, - 0x73, 0x1a, 0x83, 0x02, 0x0a, 0x08, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x12, 0x1a, - 0x0a, 0x08, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x51, 0x0a, - 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x61, 0x6d, - 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x2e, 0x41, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, - 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x40, 0x0a, 0x07, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, - 0x16, 0x0a, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x51, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4c, 0x69, - 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1a, - 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6f, 0x0a, 0x21, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x2e, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7a, 0x0a, 0x19, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x22, 0xcd, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x1c, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, - 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x18, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x4f, 0x66, 0x4f, 0x72, 0x69, 0x67, 0x69, - 0x6e, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1b, 0x0a, 0x09, - 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x69, 0x63, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6e, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, - 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x37, - 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, - 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x52, 0x09, 0x69, 0x74, - 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x22, 0xbb, 0x02, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6e, 0x65, 0x6d, 0x79, 0x49, 0x74, - 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, - 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x75, 0x6e, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, - 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, - 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, - 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x43, 0x68, - 0x61, 0x72, 0x67, 0x65, 0x73, 0x22, 0xec, 0x01, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x41, - 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x62, 0x75, 0x66, 0x66, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x44, 0x65, 0x62, 0x75, 0x66, 0x66, 0x12, 0x27, - 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, - 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, - 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x88, 0x01, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x50, 0x4d, 0x61, 0x6e, 0x61, 0x41, 0x6c, 0x65, 0x72, - 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, - 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, - 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x68, 0x6f, 0x77, 0x5f, - 0x72, 0x61, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x52, 0x61, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, - 0x98, 0x02, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x43, 0x61, 0x6d, 0x70, 0x41, 0x6c, 0x65, 0x72, - 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x29, - 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x65, - 0x72, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x75, 0x6e, 0x69, - 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x75, 0x6e, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, - 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x1b, 0x0a, 0x09, 0x63, 0x61, 0x6d, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x63, 0x61, 0x6d, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, - 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x63, - 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x52, 0x0a, 0x17, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x6c, 0x79, 0x70, 0x68, - 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x22, 0x52, - 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, - 0x61, 0x64, 0x61, 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x22, 0xbe, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x69, 0x6c, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, - 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x6f, - 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x6f, 0x6c, 0x64, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, - 0x67, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x12, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x64, 0x22, 0xa0, 0x01, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x63, - 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x53, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x72, 0x73, 0x41, 0x72, 0x65, 0x6e, - 0x61, 0x4f, 0x66, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x25, - 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x68, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, - 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x23, 0x0a, 0x0d, - 0x77, 0x61, 0x72, 0x72, 0x69, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x61, 0x72, 0x72, 0x69, 0x6f, 0x72, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x22, 0x77, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x53, 0x70, 0x65, 0x6c, 0x6c, - 0x43, 0x61, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, - 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x4d, 0x73, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x61, - 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x22, 0x3d, 0x0a, 0x1e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x75, 0x79, 0x42, 0x61, - 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0x92, 0x01, 0x0a, 0x29, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6e, + 0x65, 0x61, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x43, 0x50, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x12, 0x28, 0x0a, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x52, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0xef, 0x02, 0x0a, 0x1c, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x69, 0x6e, 0x69, + 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x49, 0x0a, 0x09, 0x61, + 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x61, 0x6d, 0x49, 0x6e, + 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x52, 0x09, 0x61, 0x74, 0x74, + 0x61, 0x63, 0x6b, 0x65, 0x72, 0x73, 0x1a, 0x83, 0x02, 0x0a, 0x08, 0x41, 0x74, 0x74, 0x61, 0x63, + 0x6b, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x12, + 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x12, 0x51, 0x0a, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x4b, 0x69, + 0x6c, 0x6c, 0x43, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, + 0x65, 0x72, 0x2e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, + 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x40, 0x0a, 0x07, 0x41, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x51, 0x0a, 0x1d, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x6c, 0x6f, + 0x62, 0x61, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x6f, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x7a, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, + 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x0d, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, + 0x67, 0x5f, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x0c, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x22, 0xcd, 0x01, 0x0a, + 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x69, + 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e, + 0x0a, 0x1c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x5f, 0x6f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x18, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x4f, 0x66, + 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x12, 0x21, + 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x63, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, + 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6e, 0x0a, 0x16, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, + 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x6c, 0x65, 0x72, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, + 0x74, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x22, 0xbb, 0x02, 0x0a, + 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6e, + 0x65, 0x6d, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0xd5, 0x01, 0x0a, 0x1a, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x51, 0x75, 0x69, 0x63, 0x6b, - 0x42, 0x75, 0x79, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, - 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, - 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x67, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x69, 0x74, 0x65, 0x6d, 0x43, - 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x21, - 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x62, 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x42, 0x75, 0x79, 0x62, 0x61, 0x63, - 0x6b, 0x22, 0x8a, 0x03, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, - 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x6c, - 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, - 0x6f, 0x6c, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x4d, 0x0a, 0x0a, 0x6c, - 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x65, - 0x64, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x2e, 0x4c, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, - 0x09, 0x6c, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x6b, 0x69, - 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x77, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x6f, 0x77, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x4e, - 0x0a, 0x08, 0x4c, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, + 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, + 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, + 0x75, 0x6e, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x72, 0x75, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, + 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, + 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x0a, + 0x11, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, + 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x22, 0xec, 0x01, 0x0a, 0x1a, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x6f, 0x64, 0x69, + 0x66, 0x69, 0x65, 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, + 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x62, + 0x75, 0x66, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x44, 0x65, 0x62, + 0x75, 0x66, 0x66, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, + 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x2b, 0x0a, 0x11, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, + 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, + 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x88, 0x01, 0x0a, 0x18, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x50, 0x4d, 0x61, 0x6e, + 0x61, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, + 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, + 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x68, 0x6f, 0x77, 0x52, 0x61, 0x77, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x22, 0x98, 0x02, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x43, 0x61, 0x6d, + 0x70, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x65, + 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, + 0x70, 0x61, 0x77, 0x6e, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, + 0x0a, 0x0d, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x75, 0x6e, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x61, 0x6d, 0x70, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x61, 0x6d, 0x70, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, + 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x52, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x47, 0x6c, 0x79, 0x70, 0x68, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, + 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, 0x65, 0x67, 0x61, 0x74, + 0x69, 0x76, 0x65, 0x22, 0x52, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x61, 0x64, 0x61, 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, + 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, + 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, + 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x22, 0xbe, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x69, 0x6c, 0x6c, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0xc9, - 0x01, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, - 0x0a, 0x01, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x1a, 0x0a, 0x08, - 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0x65, 0x0a, 0x14, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x70, 0x4c, 0x69, - 0x6e, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, - 0x30, 0x0a, 0x07, 0x6d, 0x61, 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, - 0x5f, 0x4d, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x6c, 0x69, 0x6e, - 0x65, 0x22, 0xaa, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, 0x44, 0x65, 0x62, 0x75, 0x67, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, - 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x93, - 0x04, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, - 0x12, 0x2e, 0x0a, 0x08, 0x76, 0x65, 0x6c, 0x6f, 0x63, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x32, 0x44, 0x52, 0x08, 0x76, 0x65, 0x6c, 0x6f, 0x63, 0x69, 0x74, 0x79, - 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x25, 0x0a, 0x0e, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x36, 0x0a, 0x0c, 0x61, - 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x32, 0x44, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x53, 0x70, 0x65, 0x65, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x6f, 0x77, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x6f, 0x77, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 0x12, - 0x2a, 0x0a, 0x11, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x79, 0x5f, 0x66, 0x6f, 0x77, 0x5f, 0x72, 0x65, - 0x76, 0x65, 0x61, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x73, 0x74, 0x69, 0x63, - 0x6b, 0x79, 0x46, 0x6f, 0x77, 0x52, 0x65, 0x76, 0x65, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x64, - 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, - 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, - 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0d, - 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x55, 0x0a, - 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x70, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x50, - 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x70, - 0x44, 0x61, 0x74, 0x61, 0x22, 0x3e, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x4c, 0x69, 0x6e, 0x65, - 0x61, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x22, 0x66, 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x6f, 0x64, 0x67, 0x65, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, - 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, - 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, - 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x74, 0x74, - 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x81, 0x01, 0x0a, - 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, - 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6c, 0x69, - 0x63, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, - 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, - 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, - 0x22, 0xbe, 0x02, 0x0a, 0x26, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x55, 0x6e, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x65, - 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x65, - 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6f, 0x72, 0x64, - 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x2c, - 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, - 0x71, 0x75, 0x65, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x71, 0x75, 0x65, - 0x75, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x65, 0x71, - 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, - 0x73, 0x22, 0x9e, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x69, 0x65, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x28, - 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x76, 0x65, - 0x72, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x76, 0x65, 0x72, - 0x73, 0x65, 0x22, 0x60, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, - 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, - 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x22, 0x5b, 0x0a, 0x15, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x75, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x19, 0x0a, - 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x71, 0x75, - 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x22, 0x88, 0x01, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, - 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x1d, 0x0a, - 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x35, 0x0a, 0x1f, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, - 0x4e, 0x65, 0x78, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x62, 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x22, 0x78, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x65, 0x6e, 0x44, 0x72, 0x6f, - 0x70, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, 0x12, - 0x1d, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x1d, - 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x22, 0xe8, 0x03, - 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, - 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x72, - 0x72, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x6f, 0x72, 0x72, - 0x65, 0x63, 0x74, 0x12, 0x50, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x50, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xa0, 0x02, 0x0a, 0x0a, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, - 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x4e, 0x0a, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, - 0x11, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, - 0x66, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, - 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, 0x22, 0x3d, 0x0a, 0x07, 0x45, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x10, 0x01, 0x12, - 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x44, 0x65, 0x73, - 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x10, 0x02, 0x22, 0xaf, 0x03, 0x0a, 0x1c, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, - 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x05, 0x66, 0x61, 0x63, - 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x2e, 0x46, 0x61, 0x63, - 0x74, 0x52, 0x05, 0x66, 0x61, 0x63, 0x74, 0x73, 0x1a, 0xcf, 0x02, 0x0a, 0x04, 0x46, 0x61, 0x63, - 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x4b, 0x0a, 0x07, 0x76, 0x61, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, - 0x20, 0x02, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, - 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x2e, 0x46, 0x61, 0x63, 0x74, 0x2e, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x76, 0x61, 0x6c, 0x74, 0x79, 0x70, 0x65, - 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x65, 0x72, 0x69, - 0x63, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x12, 0x32, 0x0a, 0x15, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x13, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49, - 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x76, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x5f, - 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0d, 0x76, - 0x61, 0x6c, 0x49, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x22, 0x4c, 0x0a, 0x09, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x4e, 0x55, 0x4d, - 0x45, 0x52, 0x49, 0x43, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, - 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x54, 0x41, 0x42, 0x4c, - 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x4e, 0x54, - 0x5f, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43, 0x10, 0x04, 0x22, 0xd2, 0x01, 0x0a, 0x18, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, - 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x65, 0x63, - 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0d, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x12, 0x25, - 0x0a, 0x0e, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x48, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, - 0x52, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, - 0x1e, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x73, 0x65, 0x65, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0f, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x73, 0x65, 0x65, 0x64, 0x22, - 0xc0, 0x0a, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x08, 0x6d, 0x73, - 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x6f, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x02, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x12, 0x3b, 0x0a, 0x06, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x52, 0x06, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, - 0x12, 0x48, 0x0a, 0x0b, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x75, 0x74, 0x65, 0x52, 0x0a, - 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x75, 0x74, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x61, 0x64, - 0x64, 0x5f, 0x67, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x64, - 0x64, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0a, 0x61, 0x64, 0x64, 0x47, 0x65, 0x73, - 0x74, 0x75, 0x72, 0x65, 0x12, 0x51, 0x0a, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x67, - 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x25, 0x0a, 0x0e, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, + 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x6f, 0x6c, 0x64, 0x52, 0x65, 0x6d, + 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0xa0, 0x01, 0x0a, 0x1f, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x54, + 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6f, 0x6f, 0x6c, + 0x64, 0x6f, 0x77, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x23, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x72, + 0x73, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x4f, 0x66, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x41, 0x74, 0x74, + 0x61, 0x63, 0x6b, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x65, 0x68, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x45, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x68, 0x61, 0x6e, 0x64, 0x6c, + 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x77, 0x61, 0x72, 0x72, 0x69, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x61, 0x72, 0x72, 0x69, 0x6f, + 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x77, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x45, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x72, + 0x53, 0x70, 0x65, 0x6c, 0x6c, 0x43, 0x61, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, + 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, + 0x73, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0c, 0x63, 0x61, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x22, + 0x3d, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x42, 0x75, 0x79, 0x42, 0x61, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x65, 0x72, + 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0xd5, + 0x01, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x51, 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, 0x79, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, + 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x73, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x73, 0x74, 0x12, + 0x32, 0x0a, 0x15, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, + 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, + 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x53, 0x65, 0x63, 0x6f, + 0x6e, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x62, 0x75, 0x79, 0x62, + 0x61, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x42, + 0x75, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x22, 0x8a, 0x03, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, 0x4b, + 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, + 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x1d, + 0x0a, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, + 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, + 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x12, 0x4d, 0x0a, 0x0a, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x75, 0x72, 0x69, 0x65, 0x72, + 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x2e, 0x4c, 0x6f, 0x73, 0x74, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x09, 0x6c, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, + 0x28, 0x0a, 0x10, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6b, 0x69, 0x6c, 0x6c, 0x65, + 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x77, 0x6e, + 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6f, 0x77, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x1a, 0x4e, 0x0a, 0x08, 0x4c, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, + 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x22, 0xc9, 0x01, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, + 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, + 0x14, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, + 0x65, 0x0a, 0x14, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x4d, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x07, 0x6d, 0x61, 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x07, 0x6d, + 0x61, 0x70, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0xaa, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, 0x44, + 0x65, 0x62, 0x75, 0x67, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x12, 0x0a, + 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x69, 0x7a, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, + 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x22, 0x93, 0x04, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x61, + 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x6f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x2e, 0x0a, 0x08, 0x76, 0x65, 0x6c, 0x6f, 0x63, 0x69, 0x74, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x32, 0x44, 0x52, 0x08, 0x76, 0x65, 0x6c, + 0x6f, 0x63, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, + 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, + 0x12, 0x36, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x32, 0x44, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, + 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, + 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6d, 0x61, 0x78, + 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x6f, 0x77, 0x5f, 0x72, 0x61, 0x64, + 0x69, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x6f, 0x77, 0x52, 0x61, + 0x64, 0x69, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x79, 0x5f, 0x66, + 0x6f, 0x77, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x61, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0f, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x79, 0x46, 0x6f, 0x77, 0x52, 0x65, 0x76, 0x65, 0x61, 0x6c, + 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0d, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x07, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, + 0x6f, 0x72, 0x12, 0x55, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, + 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, - 0x65, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x4b, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x6f, 0x64, - 0x5f, 0x69, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x43, 0x50, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x43, 0x70, 0x44, 0x61, 0x74, 0x61, 0x22, 0x3e, 0x0a, 0x24, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, + 0x79, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0x66, 0x0a, 0x25, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x6f, 0x64, 0x67, 0x65, 0x54, + 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, + 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, + 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, + 0x0a, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x4f, 0x6e, 0x6c, + 0x79, 0x22, 0x81, 0x01, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xbe, 0x02, 0x0a, 0x26, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x6e, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, + 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x75, + 0x6e, 0x69, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x75, 0x6e, 0x69, 0x74, + 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x05, 0x71, 0x75, 0x65, 0x75, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x9e, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x6d, 0x6f, 0x72, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x65, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x18, 0x0a, + 0x07, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x22, 0x60, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x43, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x5b, 0x0a, 0x15, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x75, 0x64, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, + 0x0f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x88, 0x01, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, + 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, + 0x77, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, + 0x77, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x22, 0x35, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x67, 0x5f, 0x53, 0x65, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x62, 0x75, 0x79, + 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x78, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, + 0x65, 0x6e, 0x44, 0x72, 0x6f, 0x70, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x64, 0x65, 0x66, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, + 0x44, 0x65, 0x66, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x73, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x69, 0x7a, 0x65, 0x4c, 0x69, + 0x73, 0x74, 0x22, 0xe8, 0x03, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x07, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x50, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x42, 0x6c, 0x6f, 0x6f, - 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x49, 0x6d, - 0x70, 0x61, 0x63, 0x74, 0x12, 0x4b, 0x0a, 0x0c, 0x66, 0x61, 0x64, 0x65, 0x5f, 0x67, 0x65, 0x73, - 0x74, 0x75, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, + 0x67, 0x5f, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xa0, 0x02, 0x0a, 0x0a, 0x50, + 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, + 0x6d, 0x44, 0x65, 0x66, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x72, 0x72, + 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x43, 0x6f, + 0x72, 0x72, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x66, 0x61, 0x69, + 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x46, 0x61, 0x69, + 0x6c, 0x73, 0x12, 0x4e, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x67, + 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, 0x22, 0x3d, + 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x65, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x72, 0x61, 0x6e, 0x74, + 0x65, 0x64, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x10, 0x02, 0x22, 0xaf, 0x03, + 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x12, 0x3d, + 0x0a, 0x05, 0x66, 0x61, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, + 0x64, 0x2e, 0x46, 0x61, 0x63, 0x74, 0x52, 0x05, 0x66, 0x61, 0x63, 0x74, 0x73, 0x1a, 0xcf, 0x02, + 0x0a, 0x04, 0x46, 0x61, 0x63, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x02, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x4b, 0x0a, 0x07, 0x76, 0x61, 0x6c, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x2e, 0x46, 0x61, + 0x63, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x76, 0x61, + 0x6c, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, + 0x65, 0x72, 0x69, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x4e, + 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x32, 0x0a, 0x15, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x76, 0x61, 0x6c, + 0x5f, 0x69, 0x6e, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x11, 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x49, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x65, 0x72, 0x69, + 0x63, 0x22, 0x4c, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, + 0x0a, 0x07, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x53, + 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x52, 0x49, 0x4e, + 0x47, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x45, 0x58, 0x10, 0x03, 0x12, 0x0f, + 0x0a, 0x0b, 0x49, 0x4e, 0x54, 0x5f, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43, 0x10, 0x04, 0x22, + 0xd2, 0x01, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x4f, 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, + 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x63, + 0x65, 0x70, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x65, 0x63, + 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x48, 0x0a, 0x0d, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x72, 0x69, 0x61, + 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x73, 0x65, + 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, + 0x73, 0x65, 0x65, 0x64, 0x22, 0xc0, 0x0a, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, + 0x34, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, + 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x6f, 0x74, 0x61, 0x45, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x07, 0x6d, 0x73, + 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3b, 0x0a, 0x06, 0x73, 0x70, 0x65, 0x65, + 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, + 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x52, 0x06, 0x73, + 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x48, 0x0a, 0x0b, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, + 0x6d, 0x75, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, - 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x61, 0x64, 0x65, 0x47, 0x65, 0x73, - 0x74, 0x75, 0x72, 0x65, 0x52, 0x0b, 0x66, 0x61, 0x64, 0x65, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, - 0x65, 0x12, 0x53, 0x0a, 0x16, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x5f, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x53, 0x70, - 0x65, 0x65, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x52, 0x13, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x6e, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x1a, 0x36, 0x0a, 0x08, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, - 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0xe7, - 0x01, 0x0a, 0x06, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x70, 0x65, - 0x65, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, - 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, - 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x75, 0x74, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6d, 0x75, 0x74, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x12, - 0x41, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, + 0x75, 0x74, 0x65, 0x52, 0x0a, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x75, 0x74, 0x65, 0x12, + 0x48, 0x0a, 0x0b, 0x61, 0x64, 0x64, 0x5f, 0x67, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x2e, 0x41, 0x64, 0x64, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0a, 0x61, + 0x64, 0x64, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x51, 0x0a, 0x0e, 0x72, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x5f, 0x67, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, - 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x65, 0x64, 0x65, 0x6c, - 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x1a, 0x22, 0x0a, 0x0a, 0x53, 0x70, 0x65, 0x65, - 0x63, 0x68, 0x4d, 0x75, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x1a, 0xc0, 0x01, 0x0a, - 0x0a, 0x41, 0x64, 0x64, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, - 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61, - 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x66, - 0x61, 0x64, 0x65, 0x5f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x66, 0x61, - 0x64, 0x65, 0x49, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x61, 0x64, 0x65, 0x5f, 0x6f, 0x75, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x66, 0x61, 0x64, 0x65, 0x4f, 0x75, 0x74, 0x12, - 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x61, 0x74, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, - 0x52, 0x61, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, - 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, - 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x1a, - 0x2b, 0x0a, 0x0d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, + 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0d, 0x72, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x4b, 0x0a, 0x0c, + 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x5f, 0x69, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x2e, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x52, 0x0b, 0x62, 0x6c, + 0x6f, 0x6f, 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x4b, 0x0a, 0x0c, 0x66, 0x61, 0x64, + 0x65, 0x5f, 0x67, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x61, + 0x64, 0x65, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0b, 0x66, 0x61, 0x64, 0x65, 0x47, + 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x53, 0x0a, 0x16, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, + 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x6e, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x13, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x61, + 0x74, 0x63, 0x68, 0x4f, 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x1a, 0x36, 0x0a, 0x08, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x14, 0x0a, + 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x1a, 0xe7, 0x01, 0x0a, 0x06, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x25, + 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, + 0x6e, 0x63, 0x65, 0x70, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x65, 0x63, 0x69, 0x70, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x75, 0x74, 0x65, + 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6d, 0x75, 0x74, 0x65, + 0x61, 0x62, 0x6c, 0x65, 0x12, 0x41, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x64, 0x65, 0x6c, 0x61, 0x79, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x52, 0x08, 0x70, + 0x72, 0x65, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x1a, 0x22, 0x0a, + 0x0a, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x75, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, + 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, + 0x79, 0x1a, 0xc0, 0x01, 0x0a, 0x0a, 0x41, 0x64, 0x64, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x1a, 0x59, 0x0a, 0x0b, - 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, - 0x63, 0x61, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x78, 0x5f, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x78, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x12, 0x19, 0x0a, 0x08, - 0x79, 0x5f, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x79, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x1a, 0x29, 0x0a, 0x0b, 0x46, 0x61, 0x64, 0x65, 0x47, - 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, - 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, - 0x74, 0x79, 0x22, 0x44, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, - 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x15, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x6c, - 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, - 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x22, 0x94, 0x01, 0x0a, 0x16, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x46, - 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, - 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x71, - 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x61, 0x72, 0x69, 0x74, 0x79, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, 0x16, - 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, - 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x64, 0x65, - 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x64, 0x65, 0x66, - 0x22, 0x85, 0x02, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x4f, 0x76, 0x65, 0x72, 0x68, 0x65, 0x61, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, - 0x3c, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, - 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x14, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x14, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x4e, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x54, 0x69, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7d, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, - 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x18, 0x0a, - 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, - 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x26, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, - 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0x7d, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x53, 0x65, 0x6e, 0x64, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x54, 0x6f, 0x6f, 0x6c, 0x54, - 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1a, 0x0a, 0x08, - 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x6f, 0x73, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x22, 0x6d, - 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x57, - 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, + 0x28, 0x05, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, + 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, + 0x12, 0x17, 0x0a, 0x07, 0x66, 0x61, 0x64, 0x65, 0x5f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x06, 0x66, 0x61, 0x64, 0x65, 0x49, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x61, 0x64, + 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x66, 0x61, 0x64, + 0x65, 0x4f, 0x75, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, + 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x70, 0x6c, 0x61, + 0x79, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x61, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x56, 0x61, 0x72, + 0x69, 0x61, 0x6e, 0x74, 0x1a, 0x2b, 0x0a, 0x0d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x65, + 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, + 0x79, 0x1a, 0x59, 0x0a, 0x0b, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x78, 0x5f, 0x6e, 0x6f, 0x72, 0x6d, + 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x78, 0x4e, 0x6f, 0x72, 0x6d, 0x61, + 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x79, 0x5f, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x79, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x1a, 0x29, 0x0a, 0x0b, + 0x46, 0x61, 0x64, 0x65, 0x47, 0x65, 0x73, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x22, 0x44, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, + 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x22, 0x3f, 0x0a, + 0x15, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x74, + 0x65, 0x6d, 0x53, 0x6f, 0x6c, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x22, 0x94, + 0x01, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, + 0x61, 0x72, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x61, 0x72, + 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x69, + 0x74, 0x65, 0x6d, 0x64, 0x65, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, + 0x65, 0x6d, 0x64, 0x65, 0x66, 0x22, 0x85, 0x02, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4f, 0x76, 0x65, 0x72, 0x68, 0x65, 0x61, 0x64, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, + 0x41, 0x4c, 0x45, 0x52, 0x54, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, + 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, + 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x4e, 0x0a, + 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, + 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7d, 0x0a, + 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, + 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, + 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, + 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x6d, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x6d, 0x12, 0x12, + 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x26, 0x0a, 0x24, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, 0x74, + 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7d, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, + 0x54, 0x6f, 0x6f, 0x6c, 0x54, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, + 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x63, 0x6c, + 0x6f, 0x73, 0x65, 0x22, 0x6d, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x09, 0x77, 0x6f, + 0x72, 0x6c, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x6f, + 0x72, 0x6c, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6c, 0x69, + 0x6e, 0x65, 0x22, 0xc1, 0x01, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x26, 0x0a, + 0x0f, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x48, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x6d, 0x6f, 0x74, + 0x69, 0x63, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x80, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, + 0x58, 0x6d, 0x61, 0x73, 0x47, 0x69, 0x66, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6c, 0x69, - 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, - 0x6e, 0x65, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0xc1, 0x01, - 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, - 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x74, - 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, - 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x49, - 0x64, 0x22, 0x80, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x58, 0x6d, 0x61, 0x73, 0x47, - 0x69, 0x66, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, + 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x6c, 0x6f, 0x74, 0x22, 0xf7, 0x01, 0x0a, 0x17, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x53, + 0x75, 0x72, 0x76, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x72, 0x76, 0x65, 0x79, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x75, 0x72, 0x76, 0x65, 0x79, + 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x25, 0x0a, + 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, + 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, + 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x23, + 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x5f, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x11, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6c, 0x6f, 0x74, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x6c, 0x6f, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x22, 0x38, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, + 0x46, 0x61, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x67, 0x74, 0x5f, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x67, 0x74, 0x41, 0x6c, 0x70, 0x68, + 0x61, 0x22, 0xa1, 0x01, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x4d, + 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x13, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x5f, 0x78, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x58, 0x12, 0x13, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x5f, + 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x59, 0x12, 0x13, 0x0a, + 0x05, 0x70, 0x6f, 0x73, 0x5f, 0x7a, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x70, 0x6f, + 0x73, 0x5a, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x3a, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x22, 0x59, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x67, 0x5f, 0x41, 0x64, 0x64, 0x51, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x70, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x70, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x6e, 0x70, 0x63, 0x5f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x6e, 0x70, 0x63, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x22, 0x75, 0x0a, 0x1a, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, + 0x64, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x70, + 0x6f, 0x70, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x53, + 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x70, 0x6f, + 0x70, 0x75, 0x70, 0x22, 0x6e, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, + 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x73, 0x12, 0x49, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x6d, + 0x69, 0x73, 0x73, 0x61, 0x6c, 0x6c, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, + 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, + 0x70, 0x75, 0x70, 0x73, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x61, 0x6c, 0x6c, + 0x6d, 0x73, 0x67, 0x22, 0xa3, 0x01, 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x53, + 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x2d, 0x0a, + 0x05, 0x70, 0x68, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, + 0x50, 0x48, 0x41, 0x53, 0x45, 0x52, 0x05, 0x70, 0x68, 0x61, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x10, + 0x70, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x68, 0x61, 0x73, 0x65, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x61, 0x73, 0x65, 0x5f, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x68, + 0x61, 0x73, 0x65, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x58, 0x0a, 0x1c, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x6f, + 0x73, 0x68, 0x61, 0x6e, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, + 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, + 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x74, + 0x69, 0x6d, 0x65, 0x22, 0x6a, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x47, 0x6f, 0x6c, + 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x6f, + 0x6c, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, + 0x6c, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x6e, 0x72, 0x65, 0x6c, 0x69, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, + 0x0e, 0x75, 0x6e, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x22, + 0x65, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x70, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x48, 0x55, 0x44, 0x50, + 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, - 0x0e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x53, 0x6c, 0x6f, 0x74, 0x22, 0xf7, 0x01, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, - 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x72, 0x76, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x75, 0x72, 0x76, 0x65, 0x79, 0x49, 0x64, 0x12, 0x19, 0x0a, - 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, - 0x28, 0x0a, 0x10, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x6d, - 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x65, 0x61, - 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, - 0x0a, 0x13, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x74, 0x65, 0x61, - 0x6d, 0x6d, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x3f, - 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x6c, 0x6f, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, - 0x21, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, - 0x78, 0x70, 0x22, 0x38, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x46, 0x61, 0x64, 0x65, 0x12, - 0x1b, 0x0a, 0x09, 0x74, 0x67, 0x74, 0x5f, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x74, 0x67, 0x74, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x22, 0xa1, 0x01, 0x0a, - 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x75, - 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, - 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x13, - 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x5f, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x70, - 0x6f, 0x73, 0x58, 0x12, 0x13, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x5f, 0x79, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x59, 0x12, 0x13, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x5f, - 0x7a, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x5a, 0x12, 0x21, 0x0a, - 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, - 0x22, 0x3a, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x59, 0x0a, 0x1d, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x64, 0x64, - 0x51, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x19, 0x0a, - 0x08, 0x6e, 0x70, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6e, 0x70, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x70, 0x63, 0x5f, - 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x70, - 0x63, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x22, 0x75, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, - 0x50, 0x6f, 0x70, 0x75, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x70, 0x6f, 0x70, 0x75, 0x70, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, - 0x70, 0x75, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x70, 0x6f, 0x70, 0x75, 0x70, 0x22, 0x6e, - 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, - 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, - 0x75, 0x70, 0x73, 0x12, 0x49, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x61, 0x6c, - 0x6c, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x69, 0x73, 0x6d, 0x69, - 0x73, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x73, 0x52, - 0x0d, 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x61, 0x6c, 0x6c, 0x6d, 0x73, 0x67, 0x22, 0xa3, - 0x01, 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x53, 0x65, 0x6e, 0x64, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, - 0x74, 0x6f, 0x72, 0x50, 0x68, 0x61, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x70, 0x68, 0x61, 0x73, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x50, 0x48, 0x41, 0x53, 0x45, - 0x52, 0x05, 0x70, 0x68, 0x61, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x68, 0x61, 0x73, 0x65, - 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x70, 0x68, 0x61, 0x73, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x68, 0x61, 0x73, 0x65, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x22, 0x58, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x50, - 0x6f, 0x70, 0x75, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x63, 0x6c, 0x61, 0x69, 0x6d, - 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x6a, - 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, - 0x65, 0x6e, 0x64, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x23, 0x0a, 0x0d, - 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, - 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x6e, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, - 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x75, 0x6e, 0x72, 0x65, - 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x6f, 0x6c, 0x64, 0x22, 0x65, 0x0a, 0x16, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1b, - 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x22, 0x70, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x48, 0x55, 0x44, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1b, - 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x08, 0x68, - 0x75, 0x64, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, - 0x61, 0x63, 0x68, 0x48, 0x55, 0x44, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x68, 0x75, 0x64, 0x50, - 0x69, 0x6e, 0x67, 0x22, 0x20, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x47, 0x72, - 0x69, 0x64, 0x4e, 0x61, 0x76, 0x22, 0x82, 0x05, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x12, 0x36, 0x0a, 0x08, 0x68, 0x75, 0x64, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x4d, + 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x48, 0x55, 0x44, 0x50, 0x69, 0x6e, 0x67, 0x52, + 0x07, 0x68, 0x75, 0x64, 0x50, 0x69, 0x6e, 0x67, 0x22, 0x20, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, + 0x6f, 0x61, 0x64, 0x47, 0x72, 0x69, 0x64, 0x4e, 0x61, 0x76, 0x22, 0xcc, 0x05, 0x0a, 0x1a, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x50, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x76, + 0x65, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6d, + 0x6f, 0x76, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, + 0x65, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, + 0x79, 0x73, 0x74, 0x65, 0x6d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, + 0x6f, 0x64, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, + 0x64, 0x6f, 0x64, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, + 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, + 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x70, + 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x69, 0x6d, + 0x70, 0x61, 0x63, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, + 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, + 0x0d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x74, 0x69, + 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, + 0x54, 0x69, 0x63, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x0a, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x6f, 0x63, 0x12, 0x55, 0x0a, + 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x70, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x50, + 0x44, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x70, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x49, 0x0a, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x79, 0x73, 0x74, + 0x65, 0x6d, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x1e, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, + 0x2e, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x6f, 0x76, 0x65, + 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6f, 0x72, + 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x6f, 0x76, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x22, 0xc0, 0x05, 0x0a, 0x1d, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x2f, 0x0a, 0x0a, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x52, 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6d, 0x6f, 0x76, 0x65, 0x53, 0x70, - 0x65, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x74, - 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x79, 0x73, - 0x74, 0x65, 0x6d, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, - 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6f, 0x64, 0x67, 0x65, 0x61, - 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x6f, 0x64, 0x67, 0x65, - 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, - 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x41, 0x74, 0x74, 0x61, 0x63, - 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x69, 0x6d, - 0x70, 0x61, 0x63, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6f, - 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x0d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1f, - 0x0a, 0x0b, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x54, 0x69, 0x63, 0x6b, 0x12, - 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x4c, 0x6f, 0x63, 0x12, 0x55, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0f, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, - 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x50, 0x44, 0x61, 0x74, 0x61, 0x52, - 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x70, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x49, 0x0a, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1e, 0x61, 0x64, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x79, - 0x73, 0x74, 0x65, 0x6d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0x90, 0x05, 0x0a, 0x1d, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x2f, 0x0a, 0x0a, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x52, 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4c, 0x6f, 0x63, 0x12, 0x16, 0x0a, - 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x73, 0x70, - 0x65, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6d, 0x6f, 0x76, 0x65, 0x53, - 0x70, 0x65, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x79, - 0x73, 0x74, 0x65, 0x6d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6f, - 0x64, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, - 0x6f, 0x64, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x61, - 0x74, 0x74, 0x61, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x41, - 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, - 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x4c, 0x6f, 0x63, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, - 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0d, - 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1f, 0x0a, - 0x0b, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x16, - 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, - 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2b, - 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, - 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x55, 0x0a, 0x10, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x50, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x70, 0x44, 0x61, - 0x74, 0x61, 0x12, 0x49, 0x0a, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, - 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, - 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1e, 0x61, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, - 0x65, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0x3b, 0x0a, - 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, - 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0x83, 0x01, 0x0a, 0x1f, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x44, - 0x6f, 0x74, 0x61, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x16, - 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x78, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x78, - 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6e, 0x6f, 0x72, 0x6d, 0x61, - 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x79, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, - 0x22, 0xb7, 0x03, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, - 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, - 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x53, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x07, - 0x70, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, - 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x5f, 0x6e, - 0x65, 0x65, 0x64, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x6e, - 0x61, 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, - 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, - 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x0a, - 0x11, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, - 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x74, - 0x72, 0x6c, 0x5f, 0x68, 0x65, 0x6c, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, - 0x74, 0x72, 0x6c, 0x48, 0x65, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x6c, 0x61, - 0x69, 0x6d, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x72, - 0x65, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x88, 0x02, 0x0a, 0x1d, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x55, - 0x6e, 0x69, 0x74, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, - 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, - 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, - 0x22, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x72, 0x61, 0x74, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x72, - 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x73, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x63, 0x61, 0x73, 0x74, 0x70, 0x6f, 0x69, 0x6e, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, - 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, - 0x79, 0x12, 0x32, 0x0a, 0x15, 0x6c, 0x61, 0x67, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x13, 0x6c, 0x61, 0x67, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x4e, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x41, 0x6e, 0x69, - 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6e, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x04, 0x73, 0x6e, 0x61, 0x70, 0x22, 0xcf, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x47, 0x65, 0x6e, 0x65, 0x72, - 0x69, 0x63, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x02, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, - 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x02, 0x28, 0x09, 0x52, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x72, 0x65, - 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x74, 0x69, 0x6e, 0x74, 0x53, 0x63, - 0x72, 0x65, 0x65, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6e, 0x6f, 0x5f, - 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x12, 0x73, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x4f, 0x74, 0x68, 0x65, 0x72, - 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x73, 0x22, 0x87, 0x01, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x6f, 0x69, - 0x63, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, - 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, - 0x73, 0x22, 0x3e, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x23, 0x0a, 0x0d, - 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x22, 0x3f, 0x0a, 0x14, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x43, 0x68, 0x6f, 0x69, - 0x63, 0x65, 0x22, 0xc8, 0x01, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x05, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x6f, - 0x6e, 0x75, 0x73, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x2d, - 0x0a, 0x13, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x6b, 0x0a, - 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x6f, - 0x6f, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4e, 0x0a, 0x0f, 0x62, 0x6f, - 0x6f, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x0e, 0x62, 0x6f, 0x6f, 0x73, - 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0x2a, 0x0a, 0x16, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x4d, 0x4d, 0x52, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x11, 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x22, 0x7c, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, - 0x65, 0x61, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, - 0x23, 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x22, 0x8b, 0x01, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x4c, - 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x65, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, + 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x79, 0x73, + 0x74, 0x65, 0x6d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6f, 0x64, + 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x6f, + 0x64, 0x67, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x41, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, + 0x6c, 0x6f, 0x63, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x4c, 0x6f, 0x63, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x67, + 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0d, 0x63, + 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x65, 0x6d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, + 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0a, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x16, 0x0a, + 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2b, 0x0a, + 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x55, 0x0a, 0x10, 0x70, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x10, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x50, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x70, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x49, 0x0a, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, + 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1e, 0x61, 0x64, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, + 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x2e, 0x0a, 0x13, + 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x73, 0x70, + 0x65, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6f, 0x72, 0x69, 0x67, 0x69, + 0x6e, 0x61, 0x6c, 0x4d, 0x6f, 0x76, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x22, 0x3b, 0x0a, 0x21, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, + 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0x83, 0x01, 0x0a, 0x1f, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x44, 0x6f, + 0x74, 0x61, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x16, 0x0a, + 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x78, + 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x78, 0x6e, + 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x79, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x22, + 0xb7, 0x03, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, + 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x53, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x70, + 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x61, + 0x73, 0x73, 0x69, 0x76, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x5f, 0x6e, 0x65, + 0x65, 0x64, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, + 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x63, + 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x72, + 0x69, 0x6d, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, + 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, + 0x72, 0x79, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x74, 0x72, + 0x6c, 0x5f, 0x68, 0x65, 0x6c, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x74, + 0x72, 0x6c, 0x48, 0x65, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x6c, 0x61, 0x69, + 0x6d, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x72, 0x65, + 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x88, 0x02, 0x0a, 0x1d, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x55, 0x6e, + 0x69, 0x74, 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, + 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x22, + 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x72, 0x61, + 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x73, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x63, 0x61, 0x73, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, + 0x12, 0x32, 0x0a, 0x15, 0x6c, 0x61, 0x67, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x73, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x13, 0x6c, 0x61, 0x67, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x54, 0x69, 0x6d, 0x65, 0x22, 0x4e, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x45, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x41, 0x6e, 0x69, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6e, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, + 0x73, 0x6e, 0x61, 0x70, 0x22, 0xcf, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, + 0x63, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x18, 0x01, 0x20, 0x02, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, + 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x02, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x72, 0x65, 0x65, + 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x74, 0x69, 0x6e, 0x74, 0x53, 0x63, 0x72, + 0x65, 0x65, 0x6e, 0x12, 0x31, 0x0a, 0x15, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6e, 0x6f, 0x5f, 0x6f, + 0x74, 0x68, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x12, 0x73, 0x68, 0x6f, 0x77, 0x4e, 0x6f, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x44, + 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x73, 0x22, 0x87, 0x01, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, + 0x22, 0x3e, 0x0a, 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x05, 0x52, 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, + 0x22, 0x3f, 0x0a, 0x14, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x43, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x22, 0xc8, 0x01, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x68, 0x65, 0x72, 0x6f, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x72, 0x73, - 0x6f, 0x6e, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x65, 0x72, 0x73, 0x6f, - 0x6e, 0x61, 0x22, 0xb4, 0x02, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x76, 0x65, - 0x72, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x60, 0x0a, 0x10, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x05, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x6f, 0x6e, + 0x75, 0x73, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x2d, 0x0a, + 0x13, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x6b, 0x0a, 0x19, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x6f, 0x6f, + 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4e, 0x0a, 0x0f, 0x62, 0x6f, 0x6f, + 0x73, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x0e, 0x62, 0x6f, 0x6f, 0x73, 0x74, + 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0x2a, 0x0a, 0x16, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x4d, 0x4d, 0x52, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6d, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x11, + 0x52, 0x03, 0x6d, 0x6d, 0x72, 0x22, 0x7c, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x65, + 0x61, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x23, + 0x0a, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x22, 0x8b, 0x01, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x6f, + 0x6f, 0x6b, 0x75, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, + 0x65, 0x72, 0x6f, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x72, 0x73, 0x6f, + 0x6e, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, + 0x61, 0x22, 0xb4, 0x02, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x61, 0x69, 0x72, 0x52, 0x0f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x80, 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x69, 0x72, 0x12, 0x49, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, - 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, - 0x52, 0x10, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, - 0x72, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xd1, 0x04, 0x0a, 0x23, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x48, 0x65, 0x72, 0x6f, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x1d, - 0x0a, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1f, 0x0a, - 0x0b, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, - 0x0a, 0x0c, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x12, 0x4d, 0x0a, 0x0d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, - 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x0c, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x78, 0x70, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x58, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x6e, - 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x6e, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x14, 0x68, 0x61, 0x72, 0x76, - 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x67, 0x6f, 0x6c, 0x64, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x68, 0x61, 0x72, 0x76, 0x65, 0x73, 0x74, 0x65, - 0x64, 0x43, 0x72, 0x65, 0x65, 0x70, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, - 0x61, 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x46, 0x61, 0x72, 0x6d, 0x12, 0x21, 0x0a, - 0x0c, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, - 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x75, 0x6e, 0x65, 0x73, - 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x70, 0x73, - 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x70, 0x73, - 0x55, 0x73, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x5f, 0x73, 0x70, 0x65, - 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x61, 0x6e, 0x61, 0x53, 0x70, - 0x65, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x62, - 0x73, 0x6f, 0x72, 0x62, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x61, - 0x6d, 0x61, 0x67, 0x65, 0x41, 0x62, 0x73, 0x6f, 0x72, 0x62, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x6f, 0x6e, 0x65, 0x22, 0xc1, 0x05, - 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x4c, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6b, 0x69, 0x6c, - 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x4b, - 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x5f, - 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x61, 0x72, - 0x72, 0x61, 0x63, 0x6b, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x61, 0x76, 0x61, - 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x65, - 0x70, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x61, 0x76, - 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x65, 0x70, - 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, - 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x10, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x6f, - 0x77, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x11, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, - 0x72, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x14, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x72, 0x72, 0x61, - 0x63, 0x6b, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x62, 0x61, 0x6c, 0x61, - 0x6e, 0x63, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x47, 0x6f, 0x6c, - 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, - 0x65, 0x5f, 0x78, 0x70, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0e, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x58, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x12, 0x68, 0x0a, 0x10, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, - 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x0f, 0x6c, 0x61, 0x6e, 0x65, 0x50, - 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x1a, 0x75, 0x0a, 0x13, 0x4c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, - 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x61, - 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1b, - 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x22, 0xfc, 0x01, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4b, 0x69, - 0x6c, 0x6c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x10, 0x6b, 0x69, 0x6c, 0x6c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, - 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x63, - 0x5f, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x4c, 0x6f, 0x63, 0x58, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6c, - 0x6f, 0x63, 0x5f, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x4c, 0x6f, 0x63, 0x59, 0x12, 0x25, 0x0a, 0x0e, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, - 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, - 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, - 0x0c, 0x6d, 0x61, 0x6e, 0x61, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, - 0x22, 0x93, 0x02, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x49, 0x64, 0x12, - 0x48, 0x0a, 0x0b, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x52, 0x0a, 0x6b, - 0x69, 0x6c, 0x6c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x61, 0x6d, - 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x4b, 0x69, 0x6c, 0x6c, 0x12, - 0x29, 0x0a, 0x10, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x68, 0x65, 0x61, - 0x6c, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x65, 0x66, 0x66, 0x65, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, - 0x61, 0x74, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, - 0x64, 0x65, 0x61, 0x74, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6b, 0x69, 0x6c, - 0x6c, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6b, 0x69, - 0x6c, 0x6c, 0x65, 0x72, 0x49, 0x64, 0x22, 0xe5, 0x07, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x43, 0x0a, 0x0b, 0x68, 0x65, 0x72, - 0x6f, 0x5f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x6f, 0x6f, 0x6b, - 0x75, 0x70, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x12, 0x4e, - 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, - 0x65, 0x61, 0x6d, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x48, - 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x61, 0x6d, - 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x64, - 0x69, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x48, 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, - 0x61, 0x6e, 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x4b, 0x69, 0x6c, - 0x6c, 0x73, 0x12, 0x42, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, - 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x64, 0x69, 0x72, - 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x68, 0x0a, 0x0d, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, - 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x76, 0x65, 0x72, + 0x61, 0x67, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x60, 0x0a, 0x10, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x52, 0x0c, 0x66, 0x69, 0x67, 0x68, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x1a, 0x9a, 0x01, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, 0x54, 0x65, 0x61, 0x6d, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, - 0x65, 0x61, 0x74, 0x68, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, 0x61, - 0x74, 0x68, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x64, 0x65, 0x6c, 0x74, - 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x44, 0x65, 0x6c, - 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x78, 0x70, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x78, 0x70, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x1a, 0xce, 0x02, - 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x7b, 0x0a, 0x15, 0x72, 0x61, - 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x50, 0x61, 0x69, 0x72, 0x52, 0x0f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x80, 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x50, 0x61, 0x69, 0x72, 0x12, 0x49, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, + 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x52, + 0x10, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xd1, 0x04, 0x0a, 0x23, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, + 0x65, 0x72, 0x6f, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x73, 0x12, 0x1d, 0x0a, + 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x12, 0x4d, 0x0a, 0x0d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, + 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x0c, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x19, 0x0a, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x78, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x58, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, + 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, + 0x65, 0x74, 0x57, 0x6f, 0x72, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x14, 0x68, 0x61, 0x72, 0x76, 0x65, + 0x73, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x72, 0x65, 0x65, 0x70, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x68, 0x61, 0x72, 0x76, 0x65, 0x73, 0x74, 0x65, 0x64, + 0x43, 0x72, 0x65, 0x65, 0x70, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x61, + 0x69, 0x6d, 0x65, 0x64, 0x5f, 0x66, 0x61, 0x72, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x46, 0x61, 0x72, 0x6d, 0x12, 0x21, 0x0a, 0x0c, + 0x77, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x12, + 0x27, 0x0a, 0x0f, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x43, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x70, 0x73, 0x5f, + 0x75, 0x73, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x70, 0x73, 0x55, + 0x73, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x5f, 0x73, 0x70, 0x65, 0x6e, + 0x74, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x61, 0x6e, 0x61, 0x53, 0x70, 0x65, + 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x62, 0x73, + 0x6f, 0x72, 0x62, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x41, 0x62, 0x73, 0x6f, 0x72, 0x62, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x64, + 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x0a, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x6f, 0x6e, 0x65, 0x22, 0xc1, 0x05, 0x0a, + 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x12, 0x4c, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, + 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x4b, 0x69, + 0x6c, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x72, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x6b, + 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x61, 0x72, 0x72, + 0x61, 0x63, 0x6b, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x61, 0x76, 0x61, 0x69, + 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x65, 0x70, + 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x61, 0x76, 0x61, + 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x65, 0x70, 0x47, + 0x6f, 0x6c, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6b, + 0x69, 0x6c, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x10, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x6f, 0x77, + 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, + 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x54, 0x6f, 0x77, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x34, 0x0a, 0x16, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x72, + 0x72, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x14, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x72, 0x72, 0x61, 0x63, + 0x6b, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x62, 0x61, 0x6c, 0x61, 0x6e, + 0x63, 0x65, 0x5f, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x47, 0x6f, 0x6c, 0x64, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x5f, 0x78, 0x70, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x58, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, + 0x68, 0x0a, 0x10, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x6e, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x52, 0x13, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x46, 0x69, 0x67, 0x68, 0x74, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x75, 0x0a, 0x12, 0x64, 0x69, 0x72, 0x65, 0x5f, - 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, - 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x10, 0x64, 0x69, - 0x72, 0x65, 0x46, 0x69, 0x67, 0x68, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x46, - 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, - 0x69, 0x6e, 0x69, 0x54, 0x61, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x75, 0x6e, - 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x74, 0x61, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x42, 0x75, 0x62, - 0x62, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x61, - 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, - 0x79, 0x41, 0x6c, 0x6c, 0x22, 0x8b, 0x01, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x65, 0x61, 0x64, - 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x22, 0x85, 0x01, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x41, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x12, 0x30, 0x0a, 0x09, 0x73, 0x74, - 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x6c, 0x6f, - 0x61, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, - 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x86, 0x01, 0x0a, 0x1c, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, - 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x47, 0x0a, 0x12, 0x68, 0x65, - 0x72, 0x6f, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, - 0x74, 0x52, 0x10, 0x68, 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x22, 0x7b, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x62, 0x61, - 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x0c, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x62, 0x61, - 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, - 0x74, 0x61, 0x74, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x22, 0x76, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x42, 0x65, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, - 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x16, - 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x82, 0x01, 0x0a, 0x24, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x27, 0x0a, 0x0f, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6c, 0x61, 0x79, 0x6f, 0x75, - 0x74, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x80, 0x01, - 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, - 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x6c, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x5f, - 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6d, - 0x6f, 0x64, 0x69, 0x66, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x46, 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6c, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, - 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x57, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, - 0x69, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1b, - 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, - 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x22, 0x77, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x57, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x5f, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x61, 0x74, 0x73, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x0f, 0x6c, 0x61, 0x6e, 0x65, 0x50, 0x65, + 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x1a, 0x75, 0x0a, 0x13, 0x4c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, + 0x12, 0x2b, 0x0a, 0x11, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x0a, + 0x09, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x22, 0xfc, 0x01, 0x0a, 0x21, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4b, 0x69, 0x6c, + 0x6c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x10, 0x6b, 0x69, 0x6c, 0x6c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, + 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x63, 0x5f, + 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, + 0x6f, 0x63, 0x58, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6c, 0x6f, + 0x63, 0x5f, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x4c, 0x6f, 0x63, 0x59, 0x12, 0x25, 0x0a, 0x0e, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, + 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x68, + 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, + 0x6d, 0x61, 0x6e, 0x61, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x22, + 0x93, 0x02, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x49, 0x64, 0x12, 0x48, + 0x0a, 0x0b, 0x6b, 0x69, 0x6c, 0x6c, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x52, 0x0a, 0x6b, 0x69, + 0x6c, 0x6c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x4b, 0x69, 0x6c, 0x6c, 0x12, 0x29, + 0x0a, 0x10, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x6c, + 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x61, + 0x74, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x64, + 0x65, 0x61, 0x74, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6b, 0x69, 0x6c, 0x6c, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6b, 0x69, 0x6c, + 0x6c, 0x65, 0x72, 0x49, 0x64, 0x22, 0xe5, 0x07, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x43, 0x0a, 0x0b, 0x68, 0x65, 0x72, 0x6f, + 0x5f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, - 0x69, 0x75, 0x6d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0xc6, 0x02, 0x0a, 0x1e, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, - 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, - 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, - 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x61, 0x73, - 0x74, 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, - 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, - 0x69, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x61, 0x73, 0x74, - 0x65, 0x72, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x74, - 0x72, 0x61, 0x63, 0x6b, 0x43, 0x61, 0x73, 0x74, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x19, - 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x76, 0x69, 0x63, - 0x74, 0x69, 0x6d, 0x5f, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x45, 0x6e, 0x74, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x22, 0x65, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x50, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x22, 0x5c, 0x0a, 0x14, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x58, 0x50, 0x41, 0x6c, 0x65, + 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, + 0x70, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x12, 0x4e, 0x0a, + 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, + 0x61, 0x6d, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, + 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x48, 0x0a, + 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x65, 0x61, 0x6d, 0x4d, + 0x69, 0x6e, 0x75, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x64, 0x69, + 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x48, 0x0a, 0x0d, 0x72, 0x61, 0x64, 0x69, 0x61, + 0x6e, 0x74, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x52, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x4b, 0x69, 0x6c, 0x6c, + 0x73, 0x12, 0x42, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4b, + 0x69, 0x6c, 0x6c, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, + 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x12, 0x68, 0x0a, 0x0d, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x52, 0x0c, 0x66, 0x69, 0x67, 0x68, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, + 0x9a, 0x01, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x70, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, + 0x61, 0x74, 0x68, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x64, 0x65, 0x61, 0x74, + 0x68, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x6c, 0x64, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x67, 0x6f, 0x6c, 0x64, 0x44, 0x65, 0x6c, 0x74, + 0x61, 0x12, 0x19, 0x0a, 0x08, 0x78, 0x70, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x78, 0x70, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x1a, 0xce, 0x02, 0x0a, + 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, + 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, + 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x7b, 0x0a, 0x15, 0x72, 0x61, 0x64, + 0x69, 0x61, 0x6e, 0x74, 0x5f, 0x66, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x52, 0x13, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x46, 0x69, 0x67, 0x68, 0x74, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x75, 0x0a, 0x12, 0x64, 0x69, 0x72, 0x65, 0x5f, 0x66, + 0x69, 0x67, 0x68, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, + 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x46, 0x69, 0x67, 0x68, 0x74, + 0x54, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x10, 0x64, 0x69, 0x72, + 0x65, 0x46, 0x69, 0x67, 0x68, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x46, 0x0a, + 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x69, + 0x6e, 0x69, 0x54, 0x61, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x75, 0x6e, 0x74, + 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x10, 0x74, 0x61, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x42, 0x75, 0x62, 0x62, + 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x61, 0x6c, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, + 0x41, 0x6c, 0x6c, 0x22, 0x8b, 0x01, 0x0a, 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x22, 0x85, 0x01, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x12, 0x30, 0x0a, 0x09, 0x73, 0x74, 0x61, + 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, + 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x6c, 0x6f, 0x61, + 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x66, + 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x86, 0x01, 0x0a, 0x1c, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x72, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x47, 0x0a, 0x12, 0x68, 0x65, 0x72, + 0x6f, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, + 0x52, 0x10, 0x68, 0x65, 0x72, 0x6f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x22, 0x7b, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x19, 0x0a, + 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, + 0x61, 0x74, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, + 0x76, 0x0a, 0x16, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x42, 0x65, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, + 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x16, 0x0a, + 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x82, 0x01, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, + 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x27, 0x0a, 0x0f, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, + 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x80, 0x01, 0x0a, + 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x4d, + 0x6f, 0x64, 0x69, 0x66, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x5f, 0x76, + 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6d, 0x6f, + 0x64, 0x69, 0x66, 0x79, 0x56, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, + 0x46, 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x57, 0x0a, 0x22, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, + 0x75, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1b, 0x0a, + 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x22, 0x77, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x12, 0x57, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x5f, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, + 0x75, 0x6d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0xc6, 0x02, 0x0a, 0x1e, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x63, + 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x74, + 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, + 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x61, 0x73, 0x74, + 0x65, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, + 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, + 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x63, 0x61, 0x73, 0x74, 0x65, + 0x72, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x74, 0x72, + 0x61, 0x63, 0x6b, 0x43, 0x61, 0x73, 0x74, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x19, 0x0a, + 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x76, 0x69, 0x63, 0x74, + 0x69, 0x6d, 0x5f, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0e, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x45, 0x6e, 0x74, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x22, 0x65, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x50, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x22, 0x5c, 0x0a, 0x14, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x58, 0x50, 0x41, 0x6c, 0x65, 0x72, + 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, + 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, + 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xb1, 0x01, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x54, + 0x72, 0x65, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, + 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, + 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x22, 0x22, 0x0a, 0x20, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, + 0x88, 0x02, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x51, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, + 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x23, 0x0a, + 0x0d, 0x66, 0x61, 0x69, 0x6c, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x74, 0x69, + 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, + 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x22, 0x66, 0x0a, 0x1c, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x75, 0x67, 0x67, 0x65, + 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, + 0x12, 0x10, 0x0a, 0x03, 0x62, 0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x62, + 0x61, 0x6e, 0x22, 0x58, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, + 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x22, 0xe6, 0x01, 0x0a, + 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4b, 0x69, + 0x6c, 0x6c, 0x63, 0x61, 0x6d, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, 0x6e, + 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x02, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, + 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, 0x6e, + 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, + 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6c, + 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x51, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x61, + 0x6c, 0x74, 0x79, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x11, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x22, 0xab, 0x01, 0x0a, 0x1b, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x6c, 0x6c, 0x44, 0x69, + 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, + 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, + 0x4d, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x12, 0x16, + 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x75, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x6c, 0x69, 0x70, 0x43, 0x6f, 0x69, 0x6e, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x46, 0x0a, + 0x27, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x75, 0x67, + 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x65, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x54, 0x65, 0x61, 0x6d, 0x43, 0x61, + 0x70, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, + 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x61, 0x70, + 0x74, 0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x6e, 0x0a, 0x1e, + 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, + 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x1d, + 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2d, 0x0a, + 0x12, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x63, 0x6f, 0x6f, 0x6c, 0x64, + 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0xb8, 0x01, 0x0a, + 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x65, + 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x26, 0x0a, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x72, 0x65, 0x6c, 0x69, 0x63, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x52, 0x65, + 0x6c, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x70, + 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x22, 0x9a, 0x01, 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, + 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x63, 0x74, 0x72, 0x6c, 0x5f, 0x69, 0x73, 0x5f, 0x64, 0x6f, + 0x77, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x74, 0x72, 0x6c, 0x49, 0x73, + 0x44, 0x6f, 0x77, 0x6e, 0x22, 0xc7, 0x01, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, - 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xb1, 0x01, 0x0a, 0x1c, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, - 0x54, 0x72, 0x65, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, - 0x6f, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x22, 0x22, 0x0a, 0x20, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x22, 0x88, 0x02, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x51, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, - 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x23, - 0x0a, 0x0d, 0x66, 0x61, 0x69, 0x6c, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x47, 0x61, 0x6d, 0x65, 0x74, - 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, - 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x22, 0x66, 0x0a, 0x1c, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x75, 0x67, 0x67, - 0x65, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, - 0x64, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, - 0x62, 0x61, 0x6e, 0x22, 0x58, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, - 0x6f, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x22, 0xe6, 0x01, - 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4b, - 0x69, 0x6c, 0x6c, 0x63, 0x61, 0x6d, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, - 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, - 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, - 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, - 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, - 0x6c, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0x51, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, - 0x61, 0x6c, 0x74, 0x79, 0x47, 0x6f, 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x11, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x22, 0xab, 0x01, 0x0a, 0x1b, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x6c, 0x6c, 0x44, - 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, - 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x6c, - 0x6c, 0x4d, 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x6d, 0x61, 0x78, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x75, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x6c, 0x69, 0x70, 0x43, 0x6f, 0x69, 0x6e, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x46, - 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x75, - 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x65, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x54, 0x65, 0x61, 0x6d, 0x43, - 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x61, - 0x6d, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x5f, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x61, - 0x70, 0x74, 0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x6e, 0x0a, - 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x68, - 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x12, - 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2d, - 0x0a, 0x12, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x72, 0x65, 0x6d, 0x61, 0x69, - 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x63, 0x6f, 0x6f, 0x6c, - 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0xb8, 0x01, - 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, - 0x65, 0x72, 0x6f, 0x52, 0x65, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x72, 0x65, 0x6c, 0x69, 0x63, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x68, 0x65, 0x72, 0x6f, 0x52, - 0x65, 0x6c, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x64, 0x69, 0x73, - 0x70, 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x22, 0x9a, 0x01, 0x0a, 0x27, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, + 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, + 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x64, + 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x22, 0xfb, + 0x01, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x53, 0x61, 0x6c, 0x75, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x70, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x74, 0x69, 0x70, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x69, 0x70, 0x53, + 0x74, 0x79, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x63, 0x65, + 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6e, + 0x75, 0x6d, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x70, 0x73, 0x22, 0x9c, 0x01, 0x0a, + 0x17, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x69, + 0x66, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x13, + 0x67, 0x69, 0x66, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x67, 0x69, 0x66, 0x74, 0x49, + 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x4f, 0x0a, 0x15, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x69, 0x70, 0x41, + 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x63, 0x74, 0x72, 0x6c, 0x5f, 0x69, 0x73, 0x5f, 0x64, - 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x74, 0x72, 0x6c, 0x49, - 0x73, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0xc7, 0x01, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, - 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x22, - 0xfb, 0x01, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x53, 0x61, 0x6c, 0x75, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x28, 0x0a, - 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x70, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x74, 0x69, 0x70, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x69, 0x70, - 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x63, - 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x70, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x70, 0x73, 0x22, 0x4f, 0x0a, - 0x15, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x69, - 0x70, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x69, 0x70, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x69, 0x70, 0x54, 0x65, 0x78, 0x74, 0x22, 0x8e, - 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x55, 0x6e, 0x69, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x02, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, - 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, - 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, - 0x7a, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x45, 0x53, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x12, 0x18, 0x0a, - 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x62, 0x6f, - 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6f, - 0x6d, 0x62, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, - 0x6e, 0x61, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x83, 0x01, 0x0a, 0x21, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x53, 0x41, - 0x72, 0x63, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, - 0x79, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, - 0x6f, 0x6d, 0x62, 0x6f, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x62, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, - 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, - 0x74, 0x22, 0xaf, 0x01, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x4f, 0x4d, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, - 0x12, 0x18, 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x75, - 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x41, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x72, 0x63, - 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x75, 0x6c, 0x74, - 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, - 0x6e, 0x63, 0x65, 0x22, 0xb7, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x46, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6d, - 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x32, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, - 0x6c, 0x5f, 0x68, 0x69, 0x67, 0x68, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x48, 0x69, 0x67, 0x68, 0x46, 0x69, - 0x76, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x65, 0x6e, - 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x70, - 0x65, 0x63, 0x69, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x3f, 0x0a, - 0x20, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x69, - 0x67, 0x68, 0x46, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x66, 0x74, 0x48, 0x61, 0x6e, 0x67, 0x69, 0x6e, - 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x8e, - 0x01, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x53, 0x68, 0x6f, 0x76, 0x65, 0x6c, 0x55, 0x6e, 0x65, 0x61, 0x72, 0x74, 0x68, 0x12, 0x1b, 0x0a, - 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x6c, - 0x6c, 0x5f, 0x63, 0x68, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, - 0x6c, 0x43, 0x68, 0x61, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x73, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x63, 0x73, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, - 0xd1, 0x02, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, - 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x6d, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x50, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, - 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x6c, 0x6c, 0x53, 0x74, - 0x61, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x73, 0x1a, 0x50, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x24, 0x0a, - 0x0e, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x73, 0x61, 0x6e, 0x73, 0x5f, 0x6b, 0x64, 0x61, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6e, 0x73, - 0x4b, 0x64, 0x61, 0x22, 0x51, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x51, 0x75, 0x65, 0x75, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x11, 0x75, 0x6e, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xac, 0x02, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x65, 0x62, 0x75, 0x67, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x0d, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, - 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x07, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x30, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x30, 0x12, - 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x76, 0x61, 0x72, - 0x5f, 0x31, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x31, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, - 0x78, 0x52, 0x61, 0x6e, 0x6b, 0x22, 0xa9, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x65, 0x75, 0x74, - 0x72, 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, - 0x74, 0x65, 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x69, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x69, 0x65, - 0x72, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x69, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x22, 0x62, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, - 0x64, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x74, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6f, 0x75, 0x74, - 0x70, 0x6f, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x17, 0x0a, 0x07, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, - 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x47, 0x72, 0x61, - 0x6e, 0x74, 0x65, 0x64, 0x58, 0x50, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, - 0x1b, 0x0a, 0x09, 0x78, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x78, 0x70, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x42, 0x0a, 0x1d, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x6f, 0x76, - 0x65, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x6f, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x21, 0x0a, - 0x0c, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x75, 0x6e, 0x69, 0x74, 0x45, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x22, 0xbf, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x50, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, 0x44, - 0x61, 0x74, 0x61, 0x12, 0x49, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x62, 0x69, 0x74, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, - 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x75, 0x73, 0x65, - 0x4d, 0x69, 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x61, 0x74, - 0x61, 0x42, 0x69, 0x74, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x42, 0x69, 0x74, 0x73, 0x1a, 0x52, - 0x0a, 0x07, 0x44, 0x61, 0x74, 0x61, 0x42, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x65, 0x78, 0x74, 0x72, - 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x45, 0x78, 0x74, - 0x72, 0x61, 0x22, 0xce, 0x02, 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1b, + 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x69, 0x70, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x69, 0x70, 0x54, 0x65, 0x78, 0x74, 0x22, 0x8e, 0x01, 0x0a, + 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, + 0x70, 0x6c, 0x61, 0x63, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x1b, + 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, + 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, + 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, + 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x7a, 0x0a, + 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x53, + 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x65, + 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x68, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x62, 0x6f, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x62, + 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, + 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x72, + 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x83, 0x01, 0x0a, 0x21, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x53, 0x41, 0x72, 0x63, + 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, + 0x18, 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, + 0x62, 0x6f, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x63, 0x6f, 0x6d, 0x62, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x61, + 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, + 0xaf, 0x01, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x4f, 0x4d, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x12, 0x18, + 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x75, 0x6c, 0x74, + 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x41, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x72, 0x63, 0x61, 0x6e, + 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, + 0x61, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x63, + 0x65, 0x22, 0xb7, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x46, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x32, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, + 0x68, 0x69, 0x67, 0x68, 0x5f, 0x66, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x48, 0x69, 0x67, 0x68, 0x46, 0x69, 0x76, 0x65, + 0x12, 0x29, 0x0a, 0x10, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x74, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x70, 0x65, 0x63, + 0x69, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x3f, 0x0a, 0x20, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x69, 0x67, 0x68, + 0x46, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x66, 0x74, 0x48, 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x12, + 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x8e, 0x01, 0x0a, + 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x68, + 0x6f, 0x76, 0x65, 0x6c, 0x55, 0x6e, 0x65, 0x61, 0x72, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x6c, 0x6c, 0x5f, + 0x63, 0x68, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x43, + 0x68, 0x61, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x63, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0xd1, 0x02, + 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, + 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x50, 0x0a, + 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x72, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x1a, + 0x50, 0x0a, 0x0b, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x08, 0x62, - 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, - 0x53, 0x63, 0x65, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x43, 0x0a, - 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, 0x73, - 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, - 0x74, 0x79, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, - 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, - 0x65, 0x65, 0x6c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x43, - 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, - 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, - 0x6b, 0x52, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x52, - 0x61, 0x74, 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x51, 0x6f, 0x50, 0x5f, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x53, - 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, 0x68, - 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x73, 0x48, 0x69, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, - 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x22, 0x60, 0x0a, 0x1e, 0x43, + 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x73, 0x61, 0x6e, 0x73, 0x5f, 0x6b, 0x64, 0x61, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6e, 0x73, 0x4b, 0x64, + 0x61, 0x22, 0x51, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x67, 0x5f, 0x51, 0x75, 0x65, 0x75, 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x11, 0x75, 0x6e, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x22, 0xac, 0x02, 0x0a, 0x1b, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x65, 0x62, 0x75, 0x67, 0x43, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x63, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x30, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x72, 0x30, 0x12, 0x26, 0x0a, + 0x0f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x31, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x56, 0x61, 0x72, 0x31, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x52, + 0x61, 0x6e, 0x6b, 0x22, 0xa9, 0x01, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, + 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x69, 0x74, 0x65, + 0x6d, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x74, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, + 0x74, 0x65, 0x6d, 0x54, 0x69, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x69, 0x65, 0x72, 0x5f, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x74, 0x69, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, + 0x62, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x12, + 0x29, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6f, 0x75, 0x74, 0x70, 0x6f, + 0x73, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x47, 0x72, 0x61, 0x6e, 0x74, + 0x65, 0x64, 0x58, 0x50, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, + 0x09, 0x78, 0x70, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x78, 0x70, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x42, 0x0a, 0x1d, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x6f, 0x76, 0x65, 0x43, + 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x6f, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x75, + 0x6e, 0x69, 0x74, 0x5f, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x75, 0x6e, 0x69, 0x74, 0x45, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0xbf, + 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x49, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, + 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x69, + 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x42, + 0x69, 0x74, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x42, 0x69, 0x74, 0x73, 0x1a, 0x52, 0x0a, 0x07, + 0x44, 0x61, 0x74, 0x61, 0x42, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x45, 0x78, 0x74, 0x72, 0x61, + 0x22, 0xce, 0x02, 0x0a, 0x27, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x67, 0x5f, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x08, 0x62, 0x65, 0x68, + 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x45, 0x44, 0x4f, 0x54, 0x41, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, + 0x65, 0x6e, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, + 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x43, 0x0a, 0x0d, 0x70, + 0x6c, 0x61, 0x79, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, + 0x74, 0x79, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, + 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, 0x73, + 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, + 0x6c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x12, 0x43, 0x0a, 0x0d, + 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x75, + 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x52, + 0x61, 0x74, 0x65, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x61, 0x74, + 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x1e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x51, 0x6f, 0x50, 0x5f, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x53, 0x75, 0x6d, + 0x6d, 0x61, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, 0x68, 0x69, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x48, + 0x69, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, 0x6b, 0x69, + 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x73, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x22, 0x60, 0x0a, 0x1e, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x6f, 0x74, 0x50, 0x6f, 0x74, + 0x61, 0x74, 0x6f, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x32, 0x22, 0x3e, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x6f, 0x74, 0x50, - 0x6f, 0x74, 0x61, 0x74, 0x6f, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, - 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x31, 0x12, 0x1e, 0x0a, - 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x32, 0x22, 0x3e, 0x0a, - 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x6f, - 0x74, 0x50, 0x6f, 0x74, 0x61, 0x74, 0x6f, 0x5f, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x64, 0x65, 0x64, + 0x6f, 0x74, 0x61, 0x74, 0x6f, 0x5f, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x64, 0x65, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x77, 0x0a, 0x1f, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x4b, 0x5f, 0x41, + 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, + 0x6e, 0x61, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x22, 0x83, 0x05, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x62, 0x0a, + 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, + 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, + 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x63, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x12, 0x60, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x45, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x1b, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x74, 0x5f, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x74, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x49, + 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x77, 0x0a, - 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x4b, - 0x5f, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x18, 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, - 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x17, 0x0a, - 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x22, 0x83, 0x05, 0x0a, 0x24, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x62, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x50, 0x72, 0x6f, 0x67, - 0x72, 0x65, 0x73, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x32, - 0x0a, 0x15, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x12, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, - 0x74, 0x65, 0x72, 0x12, 0x60, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x50, - 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x45, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x1b, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x74, 0x5f, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x63, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x41, 0x74, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x1a, 0x49, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x6f, 0x0a, 0x0e, 0x45, - 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, - 0x18, 0x6b, 0x5f, 0x45, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x6f, 0x0a, 0x0e, 0x45, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, - 0x43, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x10, 0x01, 0x12, 0x1d, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x10, 0x02, 0x22, 0x8c, 0x02, 0x0a, - 0x1d, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x52, - 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, - 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5f, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, - 0x23, 0x0a, 0x0d, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x73, 0x5f, 0x6c, 0x61, 0x6e, 0x64, 0x65, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x73, 0x4c, 0x61, - 0x6e, 0x64, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, - 0x65, 0x61, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x44, 0x65, 0x61, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x68, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x48, 0x70, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6d, - 0x61, 0x78, 0x5f, 0x68, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x48, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, - 0x6e, 0x61, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0xa5, 0x02, 0x0a, 0x1c, - 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x52, 0x41, - 0x72, 0x63, 0x61, 0x6e, 0x61, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x6b, + 0x5f, 0x45, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x5f, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x10, 0x02, 0x22, 0x8c, 0x02, 0x0a, 0x1d, 0x43, + 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x52, 0x41, 0x72, + 0x63, 0x61, 0x6e, 0x61, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, @@ -16027,1001 +16202,1029 @@ var file_dota_usermessages_proto_rawDesc = []byte{ 0x5f, 0x68, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x48, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x72, - 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x22, 0xbf, 0x01, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6c, - 0x6f, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, - 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, - 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x53, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0xf8, 0x01, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x67, 0x68, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, - 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x53, 0x63, 0x65, 0x70, - 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x53, 0x68, 0x61, 0x72, 0x64, - 0x22, 0x83, 0x01, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x5f, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x31, - 0x0a, 0x15, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x12, 0x74, - 0x65, 0x78, 0x74, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, - 0x73, 0x12, 0x33, 0x0a, 0x16, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x64, - 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x13, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xd8, 0x04, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x75, - 0x61, 0x6c, 0x54, 0x69, 0x70, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x69, 0x70, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x69, 0x70, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x14, - 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x72, 0x65, 0x66, 0x65, - 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, - 0x29, 0x0a, 0x10, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x75, 0x6e, - 0x69, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x66, 0x65, 0x72, - 0x65, 0x6e, 0x63, 0x65, 0x64, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, - 0x6e, 0x6f, 0x72, 0x61, 0x6d, 0x61, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x6e, 0x6f, 0x72, 0x61, 0x6d, 0x61, 0x43, 0x6c, - 0x61, 0x73, 0x73, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x61, - 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x18, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, - 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, - 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x74, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x6e, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x66, 0x6c, 0x6f, - 0x61, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x6c, 0x6f, 0x61, 0x74, - 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x66, - 0x6c, 0x6f, 0x61, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x23, 0x0a, - 0x0d, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x32, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x69, 0x70, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6f, - 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, - 0x69, 0x70, 0x54, 0x65, 0x78, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x36, - 0x0a, 0x17, 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x15, 0x74, 0x69, 0x70, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, - 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x6e, 0x6f, 0x72, 0x61, - 0x6d, 0x61, 0x5f, 0x73, 0x6e, 0x69, 0x70, 0x70, 0x65, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x70, 0x61, 0x6e, 0x6f, 0x72, 0x61, 0x6d, 0x61, 0x53, 0x6e, 0x69, 0x70, 0x70, 0x65, - 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x28, - 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x65, 0x78, 0x74, 0x22, 0x7b, - 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, - 0x6f, 0x63, 0x6b, 0x50, 0x61, 0x70, 0x65, 0x72, 0x53, 0x63, 0x69, 0x73, 0x73, 0x6f, 0x72, 0x73, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x26, + 0x63, 0x61, 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0xa5, 0x02, 0x0a, 0x1c, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x57, 0x52, 0x41, 0x72, 0x63, + 0x61, 0x6e, 0x61, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x68, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x65, 0x68, 0x61, + 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x65, + 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x45, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, + 0x72, 0x72, 0x6f, 0x77, 0x73, 0x5f, 0x6c, 0x61, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x73, 0x4c, 0x61, 0x6e, 0x64, 0x65, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x61, 0x6c, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x65, + 0x61, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x68, 0x70, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x70, + 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x68, + 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4d, + 0x61, 0x78, 0x48, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x72, 0x63, 0x61, + 0x6e, 0x61, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x22, 0xbf, 0x01, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6c, 0x6f, 0x74, + 0x41, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x28, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6c, 0x6f, + 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, + 0x6c, 0x6f, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6f, 0x6c, + 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x53, 0x65, 0x63, 0x6f, + 0x6e, 0x64, 0x73, 0x22, 0xf8, 0x01, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x41, 0x67, 0x68, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, + 0x6c, 0x65, 0x72, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, + 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x63, 0x65, 0x70, 0x74, 0x65, 0x72, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x53, 0x63, 0x65, 0x70, 0x74, 0x65, + 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x53, 0x68, 0x61, 0x72, 0x64, 0x22, 0x83, + 0x01, 0x0a, 0x19, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x4d, 0x75, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x15, + 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x12, 0x74, 0x65, 0x78, + 0x74, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, + 0x33, 0x0a, 0x16, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, + 0x13, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x73, 0x22, 0xd8, 0x04, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x75, 0x61, 0x6c, + 0x54, 0x69, 0x70, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x69, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x69, 0x70, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x14, 0x72, 0x65, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x64, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x29, 0x0a, + 0x10, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x75, 0x6e, 0x69, 0x74, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x64, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x6e, 0x6f, + 0x72, 0x61, 0x6d, 0x61, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x6e, 0x6f, 0x72, 0x61, 0x6d, 0x61, 0x43, 0x6c, 0x61, 0x73, + 0x73, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x66, + 0x6f, 0x72, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, + 0x0a, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x5f, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6e, 0x74, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x66, 0x6c, 0x6f, + 0x61, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x32, + 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x69, 0x70, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6f, 0x76, 0x65, + 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x69, 0x70, + 0x54, 0x65, 0x78, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x36, 0x0a, 0x17, + 0x74, 0x69, 0x70, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, + 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x74, + 0x69, 0x70, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72, + 0x72, 0x69, 0x64, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x6e, 0x6f, 0x72, 0x61, 0x6d, 0x61, + 0x5f, 0x73, 0x6e, 0x69, 0x70, 0x70, 0x65, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x70, 0x61, 0x6e, 0x6f, 0x72, 0x61, 0x6d, 0x61, 0x53, 0x6e, 0x69, 0x70, 0x70, 0x65, 0x74, 0x22, + 0x8a, 0x01, 0x0a, 0x18, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x65, 0x78, 0x74, 0x22, 0x7b, 0x0a, 0x25, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x63, - 0x6b, 0x50, 0x61, 0x70, 0x65, 0x72, 0x53, 0x63, 0x69, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x46, 0x69, - 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x6b, 0x50, 0x61, 0x70, 0x65, 0x72, 0x53, 0x63, 0x69, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, + 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x26, 0x43, 0x44, + 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x63, 0x6b, 0x50, + 0x61, 0x70, 0x65, 0x72, 0x53, 0x63, 0x69, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x46, 0x69, 0x6e, 0x69, + 0x73, 0x68, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x32, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x31, + 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x31, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0f, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x32, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x32, 0x43, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x22, 0x73, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x57, 0x69, 0x6e, 0x6e, 0x65, + 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x6c, + 0x6f, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x49, 0x64, 0x4c, 0x6f, 0x73, 0x65, 0x72, 0x22, 0x5b, 0x0a, 0x19, 0x43, 0x44, 0x4f, + 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x41, 0x63, + 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x32, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x31, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x31, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x26, - 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x32, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x32, - 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x22, 0x73, 0x0a, 0x1f, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x4f, 0x70, 0x70, 0x6f, 0x6e, - 0x65, 0x6e, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x77, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x57, 0x69, 0x6e, - 0x6e, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x5f, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x4c, 0x6f, 0x73, 0x65, 0x72, 0x22, 0x5b, 0x0a, 0x19, 0x43, - 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x75, 0x65, 0x6c, - 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x31, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x32, 0x22, 0x4c, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, - 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x22, 0xe0, 0x01, 0x0a, 0x34, 0x43, 0x44, 0x4f, 0x54, 0x41, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, 0x52, 0x65, - 0x6c, 0x65, 0x61, 0x73, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x41, 0x73, 0x73, 0x69, 0x67, - 0x6e, 0x65, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, - 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x6b, 0x69, 0x6c, - 0x6c, 0x65, 0x72, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x64, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, - 0x02, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x54, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, - 0x02, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, - 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x02, 0x28, - 0x05, 0x52, 0x0b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x19, - 0x0a, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x18, 0x05, 0x20, 0x02, 0x28, 0x08, - 0x52, 0x07, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x22, 0x74, 0x0a, 0x23, 0x43, 0x44, 0x4f, - 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x50, 0x69, 0x63, 0x6b, - 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x30, 0x0a, - 0x14, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x73, 0x75, 0x67, - 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, - 0x88, 0x01, 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, - 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x61, - 0x70, 0x74, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x70, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x49, 0x64, 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x10, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, - 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x2a, 0xa4, 0x25, 0x0a, 0x11, 0x45, - 0x44, 0x6f, 0x74, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, - 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x64, 0x64, 0x55, - 0x6e, 0x69, 0x74, 0x54, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd0, - 0x03, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x49, 0x44, - 0x65, 0x62, 0x75, 0x67, 0x4c, 0x69, 0x6e, 0x65, 0x10, 0xd1, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x10, 0xd2, 0x03, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, - 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x10, 0xd3, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x10, 0xd4, - 0x03, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6d, - 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x42, 0x75, 0x6c, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x10, 0xd6, - 0x03, 0x12, 0x23, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x69, 0x6c, 0x65, 0x10, 0xd7, 0x03, 0x12, 0x24, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x10, 0xd8, 0x03, 0x12, 0x25, 0x0a, 0x20, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x6f, 0x64, 0x67, 0x65, 0x54, 0x72, 0x61, - 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x73, - 0x10, 0xd9, 0x03, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, - 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x10, - 0xda, 0x03, 0x12, 0x21, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, 0x6c, - 0x6f, 0x62, 0x61, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x10, 0xdb, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x10, - 0xdc, 0x03, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x10, 0xdd, 0x03, 0x12, 0x14, 0x0a, - 0x0f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x65, - 0x10, 0xde, 0x03, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, - 0x69, 0x6e, 0x69, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xdf, - 0x03, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x69, 0x6e, - 0x69, 0x6d, 0x61, 0x70, 0x44, 0x65, 0x62, 0x75, 0x67, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x10, 0xe0, - 0x03, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x69, 0x6e, - 0x69, 0x6d, 0x61, 0x70, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xe1, 0x03, 0x12, 0x1d, 0x0a, 0x18, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x6d, 0x6f, 0x72, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x65, 0x6d, 0x10, 0xe2, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4f, 0x76, 0x65, 0x72, 0x68, 0x65, 0x61, 0x64, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x10, 0xe3, 0x03, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x62, 0x75, - 0x79, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xe4, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, - 0x77, 0x6e, 0x10, 0xe5, 0x03, 0x12, 0x21, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x10, 0xe6, 0x03, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x10, 0xe7, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xe8, 0x03, 0x12, 0x1c, - 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x10, 0xe9, 0x03, 0x12, 0x14, 0x0a, 0x0f, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x42, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x74, 0x10, - 0xea, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x75, - 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xeb, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x64, 0x10, 0xec, 0x03, 0x12, 0x11, 0x0a, 0x0c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x50, 0x69, 0x6e, 0x67, 0x10, 0xed, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xee, 0x03, - 0x12, 0x22, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x72, - 0x61, 0x63, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x43, 0x6f, 0x6e, 0x63, 0x65, 0x70, - 0x74, 0x10, 0xef, 0x03, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, - 0x53, 0x77, 0x61, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x10, 0xf0, 0x03, 0x12, 0x16, 0x0a, - 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, - 0x6e, 0x65, 0x10, 0xf1, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x54, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x72, 0x6f, 0x70, 0x10, - 0xf2, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x49, 0x74, - 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xf3, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x65, 0x6e, 0x44, - 0x72, 0x6f, 0x70, 0x73, 0x10, 0xf4, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x55, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x10, 0xf5, 0x03, 0x12, - 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x63, 0x65, 0x69, - 0x76, 0x65, 0x64, 0x58, 0x6d, 0x61, 0x73, 0x47, 0x69, 0x66, 0x74, 0x10, 0xf6, 0x03, 0x12, 0x20, - 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x10, 0xf7, 0x03, - 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, - 0x72, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x10, 0xf8, - 0x03, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, - 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, - 0x10, 0xf9, 0x03, 0x12, 0x22, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, - 0x61, 0x6d, 0x65, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x64, 0x10, 0xfa, 0x03, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x55, 0x4d, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x10, 0xfb, 0x03, - 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, - 0x72, 0x69, 0x61, 0x6c, 0x46, 0x61, 0x64, 0x65, 0x10, 0xfc, 0x03, 0x12, 0x1d, 0x0a, 0x18, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x64, 0x64, 0x51, 0x75, 0x65, 0x73, 0x74, 0x4c, - 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x10, 0xfd, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, - 0x70, 0x75, 0x70, 0x10, 0xfe, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, - 0x10, 0xff, 0x03, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, - 0x65, 0x6e, 0x64, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x10, 0x80, - 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, - 0x64, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x54, 0x6f, 0x6f, 0x6c, 0x54, 0x69, 0x70, 0x10, - 0x81, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, - 0x6e, 0x64, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x10, 0x82, 0x04, 0x12, 0x16, - 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4d, 0x73, 0x67, 0x10, 0x83, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x48, 0x55, 0x44, 0x50, 0x69, 0x6e, 0x67, 0x10, 0x84, - 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x47, 0x72, 0x69, 0x64, 0x4e, 0x61, 0x76, 0x10, 0x85, - 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x10, 0x86, 0x04, 0x12, 0x1d, 0x0a, - 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x10, 0x87, 0x04, 0x12, 0x1f, 0x0a, 0x1a, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x44, 0x6f, 0x74, 0x61, 0x42, - 0x6c, 0x6f, 0x6f, 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x10, 0x88, 0x04, 0x12, 0x1d, 0x0a, - 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x55, 0x6e, 0x69, 0x74, - 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x89, 0x04, 0x12, 0x20, 0x0a, 0x1b, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x41, - 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x10, 0x8a, 0x04, 0x12, 0x18, - 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x50, 0x69, 0x6e, 0x67, 0x10, 0x8b, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x50, - 0x6f, 0x70, 0x75, 0x70, 0x10, 0x8c, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x55, 0x4d, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x10, 0x8d, 0x04, 0x12, - 0x17, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0x8e, 0x04, 0x12, 0x14, 0x0a, 0x0f, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x10, 0x8f, 0x04, 0x12, 0x19, - 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x65, - 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x90, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x57, 0x69, 0x6c, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x91, 0x04, 0x12, 0x24, 0x0a, 0x1f, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x4d, 0x69, 0x6e, - 0x69, 0x6d, 0x61, 0x70, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x92, 0x04, 0x12, - 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x4d, 0x4d, 0x52, 0x10, 0x93, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x55, 0x4d, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x65, 0x61, 0x6c, 0x10, - 0x94, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, - 0x75, 0x72, 0x69, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x41, 0x6c, 0x65, 0x72, 0x74, - 0x10, 0x95, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, - 0x6e, 0x65, 0x6d, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x96, 0x04, - 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x97, 0x04, - 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x69, 0x6e, 0x69, - 0x54, 0x61, 0x75, 0x6e, 0x74, 0x10, 0x98, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x42, 0x75, 0x79, 0x42, 0x61, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x99, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x42, 0x75, 0x62, 0x62, 0x6c, 0x65, - 0x10, 0x9a, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x10, 0x9b, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, 0x79, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x9c, - 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x9d, 0x04, - 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x72, 0x65, 0x64, - 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0x9e, 0x04, 0x12, - 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x6f, 0x64, 0x69, 0x66, - 0x69, 0x65, 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x9f, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x50, 0x4d, 0x61, 0x6e, 0x61, 0x41, 0x6c, 0x65, - 0x72, 0x74, 0x10, 0xa0, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x47, 0x6c, 0x79, 0x70, 0x68, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xa1, 0x04, 0x12, 0x16, - 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x42, 0x65, 0x61, 0x73, 0x74, 0x43, - 0x68, 0x61, 0x74, 0x10, 0xa2, 0x04, 0x12, 0x26, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x55, 0x6e, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x10, 0xa3, 0x04, 0x12, 0x24, - 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x10, 0xa4, 0x04, 0x12, 0x24, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x5f, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x10, 0xa5, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, 0x64, 0x45, - 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x10, 0xa6, - 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6d, - 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xa7, 0x04, 0x12, - 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x10, 0xa8, 0x04, 0x12, - 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xa9, 0x04, 0x12, 0x1e, 0x0a, - 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, - 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x48, 0x4c, 0x54, 0x56, 0x10, 0xaa, 0x04, 0x12, 0x14, 0x0a, - 0x0f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x58, 0x50, 0x41, 0x6c, 0x65, 0x72, 0x74, - 0x10, 0xab, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x10, 0xac, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x10, 0xad, - 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xae, 0x04, 0x12, 0x18, 0x0a, 0x13, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x51, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x10, 0xaf, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x69, 0x63, - 0x6b, 0x10, 0xb0, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, - 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x10, - 0xb1, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4b, 0x69, - 0x6c, 0x6c, 0x63, 0x61, 0x6d, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, 0x6e, - 0x10, 0xb2, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x47, 0x6f, 0x6c, 0x64, - 0x10, 0xb3, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, - 0x6f, 0x6c, 0x6c, 0x44, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xb4, 0x04, - 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x46, 0x6c, 0x69, 0x70, - 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xb5, 0x04, 0x12, 0x23, 0x0a, - 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x49, 0x74, 0x65, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, - 0xb6, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x65, - 0x61, 0x6d, 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, - 0x10, 0xb7, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, - 0x65, 0x6e, 0x64, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, - 0x6f, 0x72, 0x50, 0x68, 0x61, 0x73, 0x65, 0x10, 0xb8, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x43, - 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x10, 0xb9, 0x04, 0x12, 0x21, 0x0a, 0x1c, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x41, 0x6c, 0x6c, - 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x73, 0x10, 0xba, 0x04, 0x12, 0x21, 0x0a, - 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x44, 0x65, 0x73, 0x74, - 0x72, 0x6f, 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x10, 0xbb, 0x04, - 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x65, 0x72, 0x6f, - 0x52, 0x65, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xbc, 0x04, - 0x12, 0x27, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x10, 0xbd, 0x04, 0x12, 0x15, 0x0a, 0x10, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x6c, 0x64, 0x10, 0xbe, 0x04, - 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x61, 0x6d, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xbf, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x61, 0x6c, 0x75, 0x74, 0x65, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x10, 0xc0, 0x04, 0x12, 0x15, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x54, 0x69, 0x70, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xc1, 0x04, 0x12, 0x1d, 0x0a, - 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x55, 0x6e, 0x69, 0x74, 0x10, 0xc2, 0x04, 0x12, 0x1f, 0x0a, 0x1a, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x54, 0x65, 0x6c, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xc3, 0x04, 0x12, 0x23, 0x0a, - 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x61, 0x72, 0x73, 0x41, 0x72, 0x65, - 0x6e, 0x61, 0x4f, 0x66, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x10, - 0xc4, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, 0x53, - 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x10, 0xc5, 0x04, 0x12, 0x21, - 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, 0x53, 0x41, 0x72, 0x63, 0x61, - 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xc6, - 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x69, 0x67, - 0x68, 0x46, 0x69, 0x76, 0x65, 0x4c, 0x65, 0x66, 0x74, 0x48, 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, - 0x10, 0xc7, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, - 0x69, 0x67, 0x68, 0x46, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, - 0x10, 0xc8, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, - 0x68, 0x6f, 0x76, 0x65, 0x6c, 0x55, 0x6e, 0x65, 0x61, 0x72, 0x74, 0x68, 0x10, 0xc9, 0x04, 0x12, - 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x45, 0x4d, 0x5f, 0x49, 0x6e, 0x76, 0x6f, 0x6b, - 0x65, 0x72, 0x53, 0x70, 0x65, 0x6c, 0x6c, 0x43, 0x61, 0x73, 0x74, 0x10, 0xca, 0x04, 0x12, 0x17, - 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x61, 0x64, 0x61, 0x72, 0x41, - 0x6c, 0x65, 0x72, 0x74, 0x10, 0xcb, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x55, 0x4d, 0x5f, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, - 0xcc, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x61, - 0x6c, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x65, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xcd, 0x04, - 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x51, 0x75, 0x65, 0x75, - 0x65, 0x64, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x10, 0xce, - 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xcf, 0x04, 0x12, 0x1a, - 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4f, 0x4d, 0x41, 0x72, 0x63, 0x61, - 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x10, 0xd0, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x65, 0x75, 0x74, 0x72, - 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xd1, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x70, 0x74, - 0x75, 0x72, 0x65, 0x64, 0x10, 0xd2, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x55, 0x4d, 0x5f, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, - 0x64, 0x58, 0x50, 0x10, 0xd3, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x4d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x6f, 0x55, 0x6e, - 0x69, 0x74, 0x10, 0xd4, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x50, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, - 0x74, 0x61, 0x10, 0xd5, 0x04, 0x12, 0x27, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x56, 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x10, 0xd6, 0x04, 0x12, 0x1e, - 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x51, 0x6f, 0x50, 0x5f, 0x41, 0x72, - 0x63, 0x61, 0x6e, 0x61, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xd8, 0x04, 0x12, 0x1e, - 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x6f, 0x74, 0x50, 0x6f, 0x74, - 0x61, 0x74, 0x6f, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd9, 0x04, 0x12, 0x1f, - 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x6f, 0x74, 0x50, 0x6f, 0x74, - 0x61, 0x74, 0x6f, 0x5f, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x64, 0x65, 0x64, 0x10, 0xda, 0x04, 0x12, - 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x57, 0x4b, 0x5f, 0x41, 0x72, - 0x63, 0x61, 0x6e, 0x61, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xdb, 0x04, - 0x12, 0x24, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x10, 0xdc, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, - 0x4d, 0x5f, 0x57, 0x52, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x10, 0xdd, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, - 0x5f, 0x57, 0x52, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, - 0x10, 0xde, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x41, 0x6c, 0x65, 0x72, - 0x74, 0x10, 0xdf, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, - 0x41, 0x67, 0x68, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, - 0xe0, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x69, - 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xe1, - 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x75, 0x74, - 0x65, 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x10, 0xe2, 0x04, 0x12, 0x1a, 0x0a, 0x15, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x75, - 0x61, 0x6c, 0x54, 0x69, 0x70, 0x10, 0xe3, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, - 0xe4, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4e, 0x65, - 0x75, 0x74, 0x72, 0x61, 0x6c, 0x43, 0x61, 0x6d, 0x70, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xe5, - 0x04, 0x12, 0x25, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x6f, 0x63, - 0x6b, 0x50, 0x61, 0x70, 0x65, 0x72, 0x53, 0x63, 0x69, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0xe6, 0x04, 0x12, 0x26, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x6f, 0x63, 0x6b, 0x50, 0x61, 0x70, 0x65, 0x72, 0x53, 0x63, 0x69, - 0x73, 0x73, 0x6f, 0x72, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xe7, 0x04, - 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x75, 0x65, 0x6c, - 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0xe8, - 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x75, 0x65, - 0x6c, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x10, 0xe9, 0x04, 0x12, 0x1a, 0x0a, 0x15, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x65, 0x64, 0x10, 0xea, 0x04, 0x12, 0x34, 0x0a, 0x2f, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0xeb, 0x04, 0x12, 0x23, - 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x44, 0x72, 0x61, 0x66, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x50, 0x69, 0x63, 0x6b, - 0x10, 0xec, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x10, 0xed, - 0x04, 0x2a, 0xb9, 0x1e, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x12, 0x21, 0x0a, 0x14, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, - 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, - 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, - 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x45, 0x4e, 0x59, - 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, - 0x47, 0x45, 0x5f, 0x42, 0x41, 0x52, 0x52, 0x41, 0x43, 0x4b, 0x53, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, - 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, - 0x47, 0x45, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x03, 0x12, - 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, - 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x44, 0x45, 0x4e, 0x59, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, - 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x46, 0x49, 0x52, - 0x53, 0x54, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x05, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, - 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4b, - 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x42, 0x55, 0x59, 0x42, 0x41, 0x43, 0x4b, 0x10, - 0x07, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, - 0x45, 0x5f, 0x41, 0x45, 0x47, 0x49, 0x53, 0x10, 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, - 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, - 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, 0x5f, - 0x4c, 0x4f, 0x53, 0x54, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, - 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, 0x5f, 0x52, - 0x45, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x45, 0x44, 0x10, 0x0b, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, - 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x47, 0x4c, 0x59, 0x50, 0x48, - 0x5f, 0x55, 0x53, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x50, 0x55, 0x52, - 0x43, 0x48, 0x41, 0x53, 0x45, 0x10, 0x0d, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, - 0x0e, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, - 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x0f, 0x12, 0x2e, - 0x0a, 0x2a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x44, - 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x57, 0x41, 0x49, 0x54, 0x5f, 0x46, - 0x4f, 0x52, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x10, 0x12, 0x2a, - 0x0a, 0x26, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x44, - 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x52, - 0x45, 0x4d, 0x41, 0x49, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x11, 0x12, 0x31, 0x0a, 0x2d, 0x43, 0x48, - 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, - 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x52, 0x45, 0x4d, 0x41, 0x49, - 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x4c, 0x55, 0x52, 0x41, 0x4c, 0x10, 0x12, 0x12, 0x1a, 0x0a, - 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x45, - 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x13, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, - 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, - 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x14, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x41, 0x46, 0x45, 0x5f, 0x54, 0x4f, 0x5f, - 0x4c, 0x45, 0x41, 0x56, 0x45, 0x10, 0x15, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x5f, 0x50, 0x49, 0x43, - 0x4b, 0x55, 0x50, 0x10, 0x16, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, - 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4c, - 0x45, 0x10, 0x17, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, - 0x41, 0x47, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x5f, 0x44, 0x45, 0x4e, 0x59, 0x10, 0x72, 0x12, - 0x19, 0x0a, 0x15, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, - 0x49, 0x4e, 0x54, 0x48, 0x45, 0x42, 0x41, 0x47, 0x10, 0x18, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, - 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, - 0x54, 0x53, 0x48, 0x4f, 0x50, 0x10, 0x19, 0x12, 0x23, 0x0a, 0x1f, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x41, 0x55, 0x54, - 0x4f, 0x50, 0x55, 0x52, 0x43, 0x48, 0x41, 0x53, 0x45, 0x44, 0x10, 0x1a, 0x12, 0x1f, 0x0a, 0x1b, - 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, - 0x4d, 0x53, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x1b, 0x12, 0x1d, 0x0a, - 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x55, - 0x50, 0x45, 0x52, 0x5f, 0x43, 0x52, 0x45, 0x45, 0x50, 0x53, 0x10, 0x1c, 0x12, 0x25, 0x0a, 0x21, - 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x41, 0x4e, - 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x49, 0x54, 0x45, - 0x4d, 0x10, 0x1d, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, - 0x41, 0x47, 0x45, 0x5f, 0x43, 0x41, 0x4e, 0x54, 0x50, 0x41, 0x55, 0x53, 0x45, 0x10, 0x1f, 0x12, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x32, 0x22, 0x4c, 0x0a, 0x1a, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x6f, 0x72, 0x22, 0xe0, 0x01, 0x0a, 0x34, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, 0x52, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, + 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x28, 0x0a, + 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x6b, 0x69, 0x6c, 0x6c, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, + 0x64, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x02, 0x28, + 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x02, 0x28, + 0x05, 0x52, 0x06, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x02, 0x28, 0x05, 0x52, + 0x0b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x19, 0x0a, 0x08, + 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x69, 0x74, 0x18, 0x05, 0x20, 0x02, 0x28, 0x08, 0x52, 0x07, + 0x6c, 0x61, 0x73, 0x74, 0x48, 0x69, 0x74, 0x22, 0x74, 0x0a, 0x23, 0x43, 0x44, 0x4f, 0x54, 0x41, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, + 0x61, 0x66, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x1b, + 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x73, + 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x73, 0x75, 0x67, 0x67, 0x65, + 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x22, 0x88, 0x01, + 0x0a, 0x1c, 0x43, 0x44, 0x4f, 0x54, 0x41, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x12, 0x2a, + 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x61, 0x70, 0x74, + 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x49, 0x64, 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x54, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x2a, 0xe8, 0x25, 0x0a, 0x11, 0x45, 0x44, 0x6f, + 0x74, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1f, + 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x64, 0x64, 0x55, 0x6e, 0x69, + 0x74, 0x54, 0x6f, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd0, 0x03, 0x12, + 0x18, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x49, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x4c, 0x69, 0x6e, 0x65, 0x10, 0xd1, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xd2, + 0x03, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6d, + 0x62, 0x61, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x10, 0xd3, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, + 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x10, 0xd4, 0x03, 0x12, + 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6d, 0x62, 0x61, + 0x74, 0x4c, 0x6f, 0x67, 0x42, 0x75, 0x6c, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x10, 0xd6, 0x03, 0x12, + 0x23, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, + 0x65, 0x10, 0xd7, 0x03, 0x12, 0x24, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x50, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x10, 0xd8, 0x03, 0x12, 0x25, 0x0a, 0x20, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x6f, 0x64, 0x67, 0x65, 0x54, 0x72, 0x61, 0x63, 0x6b, + 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x73, 0x10, 0xd9, + 0x03, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, 0x6c, 0x6f, + 0x62, 0x61, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x10, 0xda, 0x03, + 0x12, 0x21, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, 0x6c, 0x6f, 0x62, + 0x61, 0x6c, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x10, 0xdb, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x10, 0xdc, 0x03, + 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x69, 0x6e, 0x67, 0x10, 0xdd, 0x03, 0x12, 0x14, 0x0a, 0x0f, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x65, 0x10, 0xde, + 0x03, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x69, 0x6e, + 0x69, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xdf, 0x03, 0x12, + 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x6d, + 0x61, 0x70, 0x44, 0x65, 0x62, 0x75, 0x67, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x10, 0xe0, 0x03, 0x12, + 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x6d, + 0x61, 0x70, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xe1, 0x03, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x69, 0x65, 0x6d, 0x10, 0xe2, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4f, 0x76, 0x65, 0x72, 0x68, 0x65, 0x61, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x10, 0xe3, 0x03, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, + 0x5f, 0x53, 0x65, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x62, 0x75, 0x79, 0x49, + 0x74, 0x65, 0x6d, 0x10, 0xe4, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6f, 0x6c, 0x64, 0x6f, 0x77, 0x6e, + 0x10, 0xe5, 0x03, 0x12, 0x21, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, + 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6c, + 0x69, 0x63, 0x6b, 0x10, 0xe6, 0x03, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x54, 0x69, 0x70, 0x49, 0x6e, 0x66, + 0x6f, 0x10, 0xe7, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x55, 0x6e, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xe8, 0x03, 0x12, 0x1c, 0x0a, 0x17, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, + 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x10, 0xe9, 0x03, 0x12, 0x14, 0x0a, 0x0f, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x42, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x74, 0x10, 0xea, 0x03, + 0x12, 0x15, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x75, 0x64, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x10, 0xeb, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x55, 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, + 0x10, 0xec, 0x03, 0x12, 0x11, 0x0a, 0x0c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, + 0x69, 0x6e, 0x67, 0x10, 0xed, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xee, 0x03, 0x12, 0x22, + 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, + 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x43, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x10, + 0xef, 0x03, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x77, + 0x61, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x10, 0xf0, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x4c, 0x69, 0x6e, 0x65, + 0x10, 0xf1, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, + 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x72, 0x6f, 0x70, 0x10, 0xf2, 0x03, + 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, + 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xf3, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x65, 0x6e, 0x44, 0x72, 0x6f, + 0x70, 0x73, 0x10, 0xf4, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, + 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x10, 0xf5, 0x03, 0x12, 0x1d, 0x0a, + 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, + 0x64, 0x58, 0x6d, 0x61, 0x73, 0x47, 0x69, 0x66, 0x74, 0x10, 0xf6, 0x03, 0x12, 0x20, 0x0a, 0x1b, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, + 0x61, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x10, 0xf7, 0x03, 0x12, 0x1f, + 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, + 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x10, 0xf8, 0x03, 0x12, + 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, + 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x70, 0x10, 0xf9, + 0x03, 0x12, 0x22, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, 0x61, 0x6d, + 0x65, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x64, 0x10, 0xfa, 0x03, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, + 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x10, 0xfb, 0x03, 0x12, 0x19, + 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, + 0x61, 0x6c, 0x46, 0x61, 0x64, 0x65, 0x10, 0xfc, 0x03, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x64, 0x64, 0x51, 0x75, 0x65, 0x73, 0x74, 0x4c, 0x6f, 0x67, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x10, 0xfd, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, + 0x70, 0x10, 0xfe, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, 0xff, + 0x03, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, + 0x64, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x10, 0x80, 0x04, 0x12, + 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x47, + 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x54, 0x6f, 0x6f, 0x6c, 0x54, 0x69, 0x70, 0x10, 0x81, 0x04, + 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, 0x64, + 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x47, 0x6f, 0x6c, 0x64, 0x10, 0x82, 0x04, 0x12, 0x16, 0x0a, 0x11, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, + 0x67, 0x10, 0x83, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x43, 0x6f, 0x61, 0x63, 0x68, 0x48, 0x55, 0x44, 0x50, 0x69, 0x6e, 0x67, 0x10, 0x84, 0x04, 0x12, + 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x47, 0x72, 0x69, 0x64, 0x4e, 0x61, 0x76, 0x10, 0x85, 0x04, 0x12, + 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x10, 0x86, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x10, 0x87, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x44, 0x6f, 0x74, 0x61, 0x42, 0x6c, 0x6f, + 0x6f, 0x64, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x10, 0x88, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x41, 0x6e, + 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x89, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x55, 0x6e, 0x69, 0x74, 0x41, 0x6e, 0x69, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x10, 0x8a, 0x04, 0x12, 0x18, 0x0a, 0x13, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x50, + 0x69, 0x6e, 0x67, 0x10, 0x8b, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x50, 0x6f, 0x70, + 0x75, 0x70, 0x10, 0x8c, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, + 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x10, 0x8d, 0x04, 0x12, 0x17, 0x0a, + 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x10, 0x8e, 0x04, 0x12, 0x14, 0x0a, 0x0f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x56, 0x6f, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x10, 0x8f, 0x04, 0x12, 0x19, 0x0a, 0x14, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x10, 0x90, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x55, 0x4d, 0x5f, 0x57, 0x69, 0x6c, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x41, + 0x6c, 0x65, 0x72, 0x74, 0x10, 0x91, 0x04, 0x12, 0x24, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x55, 0x4d, 0x5f, 0x54, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x4d, 0x69, 0x6e, 0x69, 0x6d, + 0x61, 0x70, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x92, 0x04, 0x12, 0x16, 0x0a, + 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, + 0x4d, 0x52, 0x10, 0x93, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, + 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x53, 0x74, 0x65, 0x61, 0x6c, 0x10, 0x94, 0x04, + 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x75, 0x72, + 0x69, 0x65, 0x72, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x95, + 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, 0x6e, 0x65, + 0x6d, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x96, 0x04, 0x12, 0x1e, + 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x97, 0x04, 0x12, 0x16, + 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x69, 0x6e, 0x69, 0x54, 0x61, + 0x75, 0x6e, 0x74, 0x10, 0x98, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x42, 0x75, 0x79, 0x42, 0x61, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6c, + 0x65, 0x72, 0x74, 0x10, 0x99, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x42, 0x75, 0x62, 0x62, 0x6c, 0x65, 0x10, 0x9a, + 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x10, 0x9b, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x51, + 0x75, 0x69, 0x63, 0x6b, 0x42, 0x75, 0x79, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x9c, 0x04, 0x12, + 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x48, 0x65, 0x72, 0x6f, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x9d, 0x04, 0x12, 0x1d, + 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0x9e, 0x04, 0x12, 0x1a, 0x0a, + 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0x9f, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x50, 0x4d, 0x61, 0x6e, 0x61, 0x41, 0x6c, 0x65, 0x72, 0x74, + 0x10, 0xa0, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, + 0x6c, 0x79, 0x70, 0x68, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xa1, 0x04, 0x12, 0x16, 0x0a, 0x11, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x42, 0x65, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, + 0x74, 0x10, 0xa2, 0x04, 0x12, 0x26, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, + 0x6e, 0x69, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x73, 0x10, 0xa3, 0x04, 0x12, 0x24, 0x0a, 0x1f, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, + 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x10, + 0xa4, 0x04, 0x12, 0x24, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x4d, + 0x6f, 0x64, 0x69, 0x66, 0x79, 0x10, 0xa5, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x48, 0x75, 0x64, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x10, 0xa6, 0x04, 0x12, + 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6d, 0x70, 0x65, + 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xa7, 0x04, 0x12, 0x1e, 0x0a, + 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x10, 0xa8, 0x04, 0x12, 0x1c, 0x0a, + 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xa9, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4c, 0x6f, 0x67, + 0x44, 0x61, 0x74, 0x61, 0x48, 0x4c, 0x54, 0x56, 0x10, 0xaa, 0x04, 0x12, 0x14, 0x0a, 0x0f, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x58, 0x50, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xab, + 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x51, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x10, 0xac, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, + 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x10, 0xad, 0x04, 0x12, + 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x61, 0x74, 0x63, 0x68, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xae, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x51, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x10, 0xaf, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x69, 0x63, 0x6b, 0x10, + 0xb0, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x75, + 0x67, 0x67, 0x65, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x6f, 0x6c, 0x65, 0x10, 0xb1, 0x04, + 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4b, 0x69, 0x6c, 0x6c, + 0x63, 0x61, 0x6d, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x10, 0xb2, + 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x47, 0x6f, 0x6c, 0x64, 0x10, 0xb3, + 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x6f, 0x6c, + 0x6c, 0x44, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xb4, 0x04, 0x12, 0x1b, + 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x46, 0x6c, 0x69, 0x70, 0x43, 0x6f, + 0x69, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xb5, 0x04, 0x12, 0x23, 0x0a, 0x1e, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x74, + 0x65, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xb6, 0x04, + 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x65, 0x61, 0x6d, + 0x43, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0xb7, + 0x04, 0x12, 0x25, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, + 0x64, 0x52, 0x6f, 0x73, 0x68, 0x61, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, + 0x50, 0x68, 0x61, 0x73, 0x65, 0x10, 0xb8, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x57, 0x68, 0x65, 0x65, 0x6c, 0x43, 0x6f, 0x6f, + 0x6c, 0x64, 0x6f, 0x77, 0x6e, 0x10, 0xb9, 0x04, 0x12, 0x21, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x41, 0x6c, 0x6c, 0x53, 0x74, + 0x61, 0x74, 0x50, 0x6f, 0x70, 0x75, 0x70, 0x73, 0x10, 0xba, 0x04, 0x12, 0x21, 0x0a, 0x1c, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x45, 0x5f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, + 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, 0x65, 0x10, 0xbb, 0x04, 0x12, 0x1e, + 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, + 0x6c, 0x69, 0x63, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xbc, 0x04, 0x12, 0x27, + 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x44, 0x72, 0x61, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x10, 0xbd, 0x04, 0x12, 0x15, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x55, 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x6c, 0x64, 0x10, 0xbe, 0x04, 0x12, 0x19, + 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xbf, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x61, 0x6c, 0x75, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x10, 0xc0, 0x04, 0x12, 0x15, 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x54, 0x69, 0x70, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xc1, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x55, 0x6e, 0x69, 0x74, 0x10, 0xc2, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x54, 0x65, 0x6c, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xc3, 0x04, 0x12, 0x23, 0x0a, 0x1e, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x61, 0x72, 0x73, 0x41, 0x72, 0x65, 0x6e, 0x61, + 0x4f, 0x66, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x10, 0xc4, 0x04, + 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, 0x53, 0x41, 0x72, + 0x63, 0x61, 0x6e, 0x61, 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x10, 0xc5, 0x04, 0x12, 0x21, 0x0a, 0x1c, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, 0x53, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, + 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xc6, 0x04, 0x12, + 0x20, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x69, 0x67, 0x68, 0x46, + 0x69, 0x76, 0x65, 0x4c, 0x65, 0x66, 0x74, 0x48, 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x10, 0xc7, + 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x69, 0x67, + 0x68, 0x46, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0xc8, + 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x53, 0x68, 0x6f, + 0x76, 0x65, 0x6c, 0x55, 0x6e, 0x65, 0x61, 0x72, 0x74, 0x68, 0x10, 0xc9, 0x04, 0x12, 0x1d, 0x0a, + 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x45, 0x4d, 0x5f, 0x49, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x72, + 0x53, 0x70, 0x65, 0x6c, 0x6c, 0x43, 0x61, 0x73, 0x74, 0x10, 0xca, 0x04, 0x12, 0x17, 0x0a, 0x12, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x61, 0x64, 0x61, 0x72, 0x41, 0x6c, 0x65, + 0x72, 0x74, 0x10, 0xcb, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, + 0x5f, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xcc, 0x04, + 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x54, 0x61, 0x6c, 0x65, + 0x6e, 0x74, 0x54, 0x72, 0x65, 0x65, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xcd, 0x04, 0x12, 0x1f, + 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x51, 0x75, 0x65, 0x75, 0x65, 0x64, + 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x10, 0xce, 0x04, 0x12, + 0x1b, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x65, 0x62, 0x75, 0x67, + 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xcf, 0x04, 0x12, 0x1a, 0x0a, 0x15, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4f, 0x4d, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, + 0x43, 0x6f, 0x6d, 0x62, 0x6f, 0x10, 0xd0, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x55, 0x4d, 0x5f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, + 0x49, 0x74, 0x65, 0x6d, 0x10, 0xd1, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x55, 0x4d, 0x5f, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, + 0x65, 0x64, 0x10, 0xd2, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, + 0x5f, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x73, 0x74, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x58, + 0x50, 0x10, 0xd3, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x4d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x6f, 0x55, 0x6e, 0x69, 0x74, + 0x10, 0xd4, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, + 0x61, 0x75, 0x73, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x10, 0xd5, 0x04, 0x12, 0x27, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x56, + 0x65, 0x72, 0x73, 0x75, 0x73, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x10, 0xd6, 0x04, 0x12, 0x1e, 0x0a, 0x19, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x51, 0x6f, 0x50, 0x5f, 0x41, 0x72, 0x63, 0x61, + 0x6e, 0x61, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xd8, 0x04, 0x12, 0x1e, 0x0a, 0x19, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x6f, 0x74, 0x50, 0x6f, 0x74, 0x61, 0x74, + 0x6f, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd9, 0x04, 0x12, 0x1f, 0x0a, 0x1a, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x48, 0x6f, 0x74, 0x50, 0x6f, 0x74, 0x61, 0x74, + 0x6f, 0x5f, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x64, 0x65, 0x64, 0x10, 0xda, 0x04, 0x12, 0x1f, 0x0a, + 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x57, 0x4b, 0x5f, 0x41, 0x72, 0x63, 0x61, + 0x6e, 0x61, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xdb, 0x04, 0x12, 0x24, + 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x10, 0xdc, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, + 0x57, 0x52, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x10, 0xdd, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x57, + 0x52, 0x41, 0x72, 0x63, 0x61, 0x6e, 0x61, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xde, + 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, + 0xdf, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x41, 0x67, + 0x68, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xe0, 0x04, + 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x69, 0x6e, 0x67, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xe1, 0x04, 0x12, + 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4d, 0x75, 0x74, 0x65, 0x64, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x10, 0xe2, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x75, 0x61, 0x6c, + 0x54, 0x69, 0x70, 0x10, 0xe3, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xe4, 0x04, + 0x12, 0x1d, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x4e, 0x65, 0x75, 0x74, + 0x72, 0x61, 0x6c, 0x43, 0x61, 0x6d, 0x70, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x10, 0xe5, 0x04, 0x12, + 0x25, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x52, 0x6f, 0x63, 0x6b, 0x50, + 0x61, 0x70, 0x65, 0x72, 0x53, 0x63, 0x69, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x65, 0x64, 0x10, 0xe6, 0x04, 0x12, 0x26, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x52, 0x6f, 0x63, 0x6b, 0x50, 0x61, 0x70, 0x65, 0x72, 0x53, 0x63, 0x69, 0x73, 0x73, + 0x6f, 0x72, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xe7, 0x04, 0x12, 0x1f, + 0x0a, 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x4f, 0x70, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0xe8, 0x04, 0x12, + 0x19, 0x0a, 0x14, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x41, + 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x10, 0xe9, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x44, 0x75, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x65, 0x64, 0x10, 0xea, 0x04, 0x12, 0x34, 0x0a, 0x2f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, + 0x4d, 0x5f, 0x4d, 0x75, 0x65, 0x72, 0x74, 0x61, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x4b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0xeb, 0x04, 0x12, 0x23, 0x0a, 0x1e, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x72, + 0x61, 0x66, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x10, 0xec, + 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x44, 0x72, 0x61, 0x66, 0x74, 0x50, 0x69, 0x63, 0x6b, 0x10, 0xed, 0x04, 0x12, + 0x29, 0x0a, 0x24, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6c, + 0x65, 0x43, 0x50, 0x44, 0x61, 0x74, 0x61, 0x10, 0xee, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x55, 0x4d, 0x5f, 0x47, 0x69, 0x66, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x10, 0xef, 0x04, 0x2a, 0xa4, 0x1f, 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x12, 0x21, 0x0a, 0x14, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, + 0x44, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x1a, 0x0a, 0x16, + 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, + 0x4f, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, + 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x44, 0x45, + 0x4e, 0x59, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, + 0x53, 0x41, 0x47, 0x45, 0x5f, 0x42, 0x41, 0x52, 0x52, 0x41, 0x43, 0x4b, 0x53, 0x5f, 0x4b, 0x49, + 0x4c, 0x4c, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, + 0x53, 0x41, 0x47, 0x45, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, + 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, + 0x45, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x44, 0x45, 0x4e, 0x59, 0x10, 0x04, 0x12, 0x1b, + 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x46, + 0x49, 0x52, 0x53, 0x54, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x05, 0x12, 0x1c, 0x0a, 0x18, 0x43, + 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x45, + 0x41, 0x4b, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x42, 0x55, 0x59, 0x42, 0x41, 0x43, + 0x4b, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x41, 0x45, 0x47, 0x49, 0x53, 0x10, 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x43, + 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x4f, 0x53, 0x48, + 0x41, 0x4e, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, + 0x52, 0x5f, 0x4c, 0x4f, 0x53, 0x54, 0x10, 0x0a, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, + 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, + 0x5f, 0x52, 0x45, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x45, 0x44, 0x10, 0x0b, 0x12, 0x1b, 0x0a, 0x17, + 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x47, 0x4c, 0x59, + 0x50, 0x48, 0x5f, 0x55, 0x53, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x50, + 0x55, 0x52, 0x43, 0x48, 0x41, 0x53, 0x45, 0x10, 0x0d, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, + 0x54, 0x10, 0x0e, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x0f, + 0x12, 0x2e, 0x0a, 0x2a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, + 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x57, 0x41, 0x49, 0x54, + 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x10, + 0x12, 0x2a, 0x0a, 0x26, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, + 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, + 0x5f, 0x52, 0x45, 0x4d, 0x41, 0x49, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x11, 0x12, 0x31, 0x0a, 0x2d, + 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x44, 0x49, 0x53, + 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x52, 0x45, 0x4d, + 0x41, 0x49, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x4c, 0x55, 0x52, 0x41, 0x4c, 0x10, 0x12, 0x12, + 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x52, 0x45, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x13, 0x12, 0x1c, 0x0a, 0x18, 0x43, + 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, + 0x45, 0x52, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x14, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x41, 0x46, 0x45, 0x5f, 0x54, + 0x4f, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x10, 0x15, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x5f, 0x50, + 0x49, 0x43, 0x4b, 0x55, 0x50, 0x10, 0x16, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x5f, 0x42, 0x4f, 0x54, + 0x54, 0x4c, 0x45, 0x10, 0x17, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x55, 0x4e, 0x45, 0x5f, 0x44, 0x45, 0x4e, 0x59, 0x10, + 0x72, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, + 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x48, 0x45, 0x42, 0x41, 0x47, 0x10, 0x18, 0x12, 0x1b, 0x0a, 0x17, + 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x45, 0x43, + 0x52, 0x45, 0x54, 0x53, 0x48, 0x4f, 0x50, 0x10, 0x19, 0x12, 0x23, 0x0a, 0x1f, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x41, + 0x55, 0x54, 0x4f, 0x50, 0x55, 0x52, 0x43, 0x48, 0x41, 0x53, 0x45, 0x44, 0x10, 0x1a, 0x12, 0x1f, + 0x0a, 0x1b, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, + 0x54, 0x45, 0x4d, 0x53, 0x5f, 0x43, 0x4f, 0x4d, 0x42, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x1b, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, - 0x4e, 0x4f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x53, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x20, 0x12, 0x1d, - 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, - 0x41, 0x4e, 0x54, 0x50, 0x41, 0x55, 0x53, 0x45, 0x59, 0x45, 0x54, 0x10, 0x21, 0x12, 0x17, 0x0a, - 0x13, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x41, - 0x55, 0x53, 0x45, 0x44, 0x10, 0x22, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, - 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x55, 0x4e, 0x50, 0x41, 0x55, 0x53, 0x45, 0x5f, 0x43, - 0x4f, 0x55, 0x4e, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x23, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x48, - 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x55, 0x4e, 0x50, 0x41, 0x55, - 0x53, 0x45, 0x44, 0x10, 0x24, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, - 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x5f, 0x55, 0x4e, 0x50, 0x41, 0x55, - 0x53, 0x45, 0x44, 0x10, 0x25, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, - 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x59, 0x4f, 0x55, 0x50, 0x41, 0x55, 0x53, 0x45, 0x44, 0x10, - 0x26, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, - 0x45, 0x5f, 0x43, 0x41, 0x4e, 0x54, 0x55, 0x4e, 0x50, 0x41, 0x55, 0x53, 0x45, 0x54, 0x45, 0x41, - 0x4d, 0x10, 0x27, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, - 0x41, 0x47, 0x45, 0x5f, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x42, - 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x10, 0x29, 0x12, 0x2e, 0x0a, 0x2a, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, 0x54, 0x4f, - 0x52, 0x53, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x49, 0x4e, 0x47, 0x5f, 0x54, 0x48, 0x49, 0x53, - 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x2a, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x45, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x52, - 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, 0x2b, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, - 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x45, 0x43, 0x4f, 0x4e, 0x5f, 0x49, - 0x54, 0x45, 0x4d, 0x10, 0x2c, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, - 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x54, 0x41, 0x55, 0x4e, 0x54, 0x10, 0x2d, 0x12, 0x17, 0x0a, - 0x13, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x41, - 0x4e, 0x44, 0x4f, 0x4d, 0x10, 0x2e, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, - 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x44, 0x5f, 0x54, 0x55, 0x52, 0x4e, 0x10, 0x2f, - 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, - 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x5f, 0x42, 0x4f, 0x4e, 0x55, 0x53, - 0x10, 0x31, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, - 0x47, 0x45, 0x5f, 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, - 0x4e, 0x54, 0x53, 0x10, 0x32, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, - 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x44, 0x45, 0x4e, 0x49, 0x45, 0x44, 0x5f, 0x41, 0x45, 0x47, - 0x49, 0x53, 0x10, 0x33, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x49, 0x4f, 0x4e, - 0x41, 0x4c, 0x10, 0x34, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x45, 0x47, 0x49, 0x53, 0x5f, 0x53, 0x54, 0x4f, 0x4c, 0x45, - 0x4e, 0x10, 0x35, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, - 0x41, 0x47, 0x45, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x43, 0x41, 0x4e, 0x44, 0x59, - 0x10, 0x36, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, - 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x47, 0x49, 0x46, 0x54, 0x45, 0x44, 0x10, 0x37, - 0x12, 0x27, 0x0a, 0x23, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, - 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, - 0x47, 0x52, 0x45, 0x45, 0x56, 0x49, 0x4c, 0x10, 0x38, 0x12, 0x28, 0x0a, 0x24, 0x43, 0x48, 0x41, - 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x4f, 0x4c, 0x44, 0x4f, 0x55, - 0x54, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x45, - 0x44, 0x10, 0x39, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, - 0x41, 0x47, 0x45, 0x5f, 0x48, 0x4f, 0x4c, 0x44, 0x4f, 0x55, 0x54, 0x5f, 0x57, 0x41, 0x4c, 0x4c, - 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x45, 0x44, 0x10, 0x3a, 0x12, 0x26, 0x0a, 0x22, - 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x4f, 0x4c, - 0x44, 0x4f, 0x55, 0x54, 0x5f, 0x57, 0x41, 0x4c, 0x4c, 0x5f, 0x46, 0x49, 0x4e, 0x49, 0x53, 0x48, - 0x45, 0x44, 0x10, 0x3b, 0x12, 0x29, 0x0a, 0x25, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, + 0x53, 0x55, 0x50, 0x45, 0x52, 0x5f, 0x43, 0x52, 0x45, 0x45, 0x50, 0x53, 0x10, 0x1c, 0x12, 0x25, + 0x0a, 0x21, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, + 0x41, 0x4e, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x49, + 0x54, 0x45, 0x4d, 0x10, 0x1d, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x41, 0x4e, 0x54, 0x50, 0x41, 0x55, 0x53, 0x45, 0x10, + 0x1f, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, + 0x45, 0x5f, 0x4e, 0x4f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x53, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x20, + 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, + 0x5f, 0x43, 0x41, 0x4e, 0x54, 0x50, 0x41, 0x55, 0x53, 0x45, 0x59, 0x45, 0x54, 0x10, 0x21, 0x12, + 0x17, 0x0a, 0x13, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x50, 0x41, 0x55, 0x53, 0x45, 0x44, 0x10, 0x22, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, + 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x55, 0x4e, 0x50, 0x41, 0x55, 0x53, 0x45, + 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x23, 0x12, 0x19, 0x0a, 0x15, + 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x55, 0x4e, 0x50, + 0x41, 0x55, 0x53, 0x45, 0x44, 0x10, 0x24, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x5f, 0x55, 0x4e, 0x50, + 0x41, 0x55, 0x53, 0x45, 0x44, 0x10, 0x25, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x59, 0x4f, 0x55, 0x50, 0x41, 0x55, 0x53, 0x45, + 0x44, 0x10, 0x26, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x43, 0x41, 0x4e, 0x54, 0x55, 0x4e, 0x50, 0x41, 0x55, 0x53, 0x45, 0x54, + 0x45, 0x41, 0x4d, 0x10, 0x27, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x5f, 0x54, 0x45, 0x58, 0x54, + 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x10, 0x29, 0x12, 0x2e, 0x0a, 0x2a, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x54, 0x41, + 0x54, 0x4f, 0x52, 0x53, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x49, 0x4e, 0x47, 0x5f, 0x54, 0x48, + 0x49, 0x53, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x2a, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x45, 0x50, 0x4f, 0x52, 0x54, + 0x5f, 0x52, 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, 0x2b, 0x12, 0x1a, 0x0a, 0x16, 0x43, + 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x45, 0x43, 0x4f, 0x4e, + 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x10, 0x2c, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x54, 0x41, 0x55, 0x4e, 0x54, 0x10, 0x2d, 0x12, + 0x17, 0x0a, 0x13, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x10, 0x2e, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x48, 0x41, 0x54, + 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x44, 0x5f, 0x54, 0x55, 0x52, 0x4e, + 0x10, 0x2f, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, + 0x47, 0x45, 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x5f, 0x42, 0x4f, 0x4e, + 0x55, 0x53, 0x10, 0x31, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, + 0x53, 0x41, 0x47, 0x45, 0x5f, 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, + 0x4f, 0x49, 0x4e, 0x54, 0x53, 0x10, 0x32, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x44, 0x45, 0x4e, 0x49, 0x45, 0x44, 0x5f, 0x41, + 0x45, 0x47, 0x49, 0x53, 0x10, 0x33, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x34, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x45, 0x47, 0x49, 0x53, 0x5f, 0x53, 0x54, 0x4f, + 0x4c, 0x45, 0x4e, 0x10, 0x35, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x43, 0x41, 0x4e, + 0x44, 0x59, 0x10, 0x36, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, + 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x47, 0x49, 0x46, 0x54, 0x45, 0x44, + 0x10, 0x37, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, + 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x5f, 0x57, 0x49, 0x54, + 0x48, 0x5f, 0x47, 0x52, 0x45, 0x45, 0x56, 0x49, 0x4c, 0x10, 0x38, 0x12, 0x28, 0x0a, 0x24, 0x43, + 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x4f, 0x4c, 0x44, + 0x4f, 0x55, 0x54, 0x5f, 0x54, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, + 0x59, 0x45, 0x44, 0x10, 0x39, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x4f, 0x4c, 0x44, 0x4f, 0x55, 0x54, 0x5f, 0x57, 0x41, + 0x4c, 0x4c, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x45, 0x44, 0x10, 0x3a, 0x12, 0x26, + 0x0a, 0x22, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, + 0x4f, 0x4c, 0x44, 0x4f, 0x55, 0x54, 0x5f, 0x57, 0x41, 0x4c, 0x4c, 0x5f, 0x46, 0x49, 0x4e, 0x49, + 0x53, 0x48, 0x45, 0x44, 0x10, 0x3b, 0x12, 0x29, 0x0a, 0x25, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4c, 0x45, + 0x46, 0x54, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x10, + 0x3e, 0x12, 0x31, 0x0a, 0x2d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, + 0x45, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x45, + 0x44, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x41, 0x4e, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x10, 0x3f, 0x12, 0x28, 0x0a, 0x24, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, + 0x53, 0x41, 0x47, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, + 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x10, 0x40, 0x12, 0x33, + 0x0a, 0x2f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x4c, + 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x4f, 0x4d, 0x50, + 0x4c, 0x45, 0x54, 0x45, 0x44, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x41, 0x4e, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x10, 0x41, 0x12, 0x2c, 0x0a, 0x28, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x52, 0x45, 0x43, 0x52, 0x55, 0x49, 0x54, 0x4d, 0x45, 0x4e, 0x54, 0x5f, + 0x44, 0x52, 0x4f, 0x50, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x5f, 0x42, 0x4f, 0x4e, 0x55, 0x53, 0x10, + 0x42, 0x12, 0x31, 0x0a, 0x2d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, + 0x45, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, 0x56, 0x55, 0x53, 0x5f, 0x53, 0x48, 0x49, 0x4e, + 0x49, 0x4e, 0x47, 0x5f, 0x42, 0x4f, 0x4f, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x41, 0x43, 0x54, 0x49, + 0x56, 0x45, 0x10, 0x43, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4c, 0x45, 0x46, 0x54, - 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x10, 0x3e, 0x12, - 0x31, 0x0a, 0x2d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, - 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x45, 0x44, 0x5f, - 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x41, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, - 0x10, 0x3f, 0x12, 0x28, 0x0a, 0x24, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, - 0x47, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4c, 0x49, - 0x4d, 0x49, 0x54, 0x45, 0x44, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x10, 0x40, 0x12, 0x33, 0x0a, 0x2f, - 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x4c, 0x4f, 0x57, - 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, - 0x54, 0x45, 0x44, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x41, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, - 0x41, 0x12, 0x2c, 0x0a, 0x28, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, - 0x45, 0x5f, 0x52, 0x45, 0x43, 0x52, 0x55, 0x49, 0x54, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x52, - 0x4f, 0x50, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x5f, 0x42, 0x4f, 0x4e, 0x55, 0x53, 0x10, 0x42, 0x12, - 0x31, 0x0a, 0x2d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, - 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, 0x56, 0x55, 0x53, 0x5f, 0x53, 0x48, 0x49, 0x4e, 0x49, 0x4e, - 0x47, 0x5f, 0x42, 0x4f, 0x4f, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, - 0x10, 0x43, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, - 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x41, - 0x46, 0x4b, 0x10, 0x49, 0x12, 0x32, 0x0a, 0x2e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4c, 0x45, 0x46, 0x54, - 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x5f, 0x54, 0x4f, - 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x4a, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, 0x41, 0x54, - 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, - 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x4b, 0x12, 0x25, 0x0a, 0x21, 0x43, - 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x45, 0x52, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x5f, 0x41, 0x46, 0x4b, - 0x10, 0x4c, 0x12, 0x37, 0x0a, 0x33, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, - 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, - 0x4e, 0x45, 0x44, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, - 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x4d, 0x12, 0x23, 0x0a, 0x1f, 0x43, + 0x5f, 0x41, 0x46, 0x4b, 0x10, 0x49, 0x12, 0x32, 0x0a, 0x2e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x4c, 0x45, + 0x46, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x5f, + 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x4a, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, + 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, + 0x52, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x4b, 0x12, 0x25, 0x0a, + 0x21, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, + 0x41, 0x59, 0x45, 0x52, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x5f, 0x41, + 0x46, 0x4b, 0x10, 0x4c, 0x12, 0x37, 0x0a, 0x33, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, + 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x41, 0x42, 0x41, 0x4e, + 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, + 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x4f, 0x4e, 0x47, 0x10, 0x4d, 0x12, 0x23, 0x0a, + 0x1f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x57, 0x49, + 0x4c, 0x4c, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, 0x44, + 0x10, 0x4e, 0x12, 0x2a, 0x0a, 0x26, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, + 0x47, 0x45, 0x5f, 0x57, 0x49, 0x4c, 0x4c, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x5f, 0x53, + 0x43, 0x4f, 0x52, 0x45, 0x44, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x45, 0x44, 0x10, 0x4f, 0x12, 0x2b, + 0x0a, 0x27, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x57, + 0x49, 0x4c, 0x4c, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, + 0x44, 0x5f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x10, 0x50, 0x12, 0x32, 0x0a, 0x2e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x57, 0x49, 0x4c, 0x4c, - 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, 0x44, 0x10, 0x4e, - 0x12, 0x2a, 0x0a, 0x26, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, - 0x5f, 0x57, 0x49, 0x4c, 0x4c, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x5f, 0x53, 0x43, 0x4f, - 0x52, 0x45, 0x44, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x45, 0x44, 0x10, 0x4f, 0x12, 0x2b, 0x0a, 0x27, - 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x57, 0x49, 0x4c, - 0x4c, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, 0x44, 0x5f, - 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x10, 0x50, 0x12, 0x32, 0x0a, 0x2e, 0x43, 0x48, 0x41, - 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x57, 0x49, 0x4c, 0x4c, 0x5f, 0x4e, - 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, 0x44, 0x5f, 0x4e, 0x45, 0x54, - 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x45, 0x44, 0x10, 0x51, 0x12, 0x29, 0x0a, - 0x25, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x41, - 0x4e, 0x5f, 0x51, 0x55, 0x49, 0x54, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x4f, 0x55, 0x54, 0x5f, 0x41, - 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x10, 0x52, 0x12, 0x3a, 0x0a, 0x36, 0x43, 0x48, 0x41, 0x54, - 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x45, 0x44, 0x5f, - 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x53, 0x54, 0x49, 0x4c, 0x4c, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, - 0x44, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x53, 0x5f, 0x47, 0x45, 0x54, 0x5f, 0x4c, 0x4f, - 0x53, 0x53, 0x10, 0x53, 0x12, 0x38, 0x0a, 0x34, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x4e, - 0x4b, 0x45, 0x44, 0x5f, 0x42, 0x45, 0x46, 0x4f, 0x52, 0x45, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, - 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x59, 0x10, 0x54, 0x12, 0x21, - 0x0a, 0x1d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, - 0x4f, 0x4d, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x55, 0x4d, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x10, - 0x55, 0x12, 0x2a, 0x0a, 0x26, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, - 0x45, 0x5f, 0x56, 0x49, 0x43, 0x54, 0x4f, 0x52, 0x59, 0x5f, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x56, 0x12, 0x22, 0x0a, - 0x1e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x53, - 0x53, 0x41, 0x53, 0x53, 0x49, 0x4e, 0x5f, 0x41, 0x4e, 0x4e, 0x4f, 0x55, 0x4e, 0x43, 0x45, 0x10, - 0x57, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, - 0x45, 0x5f, 0x41, 0x53, 0x53, 0x41, 0x53, 0x53, 0x49, 0x4e, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, - 0x53, 0x53, 0x10, 0x58, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x53, 0x53, 0x41, 0x53, 0x53, 0x49, 0x4e, 0x5f, 0x44, 0x45, - 0x4e, 0x49, 0x45, 0x44, 0x10, 0x59, 0x12, 0x37, 0x0a, 0x33, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, - 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x56, 0x49, 0x43, 0x54, 0x4f, 0x52, 0x59, 0x5f, 0x50, - 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x49, 0x4e, 0x47, 0x4c, 0x45, - 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x10, 0x5a, 0x12, - 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, - 0x45, 0x46, 0x46, 0x49, 0x47, 0x59, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x5b, 0x12, 0x2b, 0x0a, - 0x27, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x56, 0x4f, - 0x49, 0x43, 0x45, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x5f, - 0x4f, 0x56, 0x45, 0x52, 0x46, 0x4c, 0x4f, 0x57, 0x10, 0x5c, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, - 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x59, 0x45, 0x41, 0x52, 0x5f, - 0x42, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x5d, 0x12, 0x20, - 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, - 0x41, 0x55, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x5e, - 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, - 0x5f, 0x43, 0x4f, 0x49, 0x4e, 0x53, 0x5f, 0x57, 0x41, 0x47, 0x45, 0x52, 0x45, 0x44, 0x10, 0x5f, + 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x45, 0x5f, 0x53, 0x43, 0x4f, 0x52, 0x45, 0x44, 0x5f, 0x4e, + 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x45, 0x44, 0x10, 0x51, 0x12, + 0x29, 0x0a, 0x25, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x43, 0x41, 0x4e, 0x5f, 0x51, 0x55, 0x49, 0x54, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x4f, 0x55, 0x54, + 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x10, 0x52, 0x12, 0x3a, 0x0a, 0x36, 0x43, 0x48, + 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x45, + 0x44, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x53, 0x54, 0x49, 0x4c, 0x4c, 0x5f, 0x53, 0x43, 0x4f, + 0x52, 0x45, 0x44, 0x5f, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x52, 0x53, 0x5f, 0x47, 0x45, 0x54, 0x5f, + 0x4c, 0x4f, 0x53, 0x53, 0x10, 0x53, 0x12, 0x38, 0x0a, 0x34, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x5f, 0x52, + 0x41, 0x4e, 0x4b, 0x45, 0x44, 0x5f, 0x42, 0x45, 0x46, 0x4f, 0x52, 0x45, 0x5f, 0x46, 0x49, 0x52, + 0x53, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x59, 0x10, 0x54, + 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, + 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x55, 0x4d, 0x5f, 0x4c, 0x45, 0x56, 0x45, + 0x4c, 0x10, 0x55, 0x12, 0x2a, 0x0a, 0x26, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x56, 0x49, 0x43, 0x54, 0x4f, 0x52, 0x59, 0x5f, 0x50, 0x52, 0x45, 0x44, + 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x56, 0x12, + 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x41, 0x53, 0x53, 0x41, 0x53, 0x53, 0x49, 0x4e, 0x5f, 0x41, 0x4e, 0x4e, 0x4f, 0x55, 0x4e, 0x43, + 0x45, 0x10, 0x57, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x41, 0x53, 0x53, 0x41, 0x53, 0x53, 0x49, 0x4e, 0x5f, 0x53, 0x55, 0x43, + 0x43, 0x45, 0x53, 0x53, 0x10, 0x58, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x53, 0x53, 0x41, 0x53, 0x53, 0x49, 0x4e, 0x5f, + 0x44, 0x45, 0x4e, 0x49, 0x45, 0x44, 0x10, 0x59, 0x12, 0x37, 0x0a, 0x33, 0x43, 0x48, 0x41, 0x54, + 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x56, 0x49, 0x43, 0x54, 0x4f, 0x52, 0x59, + 0x5f, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x49, 0x4e, 0x47, + 0x4c, 0x45, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x10, + 0x5a, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, + 0x45, 0x5f, 0x45, 0x46, 0x46, 0x49, 0x47, 0x59, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x5b, 0x12, + 0x2b, 0x0a, 0x27, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x56, 0x4f, 0x49, 0x43, 0x45, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, + 0x44, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x46, 0x4c, 0x4f, 0x57, 0x10, 0x5c, 0x12, 0x22, 0x0a, 0x1e, + 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x59, 0x45, 0x41, + 0x52, 0x5f, 0x42, 0x45, 0x41, 0x53, 0x54, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x5d, + 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, + 0x5f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x44, 0x4f, 0x57, 0x4e, + 0x10, 0x5e, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, + 0x47, 0x45, 0x5f, 0x43, 0x4f, 0x49, 0x4e, 0x53, 0x5f, 0x57, 0x41, 0x47, 0x45, 0x52, 0x45, 0x44, + 0x10, 0x5f, 0x12, 0x23, 0x0a, 0x1f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, + 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x4e, 0x4f, 0x4d, 0x49, 0x4e, 0x41, 0x54, 0x45, + 0x44, 0x5f, 0x42, 0x41, 0x4e, 0x10, 0x60, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, + 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x42, 0x41, 0x4e, + 0x4e, 0x45, 0x44, 0x10, 0x61, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x42, 0x41, 0x4e, 0x5f, 0x43, + 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x62, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x49, 0x56, 0x45, 0x52, 0x5f, 0x50, 0x41, 0x49, + 0x4e, 0x54, 0x45, 0x44, 0x10, 0x63, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x43, 0x41, 0x4e, 0x5f, 0x55, 0x53, 0x45, 0x44, + 0x10, 0x64, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, + 0x47, 0x45, 0x5f, 0x53, 0x48, 0x52, 0x49, 0x4e, 0x45, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x45, 0x44, + 0x10, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, + 0x47, 0x45, 0x5f, 0x57, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x53, + 0x50, 0x45, 0x4e, 0x54, 0x10, 0x66, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x5f, 0x57, 0x41, 0x47, 0x45, + 0x52, 0x10, 0x67, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x52, + 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, 0x68, 0x12, 0x25, 0x0a, 0x21, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x4f, 0x42, 0x53, 0x45, 0x52, 0x56, + 0x45, 0x52, 0x5f, 0x57, 0x41, 0x52, 0x44, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x69, 0x12, 0x23, 0x0a, 0x1f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, - 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x4e, 0x4f, 0x4d, 0x49, 0x4e, 0x41, 0x54, 0x45, 0x44, 0x5f, - 0x42, 0x41, 0x4e, 0x10, 0x60, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, - 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, - 0x44, 0x10, 0x61, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, - 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x42, 0x41, 0x4e, 0x5f, 0x43, 0x4f, 0x55, - 0x4e, 0x54, 0x10, 0x62, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x49, 0x56, 0x45, 0x52, 0x5f, 0x50, 0x41, 0x49, 0x4e, 0x54, - 0x45, 0x44, 0x10, 0x63, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, 0x43, 0x41, 0x4e, 0x5f, 0x55, 0x53, 0x45, 0x44, 0x10, 0x64, - 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, - 0x5f, 0x53, 0x48, 0x52, 0x49, 0x4e, 0x45, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x65, - 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, - 0x5f, 0x57, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x53, 0x50, 0x45, - 0x4e, 0x54, 0x10, 0x66, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x52, 0x41, 0x4e, 0x4b, 0x5f, 0x57, 0x41, 0x47, 0x45, 0x52, 0x10, - 0x67, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, - 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x4d, - 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, 0x68, 0x12, 0x25, 0x0a, 0x21, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x4f, 0x42, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, - 0x5f, 0x57, 0x41, 0x52, 0x44, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x69, 0x12, 0x23, - 0x0a, 0x1f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x53, - 0x45, 0x4e, 0x54, 0x52, 0x59, 0x5f, 0x57, 0x41, 0x52, 0x44, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x45, - 0x44, 0x10, 0x6a, 0x12, 0x2d, 0x0a, 0x29, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, - 0x41, 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x44, 0x5f, - 0x49, 0x4e, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x53, 0x48, - 0x10, 0x6b, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, - 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x43, 0x48, 0x4f, 0x49, 0x43, 0x45, 0x5f, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x6c, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x48, 0x41, 0x54, - 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x42, 0x4f, 0x55, 0x4e, 0x54, 0x59, 0x10, - 0x6d, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, - 0x45, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x5f, - 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x6e, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, 0x41, 0x54, 0x5f, - 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x46, 0x4f, 0x55, - 0x4e, 0x44, 0x5f, 0x43, 0x41, 0x4e, 0x44, 0x59, 0x10, 0x6f, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x48, - 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, - 0x54, 0x59, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x5f, 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x45, - 0x44, 0x10, 0x70, 0x12, 0x28, 0x0a, 0x24, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, - 0x41, 0x47, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x41, 0x43, - 0x48, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x71, 0x12, 0x25, 0x0a, - 0x21, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x41, - 0x4e, 0x54, 0x5f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x45, 0x41, 0x52, - 0x4c, 0x59, 0x10, 0x73, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, - 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x5f, 0x57, - 0x49, 0x54, 0x48, 0x5f, 0x50, 0x45, 0x4e, 0x47, 0x55, 0x49, 0x4e, 0x10, 0x74, 0x2a, 0xb2, 0x01, - 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, - 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x53, 0x12, - 0x25, 0x0a, 0x21, 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, - 0x4e, 0x54, 0x53, 0x5f, 0x57, 0x52, 0x4f, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, - 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, 0x5f, 0x50, 0x52, 0x41, 0x43, 0x54, - 0x49, 0x43, 0x45, 0x5f, 0x42, 0x4f, 0x54, 0x53, 0x10, 0x02, 0x12, 0x23, 0x0a, 0x1f, 0x4e, 0x4f, - 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, 0x5f, 0x43, - 0x48, 0x45, 0x41, 0x54, 0x53, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x12, - 0x21, 0x0a, 0x1d, 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, - 0x4e, 0x54, 0x53, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, - 0x10, 0x04, 0x2a, 0xcf, 0x01, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x48, 0x41, 0x54, - 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x12, 0x21, - 0x0a, 0x1d, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x43, 0x4f, 0x4f, 0x50, 0x5f, 0x42, 0x41, 0x54, 0x54, - 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x10, - 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, - 0x56, 0x55, 0x53, 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x4d, 0x49, - 0x4e, 0x44, 0x45, 0x52, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x52, - 0x41, 0x4e, 0x4b, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, 0x03, - 0x12, 0x2b, 0x0a, 0x27, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x43, 0x4f, 0x4f, 0x50, 0x5f, 0x4c, 0x4f, - 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x49, - 0x56, 0x45, 0x5f, 0x52, 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, 0x04, 0x12, 0x25, 0x0a, - 0x21, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, - 0x45, 0x5f, 0x50, 0x45, 0x4e, 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x52, 0x45, 0x4d, 0x49, 0x4e, 0x44, - 0x45, 0x52, 0x10, 0x05, 0x2a, 0xe0, 0x03, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, - 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, - 0x16, 0x0a, 0x12, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, - 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x42, 0x49, 0x4c, 0x49, - 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x10, 0x02, 0x12, 0x19, - 0x0a, 0x15, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x43, - 0x4f, 0x4f, 0x4c, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x42, 0x49, - 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x45, 0x4e, 0x45, 0x4d, 0x59, 0x10, - 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, - 0x47, 0x5f, 0x55, 0x4e, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x45, 0x44, 0x10, 0x05, 0x12, 0x1b, 0x0a, - 0x17, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x49, 0x4e, - 0x42, 0x41, 0x43, 0x4b, 0x50, 0x41, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x42, - 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, - 0x53, 0x48, 0x10, 0x07, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, - 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x4f, 0x4e, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, 0x10, 0x08, - 0x12, 0x15, 0x0a, 0x11, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, - 0x5f, 0x41, 0x4c, 0x4c, 0x59, 0x10, 0x09, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x42, 0x49, 0x4c, 0x49, - 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, - 0x41, 0x44, 0x59, 0x10, 0x0a, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, - 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x57, 0x49, 0x4c, 0x4c, 0x5f, 0x4c, 0x45, 0x41, 0x52, 0x4e, - 0x10, 0x0b, 0x12, 0x1d, 0x0a, 0x19, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, - 0x4e, 0x47, 0x5f, 0x46, 0x55, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x10, - 0x0c, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, - 0x47, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x4f, 0x46, 0x46, 0x45, 0x52, 0x10, - 0x0d, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, - 0x47, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, - 0x54, 0x10, 0x0e, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, - 0x49, 0x4e, 0x47, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x45, 0x51, 0x55, 0x49, - 0x50, 0x10, 0x0f, 0x12, 0x22, 0x0a, 0x1e, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, - 0x49, 0x4e, 0x47, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, 0x42, 0x41, 0x43, - 0x4b, 0x50, 0x41, 0x43, 0x4b, 0x10, 0x10, 0x2a, 0x8c, 0x02, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, - 0x45, 0x4e, 0x54, 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, - 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x47, - 0x41, 0x4d, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, - 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x5f, - 0x48, 0x4f, 0x52, 0x4e, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, - 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, - 0x54, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x03, 0x12, - 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x53, - 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x57, 0x43, - 0x41, 0x53, 0x45, 0x10, 0x04, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, + 0x5f, 0x53, 0x45, 0x4e, 0x54, 0x52, 0x59, 0x5f, 0x57, 0x41, 0x52, 0x44, 0x5f, 0x4b, 0x49, 0x4c, + 0x4c, 0x45, 0x44, 0x10, 0x6a, 0x12, 0x2d, 0x0a, 0x29, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x50, 0x4c, 0x41, 0x43, 0x45, + 0x44, 0x5f, 0x49, 0x4e, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, + 0x53, 0x48, 0x10, 0x6b, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, + 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x43, 0x48, 0x4f, 0x49, 0x43, 0x45, + 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x6c, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x48, + 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x42, 0x4f, 0x55, 0x4e, 0x54, + 0x59, 0x10, 0x6d, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x44, 0x52, 0x41, 0x46, + 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x6e, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x46, + 0x4f, 0x55, 0x4e, 0x44, 0x5f, 0x43, 0x41, 0x4e, 0x44, 0x59, 0x10, 0x6f, 0x12, 0x27, 0x0a, 0x23, + 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x42, 0x49, + 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x44, 0x52, 0x41, 0x46, 0x54, 0x5f, 0x52, 0x41, 0x4e, 0x44, 0x4f, + 0x4d, 0x45, 0x44, 0x10, 0x70, 0x12, 0x28, 0x0a, 0x24, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x4f, + 0x41, 0x43, 0x48, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x71, 0x12, + 0x25, 0x0a, 0x21, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x43, 0x41, 0x4e, 0x54, 0x5f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x45, + 0x41, 0x52, 0x4c, 0x59, 0x10, 0x73, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, + 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x50, 0x45, 0x4e, 0x47, 0x55, 0x49, 0x4e, 0x10, 0x74, 0x12, + 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x4d, 0x49, 0x4e, 0x49, 0x42, 0x4f, 0x53, 0x53, 0x5f, 0x4b, 0x49, 0x4c, 0x4c, 0x10, 0x75, 0x12, + 0x28, 0x0a, 0x24, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, + 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x42, + 0x41, 0x4e, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x10, 0x76, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x48, 0x41, + 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x52, + 0x5f, 0x50, 0x4c, 0x41, 0x4e, 0x54, 0x45, 0x44, 0x10, 0x77, 0x2a, 0xb2, 0x01, 0x0a, 0x1d, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, + 0x49, 0x4e, 0x54, 0x53, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x53, 0x12, 0x25, 0x0a, 0x21, + 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, + 0x5f, 0x57, 0x52, 0x4f, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, + 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, 0x5f, 0x50, 0x52, 0x41, 0x43, 0x54, 0x49, 0x43, 0x45, + 0x5f, 0x42, 0x4f, 0x54, 0x53, 0x10, 0x02, 0x12, 0x23, 0x0a, 0x1f, 0x4e, 0x4f, 0x5f, 0x42, 0x41, + 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, 0x5f, 0x43, 0x48, 0x45, 0x41, + 0x54, 0x53, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, + 0x4e, 0x4f, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, + 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x10, 0x04, 0x2a, + 0xcf, 0x01, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x49, 0x4e, + 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x12, 0x21, 0x0a, 0x1d, 0x49, + 0x4e, 0x46, 0x4f, 0x5f, 0x43, 0x4f, 0x4f, 0x50, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x4c, 0x45, 0x5f, + 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x53, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x10, 0x01, 0x12, 0x23, + 0x0a, 0x1f, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x46, 0x52, 0x4f, 0x53, 0x54, 0x49, 0x56, 0x55, 0x53, + 0x5f, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, + 0x52, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x52, 0x41, 0x4e, 0x4b, + 0x45, 0x44, 0x5f, 0x52, 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, 0x03, 0x12, 0x2b, 0x0a, + 0x27, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x43, 0x4f, 0x4f, 0x50, 0x5f, 0x4c, 0x4f, 0x57, 0x5f, 0x50, + 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x49, 0x56, 0x45, 0x5f, + 0x52, 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, 0x04, 0x12, 0x25, 0x0a, 0x21, 0x49, 0x4e, + 0x46, 0x4f, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, + 0x45, 0x4e, 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x52, 0x45, 0x4d, 0x49, 0x4e, 0x44, 0x45, 0x52, 0x10, + 0x05, 0x2a, 0xe0, 0x03, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, + 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x16, 0x0a, 0x12, + 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x52, 0x45, 0x41, + 0x44, 0x59, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, + 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, + 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x4f, 0x4f, 0x4c, + 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, + 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x45, 0x4e, 0x45, 0x4d, 0x59, 0x10, 0x04, 0x12, 0x1a, + 0x0a, 0x16, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x55, + 0x4e, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x45, 0x44, 0x10, 0x05, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x42, + 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x49, 0x4e, 0x42, 0x41, 0x43, + 0x4b, 0x50, 0x41, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x42, 0x49, 0x4c, 0x49, + 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x53, 0x48, 0x10, + 0x07, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, + 0x47, 0x5f, 0x4f, 0x4e, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, 0x10, 0x08, 0x12, 0x15, 0x0a, + 0x11, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x41, 0x4c, + 0x4c, 0x59, 0x10, 0x09, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, + 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x59, + 0x10, 0x0a, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, + 0x4e, 0x47, 0x5f, 0x57, 0x49, 0x4c, 0x4c, 0x5f, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x10, 0x0b, 0x12, + 0x1d, 0x0a, 0x19, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, + 0x46, 0x55, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x10, 0x0c, 0x12, 0x1e, + 0x0a, 0x1a, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x4e, + 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x4f, 0x46, 0x46, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x20, + 0x0a, 0x1c, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x5f, 0x4e, + 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x10, 0x0e, + 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, + 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x5f, 0x45, 0x51, 0x55, 0x49, 0x50, 0x10, 0x0f, + 0x12, 0x22, 0x0a, 0x1e, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x49, 0x4e, 0x47, + 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x55, 0x52, 0x49, 0x45, 0x52, 0x42, 0x41, 0x43, 0x4b, 0x50, 0x41, + 0x43, 0x4b, 0x10, 0x10, 0x2a, 0x8c, 0x02, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x05, 0x12, 0x28, 0x0a, 0x24, + 0x12, 0x26, 0x0a, 0x22, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x48, 0x4f, 0x52, + 0x4e, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, + 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x46, + 0x49, 0x52, 0x53, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x4f, 0x44, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x57, 0x41, 0x49, 0x54, 0x5f, 0x46, 0x4f, 0x52, - 0x5f, 0x4d, 0x41, 0x50, 0x10, 0x06, 0x2a, 0xe5, 0x01, 0x0a, 0x13, 0x45, 0x44, 0x6f, 0x74, 0x61, - 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x14, - 0x0a, 0x10, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, - 0x43, 0x48, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, - 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x43, 0x48, 0x5f, 0x4d, 0x55, 0x54, 0x45, 0x10, 0x01, 0x12, - 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x41, 0x44, 0x44, - 0x5f, 0x47, 0x45, 0x53, 0x54, 0x55, 0x52, 0x45, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x47, - 0x45, 0x53, 0x54, 0x55, 0x52, 0x45, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, - 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x41, 0x4c, 0x4c, - 0x5f, 0x47, 0x45, 0x53, 0x54, 0x55, 0x52, 0x45, 0x53, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x46, 0x41, 0x44, 0x45, 0x5f, 0x47, 0x45, - 0x53, 0x54, 0x55, 0x52, 0x45, 0x10, 0x06, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x43, 0x48, 0x5f, 0x43, 0x4c, 0x49, 0x45, - 0x4e, 0x54, 0x53, 0x49, 0x44, 0x45, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x10, 0x07, 0x2a, 0x8d, - 0x06, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, - 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, - 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x47, 0x4f, 0x4c, 0x44, 0x10, 0x00, 0x12, - 0x17, 0x0a, 0x13, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, - 0x54, 0x5f, 0x44, 0x45, 0x4e, 0x59, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x4f, 0x56, 0x45, 0x52, - 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x43, 0x52, 0x49, 0x54, 0x49, - 0x43, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, - 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x58, 0x50, 0x10, 0x03, 0x12, 0x25, 0x0a, 0x21, - 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x42, - 0x4f, 0x4e, 0x55, 0x53, 0x5f, 0x53, 0x50, 0x45, 0x4c, 0x4c, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, - 0x45, 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, - 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4d, 0x49, 0x53, 0x53, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, + 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x57, 0x43, 0x41, 0x53, 0x45, + 0x10, 0x04, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, + 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x4f, + 0x53, 0x54, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x05, 0x12, 0x28, 0x0a, 0x24, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, + 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x57, 0x41, 0x49, 0x54, 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x4d, 0x41, + 0x50, 0x10, 0x06, 0x2a, 0xe5, 0x01, 0x0a, 0x13, 0x45, 0x44, 0x6f, 0x74, 0x61, 0x45, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x10, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x43, 0x48, 0x10, + 0x00, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x53, + 0x50, 0x45, 0x45, 0x43, 0x48, 0x5f, 0x4d, 0x55, 0x54, 0x45, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x47, 0x45, + 0x53, 0x54, 0x55, 0x52, 0x45, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x47, 0x45, 0x53, 0x54, + 0x55, 0x52, 0x45, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, + 0x49, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x5f, 0x47, 0x45, + 0x53, 0x54, 0x55, 0x52, 0x45, 0x53, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x55, 0x4e, 0x49, 0x54, 0x5f, 0x46, 0x41, 0x44, 0x45, 0x5f, 0x47, 0x45, 0x53, 0x54, 0x55, + 0x52, 0x45, 0x10, 0x06, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x49, + 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x43, 0x48, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x53, + 0x49, 0x44, 0x45, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x53, 0x10, 0x07, 0x2a, 0x8d, 0x06, 0x0a, 0x13, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, + 0x45, 0x52, 0x54, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, + 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x47, 0x4f, 0x4c, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x44, - 0x41, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x56, 0x45, 0x52, 0x48, - 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x45, 0x56, 0x41, 0x44, 0x45, 0x10, - 0x07, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, - 0x45, 0x52, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x08, 0x12, 0x26, 0x0a, 0x22, 0x4f, - 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x42, 0x4f, - 0x4e, 0x55, 0x53, 0x5f, 0x50, 0x4f, 0x49, 0x53, 0x4f, 0x4e, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, - 0x45, 0x10, 0x09, 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, - 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x48, 0x45, 0x41, 0x4c, 0x10, 0x0a, 0x12, 0x1b, 0x0a, 0x17, - 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4d, - 0x41, 0x4e, 0x41, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x0b, 0x12, 0x1c, 0x0a, 0x18, 0x4f, 0x56, 0x45, + 0x45, 0x4e, 0x59, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, + 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x43, 0x52, 0x49, 0x54, 0x49, 0x43, 0x41, 0x4c, + 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, + 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x58, 0x50, 0x10, 0x03, 0x12, 0x25, 0x0a, 0x21, 0x4f, 0x56, 0x45, + 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x42, 0x4f, 0x4e, 0x55, + 0x53, 0x5f, 0x53, 0x50, 0x45, 0x4c, 0x4c, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x04, + 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, + 0x52, 0x54, 0x5f, 0x4d, 0x49, 0x53, 0x53, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x4f, 0x56, 0x45, + 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x44, 0x41, 0x4d, 0x41, + 0x47, 0x45, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, + 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x45, 0x56, 0x41, 0x44, 0x45, 0x10, 0x07, 0x12, 0x18, + 0x0a, 0x14, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, + 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x08, 0x12, 0x26, 0x0a, 0x22, 0x4f, 0x56, 0x45, 0x52, + 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x42, 0x4f, 0x4e, 0x55, 0x53, + 0x5f, 0x50, 0x4f, 0x49, 0x53, 0x4f, 0x4e, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x09, + 0x12, 0x17, 0x0a, 0x13, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, + 0x52, 0x54, 0x5f, 0x48, 0x45, 0x41, 0x4c, 0x10, 0x0a, 0x12, 0x1b, 0x0a, 0x17, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4d, 0x41, 0x4e, 0x41, - 0x5f, 0x4c, 0x4f, 0x53, 0x53, 0x10, 0x0c, 0x12, 0x21, 0x0a, 0x1d, 0x4f, 0x56, 0x45, 0x52, 0x48, + 0x5f, 0x41, 0x44, 0x44, 0x10, 0x0b, 0x12, 0x1c, 0x0a, 0x18, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, + 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x5f, 0x4c, 0x4f, + 0x53, 0x53, 0x10, 0x0c, 0x12, 0x21, 0x0a, 0x1d, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, + 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4c, 0x41, 0x53, 0x54, 0x5f, 0x48, 0x49, 0x54, 0x5f, + 0x45, 0x41, 0x52, 0x4c, 0x59, 0x10, 0x0d, 0x12, 0x21, 0x0a, 0x1d, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4c, 0x41, 0x53, 0x54, 0x5f, 0x48, - 0x49, 0x54, 0x5f, 0x45, 0x41, 0x52, 0x4c, 0x59, 0x10, 0x0d, 0x12, 0x21, 0x0a, 0x1d, 0x4f, 0x56, + 0x49, 0x54, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10, 0x0e, 0x12, 0x20, 0x0a, 0x1c, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4c, 0x41, 0x53, - 0x54, 0x5f, 0x48, 0x49, 0x54, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10, 0x0e, 0x12, 0x20, 0x0a, - 0x1c, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, - 0x4c, 0x41, 0x53, 0x54, 0x5f, 0x48, 0x49, 0x54, 0x5f, 0x4d, 0x49, 0x53, 0x53, 0x10, 0x0f, 0x12, + 0x54, 0x5f, 0x48, 0x49, 0x54, 0x5f, 0x4d, 0x49, 0x53, 0x53, 0x10, 0x0f, 0x12, 0x20, 0x0a, 0x1c, + 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4d, + 0x41, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x10, 0x12, 0x22, + 0x0a, 0x1e, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, + 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, + 0x10, 0x11, 0x12, 0x22, 0x0a, 0x1e, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, + 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4f, 0x55, 0x54, 0x47, 0x4f, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x41, + 0x4d, 0x41, 0x47, 0x45, 0x10, 0x12, 0x12, 0x21, 0x0a, 0x1d, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, + 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, + 0x5f, 0x52, 0x45, 0x53, 0x49, 0x53, 0x54, 0x10, 0x13, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x56, 0x45, + 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x44, 0x45, 0x41, 0x54, + 0x48, 0x10, 0x14, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, + 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x15, 0x12, 0x20, 0x0a, 0x1c, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, - 0x54, 0x5f, 0x4d, 0x41, 0x47, 0x49, 0x43, 0x41, 0x4c, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x10, - 0x10, 0x12, 0x22, 0x0a, 0x1e, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, - 0x45, 0x52, 0x54, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x41, 0x4d, - 0x41, 0x47, 0x45, 0x10, 0x11, 0x12, 0x22, 0x0a, 0x1e, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, - 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x4f, 0x55, 0x54, 0x47, 0x4f, 0x49, 0x4e, 0x47, - 0x5f, 0x44, 0x41, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x12, 0x12, 0x21, 0x0a, 0x1d, 0x4f, 0x56, 0x45, - 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x41, - 0x42, 0x4c, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x49, 0x53, 0x54, 0x10, 0x13, 0x12, 0x18, 0x0a, 0x14, - 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x44, - 0x45, 0x41, 0x54, 0x48, 0x10, 0x14, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, - 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, - 0x10, 0x15, 0x12, 0x20, 0x0a, 0x1c, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, - 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x52, 0x45, 0x43, 0x45, 0x49, 0x56, - 0x45, 0x44, 0x10, 0x16, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, - 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x53, 0x48, 0x41, 0x52, 0x44, 0x10, 0x17, 0x12, 0x1e, - 0x0a, 0x1a, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, - 0x5f, 0x44, 0x45, 0x41, 0x44, 0x4c, 0x59, 0x5f, 0x42, 0x4c, 0x4f, 0x57, 0x10, 0x18, 0x2a, 0x6b, - 0x0a, 0x11, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x50, 0x48, - 0x41, 0x53, 0x45, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x53, 0x52, 0x53, 0x50, 0x5f, 0x52, 0x4f, - 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x41, 0x4c, 0x49, 0x56, 0x45, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, - 0x6b, 0x5f, 0x53, 0x52, 0x53, 0x50, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x42, 0x41, - 0x53, 0x45, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x52, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, - 0x53, 0x52, 0x53, 0x50, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x56, 0x49, 0x53, 0x49, - 0x42, 0x4c, 0x45, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x52, 0x10, 0x02, 0x2a, 0x81, 0x04, 0x0a, 0x16, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x41, - 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, - 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1d, - 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, - 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, - 0x49, 0x44, 0x5f, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, - 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x4f, 0x50, 0x5f, 0x4c, - 0x41, 0x4e, 0x45, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, - 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x44, 0x49, 0x41, 0x4e, 0x54, 0x5f, 0x4a, - 0x55, 0x4e, 0x47, 0x4c, 0x45, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, - 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x52, 0x45, 0x5f, 0x4a, 0x55, - 0x4e, 0x47, 0x4c, 0x45, 0x10, 0x05, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, - 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x44, 0x49, 0x41, 0x4e, 0x54, 0x5f, - 0x41, 0x4e, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x53, 0x10, 0x06, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, + 0x54, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x52, 0x45, 0x43, 0x45, 0x49, 0x56, 0x45, 0x44, 0x10, + 0x16, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, + 0x45, 0x52, 0x54, 0x5f, 0x53, 0x48, 0x41, 0x52, 0x44, 0x10, 0x17, 0x12, 0x1e, 0x0a, 0x1a, 0x4f, + 0x56, 0x45, 0x52, 0x48, 0x45, 0x41, 0x44, 0x5f, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x5f, 0x44, 0x45, + 0x41, 0x44, 0x4c, 0x59, 0x5f, 0x42, 0x4c, 0x4f, 0x57, 0x10, 0x18, 0x2a, 0x6b, 0x0a, 0x11, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x50, 0x48, 0x41, 0x53, 0x45, + 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x53, 0x52, 0x53, 0x50, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, + 0x4e, 0x5f, 0x41, 0x4c, 0x49, 0x56, 0x45, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x53, + 0x52, 0x53, 0x50, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x42, 0x41, 0x53, 0x45, 0x5f, + 0x54, 0x49, 0x4d, 0x45, 0x52, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x53, 0x52, 0x53, + 0x50, 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x56, 0x49, 0x53, 0x49, 0x42, 0x4c, 0x45, + 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x52, 0x10, 0x02, 0x2a, 0x81, 0x04, 0x0a, 0x16, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, + 0x4f, 0x52, 0x59, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x44, + 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x4f, 0x54, + 0x54, 0x4f, 0x4d, 0x5f, 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x49, 0x44, 0x5f, + 0x4c, 0x41, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, + 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x4f, 0x50, 0x5f, 0x4c, 0x41, 0x4e, 0x45, + 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x44, 0x49, 0x41, 0x4e, 0x54, 0x5f, 0x4a, 0x55, 0x4e, 0x47, + 0x4c, 0x45, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, + 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x52, 0x45, 0x5f, 0x4a, 0x55, 0x4e, 0x47, 0x4c, + 0x45, 0x10, 0x05, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x44, 0x49, 0x41, 0x4e, 0x54, 0x5f, 0x41, 0x4e, 0x43, + 0x49, 0x45, 0x4e, 0x54, 0x53, 0x10, 0x06, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x52, 0x45, 0x5f, 0x41, 0x4e, + 0x43, 0x49, 0x45, 0x4e, 0x54, 0x53, 0x10, 0x07, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x44, 0x49, 0x41, 0x4e, + 0x54, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x50, 0x10, 0x08, 0x12, + 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x44, 0x49, 0x52, 0x45, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, + 0x50, 0x10, 0x09, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x49, 0x56, 0x45, 0x52, 0x10, 0x0a, 0x12, 0x1c, 0x0a, 0x18, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x4f, + 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x50, 0x49, 0x54, 0x10, 0x0b, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x4f, + 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x44, 0x49, + 0x41, 0x4e, 0x54, 0x5f, 0x42, 0x41, 0x53, 0x45, 0x10, 0x0c, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x52, 0x45, - 0x5f, 0x41, 0x4e, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x53, 0x10, 0x07, 0x12, 0x25, 0x0a, 0x21, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x41, 0x44, - 0x49, 0x41, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x50, - 0x10, 0x08, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, - 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x52, 0x45, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, - 0x53, 0x48, 0x4f, 0x50, 0x10, 0x09, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, - 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x49, 0x56, 0x45, 0x52, 0x10, 0x0a, 0x12, - 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x52, 0x4f, 0x53, 0x48, 0x41, 0x4e, 0x5f, 0x50, 0x49, 0x54, 0x10, 0x0b, 0x12, 0x1e, 0x0a, - 0x1a, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, - 0x41, 0x44, 0x49, 0x41, 0x4e, 0x54, 0x5f, 0x42, 0x41, 0x53, 0x45, 0x10, 0x0c, 0x12, 0x1b, 0x0a, - 0x17, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, - 0x49, 0x52, 0x45, 0x5f, 0x42, 0x41, 0x53, 0x45, 0x10, 0x0d, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x4f, 0x55, 0x4e, - 0x54, 0x41, 0x49, 0x4e, 0x10, 0x0e, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, - 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x0f, 0x2a, - 0xe6, 0x01, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, - 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x1c, 0x0a, 0x18, - 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, - 0x47, 0x45, 0x54, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, - 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, - 0x54, 0x5f, 0x53, 0x45, 0x4c, 0x46, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, + 0x5f, 0x42, 0x41, 0x53, 0x45, 0x10, 0x0d, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x54, 0x41, 0x49, + 0x4e, 0x10, 0x0e, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x53, 0x49, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x0f, 0x2a, 0xe6, 0x01, 0x0a, + 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, + 0x52, 0x47, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, + 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, + 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x4f, 0x54, 0x41, 0x5f, + 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x53, + 0x45, 0x4c, 0x46, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, + 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x41, 0x4c, 0x4c, + 0x59, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x10, 0x02, 0x12, 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, - 0x41, 0x4c, 0x4c, 0x59, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x10, 0x02, 0x12, 0x22, 0x0a, 0x1e, 0x44, - 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, 0x47, - 0x45, 0x54, 0x5f, 0x41, 0x4c, 0x4c, 0x59, 0x5f, 0x43, 0x52, 0x45, 0x45, 0x50, 0x10, 0x03, 0x12, - 0x22, 0x0a, 0x1e, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, - 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x45, 0x4e, 0x45, 0x4d, 0x59, 0x5f, 0x48, 0x45, 0x52, - 0x4f, 0x10, 0x04, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, - 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x45, 0x4e, 0x45, 0x4d, 0x59, - 0x5f, 0x43, 0x52, 0x45, 0x45, 0x50, 0x10, 0x05, 0x2a, 0x98, 0x08, 0x0a, 0x0d, 0x45, 0x48, 0x65, - 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, - 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4e, 0x6f, - 0x6e, 0x65, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, - 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x41, 0x78, 0x65, 0x54, 0x6f, 0x74, 0x61, 0x6c, - 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x10, 0xd0, 0x0f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x48, 0x75, 0x6e, 0x67, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x10, - 0xd1, 0x0f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x65, 0x6c, - 0x69, 0x78, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x10, 0xd2, 0x0f, 0x12, 0x27, 0x0a, 0x22, 0x6b, - 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, - 0x75, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x61, 0x64, 0x65, 0x44, 0x61, 0x6d, 0x61, 0x67, - 0x65, 0x10, 0xd3, 0x0f, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, - 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x65, 0x72, 0x73, 0x65, 0x72, 0x6b, 0x65, - 0x72, 0x73, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, - 0xd4, 0x0f, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x65, 0x72, 0x73, 0x65, 0x72, 0x6b, 0x65, 0x72, 0x73, - 0x43, 0x61, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x48, 0x69, 0x74, 0x41, 0x76, 0x65, - 0x72, 0x61, 0x67, 0x65, 0x10, 0xd5, 0x0f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x48, 0x65, - 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x65, 0x72, 0x73, 0x65, - 0x72, 0x6b, 0x65, 0x72, 0x73, 0x43, 0x61, 0x6c, 0x6c, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x55, 0x6e, - 0x69, 0x74, 0x73, 0x48, 0x69, 0x74, 0x10, 0xd6, 0x0f, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, - 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x65, 0x72, - 0x73, 0x65, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x43, 0x61, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x41, - 0x74, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x10, 0xd7, 0x0f, 0x12, 0x34, - 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x5f, 0x42, 0x65, 0x72, 0x73, 0x65, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x43, 0x61, 0x6c, 0x6c, - 0x4f, 0x74, 0x68, 0x65, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x54, 0x61, 0x6b, 0x65, - 0x6e, 0x10, 0xd8, 0x0f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, - 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x48, 0x75, - 0x6e, 0x67, 0x65, 0x72, 0x43, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xd9, 0x0f, - 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x48, 0x75, 0x6e, 0x67, 0x65, 0x72, - 0x50, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x10, 0xda, 0x0f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, - 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x48, 0x75, - 0x6e, 0x67, 0x65, 0x72, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x10, 0xdb, 0x0f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, - 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, - 0x72, 0x48, 0x65, 0x6c, 0x69, 0x78, 0x50, 0x72, 0x6f, 0x63, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, - 0xdc, 0x0f, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x65, 0x6c, - 0x69, 0x78, 0x48, 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x63, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, - 0xdd, 0x0f, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x65, 0x6c, - 0x69, 0x78, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x48, 0x69, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, - 0x67, 0x65, 0x10, 0xde, 0x0f, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, - 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, - 0x48, 0x65, 0x6c, 0x69, 0x78, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x48, - 0x69, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xdf, 0x0f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, - 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, - 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x61, 0x64, 0x65, 0x43, 0x61, 0x73, 0x74, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x10, 0xe0, 0x0f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, - 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, 0x69, 0x6e, - 0x67, 0x42, 0x6c, 0x61, 0x64, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, - 0xe1, 0x0f, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x61, - 0x64, 0x65, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, - 0x75, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0xe2, 0x0f, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x48, + 0x41, 0x4c, 0x4c, 0x59, 0x5f, 0x43, 0x52, 0x45, 0x45, 0x50, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, + 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x41, 0x52, + 0x47, 0x45, 0x54, 0x5f, 0x45, 0x4e, 0x45, 0x4d, 0x59, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x10, 0x04, + 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x54, 0x41, 0x5f, 0x41, 0x42, 0x49, 0x4c, 0x49, 0x54, 0x59, + 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x45, 0x4e, 0x45, 0x4d, 0x59, 0x5f, 0x43, 0x52, + 0x45, 0x45, 0x50, 0x10, 0x05, 0x2a, 0x98, 0x08, 0x0a, 0x0d, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, + 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, + 0x00, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x41, 0x78, 0x65, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x61, 0x6d, + 0x61, 0x67, 0x65, 0x10, 0xd0, 0x0f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, + 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x48, 0x75, 0x6e, 0x67, 0x65, 0x72, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x10, 0xd1, 0x0f, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x65, 0x6c, 0x69, 0x78, 0x44, + 0x61, 0x6d, 0x61, 0x67, 0x65, 0x10, 0xd2, 0x0f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, - 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x61, 0x64, 0x65, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x44, - 0x61, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xe3, + 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x61, 0x64, 0x65, 0x44, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x10, 0xd3, + 0x0f, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x65, 0x72, 0x73, 0x65, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x43, + 0x61, 0x6c, 0x6c, 0x43, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xd4, 0x0f, 0x12, + 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x42, 0x65, 0x72, 0x73, 0x65, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x43, 0x61, 0x6c, + 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x73, 0x48, 0x69, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, + 0x65, 0x10, 0xd5, 0x0f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, + 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x65, 0x72, 0x73, 0x65, 0x72, 0x6b, 0x65, + 0x72, 0x73, 0x43, 0x61, 0x6c, 0x6c, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x55, 0x6e, 0x69, 0x74, 0x73, + 0x48, 0x69, 0x74, 0x10, 0xd6, 0x0f, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, + 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x65, 0x72, 0x73, 0x65, 0x72, + 0x6b, 0x65, 0x72, 0x73, 0x43, 0x61, 0x6c, 0x6c, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x74, 0x74, 0x61, + 0x63, 0x6b, 0x73, 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x10, 0xd7, 0x0f, 0x12, 0x34, 0x0a, 0x2f, 0x6b, + 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, + 0x65, 0x72, 0x73, 0x65, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x43, 0x61, 0x6c, 0x6c, 0x4f, 0x74, 0x68, + 0x65, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x54, 0x61, 0x6b, 0x65, 0x6e, 0x10, 0xd8, + 0x0f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x48, 0x75, 0x6e, 0x67, 0x65, + 0x72, 0x43, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xd9, 0x0f, 0x12, 0x32, 0x0a, + 0x2d, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x5f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x48, 0x75, 0x6e, 0x67, 0x65, 0x72, 0x50, 0x6f, 0x74, + 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xda, 0x0f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x61, 0x64, - 0x65, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x75, 0x66, 0x66, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, - 0x10, 0xe4, 0x0f, 0x2a, 0xe4, 0x04, 0x0a, 0x17, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, - 0x6f, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, - 0x0e, 0x0a, 0x0a, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, - 0x1a, 0x0a, 0x16, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x43, - 0x68, 0x61, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6b, - 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x50, 0x61, 0x72, 0x74, 0x6e, - 0x65, 0x72, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, - 0x6e, 0x69, 0x65, 0x64, 0x48, 0x4c, 0x54, 0x56, 0x54, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x4e, 0x6f, - 0x74, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, - 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x48, 0x4c, 0x54, 0x56, - 0x4e, 0x6f, 0x54, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x44, - 0x10, 0x04, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, - 0x65, 0x64, 0x48, 0x4c, 0x54, 0x56, 0x54, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x42, - 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, - 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x54, 0x65, 0x61, 0x6d, - 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x6b, - 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x53, 0x74, 0x75, 0x64, 0x65, - 0x6e, 0x74, 0x10, 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, - 0x6e, 0x69, 0x65, 0x64, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, - 0x10, 0x09, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, - 0x65, 0x64, 0x10, 0x40, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, - 0x6c, 0x6f, 0x77, 0x48, 0x4c, 0x54, 0x56, 0x54, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x49, 0x73, 0x42, - 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0x41, 0x12, 0x1c, 0x0a, 0x18, - 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x42, 0x72, 0x6f, - 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0x42, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x50, - 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x74, - 0x10, 0x43, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, - 0x77, 0x53, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, - 0x44, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, - 0x46, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x10, 0x45, 0x12, - 0x1c, 0x0a, 0x18, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x54, 0x61, - 0x6c, 0x6b, 0x65, 0x72, 0x49, 0x73, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0x46, 0x12, 0x1c, 0x0a, - 0x18, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x61, 0x63, - 0x68, 0x48, 0x65, 0x61, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x47, 0x12, 0x17, 0x0a, 0x13, 0x6b, - 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x61, 0x6d, 0x65, 0x54, 0x65, - 0x61, 0x6d, 0x10, 0x48, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, - 0x6c, 0x6f, 0x77, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x10, 0x49, 0x12, 0x1b, 0x0a, - 0x17, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0x4a, 0x2a, 0x42, 0x0a, 0x10, 0x45, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x12, - 0x0a, 0x0e, 0x65, 0x50, 0x45, 0x5f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, - 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x65, 0x50, 0x45, 0x5f, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x74, - 0x72, 0x65, 0x61, 0x6b, 0x5f, 0x67, 0x6f, 0x64, 0x6c, 0x69, 0x6b, 0x65, 0x10, 0x01, 0x42, 0x25, - 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, - 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, - 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x54, 0x79, 0x70, 0x65, 0x5f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x48, 0x75, 0x6e, 0x67, 0x65, + 0x72, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x10, 0xdb, 0x0f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, + 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x65, + 0x6c, 0x69, 0x78, 0x50, 0x72, 0x6f, 0x63, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xdc, 0x0f, 0x12, + 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x65, 0x6c, 0x69, 0x78, 0x48, + 0x65, 0x72, 0x6f, 0x50, 0x72, 0x6f, 0x63, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xdd, 0x0f, 0x12, + 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x65, 0x6c, 0x69, 0x78, 0x48, + 0x65, 0x72, 0x6f, 0x65, 0x73, 0x48, 0x69, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x10, + 0xde, 0x0f, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x65, 0x6c, + 0x69, 0x78, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x48, 0x69, 0x74, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xdf, 0x0f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x48, 0x65, + 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, 0x69, + 0x6e, 0x67, 0x42, 0x6c, 0x61, 0x64, 0x65, 0x43, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x10, 0xe0, 0x0f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, + 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x6c, + 0x61, 0x64, 0x65, 0x4b, 0x69, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe1, 0x0f, 0x12, + 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x61, 0x64, 0x65, 0x41, + 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x75, 0x6c, 0x6c, + 0x65, 0x64, 0x10, 0xe2, 0x0f, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, + 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, 0x69, 0x6e, 0x67, + 0x42, 0x6c, 0x61, 0x64, 0x65, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x44, 0x61, 0x6d, 0x61, + 0x67, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xe3, 0x0f, 0x12, 0x30, + 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x5f, 0x43, 0x75, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x42, 0x6c, 0x61, 0x64, 0x65, 0x48, 0x65, + 0x72, 0x6f, 0x42, 0x75, 0x66, 0x66, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x10, 0xe4, 0x0f, + 0x2a, 0xe4, 0x04, 0x0a, 0x17, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x56, 0x6f, 0x69, 0x63, + 0x65, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x0a, + 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, + 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x43, 0x68, 0x61, 0x74, + 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x50, 0x56, 0x4c, + 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x10, + 0x02, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, + 0x64, 0x48, 0x4c, 0x54, 0x56, 0x54, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x53, 0x70, + 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x50, 0x56, + 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x48, 0x4c, 0x54, 0x56, 0x4e, 0x6f, 0x54, + 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x44, 0x10, 0x04, 0x12, + 0x28, 0x0a, 0x24, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x48, + 0x4c, 0x54, 0x56, 0x54, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x42, 0x72, 0x6f, 0x61, + 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0x05, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x50, 0x56, + 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x70, 0x65, + 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x50, 0x56, 0x4c, + 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x53, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x10, + 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, + 0x64, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0x09, 0x12, + 0x10, 0x0a, 0x0c, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x10, + 0x40, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, + 0x48, 0x4c, 0x54, 0x56, 0x54, 0x61, 0x6c, 0x6b, 0x65, 0x72, 0x49, 0x73, 0x42, 0x72, 0x6f, 0x61, + 0x64, 0x63, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0x41, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x50, 0x56, + 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, + 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0x42, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x50, 0x56, 0x4c, 0x53, + 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x41, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x74, 0x10, 0x43, 0x12, + 0x1d, 0x0a, 0x19, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x74, + 0x75, 0x64, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0x44, 0x12, 0x1c, + 0x0a, 0x18, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x46, 0x65, 0x6c, + 0x6c, 0x6f, 0x77, 0x53, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x10, 0x45, 0x12, 0x1c, 0x0a, 0x18, + 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x54, 0x61, 0x6c, 0x6b, 0x65, + 0x72, 0x49, 0x73, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0x46, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x50, + 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x61, 0x63, 0x68, 0x48, 0x65, + 0x61, 0x72, 0x54, 0x65, 0x61, 0x6d, 0x10, 0x47, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x50, 0x56, 0x4c, + 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x61, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x10, + 0x48, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x50, 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, + 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x10, 0x49, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x50, + 0x56, 0x4c, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, + 0x43, 0x6f, 0x61, 0x63, 0x68, 0x10, 0x4a, 0x2a, 0x42, 0x0a, 0x10, 0x45, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x0e, 0x65, + 0x50, 0x45, 0x5f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x42, 0x6c, 0x6f, 0x6f, 0x64, 0x10, 0x00, 0x12, + 0x1a, 0x0a, 0x16, 0x65, 0x50, 0x45, 0x5f, 0x4b, 0x69, 0x6c, 0x6c, 0x73, 0x74, 0x72, 0x65, 0x61, + 0x6b, 0x5f, 0x67, 0x6f, 0x64, 0x6c, 0x69, 0x6b, 0x65, 0x10, 0x01, 0x42, 0x25, 0x5a, 0x23, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, + 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, + 0x74, 0x61, } var ( @@ -17037,7 +17240,7 @@ func file_dota_usermessages_proto_rawDescGZIP() []byte { } var file_dota_usermessages_proto_enumTypes = make([]protoimpl.EnumInfo, 17) -var file_dota_usermessages_proto_msgTypes = make([]protoimpl.MessageInfo, 180) +var file_dota_usermessages_proto_msgTypes = make([]protoimpl.MessageInfo, 182) var file_dota_usermessages_proto_goTypes = []interface{}{ (EDotaUserMessages)(0), // 0: dota.EDotaUserMessages (DOTA_CHAT_MESSAGE)(0), // 1: dota.DOTA_CHAT_MESSAGE @@ -17064,275 +17267,278 @@ var file_dota_usermessages_proto_goTypes = []interface{}{ (*CDOTAUserMsg_CombatHeroPositions)(nil), // 22: dota.CDOTAUserMsg_CombatHeroPositions (*CDOTAUserMsg_CombatLogBulkData)(nil), // 23: dota.CDOTAUserMsg_CombatLogBulkData (*CDOTAUserMsg_ProjectileParticleCPData)(nil), // 24: dota.CDOTAUserMsg_ProjectileParticleCPData - (*CDOTAUserMsg_MiniKillCamInfo)(nil), // 25: dota.CDOTAUserMsg_MiniKillCamInfo - (*CDOTAUserMsg_GlobalLightColor)(nil), // 26: dota.CDOTAUserMsg_GlobalLightColor - (*CDOTAUserMsg_GlobalLightDirection)(nil), // 27: dota.CDOTAUserMsg_GlobalLightDirection - (*CDOTAUserMsg_LocationPing)(nil), // 28: dota.CDOTAUserMsg_LocationPing - (*CDOTAUserMsg_PingConfirmation)(nil), // 29: dota.CDOTAUserMsg_PingConfirmation - (*CDOTAUserMsg_ItemAlert)(nil), // 30: dota.CDOTAUserMsg_ItemAlert - (*CDOTAUserMsg_EnemyItemAlert)(nil), // 31: dota.CDOTAUserMsg_EnemyItemAlert - (*CDOTAUserMsg_ModifierAlert)(nil), // 32: dota.CDOTAUserMsg_ModifierAlert - (*CDOTAUserMsg_HPManaAlert)(nil), // 33: dota.CDOTAUserMsg_HPManaAlert - (*CDOTAUserMsg_NeutralCampAlert)(nil), // 34: dota.CDOTAUserMsg_NeutralCampAlert - (*CDOTAUserMsg_GlyphAlert)(nil), // 35: dota.CDOTAUserMsg_GlyphAlert - (*CDOTAUserMsg_RadarAlert)(nil), // 36: dota.CDOTAUserMsg_RadarAlert - (*CDOTAUserMsg_WillPurchaseAlert)(nil), // 37: dota.CDOTAUserMsg_WillPurchaseAlert - (*CDOTAUserMsg_EmptyTeleportAlert)(nil), // 38: dota.CDOTAUserMsg_EmptyTeleportAlert - (*CDOTAUserMsg_MarsArenaOfBloodAttack)(nil), // 39: dota.CDOTAUserMsg_MarsArenaOfBloodAttack - (*CDOTAEntityMsg_InvokerSpellCast)(nil), // 40: dota.CDOTAEntityMsg_InvokerSpellCast - (*CDOTAUserMsg_BuyBackStateAlert)(nil), // 41: dota.CDOTAUserMsg_BuyBackStateAlert - (*CDOTAUserMsg_QuickBuyAlert)(nil), // 42: dota.CDOTAUserMsg_QuickBuyAlert - (*CDOTAUserMsg_CourierKilledAlert)(nil), // 43: dota.CDOTAUserMsg_CourierKilledAlert - (*CDOTAUserMsg_MinimapEvent)(nil), // 44: dota.CDOTAUserMsg_MinimapEvent - (*CDOTAUserMsg_MapLine)(nil), // 45: dota.CDOTAUserMsg_MapLine - (*CDOTAUserMsg_MinimapDebugPoint)(nil), // 46: dota.CDOTAUserMsg_MinimapDebugPoint - (*CDOTAUserMsg_CreateLinearProjectile)(nil), // 47: dota.CDOTAUserMsg_CreateLinearProjectile - (*CDOTAUserMsg_DestroyLinearProjectile)(nil), // 48: dota.CDOTAUserMsg_DestroyLinearProjectile - (*CDOTAUserMsg_DodgeTrackingProjectiles)(nil), // 49: dota.CDOTAUserMsg_DodgeTrackingProjectiles - (*CDOTAUserMsg_SpectatorPlayerClick)(nil), // 50: dota.CDOTAUserMsg_SpectatorPlayerClick - (*CDOTAUserMsg_SpectatorPlayerUnitOrders)(nil), // 51: dota.CDOTAUserMsg_SpectatorPlayerUnitOrders - (*CDOTAUserMsg_NevermoreRequiem)(nil), // 52: dota.CDOTAUserMsg_NevermoreRequiem - (*CDOTAUserMsg_InvalidCommand)(nil), // 53: dota.CDOTAUserMsg_InvalidCommand - (*CDOTAUserMsg_HudError)(nil), // 54: dota.CDOTAUserMsg_HudError - (*CDOTAUserMsg_SharedCooldown)(nil), // 55: dota.CDOTAUserMsg_SharedCooldown - (*CDOTAUserMsg_SetNextAutobuyItem)(nil), // 56: dota.CDOTAUserMsg_SetNextAutobuyItem - (*CDOTAUserMsg_HalloweenDrops)(nil), // 57: dota.CDOTAUserMsg_HalloweenDrops - (*CDOTAUserMsg_PredictionResult)(nil), // 58: dota.CDOTAUserMsg_PredictionResult - (*CDOTAResponseQuerySerialized)(nil), // 59: dota.CDOTAResponseQuerySerialized - (*CDOTASpeechMatchOnClient)(nil), // 60: dota.CDOTASpeechMatchOnClient - (*CDOTAUserMsg_UnitEvent)(nil), // 61: dota.CDOTAUserMsg_UnitEvent - (*CDOTAUserMsg_ItemPurchased)(nil), // 62: dota.CDOTAUserMsg_ItemPurchased - (*CDOTAUserMsg_ItemSold)(nil), // 63: dota.CDOTAUserMsg_ItemSold - (*CDOTAUserMsg_ItemFound)(nil), // 64: dota.CDOTAUserMsg_ItemFound - (*CDOTAUserMsg_OverheadEvent)(nil), // 65: dota.CDOTAUserMsg_OverheadEvent - (*CDOTAUserMsg_TutorialTipInfo)(nil), // 66: dota.CDOTAUserMsg_TutorialTipInfo - (*CDOTAUserMsg_TutorialFinish)(nil), // 67: dota.CDOTAUserMsg_TutorialFinish - (*CDOTAUserMsg_TutorialMinimapPosition)(nil), // 68: dota.CDOTAUserMsg_TutorialMinimapPosition - (*CDOTAUserMsg_SendGenericToolTip)(nil), // 69: dota.CDOTAUserMsg_SendGenericToolTip - (*CDOTAUserMsg_WorldLine)(nil), // 70: dota.CDOTAUserMsg_WorldLine - (*CDOTAUserMsg_ChatWheel)(nil), // 71: dota.CDOTAUserMsg_ChatWheel - (*CDOTAUserMsg_ReceivedXmasGift)(nil), // 72: dota.CDOTAUserMsg_ReceivedXmasGift - (*CDOTAUserMsg_ShowSurvey)(nil), // 73: dota.CDOTAUserMsg_ShowSurvey - (*CDOTAUserMsg_UpdateSharedContent)(nil), // 74: dota.CDOTAUserMsg_UpdateSharedContent - (*CDOTAUserMsg_TutorialRequestExp)(nil), // 75: dota.CDOTAUserMsg_TutorialRequestExp - (*CDOTAUserMsg_TutorialFade)(nil), // 76: dota.CDOTAUserMsg_TutorialFade - (*CDOTAUserMsg_TutorialPingMinimap)(nil), // 77: dota.CDOTAUserMsg_TutorialPingMinimap - (*CDOTAUserMsg_GamerulesStateChanged)(nil), // 78: dota.CDOTAUserMsg_GamerulesStateChanged - (*CDOTAUserMsg_AddQuestLogEntry)(nil), // 79: dota.CDOTAUserMsg_AddQuestLogEntry - (*CDOTAUserMsg_SendStatPopup)(nil), // 80: dota.CDOTAUserMsg_SendStatPopup - (*CDOTAUserMsg_DismissAllStatPopups)(nil), // 81: dota.CDOTAUserMsg_DismissAllStatPopups - (*CDOTAUserMsg_SendRoshanSpectatorPhase)(nil), // 82: dota.CDOTAUserMsg_SendRoshanSpectatorPhase - (*CDOTAUserMsg_SendRoshanPopup)(nil), // 83: dota.CDOTAUserMsg_SendRoshanPopup - (*CDOTAUserMsg_SendFinalGold)(nil), // 84: dota.CDOTAUserMsg_SendFinalGold - (*CDOTAUserMsg_CustomMsg)(nil), // 85: dota.CDOTAUserMsg_CustomMsg - (*CDOTAUserMsg_CoachHUDPing)(nil), // 86: dota.CDOTAUserMsg_CoachHUDPing - (*CDOTAUserMsg_ClientLoadGridNav)(nil), // 87: dota.CDOTAUserMsg_ClientLoadGridNav - (*CDOTAUserMsg_TE_Projectile)(nil), // 88: dota.CDOTAUserMsg_TE_Projectile - (*CDOTAUserMsg_TE_ProjectileLoc)(nil), // 89: dota.CDOTAUserMsg_TE_ProjectileLoc - (*CDOTAUserMsg_TE_DestroyProjectile)(nil), // 90: dota.CDOTAUserMsg_TE_DestroyProjectile - (*CDOTAUserMsg_TE_DotaBloodImpact)(nil), // 91: dota.CDOTAUserMsg_TE_DotaBloodImpact - (*CDOTAUserMsg_AbilityPing)(nil), // 92: dota.CDOTAUserMsg_AbilityPing - (*CDOTAUserMsg_TE_UnitAnimation)(nil), // 93: dota.CDOTAUserMsg_TE_UnitAnimation - (*CDOTAUserMsg_TE_UnitAnimationEnd)(nil), // 94: dota.CDOTAUserMsg_TE_UnitAnimationEnd - (*CDOTAUserMsg_ShowGenericPopup)(nil), // 95: dota.CDOTAUserMsg_ShowGenericPopup - (*CDOTAUserMsg_VoteStart)(nil), // 96: dota.CDOTAUserMsg_VoteStart - (*CDOTAUserMsg_VoteUpdate)(nil), // 97: dota.CDOTAUserMsg_VoteUpdate - (*CDOTAUserMsg_VoteEnd)(nil), // 98: dota.CDOTAUserMsg_VoteEnd - (*CDOTAUserMsg_BoosterStatePlayer)(nil), // 99: dota.CDOTAUserMsg_BoosterStatePlayer - (*CDOTAUserMsg_BoosterState)(nil), // 100: dota.CDOTAUserMsg_BoosterState - (*CDOTAUserMsg_PlayerMMR)(nil), // 101: dota.CDOTAUserMsg_PlayerMMR - (*CDOTAUserMsg_AbilitySteal)(nil), // 102: dota.CDOTAUserMsg_AbilitySteal - (*CDOTAUserMsg_StatsHeroLookup)(nil), // 103: dota.CDOTAUserMsg_StatsHeroLookup - (*CDOTAUserMsg_StatsHeroPositionInfo)(nil), // 104: dota.CDOTAUserMsg_StatsHeroPositionInfo - (*CDOTAUserMsg_StatsHeroMinuteDetails)(nil), // 105: dota.CDOTAUserMsg_StatsHeroMinuteDetails - (*CDOTAUserMsg_StatsTeamMinuteDetails)(nil), // 106: dota.CDOTAUserMsg_StatsTeamMinuteDetails - (*CDOTAUserMsg_StatsPlayerKillShare)(nil), // 107: dota.CDOTAUserMsg_StatsPlayerKillShare - (*CDOTAUserMsg_StatsKillDetails)(nil), // 108: dota.CDOTAUserMsg_StatsKillDetails - (*CDOTAUserMsg_StatsMatchDetails)(nil), // 109: dota.CDOTAUserMsg_StatsMatchDetails - (*CDOTAUserMsg_MiniTaunt)(nil), // 110: dota.CDOTAUserMsg_MiniTaunt - (*CDOTAUserMsg_SpeechBubble)(nil), // 111: dota.CDOTAUserMsg_SpeechBubble - (*CDOTAUserMsg_CustomHeaderMessage)(nil), // 112: dota.CDOTAUserMsg_CustomHeaderMessage - (*CMsgHeroAbilityStat)(nil), // 113: dota.CMsgHeroAbilityStat - (*CMsgCombatAnalyzerPlayerStat)(nil), // 114: dota.CMsgCombatAnalyzerPlayerStat - (*CMsgCombatAnalyzerStats)(nil), // 115: dota.CMsgCombatAnalyzerStats - (*CDOTAUserMsg_BeastChat)(nil), // 116: dota.CDOTAUserMsg_BeastChat - (*CDOTAUserMsg_CustomHudElement_Create)(nil), // 117: dota.CDOTAUserMsg_CustomHudElement_Create - (*CDOTAUserMsg_CustomHudElement_Modify)(nil), // 118: dota.CDOTAUserMsg_CustomHudElement_Modify - (*CDOTAUserMsg_CustomHudElement_Destroy)(nil), // 119: dota.CDOTAUserMsg_CustomHudElement_Destroy - (*CDOTAUserMsg_CompendiumStatePlayer)(nil), // 120: dota.CDOTAUserMsg_CompendiumStatePlayer - (*CDOTAUserMsg_CompendiumState)(nil), // 121: dota.CDOTAUserMsg_CompendiumState - (*CDOTAUserMsg_ProjectionAbility)(nil), // 122: dota.CDOTAUserMsg_ProjectionAbility - (*CDOTAUserMsg_ProjectionEvent)(nil), // 123: dota.CDOTAUserMsg_ProjectionEvent - (*CDOTAUserMsg_XPAlert)(nil), // 124: dota.CDOTAUserMsg_XPAlert - (*CDOTAUserMsg_TalentTreeAlert)(nil), // 125: dota.CDOTAUserMsg_TalentTreeAlert - (*CDOTAUserMsg_UpdateQuestProgress)(nil), // 126: dota.CDOTAUserMsg_UpdateQuestProgress - (*CDOTAUserMsg_QuestStatus)(nil), // 127: dota.CDOTAUserMsg_QuestStatus - (*CDOTAUserMsg_SuggestHeroPick)(nil), // 128: dota.CDOTAUserMsg_SuggestHeroPick - (*CDOTAUserMsg_SuggestHeroRole)(nil), // 129: dota.CDOTAUserMsg_SuggestHeroRole - (*CDOTAUserMsg_KillcamDamageTaken)(nil), // 130: dota.CDOTAUserMsg_KillcamDamageTaken - (*CDOTAUserMsg_SelectPenaltyGold)(nil), // 131: dota.CDOTAUserMsg_SelectPenaltyGold - (*CDOTAUserMsg_RollDiceResult)(nil), // 132: dota.CDOTAUserMsg_RollDiceResult - (*CDOTAUserMsg_FlipCoinResult)(nil), // 133: dota.CDOTAUserMsg_FlipCoinResult - (*CDOTAUserMessage_RequestItemSuggestions)(nil), // 134: dota.CDOTAUserMessage_RequestItemSuggestions - (*CDOTAUserMessage_TeamCaptainChanged)(nil), // 135: dota.CDOTAUserMessage_TeamCaptainChanged - (*CDOTAUserMsg_ChatWheelCooldown)(nil), // 136: dota.CDOTAUserMsg_ChatWheelCooldown - (*CDOTAUserMsg_HeroRelicProgress)(nil), // 137: dota.CDOTAUserMsg_HeroRelicProgress - (*CDOTAUserMsg_AbilityDraftRequestAbility)(nil), // 138: dota.CDOTAUserMsg_AbilityDraftRequestAbility - (*CDOTAUserMsg_DamageReport)(nil), // 139: dota.CDOTAUserMsg_DamageReport - (*CDOTAUserMsg_SalutePlayer)(nil), // 140: dota.CDOTAUserMsg_SalutePlayer - (*CDOTAUserMsg_TipAlert)(nil), // 141: dota.CDOTAUserMsg_TipAlert - (*CDOTAUserMsg_ReplaceQueryUnit)(nil), // 142: dota.CDOTAUserMsg_ReplaceQueryUnit - (*CDOTAUserMsg_ESArcanaCombo)(nil), // 143: dota.CDOTAUserMsg_ESArcanaCombo - (*CDOTAUserMsg_ESArcanaComboSummary)(nil), // 144: dota.CDOTAUserMsg_ESArcanaComboSummary - (*CDOTAUserMsg_OMArcanaCombo)(nil), // 145: dota.CDOTAUserMsg_OMArcanaCombo - (*CDOTAUserMsg_HighFiveCompleted)(nil), // 146: dota.CDOTAUserMsg_HighFiveCompleted - (*CDOTAUserMsg_HighFiveLeftHanging)(nil), // 147: dota.CDOTAUserMsg_HighFiveLeftHanging - (*CDOTAUserMsg_ShovelUnearth)(nil), // 148: dota.CDOTAUserMsg_ShovelUnearth - (*CDOTAUserMsg_AllStarEvent)(nil), // 149: dota.CDOTAUserMsg_AllStarEvent - (*CDOTAUserMsg_QueuedOrderRemoved)(nil), // 150: dota.CDOTAUserMsg_QueuedOrderRemoved - (*CDOTAUserMsg_DebugChallenge)(nil), // 151: dota.CDOTAUserMsg_DebugChallenge - (*CDOTAUserMsg_FoundNeutralItem)(nil), // 152: dota.CDOTAUserMsg_FoundNeutralItem - (*CDOTAUserMsg_OutpostCaptured)(nil), // 153: dota.CDOTAUserMsg_OutpostCaptured - (*CDOTAUserMsg_OutpostGrantedXP)(nil), // 154: dota.CDOTAUserMsg_OutpostGrantedXP - (*CDOTAUserMsg_MoveCameraToUnit)(nil), // 155: dota.CDOTAUserMsg_MoveCameraToUnit - (*CDOTAUserMsg_PauseMinigameData)(nil), // 156: dota.CDOTAUserMsg_PauseMinigameData - (*CDOTAUserMsg_VersusScene_PlayerBehavior)(nil), // 157: dota.CDOTAUserMsg_VersusScene_PlayerBehavior - (*CDOTAUserMsg_QoP_ArcanaSummary)(nil), // 158: dota.CDOTAUserMsg_QoP_ArcanaSummary - (*CDOTAUserMsg_HotPotato_Created)(nil), // 159: dota.CDOTAUserMsg_HotPotato_Created - (*CDOTAUserMsg_HotPotato_Exploded)(nil), // 160: dota.CDOTAUserMsg_HotPotato_Exploded - (*CDOTAUserMsg_WK_Arcana_Progress)(nil), // 161: dota.CDOTAUserMsg_WK_Arcana_Progress - (*CDOTAUserMsg_GuildChallenge_Progress)(nil), // 162: dota.CDOTAUserMsg_GuildChallenge_Progress - (*CDOTAUserMsg_WRArcanaProgress)(nil), // 163: dota.CDOTAUserMsg_WRArcanaProgress - (*CDOTAUserMsg_WRArcanaSummary)(nil), // 164: dota.CDOTAUserMsg_WRArcanaSummary - (*CDOTAUserMsg_EmptyItemSlotAlert)(nil), // 165: dota.CDOTAUserMsg_EmptyItemSlotAlert - (*CDOTAUserMsg_AghsStatusAlert)(nil), // 166: dota.CDOTAUserMsg_AghsStatusAlert - (*CDOTAUserMsg_MutedPlayers)(nil), // 167: dota.CDOTAUserMsg_MutedPlayers - (*CDOTAUserMsg_ContextualTip)(nil), // 168: dota.CDOTAUserMsg_ContextualTip - (*CDOTAUserMsg_ChatMessage)(nil), // 169: dota.CDOTAUserMsg_ChatMessage - (*CDOTAUserMsg_RockPaperScissorsStarted)(nil), // 170: dota.CDOTAUserMsg_RockPaperScissorsStarted - (*CDOTAUserMsg_RockPaperScissorsFinished)(nil), // 171: dota.CDOTAUserMsg_RockPaperScissorsFinished - (*CDOTAUserMsg_DuelOpponentKilled)(nil), // 172: dota.CDOTAUserMsg_DuelOpponentKilled - (*CDOTAUserMsg_DuelAccepted)(nil), // 173: dota.CDOTAUserMsg_DuelAccepted - (*CDOTAUserMsg_DuelRequested)(nil), // 174: dota.CDOTAUserMsg_DuelRequested - (*CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled)(nil), // 175: dota.CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled - (*CDOTAUserMsg_PlayerDraftSuggestPick)(nil), // 176: dota.CDOTAUserMsg_PlayerDraftSuggestPick - (*CDOTAUserMsg_PlayerDraftPick)(nil), // 177: dota.CDOTAUserMsg_PlayerDraftPick - (*CDOTAUserMsg_MiniKillCamInfo_Attacker)(nil), // 178: dota.CDOTAUserMsg_MiniKillCamInfo.Attacker - (*CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability)(nil), // 179: dota.CDOTAUserMsg_MiniKillCamInfo.Attacker.Ability - (*CDOTAUserMsg_CourierKilledAlert_LostItem)(nil), // 180: dota.CDOTAUserMsg_CourierKilledAlert.LostItem - (*CDOTAUserMsg_PredictionResult_Prediction)(nil), // 181: dota.CDOTAUserMsg_PredictionResult.Prediction - (*CDOTAResponseQuerySerialized_Fact)(nil), // 182: dota.CDOTAResponseQuerySerialized.Fact - (*CDOTAUserMsg_UnitEvent_Interval)(nil), // 183: dota.CDOTAUserMsg_UnitEvent.Interval - (*CDOTAUserMsg_UnitEvent_Speech)(nil), // 184: dota.CDOTAUserMsg_UnitEvent.Speech - (*CDOTAUserMsg_UnitEvent_SpeechMute)(nil), // 185: dota.CDOTAUserMsg_UnitEvent.SpeechMute - (*CDOTAUserMsg_UnitEvent_AddGesture)(nil), // 186: dota.CDOTAUserMsg_UnitEvent.AddGesture - (*CDOTAUserMsg_UnitEvent_RemoveGesture)(nil), // 187: dota.CDOTAUserMsg_UnitEvent.RemoveGesture - (*CDOTAUserMsg_UnitEvent_BloodImpact)(nil), // 188: dota.CDOTAUserMsg_UnitEvent.BloodImpact - (*CDOTAUserMsg_UnitEvent_FadeGesture)(nil), // 189: dota.CDOTAUserMsg_UnitEvent.FadeGesture - (*CDOTAUserMsg_StatsHeroPositionInfo_PositionPair)(nil), // 190: dota.CDOTAUserMsg_StatsHeroPositionInfo.PositionPair - (*CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance)(nil), // 191: dota.CDOTAUserMsg_StatsTeamMinuteDetails.LocationPerformance - (*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails)(nil), // 192: dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightTeamDetails - (*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails)(nil), // 193: dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightDetails - (*CDOTAUserMsg_AllStarEvent_PlayerScore)(nil), // 194: dota.CDOTAUserMsg_AllStarEvent.PlayerScore - (*CDOTAUserMsg_PauseMinigameData_DataBit)(nil), // 195: dota.CDOTAUserMsg_PauseMinigameData.DataBit - (*CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress)(nil), // 196: dota.CDOTAUserMsg_GuildChallenge_Progress.PlayerProgress - (*CMsgVector2D)(nil), // 197: dota.CMsgVector2D - (*CMsgDOTACombatLogEntry)(nil), // 198: dota.CMsgDOTACombatLogEntry - (*CMsgVector)(nil), // 199: dota.CMsgVector - (*CDOTAMsg_LocationPing)(nil), // 200: dota.CDOTAMsg_LocationPing - (*CDOTAMsg_ItemAlert)(nil), // 201: dota.CDOTAMsg_ItemAlert - (*CEntityMsg)(nil), // 202: dota.CEntityMsg - (*CDOTAMsg_MapLine)(nil), // 203: dota.CDOTAMsg_MapLine - (*CDOTAMsg_WorldLine)(nil), // 204: dota.CDOTAMsg_WorldLine - (*CDOTAMsg_SendStatPopup)(nil), // 205: dota.CDOTAMsg_SendStatPopup - (*CDOTAMsg_DismissAllStatPopups)(nil), // 206: dota.CDOTAMsg_DismissAllStatPopups - (*CDOTAMsg_CoachHUDPing)(nil), // 207: dota.CDOTAMsg_CoachHUDPing - (EDOTAVersusScenePlayerBehavior)(0), // 208: dota.EDOTAVersusScenePlayerBehavior - (*VersusScene_PlayActivity)(nil), // 209: dota.VersusScene_PlayActivity - (*VersusScene_ChatWheel)(nil), // 210: dota.VersusScene_ChatWheel - (*VersusScene_PlaybackRate)(nil), // 211: dota.VersusScene_PlaybackRate + (*CDOTAUserMsg_UpdateLinearProjectileCPData)(nil), // 25: dota.CDOTAUserMsg_UpdateLinearProjectileCPData + (*CDOTAUserMsg_MiniKillCamInfo)(nil), // 26: dota.CDOTAUserMsg_MiniKillCamInfo + (*CDOTAUserMsg_GlobalLightColor)(nil), // 27: dota.CDOTAUserMsg_GlobalLightColor + (*CDOTAUserMsg_GlobalLightDirection)(nil), // 28: dota.CDOTAUserMsg_GlobalLightDirection + (*CDOTAUserMsg_LocationPing)(nil), // 29: dota.CDOTAUserMsg_LocationPing + (*CDOTAUserMsg_PingConfirmation)(nil), // 30: dota.CDOTAUserMsg_PingConfirmation + (*CDOTAUserMsg_ItemAlert)(nil), // 31: dota.CDOTAUserMsg_ItemAlert + (*CDOTAUserMsg_EnemyItemAlert)(nil), // 32: dota.CDOTAUserMsg_EnemyItemAlert + (*CDOTAUserMsg_ModifierAlert)(nil), // 33: dota.CDOTAUserMsg_ModifierAlert + (*CDOTAUserMsg_HPManaAlert)(nil), // 34: dota.CDOTAUserMsg_HPManaAlert + (*CDOTAUserMsg_NeutralCampAlert)(nil), // 35: dota.CDOTAUserMsg_NeutralCampAlert + (*CDOTAUserMsg_GlyphAlert)(nil), // 36: dota.CDOTAUserMsg_GlyphAlert + (*CDOTAUserMsg_RadarAlert)(nil), // 37: dota.CDOTAUserMsg_RadarAlert + (*CDOTAUserMsg_WillPurchaseAlert)(nil), // 38: dota.CDOTAUserMsg_WillPurchaseAlert + (*CDOTAUserMsg_EmptyTeleportAlert)(nil), // 39: dota.CDOTAUserMsg_EmptyTeleportAlert + (*CDOTAUserMsg_MarsArenaOfBloodAttack)(nil), // 40: dota.CDOTAUserMsg_MarsArenaOfBloodAttack + (*CDOTAEntityMsg_InvokerSpellCast)(nil), // 41: dota.CDOTAEntityMsg_InvokerSpellCast + (*CDOTAUserMsg_BuyBackStateAlert)(nil), // 42: dota.CDOTAUserMsg_BuyBackStateAlert + (*CDOTAUserMsg_QuickBuyAlert)(nil), // 43: dota.CDOTAUserMsg_QuickBuyAlert + (*CDOTAUserMsg_CourierKilledAlert)(nil), // 44: dota.CDOTAUserMsg_CourierKilledAlert + (*CDOTAUserMsg_MinimapEvent)(nil), // 45: dota.CDOTAUserMsg_MinimapEvent + (*CDOTAUserMsg_MapLine)(nil), // 46: dota.CDOTAUserMsg_MapLine + (*CDOTAUserMsg_MinimapDebugPoint)(nil), // 47: dota.CDOTAUserMsg_MinimapDebugPoint + (*CDOTAUserMsg_CreateLinearProjectile)(nil), // 48: dota.CDOTAUserMsg_CreateLinearProjectile + (*CDOTAUserMsg_DestroyLinearProjectile)(nil), // 49: dota.CDOTAUserMsg_DestroyLinearProjectile + (*CDOTAUserMsg_DodgeTrackingProjectiles)(nil), // 50: dota.CDOTAUserMsg_DodgeTrackingProjectiles + (*CDOTAUserMsg_SpectatorPlayerClick)(nil), // 51: dota.CDOTAUserMsg_SpectatorPlayerClick + (*CDOTAUserMsg_SpectatorPlayerUnitOrders)(nil), // 52: dota.CDOTAUserMsg_SpectatorPlayerUnitOrders + (*CDOTAUserMsg_NevermoreRequiem)(nil), // 53: dota.CDOTAUserMsg_NevermoreRequiem + (*CDOTAUserMsg_InvalidCommand)(nil), // 54: dota.CDOTAUserMsg_InvalidCommand + (*CDOTAUserMsg_HudError)(nil), // 55: dota.CDOTAUserMsg_HudError + (*CDOTAUserMsg_SharedCooldown)(nil), // 56: dota.CDOTAUserMsg_SharedCooldown + (*CDOTAUserMsg_SetNextAutobuyItem)(nil), // 57: dota.CDOTAUserMsg_SetNextAutobuyItem + (*CDOTAUserMsg_HalloweenDrops)(nil), // 58: dota.CDOTAUserMsg_HalloweenDrops + (*CDOTAUserMsg_PredictionResult)(nil), // 59: dota.CDOTAUserMsg_PredictionResult + (*CDOTAResponseQuerySerialized)(nil), // 60: dota.CDOTAResponseQuerySerialized + (*CDOTASpeechMatchOnClient)(nil), // 61: dota.CDOTASpeechMatchOnClient + (*CDOTAUserMsg_UnitEvent)(nil), // 62: dota.CDOTAUserMsg_UnitEvent + (*CDOTAUserMsg_ItemPurchased)(nil), // 63: dota.CDOTAUserMsg_ItemPurchased + (*CDOTAUserMsg_ItemSold)(nil), // 64: dota.CDOTAUserMsg_ItemSold + (*CDOTAUserMsg_ItemFound)(nil), // 65: dota.CDOTAUserMsg_ItemFound + (*CDOTAUserMsg_OverheadEvent)(nil), // 66: dota.CDOTAUserMsg_OverheadEvent + (*CDOTAUserMsg_TutorialTipInfo)(nil), // 67: dota.CDOTAUserMsg_TutorialTipInfo + (*CDOTAUserMsg_TutorialFinish)(nil), // 68: dota.CDOTAUserMsg_TutorialFinish + (*CDOTAUserMsg_TutorialMinimapPosition)(nil), // 69: dota.CDOTAUserMsg_TutorialMinimapPosition + (*CDOTAUserMsg_SendGenericToolTip)(nil), // 70: dota.CDOTAUserMsg_SendGenericToolTip + (*CDOTAUserMsg_WorldLine)(nil), // 71: dota.CDOTAUserMsg_WorldLine + (*CDOTAUserMsg_ChatWheel)(nil), // 72: dota.CDOTAUserMsg_ChatWheel + (*CDOTAUserMsg_ReceivedXmasGift)(nil), // 73: dota.CDOTAUserMsg_ReceivedXmasGift + (*CDOTAUserMsg_ShowSurvey)(nil), // 74: dota.CDOTAUserMsg_ShowSurvey + (*CDOTAUserMsg_UpdateSharedContent)(nil), // 75: dota.CDOTAUserMsg_UpdateSharedContent + (*CDOTAUserMsg_TutorialRequestExp)(nil), // 76: dota.CDOTAUserMsg_TutorialRequestExp + (*CDOTAUserMsg_TutorialFade)(nil), // 77: dota.CDOTAUserMsg_TutorialFade + (*CDOTAUserMsg_TutorialPingMinimap)(nil), // 78: dota.CDOTAUserMsg_TutorialPingMinimap + (*CDOTAUserMsg_GamerulesStateChanged)(nil), // 79: dota.CDOTAUserMsg_GamerulesStateChanged + (*CDOTAUserMsg_AddQuestLogEntry)(nil), // 80: dota.CDOTAUserMsg_AddQuestLogEntry + (*CDOTAUserMsg_SendStatPopup)(nil), // 81: dota.CDOTAUserMsg_SendStatPopup + (*CDOTAUserMsg_DismissAllStatPopups)(nil), // 82: dota.CDOTAUserMsg_DismissAllStatPopups + (*CDOTAUserMsg_SendRoshanSpectatorPhase)(nil), // 83: dota.CDOTAUserMsg_SendRoshanSpectatorPhase + (*CDOTAUserMsg_SendRoshanPopup)(nil), // 84: dota.CDOTAUserMsg_SendRoshanPopup + (*CDOTAUserMsg_SendFinalGold)(nil), // 85: dota.CDOTAUserMsg_SendFinalGold + (*CDOTAUserMsg_CustomMsg)(nil), // 86: dota.CDOTAUserMsg_CustomMsg + (*CDOTAUserMsg_CoachHUDPing)(nil), // 87: dota.CDOTAUserMsg_CoachHUDPing + (*CDOTAUserMsg_ClientLoadGridNav)(nil), // 88: dota.CDOTAUserMsg_ClientLoadGridNav + (*CDOTAUserMsg_TE_Projectile)(nil), // 89: dota.CDOTAUserMsg_TE_Projectile + (*CDOTAUserMsg_TE_ProjectileLoc)(nil), // 90: dota.CDOTAUserMsg_TE_ProjectileLoc + (*CDOTAUserMsg_TE_DestroyProjectile)(nil), // 91: dota.CDOTAUserMsg_TE_DestroyProjectile + (*CDOTAUserMsg_TE_DotaBloodImpact)(nil), // 92: dota.CDOTAUserMsg_TE_DotaBloodImpact + (*CDOTAUserMsg_AbilityPing)(nil), // 93: dota.CDOTAUserMsg_AbilityPing + (*CDOTAUserMsg_TE_UnitAnimation)(nil), // 94: dota.CDOTAUserMsg_TE_UnitAnimation + (*CDOTAUserMsg_TE_UnitAnimationEnd)(nil), // 95: dota.CDOTAUserMsg_TE_UnitAnimationEnd + (*CDOTAUserMsg_ShowGenericPopup)(nil), // 96: dota.CDOTAUserMsg_ShowGenericPopup + (*CDOTAUserMsg_VoteStart)(nil), // 97: dota.CDOTAUserMsg_VoteStart + (*CDOTAUserMsg_VoteUpdate)(nil), // 98: dota.CDOTAUserMsg_VoteUpdate + (*CDOTAUserMsg_VoteEnd)(nil), // 99: dota.CDOTAUserMsg_VoteEnd + (*CDOTAUserMsg_BoosterStatePlayer)(nil), // 100: dota.CDOTAUserMsg_BoosterStatePlayer + (*CDOTAUserMsg_BoosterState)(nil), // 101: dota.CDOTAUserMsg_BoosterState + (*CDOTAUserMsg_PlayerMMR)(nil), // 102: dota.CDOTAUserMsg_PlayerMMR + (*CDOTAUserMsg_AbilitySteal)(nil), // 103: dota.CDOTAUserMsg_AbilitySteal + (*CDOTAUserMsg_StatsHeroLookup)(nil), // 104: dota.CDOTAUserMsg_StatsHeroLookup + (*CDOTAUserMsg_StatsHeroPositionInfo)(nil), // 105: dota.CDOTAUserMsg_StatsHeroPositionInfo + (*CDOTAUserMsg_StatsHeroMinuteDetails)(nil), // 106: dota.CDOTAUserMsg_StatsHeroMinuteDetails + (*CDOTAUserMsg_StatsTeamMinuteDetails)(nil), // 107: dota.CDOTAUserMsg_StatsTeamMinuteDetails + (*CDOTAUserMsg_StatsPlayerKillShare)(nil), // 108: dota.CDOTAUserMsg_StatsPlayerKillShare + (*CDOTAUserMsg_StatsKillDetails)(nil), // 109: dota.CDOTAUserMsg_StatsKillDetails + (*CDOTAUserMsg_StatsMatchDetails)(nil), // 110: dota.CDOTAUserMsg_StatsMatchDetails + (*CDOTAUserMsg_MiniTaunt)(nil), // 111: dota.CDOTAUserMsg_MiniTaunt + (*CDOTAUserMsg_SpeechBubble)(nil), // 112: dota.CDOTAUserMsg_SpeechBubble + (*CDOTAUserMsg_CustomHeaderMessage)(nil), // 113: dota.CDOTAUserMsg_CustomHeaderMessage + (*CMsgHeroAbilityStat)(nil), // 114: dota.CMsgHeroAbilityStat + (*CMsgCombatAnalyzerPlayerStat)(nil), // 115: dota.CMsgCombatAnalyzerPlayerStat + (*CMsgCombatAnalyzerStats)(nil), // 116: dota.CMsgCombatAnalyzerStats + (*CDOTAUserMsg_BeastChat)(nil), // 117: dota.CDOTAUserMsg_BeastChat + (*CDOTAUserMsg_CustomHudElement_Create)(nil), // 118: dota.CDOTAUserMsg_CustomHudElement_Create + (*CDOTAUserMsg_CustomHudElement_Modify)(nil), // 119: dota.CDOTAUserMsg_CustomHudElement_Modify + (*CDOTAUserMsg_CustomHudElement_Destroy)(nil), // 120: dota.CDOTAUserMsg_CustomHudElement_Destroy + (*CDOTAUserMsg_CompendiumStatePlayer)(nil), // 121: dota.CDOTAUserMsg_CompendiumStatePlayer + (*CDOTAUserMsg_CompendiumState)(nil), // 122: dota.CDOTAUserMsg_CompendiumState + (*CDOTAUserMsg_ProjectionAbility)(nil), // 123: dota.CDOTAUserMsg_ProjectionAbility + (*CDOTAUserMsg_ProjectionEvent)(nil), // 124: dota.CDOTAUserMsg_ProjectionEvent + (*CDOTAUserMsg_XPAlert)(nil), // 125: dota.CDOTAUserMsg_XPAlert + (*CDOTAUserMsg_TalentTreeAlert)(nil), // 126: dota.CDOTAUserMsg_TalentTreeAlert + (*CDOTAUserMsg_UpdateQuestProgress)(nil), // 127: dota.CDOTAUserMsg_UpdateQuestProgress + (*CDOTAUserMsg_QuestStatus)(nil), // 128: dota.CDOTAUserMsg_QuestStatus + (*CDOTAUserMsg_SuggestHeroPick)(nil), // 129: dota.CDOTAUserMsg_SuggestHeroPick + (*CDOTAUserMsg_SuggestHeroRole)(nil), // 130: dota.CDOTAUserMsg_SuggestHeroRole + (*CDOTAUserMsg_KillcamDamageTaken)(nil), // 131: dota.CDOTAUserMsg_KillcamDamageTaken + (*CDOTAUserMsg_SelectPenaltyGold)(nil), // 132: dota.CDOTAUserMsg_SelectPenaltyGold + (*CDOTAUserMsg_RollDiceResult)(nil), // 133: dota.CDOTAUserMsg_RollDiceResult + (*CDOTAUserMsg_FlipCoinResult)(nil), // 134: dota.CDOTAUserMsg_FlipCoinResult + (*CDOTAUserMessage_RequestItemSuggestions)(nil), // 135: dota.CDOTAUserMessage_RequestItemSuggestions + (*CDOTAUserMessage_TeamCaptainChanged)(nil), // 136: dota.CDOTAUserMessage_TeamCaptainChanged + (*CDOTAUserMsg_ChatWheelCooldown)(nil), // 137: dota.CDOTAUserMsg_ChatWheelCooldown + (*CDOTAUserMsg_HeroRelicProgress)(nil), // 138: dota.CDOTAUserMsg_HeroRelicProgress + (*CDOTAUserMsg_AbilityDraftRequestAbility)(nil), // 139: dota.CDOTAUserMsg_AbilityDraftRequestAbility + (*CDOTAUserMsg_DamageReport)(nil), // 140: dota.CDOTAUserMsg_DamageReport + (*CDOTAUserMsg_SalutePlayer)(nil), // 141: dota.CDOTAUserMsg_SalutePlayer + (*CDOTAUserMsg_GiftPlayer)(nil), // 142: dota.CDOTAUserMsg_GiftPlayer + (*CDOTAUserMsg_TipAlert)(nil), // 143: dota.CDOTAUserMsg_TipAlert + (*CDOTAUserMsg_ReplaceQueryUnit)(nil), // 144: dota.CDOTAUserMsg_ReplaceQueryUnit + (*CDOTAUserMsg_ESArcanaCombo)(nil), // 145: dota.CDOTAUserMsg_ESArcanaCombo + (*CDOTAUserMsg_ESArcanaComboSummary)(nil), // 146: dota.CDOTAUserMsg_ESArcanaComboSummary + (*CDOTAUserMsg_OMArcanaCombo)(nil), // 147: dota.CDOTAUserMsg_OMArcanaCombo + (*CDOTAUserMsg_HighFiveCompleted)(nil), // 148: dota.CDOTAUserMsg_HighFiveCompleted + (*CDOTAUserMsg_HighFiveLeftHanging)(nil), // 149: dota.CDOTAUserMsg_HighFiveLeftHanging + (*CDOTAUserMsg_ShovelUnearth)(nil), // 150: dota.CDOTAUserMsg_ShovelUnearth + (*CDOTAUserMsg_AllStarEvent)(nil), // 151: dota.CDOTAUserMsg_AllStarEvent + (*CDOTAUserMsg_QueuedOrderRemoved)(nil), // 152: dota.CDOTAUserMsg_QueuedOrderRemoved + (*CDOTAUserMsg_DebugChallenge)(nil), // 153: dota.CDOTAUserMsg_DebugChallenge + (*CDOTAUserMsg_FoundNeutralItem)(nil), // 154: dota.CDOTAUserMsg_FoundNeutralItem + (*CDOTAUserMsg_OutpostCaptured)(nil), // 155: dota.CDOTAUserMsg_OutpostCaptured + (*CDOTAUserMsg_OutpostGrantedXP)(nil), // 156: dota.CDOTAUserMsg_OutpostGrantedXP + (*CDOTAUserMsg_MoveCameraToUnit)(nil), // 157: dota.CDOTAUserMsg_MoveCameraToUnit + (*CDOTAUserMsg_PauseMinigameData)(nil), // 158: dota.CDOTAUserMsg_PauseMinigameData + (*CDOTAUserMsg_VersusScene_PlayerBehavior)(nil), // 159: dota.CDOTAUserMsg_VersusScene_PlayerBehavior + (*CDOTAUserMsg_QoP_ArcanaSummary)(nil), // 160: dota.CDOTAUserMsg_QoP_ArcanaSummary + (*CDOTAUserMsg_HotPotato_Created)(nil), // 161: dota.CDOTAUserMsg_HotPotato_Created + (*CDOTAUserMsg_HotPotato_Exploded)(nil), // 162: dota.CDOTAUserMsg_HotPotato_Exploded + (*CDOTAUserMsg_WK_Arcana_Progress)(nil), // 163: dota.CDOTAUserMsg_WK_Arcana_Progress + (*CDOTAUserMsg_GuildChallenge_Progress)(nil), // 164: dota.CDOTAUserMsg_GuildChallenge_Progress + (*CDOTAUserMsg_WRArcanaProgress)(nil), // 165: dota.CDOTAUserMsg_WRArcanaProgress + (*CDOTAUserMsg_WRArcanaSummary)(nil), // 166: dota.CDOTAUserMsg_WRArcanaSummary + (*CDOTAUserMsg_EmptyItemSlotAlert)(nil), // 167: dota.CDOTAUserMsg_EmptyItemSlotAlert + (*CDOTAUserMsg_AghsStatusAlert)(nil), // 168: dota.CDOTAUserMsg_AghsStatusAlert + (*CDOTAUserMsg_MutedPlayers)(nil), // 169: dota.CDOTAUserMsg_MutedPlayers + (*CDOTAUserMsg_ContextualTip)(nil), // 170: dota.CDOTAUserMsg_ContextualTip + (*CDOTAUserMsg_ChatMessage)(nil), // 171: dota.CDOTAUserMsg_ChatMessage + (*CDOTAUserMsg_RockPaperScissorsStarted)(nil), // 172: dota.CDOTAUserMsg_RockPaperScissorsStarted + (*CDOTAUserMsg_RockPaperScissorsFinished)(nil), // 173: dota.CDOTAUserMsg_RockPaperScissorsFinished + (*CDOTAUserMsg_DuelOpponentKilled)(nil), // 174: dota.CDOTAUserMsg_DuelOpponentKilled + (*CDOTAUserMsg_DuelAccepted)(nil), // 175: dota.CDOTAUserMsg_DuelAccepted + (*CDOTAUserMsg_DuelRequested)(nil), // 176: dota.CDOTAUserMsg_DuelRequested + (*CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled)(nil), // 177: dota.CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled + (*CDOTAUserMsg_PlayerDraftSuggestPick)(nil), // 178: dota.CDOTAUserMsg_PlayerDraftSuggestPick + (*CDOTAUserMsg_PlayerDraftPick)(nil), // 179: dota.CDOTAUserMsg_PlayerDraftPick + (*CDOTAUserMsg_MiniKillCamInfo_Attacker)(nil), // 180: dota.CDOTAUserMsg_MiniKillCamInfo.Attacker + (*CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability)(nil), // 181: dota.CDOTAUserMsg_MiniKillCamInfo.Attacker.Ability + (*CDOTAUserMsg_CourierKilledAlert_LostItem)(nil), // 182: dota.CDOTAUserMsg_CourierKilledAlert.LostItem + (*CDOTAUserMsg_PredictionResult_Prediction)(nil), // 183: dota.CDOTAUserMsg_PredictionResult.Prediction + (*CDOTAResponseQuerySerialized_Fact)(nil), // 184: dota.CDOTAResponseQuerySerialized.Fact + (*CDOTAUserMsg_UnitEvent_Interval)(nil), // 185: dota.CDOTAUserMsg_UnitEvent.Interval + (*CDOTAUserMsg_UnitEvent_Speech)(nil), // 186: dota.CDOTAUserMsg_UnitEvent.Speech + (*CDOTAUserMsg_UnitEvent_SpeechMute)(nil), // 187: dota.CDOTAUserMsg_UnitEvent.SpeechMute + (*CDOTAUserMsg_UnitEvent_AddGesture)(nil), // 188: dota.CDOTAUserMsg_UnitEvent.AddGesture + (*CDOTAUserMsg_UnitEvent_RemoveGesture)(nil), // 189: dota.CDOTAUserMsg_UnitEvent.RemoveGesture + (*CDOTAUserMsg_UnitEvent_BloodImpact)(nil), // 190: dota.CDOTAUserMsg_UnitEvent.BloodImpact + (*CDOTAUserMsg_UnitEvent_FadeGesture)(nil), // 191: dota.CDOTAUserMsg_UnitEvent.FadeGesture + (*CDOTAUserMsg_StatsHeroPositionInfo_PositionPair)(nil), // 192: dota.CDOTAUserMsg_StatsHeroPositionInfo.PositionPair + (*CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance)(nil), // 193: dota.CDOTAUserMsg_StatsTeamMinuteDetails.LocationPerformance + (*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails)(nil), // 194: dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightTeamDetails + (*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails)(nil), // 195: dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightDetails + (*CDOTAUserMsg_AllStarEvent_PlayerScore)(nil), // 196: dota.CDOTAUserMsg_AllStarEvent.PlayerScore + (*CDOTAUserMsg_PauseMinigameData_DataBit)(nil), // 197: dota.CDOTAUserMsg_PauseMinigameData.DataBit + (*CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress)(nil), // 198: dota.CDOTAUserMsg_GuildChallenge_Progress.PlayerProgress + (*CMsgVector2D)(nil), // 199: dota.CMsgVector2D + (*CMsgDOTACombatLogEntry)(nil), // 200: dota.CMsgDOTACombatLogEntry + (*CMsgVector)(nil), // 201: dota.CMsgVector + (*CDOTAMsg_LocationPing)(nil), // 202: dota.CDOTAMsg_LocationPing + (*CDOTAMsg_ItemAlert)(nil), // 203: dota.CDOTAMsg_ItemAlert + (*CEntityMsg)(nil), // 204: dota.CEntityMsg + (*CDOTAMsg_MapLine)(nil), // 205: dota.CDOTAMsg_MapLine + (*CDOTAMsg_WorldLine)(nil), // 206: dota.CDOTAMsg_WorldLine + (*CDOTAMsg_SendStatPopup)(nil), // 207: dota.CDOTAMsg_SendStatPopup + (*CDOTAMsg_DismissAllStatPopups)(nil), // 208: dota.CDOTAMsg_DismissAllStatPopups + (*CDOTAMsg_CoachHUDPing)(nil), // 209: dota.CDOTAMsg_CoachHUDPing + (EDOTAVersusScenePlayerBehavior)(0), // 210: dota.EDOTAVersusScenePlayerBehavior + (*VersusScene_PlayActivity)(nil), // 211: dota.VersusScene_PlayActivity + (*VersusScene_ChatWheel)(nil), // 212: dota.VersusScene_ChatWheel + (*VersusScene_PlaybackRate)(nil), // 213: dota.VersusScene_PlaybackRate } var file_dota_usermessages_proto_depIdxs = []int32{ 1, // 0: dota.CDOTAUserMsg_ChatEvent.type:type_name -> dota.DOTA_CHAT_MESSAGE - 197, // 1: dota.CDOTAUserMsg_CombatHeroPositions.world_pos:type_name -> dota.CMsgVector2D - 198, // 2: dota.CDOTAUserMsg_CombatLogBulkData.combat_entries:type_name -> dota.CMsgDOTACombatLogEntry - 199, // 3: dota.CDOTAUserMsg_ProjectileParticleCPData.vector:type_name -> dota.CMsgVector - 178, // 4: dota.CDOTAUserMsg_MiniKillCamInfo.attackers:type_name -> dota.CDOTAUserMsg_MiniKillCamInfo.Attacker - 199, // 5: dota.CDOTAUserMsg_GlobalLightDirection.direction:type_name -> dota.CMsgVector - 200, // 6: dota.CDOTAUserMsg_LocationPing.location_ping:type_name -> dota.CDOTAMsg_LocationPing - 199, // 7: dota.CDOTAUserMsg_PingConfirmation.location:type_name -> dota.CMsgVector - 201, // 8: dota.CDOTAUserMsg_ItemAlert.item_alert:type_name -> dota.CDOTAMsg_ItemAlert - 202, // 9: dota.CDOTAEntityMsg_InvokerSpellCast.entity_msg:type_name -> dota.CEntityMsg - 180, // 10: dota.CDOTAUserMsg_CourierKilledAlert.lost_items:type_name -> dota.CDOTAUserMsg_CourierKilledAlert.LostItem - 203, // 11: dota.CDOTAUserMsg_MapLine.mapline:type_name -> dota.CDOTAMsg_MapLine - 199, // 12: dota.CDOTAUserMsg_MinimapDebugPoint.location:type_name -> dota.CMsgVector - 199, // 13: dota.CDOTAUserMsg_CreateLinearProjectile.origin:type_name -> dota.CMsgVector - 197, // 14: dota.CDOTAUserMsg_CreateLinearProjectile.velocity:type_name -> dota.CMsgVector2D - 197, // 15: dota.CDOTAUserMsg_CreateLinearProjectile.acceleration:type_name -> dota.CMsgVector2D - 24, // 16: dota.CDOTAUserMsg_CreateLinearProjectile.particle_cp_data:type_name -> dota.CDOTAUserMsg_ProjectileParticleCPData - 199, // 17: dota.CDOTAUserMsg_SpectatorPlayerUnitOrders.position:type_name -> dota.CMsgVector - 199, // 18: dota.CDOTAUserMsg_NevermoreRequiem.origin:type_name -> dota.CMsgVector - 181, // 19: dota.CDOTAUserMsg_PredictionResult.predictions:type_name -> dota.CDOTAUserMsg_PredictionResult.Prediction - 182, // 20: dota.CDOTAResponseQuerySerialized.facts:type_name -> dota.CDOTAResponseQuerySerialized.Fact - 59, // 21: dota.CDOTASpeechMatchOnClient.responsequery:type_name -> dota.CDOTAResponseQuerySerialized - 6, // 22: dota.CDOTAUserMsg_UnitEvent.msg_type:type_name -> dota.EDotaEntityMessages - 184, // 23: dota.CDOTAUserMsg_UnitEvent.speech:type_name -> dota.CDOTAUserMsg_UnitEvent.Speech - 185, // 24: dota.CDOTAUserMsg_UnitEvent.speech_mute:type_name -> dota.CDOTAUserMsg_UnitEvent.SpeechMute - 186, // 25: dota.CDOTAUserMsg_UnitEvent.add_gesture:type_name -> dota.CDOTAUserMsg_UnitEvent.AddGesture - 187, // 26: dota.CDOTAUserMsg_UnitEvent.remove_gesture:type_name -> dota.CDOTAUserMsg_UnitEvent.RemoveGesture - 188, // 27: dota.CDOTAUserMsg_UnitEvent.blood_impact:type_name -> dota.CDOTAUserMsg_UnitEvent.BloodImpact - 189, // 28: dota.CDOTAUserMsg_UnitEvent.fade_gesture:type_name -> dota.CDOTAUserMsg_UnitEvent.FadeGesture - 60, // 29: dota.CDOTAUserMsg_UnitEvent.speech_match_on_client:type_name -> dota.CDOTASpeechMatchOnClient - 7, // 30: dota.CDOTAUserMsg_OverheadEvent.message_type:type_name -> dota.DOTA_OVERHEAD_ALERT - 204, // 31: dota.CDOTAUserMsg_WorldLine.worldline:type_name -> dota.CDOTAMsg_WorldLine - 205, // 32: dota.CDOTAUserMsg_SendStatPopup.statpopup:type_name -> dota.CDOTAMsg_SendStatPopup - 206, // 33: dota.CDOTAUserMsg_DismissAllStatPopups.dismissallmsg:type_name -> dota.CDOTAMsg_DismissAllStatPopups - 8, // 34: dota.CDOTAUserMsg_SendRoshanSpectatorPhase.phase:type_name -> dota.DOTA_ROSHAN_PHASE - 207, // 35: dota.CDOTAUserMsg_CoachHUDPing.hud_ping:type_name -> dota.CDOTAMsg_CoachHUDPing - 199, // 36: dota.CDOTAUserMsg_TE_Projectile.target_loc:type_name -> dota.CMsgVector - 24, // 37: dota.CDOTAUserMsg_TE_Projectile.particle_cp_data:type_name -> dota.CDOTAUserMsg_ProjectileParticleCPData - 199, // 38: dota.CDOTAUserMsg_TE_ProjectileLoc.source_loc:type_name -> dota.CMsgVector - 199, // 39: dota.CDOTAUserMsg_TE_ProjectileLoc.target_loc:type_name -> dota.CMsgVector - 24, // 40: dota.CDOTAUserMsg_TE_ProjectileLoc.particle_cp_data:type_name -> dota.CDOTAUserMsg_ProjectileParticleCPData - 4, // 41: dota.CDOTAUserMsg_AbilityPing.type:type_name -> dota.DOTA_ABILITY_PING_TYPE - 99, // 42: dota.CDOTAUserMsg_BoosterState.boosted_players:type_name -> dota.CDOTAUserMsg_BoosterStatePlayer - 190, // 43: dota.CDOTAUserMsg_StatsHeroPositionInfo.position_details:type_name -> dota.CDOTAUserMsg_StatsHeroPositionInfo.PositionPair - 104, // 44: dota.CDOTAUserMsg_StatsHeroMinuteDetails.position_info:type_name -> dota.CDOTAUserMsg_StatsHeroPositionInfo - 105, // 45: dota.CDOTAUserMsg_StatsTeamMinuteDetails.player_stats:type_name -> dota.CDOTAUserMsg_StatsHeroMinuteDetails - 191, // 46: dota.CDOTAUserMsg_StatsTeamMinuteDetails.lane_performance:type_name -> dota.CDOTAUserMsg_StatsTeamMinuteDetails.LocationPerformance - 107, // 47: dota.CDOTAUserMsg_StatsKillDetails.kill_shares:type_name -> dota.CDOTAUserMsg_StatsPlayerKillShare - 103, // 48: dota.CDOTAUserMsg_StatsMatchDetails.hero_lookup:type_name -> dota.CDOTAUserMsg_StatsHeroLookup - 106, // 49: dota.CDOTAUserMsg_StatsMatchDetails.radiant_stats:type_name -> dota.CDOTAUserMsg_StatsTeamMinuteDetails - 106, // 50: dota.CDOTAUserMsg_StatsMatchDetails.dire_stats:type_name -> dota.CDOTAUserMsg_StatsTeamMinuteDetails - 108, // 51: dota.CDOTAUserMsg_StatsMatchDetails.radiant_kills:type_name -> dota.CDOTAUserMsg_StatsKillDetails - 108, // 52: dota.CDOTAUserMsg_StatsMatchDetails.dire_kills:type_name -> dota.CDOTAUserMsg_StatsKillDetails - 193, // 53: dota.CDOTAUserMsg_StatsMatchDetails.fight_details:type_name -> dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightDetails - 11, // 54: dota.CMsgHeroAbilityStat.stat_type:type_name -> dota.EHeroStatType - 113, // 55: dota.CMsgCombatAnalyzerPlayerStat.hero_ability_stats:type_name -> dota.CMsgHeroAbilityStat - 114, // 56: dota.CMsgCombatAnalyzerStats.player_stats:type_name -> dota.CMsgCombatAnalyzerPlayerStat - 120, // 57: dota.CDOTAUserMsg_CompendiumState.compendium_players:type_name -> dota.CDOTAUserMsg_CompendiumStatePlayer - 199, // 58: dota.CDOTAUserMsg_ProjectionAbility.origin:type_name -> dota.CMsgVector - 13, // 59: dota.CDOTAUserMsg_ProjectionEvent.event_id:type_name -> dota.EProjectionEvent - 194, // 60: dota.CDOTAUserMsg_AllStarEvent.player_scores:type_name -> dota.CDOTAUserMsg_AllStarEvent.PlayerScore - 195, // 61: dota.CDOTAUserMsg_PauseMinigameData.data_bits:type_name -> dota.CDOTAUserMsg_PauseMinigameData.DataBit - 208, // 62: dota.CDOTAUserMsg_VersusScene_PlayerBehavior.behavior:type_name -> dota.EDOTAVersusScenePlayerBehavior - 209, // 63: dota.CDOTAUserMsg_VersusScene_PlayerBehavior.play_activity:type_name -> dota.VersusScene_PlayActivity - 210, // 64: dota.CDOTAUserMsg_VersusScene_PlayerBehavior.chat_wheel:type_name -> dota.VersusScene_ChatWheel - 211, // 65: dota.CDOTAUserMsg_VersusScene_PlayerBehavior.playback_rate:type_name -> dota.VersusScene_PlaybackRate - 196, // 66: dota.CDOTAUserMsg_GuildChallenge_Progress.player_progress:type_name -> dota.CDOTAUserMsg_GuildChallenge_Progress.PlayerProgress - 16, // 67: dota.CDOTAUserMsg_GuildChallenge_Progress.challenge_type:type_name -> dota.CDOTAUserMsg_GuildChallenge_Progress.EChallengeType - 179, // 68: dota.CDOTAUserMsg_MiniKillCamInfo.Attacker.abilities:type_name -> dota.CDOTAUserMsg_MiniKillCamInfo.Attacker.Ability - 14, // 69: dota.CDOTAUserMsg_PredictionResult.Prediction.result:type_name -> dota.CDOTAUserMsg_PredictionResult.Prediction.EResult - 15, // 70: dota.CDOTAResponseQuerySerialized.Fact.valtype:type_name -> dota.CDOTAResponseQuerySerialized.Fact.ValueType - 183, // 71: dota.CDOTAUserMsg_UnitEvent.Speech.predelay:type_name -> dota.CDOTAUserMsg_UnitEvent.Interval - 9, // 72: dota.CDOTAUserMsg_StatsHeroPositionInfo.PositionPair.position_category:type_name -> dota.DOTA_POSITION_CATEGORY - 192, // 73: dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightDetails.radiant_fight_details:type_name -> dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightTeamDetails - 192, // 74: dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightDetails.dire_fight_details:type_name -> dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightTeamDetails - 75, // [75:75] is the sub-list for method output_type - 75, // [75:75] is the sub-list for method input_type - 75, // [75:75] is the sub-list for extension type_name - 75, // [75:75] is the sub-list for extension extendee - 0, // [0:75] is the sub-list for field type_name + 199, // 1: dota.CDOTAUserMsg_CombatHeroPositions.world_pos:type_name -> dota.CMsgVector2D + 200, // 2: dota.CDOTAUserMsg_CombatLogBulkData.combat_entries:type_name -> dota.CMsgDOTACombatLogEntry + 201, // 3: dota.CDOTAUserMsg_ProjectileParticleCPData.vector:type_name -> dota.CMsgVector + 201, // 4: dota.CDOTAUserMsg_UpdateLinearProjectileCPData.vector:type_name -> dota.CMsgVector + 180, // 5: dota.CDOTAUserMsg_MiniKillCamInfo.attackers:type_name -> dota.CDOTAUserMsg_MiniKillCamInfo.Attacker + 201, // 6: dota.CDOTAUserMsg_GlobalLightDirection.direction:type_name -> dota.CMsgVector + 202, // 7: dota.CDOTAUserMsg_LocationPing.location_ping:type_name -> dota.CDOTAMsg_LocationPing + 201, // 8: dota.CDOTAUserMsg_PingConfirmation.location:type_name -> dota.CMsgVector + 203, // 9: dota.CDOTAUserMsg_ItemAlert.item_alert:type_name -> dota.CDOTAMsg_ItemAlert + 204, // 10: dota.CDOTAEntityMsg_InvokerSpellCast.entity_msg:type_name -> dota.CEntityMsg + 182, // 11: dota.CDOTAUserMsg_CourierKilledAlert.lost_items:type_name -> dota.CDOTAUserMsg_CourierKilledAlert.LostItem + 205, // 12: dota.CDOTAUserMsg_MapLine.mapline:type_name -> dota.CDOTAMsg_MapLine + 201, // 13: dota.CDOTAUserMsg_MinimapDebugPoint.location:type_name -> dota.CMsgVector + 201, // 14: dota.CDOTAUserMsg_CreateLinearProjectile.origin:type_name -> dota.CMsgVector + 199, // 15: dota.CDOTAUserMsg_CreateLinearProjectile.velocity:type_name -> dota.CMsgVector2D + 199, // 16: dota.CDOTAUserMsg_CreateLinearProjectile.acceleration:type_name -> dota.CMsgVector2D + 24, // 17: dota.CDOTAUserMsg_CreateLinearProjectile.particle_cp_data:type_name -> dota.CDOTAUserMsg_ProjectileParticleCPData + 201, // 18: dota.CDOTAUserMsg_SpectatorPlayerUnitOrders.position:type_name -> dota.CMsgVector + 201, // 19: dota.CDOTAUserMsg_NevermoreRequiem.origin:type_name -> dota.CMsgVector + 183, // 20: dota.CDOTAUserMsg_PredictionResult.predictions:type_name -> dota.CDOTAUserMsg_PredictionResult.Prediction + 184, // 21: dota.CDOTAResponseQuerySerialized.facts:type_name -> dota.CDOTAResponseQuerySerialized.Fact + 60, // 22: dota.CDOTASpeechMatchOnClient.responsequery:type_name -> dota.CDOTAResponseQuerySerialized + 6, // 23: dota.CDOTAUserMsg_UnitEvent.msg_type:type_name -> dota.EDotaEntityMessages + 186, // 24: dota.CDOTAUserMsg_UnitEvent.speech:type_name -> dota.CDOTAUserMsg_UnitEvent.Speech + 187, // 25: dota.CDOTAUserMsg_UnitEvent.speech_mute:type_name -> dota.CDOTAUserMsg_UnitEvent.SpeechMute + 188, // 26: dota.CDOTAUserMsg_UnitEvent.add_gesture:type_name -> dota.CDOTAUserMsg_UnitEvent.AddGesture + 189, // 27: dota.CDOTAUserMsg_UnitEvent.remove_gesture:type_name -> dota.CDOTAUserMsg_UnitEvent.RemoveGesture + 190, // 28: dota.CDOTAUserMsg_UnitEvent.blood_impact:type_name -> dota.CDOTAUserMsg_UnitEvent.BloodImpact + 191, // 29: dota.CDOTAUserMsg_UnitEvent.fade_gesture:type_name -> dota.CDOTAUserMsg_UnitEvent.FadeGesture + 61, // 30: dota.CDOTAUserMsg_UnitEvent.speech_match_on_client:type_name -> dota.CDOTASpeechMatchOnClient + 7, // 31: dota.CDOTAUserMsg_OverheadEvent.message_type:type_name -> dota.DOTA_OVERHEAD_ALERT + 206, // 32: dota.CDOTAUserMsg_WorldLine.worldline:type_name -> dota.CDOTAMsg_WorldLine + 207, // 33: dota.CDOTAUserMsg_SendStatPopup.statpopup:type_name -> dota.CDOTAMsg_SendStatPopup + 208, // 34: dota.CDOTAUserMsg_DismissAllStatPopups.dismissallmsg:type_name -> dota.CDOTAMsg_DismissAllStatPopups + 8, // 35: dota.CDOTAUserMsg_SendRoshanSpectatorPhase.phase:type_name -> dota.DOTA_ROSHAN_PHASE + 209, // 36: dota.CDOTAUserMsg_CoachHUDPing.hud_ping:type_name -> dota.CDOTAMsg_CoachHUDPing + 201, // 37: dota.CDOTAUserMsg_TE_Projectile.target_loc:type_name -> dota.CMsgVector + 24, // 38: dota.CDOTAUserMsg_TE_Projectile.particle_cp_data:type_name -> dota.CDOTAUserMsg_ProjectileParticleCPData + 201, // 39: dota.CDOTAUserMsg_TE_ProjectileLoc.source_loc:type_name -> dota.CMsgVector + 201, // 40: dota.CDOTAUserMsg_TE_ProjectileLoc.target_loc:type_name -> dota.CMsgVector + 24, // 41: dota.CDOTAUserMsg_TE_ProjectileLoc.particle_cp_data:type_name -> dota.CDOTAUserMsg_ProjectileParticleCPData + 4, // 42: dota.CDOTAUserMsg_AbilityPing.type:type_name -> dota.DOTA_ABILITY_PING_TYPE + 100, // 43: dota.CDOTAUserMsg_BoosterState.boosted_players:type_name -> dota.CDOTAUserMsg_BoosterStatePlayer + 192, // 44: dota.CDOTAUserMsg_StatsHeroPositionInfo.position_details:type_name -> dota.CDOTAUserMsg_StatsHeroPositionInfo.PositionPair + 105, // 45: dota.CDOTAUserMsg_StatsHeroMinuteDetails.position_info:type_name -> dota.CDOTAUserMsg_StatsHeroPositionInfo + 106, // 46: dota.CDOTAUserMsg_StatsTeamMinuteDetails.player_stats:type_name -> dota.CDOTAUserMsg_StatsHeroMinuteDetails + 193, // 47: dota.CDOTAUserMsg_StatsTeamMinuteDetails.lane_performance:type_name -> dota.CDOTAUserMsg_StatsTeamMinuteDetails.LocationPerformance + 108, // 48: dota.CDOTAUserMsg_StatsKillDetails.kill_shares:type_name -> dota.CDOTAUserMsg_StatsPlayerKillShare + 104, // 49: dota.CDOTAUserMsg_StatsMatchDetails.hero_lookup:type_name -> dota.CDOTAUserMsg_StatsHeroLookup + 107, // 50: dota.CDOTAUserMsg_StatsMatchDetails.radiant_stats:type_name -> dota.CDOTAUserMsg_StatsTeamMinuteDetails + 107, // 51: dota.CDOTAUserMsg_StatsMatchDetails.dire_stats:type_name -> dota.CDOTAUserMsg_StatsTeamMinuteDetails + 109, // 52: dota.CDOTAUserMsg_StatsMatchDetails.radiant_kills:type_name -> dota.CDOTAUserMsg_StatsKillDetails + 109, // 53: dota.CDOTAUserMsg_StatsMatchDetails.dire_kills:type_name -> dota.CDOTAUserMsg_StatsKillDetails + 195, // 54: dota.CDOTAUserMsg_StatsMatchDetails.fight_details:type_name -> dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightDetails + 11, // 55: dota.CMsgHeroAbilityStat.stat_type:type_name -> dota.EHeroStatType + 114, // 56: dota.CMsgCombatAnalyzerPlayerStat.hero_ability_stats:type_name -> dota.CMsgHeroAbilityStat + 115, // 57: dota.CMsgCombatAnalyzerStats.player_stats:type_name -> dota.CMsgCombatAnalyzerPlayerStat + 121, // 58: dota.CDOTAUserMsg_CompendiumState.compendium_players:type_name -> dota.CDOTAUserMsg_CompendiumStatePlayer + 201, // 59: dota.CDOTAUserMsg_ProjectionAbility.origin:type_name -> dota.CMsgVector + 13, // 60: dota.CDOTAUserMsg_ProjectionEvent.event_id:type_name -> dota.EProjectionEvent + 196, // 61: dota.CDOTAUserMsg_AllStarEvent.player_scores:type_name -> dota.CDOTAUserMsg_AllStarEvent.PlayerScore + 197, // 62: dota.CDOTAUserMsg_PauseMinigameData.data_bits:type_name -> dota.CDOTAUserMsg_PauseMinigameData.DataBit + 210, // 63: dota.CDOTAUserMsg_VersusScene_PlayerBehavior.behavior:type_name -> dota.EDOTAVersusScenePlayerBehavior + 211, // 64: dota.CDOTAUserMsg_VersusScene_PlayerBehavior.play_activity:type_name -> dota.VersusScene_PlayActivity + 212, // 65: dota.CDOTAUserMsg_VersusScene_PlayerBehavior.chat_wheel:type_name -> dota.VersusScene_ChatWheel + 213, // 66: dota.CDOTAUserMsg_VersusScene_PlayerBehavior.playback_rate:type_name -> dota.VersusScene_PlaybackRate + 198, // 67: dota.CDOTAUserMsg_GuildChallenge_Progress.player_progress:type_name -> dota.CDOTAUserMsg_GuildChallenge_Progress.PlayerProgress + 16, // 68: dota.CDOTAUserMsg_GuildChallenge_Progress.challenge_type:type_name -> dota.CDOTAUserMsg_GuildChallenge_Progress.EChallengeType + 181, // 69: dota.CDOTAUserMsg_MiniKillCamInfo.Attacker.abilities:type_name -> dota.CDOTAUserMsg_MiniKillCamInfo.Attacker.Ability + 14, // 70: dota.CDOTAUserMsg_PredictionResult.Prediction.result:type_name -> dota.CDOTAUserMsg_PredictionResult.Prediction.EResult + 15, // 71: dota.CDOTAResponseQuerySerialized.Fact.valtype:type_name -> dota.CDOTAResponseQuerySerialized.Fact.ValueType + 185, // 72: dota.CDOTAUserMsg_UnitEvent.Speech.predelay:type_name -> dota.CDOTAUserMsg_UnitEvent.Interval + 9, // 73: dota.CDOTAUserMsg_StatsHeroPositionInfo.PositionPair.position_category:type_name -> dota.DOTA_POSITION_CATEGORY + 194, // 74: dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightDetails.radiant_fight_details:type_name -> dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightTeamDetails + 194, // 75: dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightDetails.dire_fight_details:type_name -> dota.CDOTAUserMsg_StatsMatchDetails.CDOTAUserMsg_StatsFightTeamDetails + 76, // [76:76] is the sub-list for method output_type + 76, // [76:76] is the sub-list for method input_type + 76, // [76:76] is the sub-list for extension type_name + 76, // [76:76] is the sub-list for extension extendee + 0, // [0:76] is the sub-list for field type_name } func init() { file_dota_usermessages_proto_init() } @@ -17441,7 +17647,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MiniKillCamInfo); i { + switch v := v.(*CDOTAUserMsg_UpdateLinearProjectileCPData); i { case 0: return &v.state case 1: @@ -17453,7 +17659,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_GlobalLightColor); i { + switch v := v.(*CDOTAUserMsg_MiniKillCamInfo); i { case 0: return &v.state case 1: @@ -17465,7 +17671,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_GlobalLightDirection); i { + switch v := v.(*CDOTAUserMsg_GlobalLightColor); i { case 0: return &v.state case 1: @@ -17477,7 +17683,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_LocationPing); i { + switch v := v.(*CDOTAUserMsg_GlobalLightDirection); i { case 0: return &v.state case 1: @@ -17489,7 +17695,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_PingConfirmation); i { + switch v := v.(*CDOTAUserMsg_LocationPing); i { case 0: return &v.state case 1: @@ -17501,7 +17707,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ItemAlert); i { + switch v := v.(*CDOTAUserMsg_PingConfirmation); i { case 0: return &v.state case 1: @@ -17513,7 +17719,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_EnemyItemAlert); i { + switch v := v.(*CDOTAUserMsg_ItemAlert); i { case 0: return &v.state case 1: @@ -17525,7 +17731,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ModifierAlert); i { + switch v := v.(*CDOTAUserMsg_EnemyItemAlert); i { case 0: return &v.state case 1: @@ -17537,7 +17743,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_HPManaAlert); i { + switch v := v.(*CDOTAUserMsg_ModifierAlert); i { case 0: return &v.state case 1: @@ -17549,7 +17755,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_NeutralCampAlert); i { + switch v := v.(*CDOTAUserMsg_HPManaAlert); i { case 0: return &v.state case 1: @@ -17561,7 +17767,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_GlyphAlert); i { + switch v := v.(*CDOTAUserMsg_NeutralCampAlert); i { case 0: return &v.state case 1: @@ -17573,7 +17779,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_RadarAlert); i { + switch v := v.(*CDOTAUserMsg_GlyphAlert); i { case 0: return &v.state case 1: @@ -17585,7 +17791,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_WillPurchaseAlert); i { + switch v := v.(*CDOTAUserMsg_RadarAlert); i { case 0: return &v.state case 1: @@ -17597,7 +17803,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_EmptyTeleportAlert); i { + switch v := v.(*CDOTAUserMsg_WillPurchaseAlert); i { case 0: return &v.state case 1: @@ -17609,7 +17815,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MarsArenaOfBloodAttack); i { + switch v := v.(*CDOTAUserMsg_EmptyTeleportAlert); i { case 0: return &v.state case 1: @@ -17621,7 +17827,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAEntityMsg_InvokerSpellCast); i { + switch v := v.(*CDOTAUserMsg_MarsArenaOfBloodAttack); i { case 0: return &v.state case 1: @@ -17633,7 +17839,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_BuyBackStateAlert); i { + switch v := v.(*CDOTAEntityMsg_InvokerSpellCast); i { case 0: return &v.state case 1: @@ -17645,7 +17851,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_QuickBuyAlert); i { + switch v := v.(*CDOTAUserMsg_BuyBackStateAlert); i { case 0: return &v.state case 1: @@ -17657,7 +17863,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CourierKilledAlert); i { + switch v := v.(*CDOTAUserMsg_QuickBuyAlert); i { case 0: return &v.state case 1: @@ -17669,7 +17875,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MinimapEvent); i { + switch v := v.(*CDOTAUserMsg_CourierKilledAlert); i { case 0: return &v.state case 1: @@ -17681,7 +17887,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MapLine); i { + switch v := v.(*CDOTAUserMsg_MinimapEvent); i { case 0: return &v.state case 1: @@ -17693,7 +17899,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MinimapDebugPoint); i { + switch v := v.(*CDOTAUserMsg_MapLine); i { case 0: return &v.state case 1: @@ -17705,7 +17911,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CreateLinearProjectile); i { + switch v := v.(*CDOTAUserMsg_MinimapDebugPoint); i { case 0: return &v.state case 1: @@ -17717,7 +17923,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_DestroyLinearProjectile); i { + switch v := v.(*CDOTAUserMsg_CreateLinearProjectile); i { case 0: return &v.state case 1: @@ -17729,7 +17935,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_DodgeTrackingProjectiles); i { + switch v := v.(*CDOTAUserMsg_DestroyLinearProjectile); i { case 0: return &v.state case 1: @@ -17741,7 +17947,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SpectatorPlayerClick); i { + switch v := v.(*CDOTAUserMsg_DodgeTrackingProjectiles); i { case 0: return &v.state case 1: @@ -17753,7 +17959,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SpectatorPlayerUnitOrders); i { + switch v := v.(*CDOTAUserMsg_SpectatorPlayerClick); i { case 0: return &v.state case 1: @@ -17765,7 +17971,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_NevermoreRequiem); i { + switch v := v.(*CDOTAUserMsg_SpectatorPlayerUnitOrders); i { case 0: return &v.state case 1: @@ -17777,7 +17983,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_InvalidCommand); i { + switch v := v.(*CDOTAUserMsg_NevermoreRequiem); i { case 0: return &v.state case 1: @@ -17789,7 +17995,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_HudError); i { + switch v := v.(*CDOTAUserMsg_InvalidCommand); i { case 0: return &v.state case 1: @@ -17801,7 +18007,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SharedCooldown); i { + switch v := v.(*CDOTAUserMsg_HudError); i { case 0: return &v.state case 1: @@ -17813,7 +18019,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SetNextAutobuyItem); i { + switch v := v.(*CDOTAUserMsg_SharedCooldown); i { case 0: return &v.state case 1: @@ -17825,7 +18031,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_HalloweenDrops); i { + switch v := v.(*CDOTAUserMsg_SetNextAutobuyItem); i { case 0: return &v.state case 1: @@ -17837,7 +18043,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_PredictionResult); i { + switch v := v.(*CDOTAUserMsg_HalloweenDrops); i { case 0: return &v.state case 1: @@ -17849,7 +18055,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAResponseQuerySerialized); i { + switch v := v.(*CDOTAUserMsg_PredictionResult); i { case 0: return &v.state case 1: @@ -17861,7 +18067,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTASpeechMatchOnClient); i { + switch v := v.(*CDOTAResponseQuerySerialized); i { case 0: return &v.state case 1: @@ -17873,7 +18079,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UnitEvent); i { + switch v := v.(*CDOTASpeechMatchOnClient); i { case 0: return &v.state case 1: @@ -17885,7 +18091,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ItemPurchased); i { + switch v := v.(*CDOTAUserMsg_UnitEvent); i { case 0: return &v.state case 1: @@ -17897,7 +18103,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ItemSold); i { + switch v := v.(*CDOTAUserMsg_ItemPurchased); i { case 0: return &v.state case 1: @@ -17909,7 +18115,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ItemFound); i { + switch v := v.(*CDOTAUserMsg_ItemSold); i { case 0: return &v.state case 1: @@ -17921,7 +18127,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_OverheadEvent); i { + switch v := v.(*CDOTAUserMsg_ItemFound); i { case 0: return &v.state case 1: @@ -17933,7 +18139,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TutorialTipInfo); i { + switch v := v.(*CDOTAUserMsg_OverheadEvent); i { case 0: return &v.state case 1: @@ -17945,7 +18151,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TutorialFinish); i { + switch v := v.(*CDOTAUserMsg_TutorialTipInfo); i { case 0: return &v.state case 1: @@ -17957,7 +18163,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TutorialMinimapPosition); i { + switch v := v.(*CDOTAUserMsg_TutorialFinish); i { case 0: return &v.state case 1: @@ -17969,7 +18175,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SendGenericToolTip); i { + switch v := v.(*CDOTAUserMsg_TutorialMinimapPosition); i { case 0: return &v.state case 1: @@ -17981,7 +18187,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_WorldLine); i { + switch v := v.(*CDOTAUserMsg_SendGenericToolTip); i { case 0: return &v.state case 1: @@ -17993,7 +18199,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ChatWheel); i { + switch v := v.(*CDOTAUserMsg_WorldLine); i { case 0: return &v.state case 1: @@ -18005,7 +18211,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ReceivedXmasGift); i { + switch v := v.(*CDOTAUserMsg_ChatWheel); i { case 0: return &v.state case 1: @@ -18017,7 +18223,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ShowSurvey); i { + switch v := v.(*CDOTAUserMsg_ReceivedXmasGift); i { case 0: return &v.state case 1: @@ -18029,7 +18235,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UpdateSharedContent); i { + switch v := v.(*CDOTAUserMsg_ShowSurvey); i { case 0: return &v.state case 1: @@ -18041,7 +18247,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TutorialRequestExp); i { + switch v := v.(*CDOTAUserMsg_UpdateSharedContent); i { case 0: return &v.state case 1: @@ -18053,7 +18259,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TutorialFade); i { + switch v := v.(*CDOTAUserMsg_TutorialRequestExp); i { case 0: return &v.state case 1: @@ -18065,7 +18271,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TutorialPingMinimap); i { + switch v := v.(*CDOTAUserMsg_TutorialFade); i { case 0: return &v.state case 1: @@ -18077,7 +18283,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_GamerulesStateChanged); i { + switch v := v.(*CDOTAUserMsg_TutorialPingMinimap); i { case 0: return &v.state case 1: @@ -18089,7 +18295,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_AddQuestLogEntry); i { + switch v := v.(*CDOTAUserMsg_GamerulesStateChanged); i { case 0: return &v.state case 1: @@ -18101,7 +18307,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SendStatPopup); i { + switch v := v.(*CDOTAUserMsg_AddQuestLogEntry); i { case 0: return &v.state case 1: @@ -18113,7 +18319,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_DismissAllStatPopups); i { + switch v := v.(*CDOTAUserMsg_SendStatPopup); i { case 0: return &v.state case 1: @@ -18125,7 +18331,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SendRoshanSpectatorPhase); i { + switch v := v.(*CDOTAUserMsg_DismissAllStatPopups); i { case 0: return &v.state case 1: @@ -18137,7 +18343,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SendRoshanPopup); i { + switch v := v.(*CDOTAUserMsg_SendRoshanSpectatorPhase); i { case 0: return &v.state case 1: @@ -18149,7 +18355,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SendFinalGold); i { + switch v := v.(*CDOTAUserMsg_SendRoshanPopup); i { case 0: return &v.state case 1: @@ -18161,7 +18367,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CustomMsg); i { + switch v := v.(*CDOTAUserMsg_SendFinalGold); i { case 0: return &v.state case 1: @@ -18173,7 +18379,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CoachHUDPing); i { + switch v := v.(*CDOTAUserMsg_CustomMsg); i { case 0: return &v.state case 1: @@ -18185,7 +18391,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ClientLoadGridNav); i { + switch v := v.(*CDOTAUserMsg_CoachHUDPing); i { case 0: return &v.state case 1: @@ -18197,7 +18403,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TE_Projectile); i { + switch v := v.(*CDOTAUserMsg_ClientLoadGridNav); i { case 0: return &v.state case 1: @@ -18209,7 +18415,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TE_ProjectileLoc); i { + switch v := v.(*CDOTAUserMsg_TE_Projectile); i { case 0: return &v.state case 1: @@ -18221,7 +18427,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TE_DestroyProjectile); i { + switch v := v.(*CDOTAUserMsg_TE_ProjectileLoc); i { case 0: return &v.state case 1: @@ -18233,7 +18439,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TE_DotaBloodImpact); i { + switch v := v.(*CDOTAUserMsg_TE_DestroyProjectile); i { case 0: return &v.state case 1: @@ -18245,7 +18451,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_AbilityPing); i { + switch v := v.(*CDOTAUserMsg_TE_DotaBloodImpact); i { case 0: return &v.state case 1: @@ -18257,7 +18463,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TE_UnitAnimation); i { + switch v := v.(*CDOTAUserMsg_AbilityPing); i { case 0: return &v.state case 1: @@ -18269,7 +18475,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TE_UnitAnimationEnd); i { + switch v := v.(*CDOTAUserMsg_TE_UnitAnimation); i { case 0: return &v.state case 1: @@ -18281,7 +18487,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ShowGenericPopup); i { + switch v := v.(*CDOTAUserMsg_TE_UnitAnimationEnd); i { case 0: return &v.state case 1: @@ -18293,7 +18499,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_VoteStart); i { + switch v := v.(*CDOTAUserMsg_ShowGenericPopup); i { case 0: return &v.state case 1: @@ -18305,7 +18511,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_VoteUpdate); i { + switch v := v.(*CDOTAUserMsg_VoteStart); i { case 0: return &v.state case 1: @@ -18317,7 +18523,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_VoteEnd); i { + switch v := v.(*CDOTAUserMsg_VoteUpdate); i { case 0: return &v.state case 1: @@ -18329,7 +18535,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_BoosterStatePlayer); i { + switch v := v.(*CDOTAUserMsg_VoteEnd); i { case 0: return &v.state case 1: @@ -18341,7 +18547,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_BoosterState); i { + switch v := v.(*CDOTAUserMsg_BoosterStatePlayer); i { case 0: return &v.state case 1: @@ -18353,7 +18559,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_PlayerMMR); i { + switch v := v.(*CDOTAUserMsg_BoosterState); i { case 0: return &v.state case 1: @@ -18365,7 +18571,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_AbilitySteal); i { + switch v := v.(*CDOTAUserMsg_PlayerMMR); i { case 0: return &v.state case 1: @@ -18377,7 +18583,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsHeroLookup); i { + switch v := v.(*CDOTAUserMsg_AbilitySteal); i { case 0: return &v.state case 1: @@ -18389,7 +18595,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsHeroPositionInfo); i { + switch v := v.(*CDOTAUserMsg_StatsHeroLookup); i { case 0: return &v.state case 1: @@ -18401,7 +18607,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsHeroMinuteDetails); i { + switch v := v.(*CDOTAUserMsg_StatsHeroPositionInfo); i { case 0: return &v.state case 1: @@ -18413,7 +18619,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsTeamMinuteDetails); i { + switch v := v.(*CDOTAUserMsg_StatsHeroMinuteDetails); i { case 0: return &v.state case 1: @@ -18425,7 +18631,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsPlayerKillShare); i { + switch v := v.(*CDOTAUserMsg_StatsTeamMinuteDetails); i { case 0: return &v.state case 1: @@ -18437,7 +18643,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsKillDetails); i { + switch v := v.(*CDOTAUserMsg_StatsPlayerKillShare); i { case 0: return &v.state case 1: @@ -18449,7 +18655,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsMatchDetails); i { + switch v := v.(*CDOTAUserMsg_StatsKillDetails); i { case 0: return &v.state case 1: @@ -18461,7 +18667,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MiniTaunt); i { + switch v := v.(*CDOTAUserMsg_StatsMatchDetails); i { case 0: return &v.state case 1: @@ -18473,7 +18679,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SpeechBubble); i { + switch v := v.(*CDOTAUserMsg_MiniTaunt); i { case 0: return &v.state case 1: @@ -18485,7 +18691,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CustomHeaderMessage); i { + switch v := v.(*CDOTAUserMsg_SpeechBubble); i { case 0: return &v.state case 1: @@ -18497,7 +18703,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgHeroAbilityStat); i { + switch v := v.(*CDOTAUserMsg_CustomHeaderMessage); i { case 0: return &v.state case 1: @@ -18509,7 +18715,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgCombatAnalyzerPlayerStat); i { + switch v := v.(*CMsgHeroAbilityStat); i { case 0: return &v.state case 1: @@ -18521,7 +18727,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgCombatAnalyzerStats); i { + switch v := v.(*CMsgCombatAnalyzerPlayerStat); i { case 0: return &v.state case 1: @@ -18533,7 +18739,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_BeastChat); i { + switch v := v.(*CMsgCombatAnalyzerStats); i { case 0: return &v.state case 1: @@ -18545,7 +18751,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CustomHudElement_Create); i { + switch v := v.(*CDOTAUserMsg_BeastChat); i { case 0: return &v.state case 1: @@ -18557,7 +18763,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CustomHudElement_Modify); i { + switch v := v.(*CDOTAUserMsg_CustomHudElement_Create); i { case 0: return &v.state case 1: @@ -18569,7 +18775,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CustomHudElement_Destroy); i { + switch v := v.(*CDOTAUserMsg_CustomHudElement_Modify); i { case 0: return &v.state case 1: @@ -18581,7 +18787,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CompendiumStatePlayer); i { + switch v := v.(*CDOTAUserMsg_CustomHudElement_Destroy); i { case 0: return &v.state case 1: @@ -18593,7 +18799,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CompendiumState); i { + switch v := v.(*CDOTAUserMsg_CompendiumStatePlayer); i { case 0: return &v.state case 1: @@ -18605,7 +18811,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ProjectionAbility); i { + switch v := v.(*CDOTAUserMsg_CompendiumState); i { case 0: return &v.state case 1: @@ -18617,7 +18823,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ProjectionEvent); i { + switch v := v.(*CDOTAUserMsg_ProjectionAbility); i { case 0: return &v.state case 1: @@ -18629,7 +18835,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_XPAlert); i { + switch v := v.(*CDOTAUserMsg_ProjectionEvent); i { case 0: return &v.state case 1: @@ -18641,7 +18847,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TalentTreeAlert); i { + switch v := v.(*CDOTAUserMsg_XPAlert); i { case 0: return &v.state case 1: @@ -18653,7 +18859,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UpdateQuestProgress); i { + switch v := v.(*CDOTAUserMsg_TalentTreeAlert); i { case 0: return &v.state case 1: @@ -18665,7 +18871,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_QuestStatus); i { + switch v := v.(*CDOTAUserMsg_UpdateQuestProgress); i { case 0: return &v.state case 1: @@ -18677,7 +18883,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SuggestHeroPick); i { + switch v := v.(*CDOTAUserMsg_QuestStatus); i { case 0: return &v.state case 1: @@ -18689,7 +18895,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SuggestHeroRole); i { + switch v := v.(*CDOTAUserMsg_SuggestHeroPick); i { case 0: return &v.state case 1: @@ -18701,7 +18907,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_KillcamDamageTaken); i { + switch v := v.(*CDOTAUserMsg_SuggestHeroRole); i { case 0: return &v.state case 1: @@ -18713,7 +18919,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SelectPenaltyGold); i { + switch v := v.(*CDOTAUserMsg_KillcamDamageTaken); i { case 0: return &v.state case 1: @@ -18725,7 +18931,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_RollDiceResult); i { + switch v := v.(*CDOTAUserMsg_SelectPenaltyGold); i { case 0: return &v.state case 1: @@ -18737,7 +18943,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_FlipCoinResult); i { + switch v := v.(*CDOTAUserMsg_RollDiceResult); i { case 0: return &v.state case 1: @@ -18749,7 +18955,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMessage_RequestItemSuggestions); i { + switch v := v.(*CDOTAUserMsg_FlipCoinResult); i { case 0: return &v.state case 1: @@ -18761,7 +18967,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMessage_TeamCaptainChanged); i { + switch v := v.(*CDOTAUserMessage_RequestItemSuggestions); i { case 0: return &v.state case 1: @@ -18773,7 +18979,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ChatWheelCooldown); i { + switch v := v.(*CDOTAUserMessage_TeamCaptainChanged); i { case 0: return &v.state case 1: @@ -18785,7 +18991,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_HeroRelicProgress); i { + switch v := v.(*CDOTAUserMsg_ChatWheelCooldown); i { case 0: return &v.state case 1: @@ -18797,7 +19003,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_AbilityDraftRequestAbility); i { + switch v := v.(*CDOTAUserMsg_HeroRelicProgress); i { case 0: return &v.state case 1: @@ -18809,7 +19015,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_DamageReport); i { + switch v := v.(*CDOTAUserMsg_AbilityDraftRequestAbility); i { case 0: return &v.state case 1: @@ -18821,7 +19027,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_SalutePlayer); i { + switch v := v.(*CDOTAUserMsg_DamageReport); i { case 0: return &v.state case 1: @@ -18833,7 +19039,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_TipAlert); i { + switch v := v.(*CDOTAUserMsg_SalutePlayer); i { case 0: return &v.state case 1: @@ -18845,7 +19051,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ReplaceQueryUnit); i { + switch v := v.(*CDOTAUserMsg_GiftPlayer); i { case 0: return &v.state case 1: @@ -18857,7 +19063,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ESArcanaCombo); i { + switch v := v.(*CDOTAUserMsg_TipAlert); i { case 0: return &v.state case 1: @@ -18869,7 +19075,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ESArcanaComboSummary); i { + switch v := v.(*CDOTAUserMsg_ReplaceQueryUnit); i { case 0: return &v.state case 1: @@ -18881,7 +19087,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_OMArcanaCombo); i { + switch v := v.(*CDOTAUserMsg_ESArcanaCombo); i { case 0: return &v.state case 1: @@ -18893,7 +19099,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_HighFiveCompleted); i { + switch v := v.(*CDOTAUserMsg_ESArcanaComboSummary); i { case 0: return &v.state case 1: @@ -18905,7 +19111,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_HighFiveLeftHanging); i { + switch v := v.(*CDOTAUserMsg_OMArcanaCombo); i { case 0: return &v.state case 1: @@ -18917,7 +19123,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ShovelUnearth); i { + switch v := v.(*CDOTAUserMsg_HighFiveCompleted); i { case 0: return &v.state case 1: @@ -18929,7 +19135,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_AllStarEvent); i { + switch v := v.(*CDOTAUserMsg_HighFiveLeftHanging); i { case 0: return &v.state case 1: @@ -18941,7 +19147,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_QueuedOrderRemoved); i { + switch v := v.(*CDOTAUserMsg_ShovelUnearth); i { case 0: return &v.state case 1: @@ -18953,7 +19159,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_DebugChallenge); i { + switch v := v.(*CDOTAUserMsg_AllStarEvent); i { case 0: return &v.state case 1: @@ -18965,7 +19171,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_FoundNeutralItem); i { + switch v := v.(*CDOTAUserMsg_QueuedOrderRemoved); i { case 0: return &v.state case 1: @@ -18977,7 +19183,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_OutpostCaptured); i { + switch v := v.(*CDOTAUserMsg_DebugChallenge); i { case 0: return &v.state case 1: @@ -18989,7 +19195,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_OutpostGrantedXP); i { + switch v := v.(*CDOTAUserMsg_FoundNeutralItem); i { case 0: return &v.state case 1: @@ -19001,7 +19207,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MoveCameraToUnit); i { + switch v := v.(*CDOTAUserMsg_OutpostCaptured); i { case 0: return &v.state case 1: @@ -19013,7 +19219,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_PauseMinigameData); i { + switch v := v.(*CDOTAUserMsg_OutpostGrantedXP); i { case 0: return &v.state case 1: @@ -19025,7 +19231,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_VersusScene_PlayerBehavior); i { + switch v := v.(*CDOTAUserMsg_MoveCameraToUnit); i { case 0: return &v.state case 1: @@ -19037,7 +19243,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_QoP_ArcanaSummary); i { + switch v := v.(*CDOTAUserMsg_PauseMinigameData); i { case 0: return &v.state case 1: @@ -19049,7 +19255,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_HotPotato_Created); i { + switch v := v.(*CDOTAUserMsg_VersusScene_PlayerBehavior); i { case 0: return &v.state case 1: @@ -19061,7 +19267,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_HotPotato_Exploded); i { + switch v := v.(*CDOTAUserMsg_QoP_ArcanaSummary); i { case 0: return &v.state case 1: @@ -19073,7 +19279,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_WK_Arcana_Progress); i { + switch v := v.(*CDOTAUserMsg_HotPotato_Created); i { case 0: return &v.state case 1: @@ -19085,7 +19291,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_GuildChallenge_Progress); i { + switch v := v.(*CDOTAUserMsg_HotPotato_Exploded); i { case 0: return &v.state case 1: @@ -19097,7 +19303,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_WRArcanaProgress); i { + switch v := v.(*CDOTAUserMsg_WK_Arcana_Progress); i { case 0: return &v.state case 1: @@ -19109,7 +19315,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_WRArcanaSummary); i { + switch v := v.(*CDOTAUserMsg_GuildChallenge_Progress); i { case 0: return &v.state case 1: @@ -19121,7 +19327,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_EmptyItemSlotAlert); i { + switch v := v.(*CDOTAUserMsg_WRArcanaProgress); i { case 0: return &v.state case 1: @@ -19133,7 +19339,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_AghsStatusAlert); i { + switch v := v.(*CDOTAUserMsg_WRArcanaSummary); i { case 0: return &v.state case 1: @@ -19145,7 +19351,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MutedPlayers); i { + switch v := v.(*CDOTAUserMsg_EmptyItemSlotAlert); i { case 0: return &v.state case 1: @@ -19157,7 +19363,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ContextualTip); i { + switch v := v.(*CDOTAUserMsg_AghsStatusAlert); i { case 0: return &v.state case 1: @@ -19169,7 +19375,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_ChatMessage); i { + switch v := v.(*CDOTAUserMsg_MutedPlayers); i { case 0: return &v.state case 1: @@ -19181,7 +19387,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_RockPaperScissorsStarted); i { + switch v := v.(*CDOTAUserMsg_ContextualTip); i { case 0: return &v.state case 1: @@ -19193,7 +19399,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_RockPaperScissorsFinished); i { + switch v := v.(*CDOTAUserMsg_ChatMessage); i { case 0: return &v.state case 1: @@ -19205,7 +19411,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_DuelOpponentKilled); i { + switch v := v.(*CDOTAUserMsg_RockPaperScissorsStarted); i { case 0: return &v.state case 1: @@ -19217,7 +19423,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_DuelAccepted); i { + switch v := v.(*CDOTAUserMsg_RockPaperScissorsFinished); i { case 0: return &v.state case 1: @@ -19229,7 +19435,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_DuelRequested); i { + switch v := v.(*CDOTAUserMsg_DuelOpponentKilled); i { case 0: return &v.state case 1: @@ -19241,7 +19447,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled); i { + switch v := v.(*CDOTAUserMsg_DuelAccepted); i { case 0: return &v.state case 1: @@ -19253,7 +19459,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_PlayerDraftSuggestPick); i { + switch v := v.(*CDOTAUserMsg_DuelRequested); i { case 0: return &v.state case 1: @@ -19265,7 +19471,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_PlayerDraftPick); i { + switch v := v.(*CDOTAUserMsg_MuertaReleaseEvent_AssignedTargetKilled); i { case 0: return &v.state case 1: @@ -19277,7 +19483,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MiniKillCamInfo_Attacker); i { + switch v := v.(*CDOTAUserMsg_PlayerDraftSuggestPick); i { case 0: return &v.state case 1: @@ -19289,7 +19495,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability); i { + switch v := v.(*CDOTAUserMsg_PlayerDraftPick); i { case 0: return &v.state case 1: @@ -19301,7 +19507,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_CourierKilledAlert_LostItem); i { + switch v := v.(*CDOTAUserMsg_MiniKillCamInfo_Attacker); i { case 0: return &v.state case 1: @@ -19313,7 +19519,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_PredictionResult_Prediction); i { + switch v := v.(*CDOTAUserMsg_MiniKillCamInfo_Attacker_Ability); i { case 0: return &v.state case 1: @@ -19325,7 +19531,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAResponseQuerySerialized_Fact); i { + switch v := v.(*CDOTAUserMsg_CourierKilledAlert_LostItem); i { case 0: return &v.state case 1: @@ -19337,7 +19543,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UnitEvent_Interval); i { + switch v := v.(*CDOTAUserMsg_PredictionResult_Prediction); i { case 0: return &v.state case 1: @@ -19349,7 +19555,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UnitEvent_Speech); i { + switch v := v.(*CDOTAResponseQuerySerialized_Fact); i { case 0: return &v.state case 1: @@ -19361,7 +19567,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UnitEvent_SpeechMute); i { + switch v := v.(*CDOTAUserMsg_UnitEvent_Interval); i { case 0: return &v.state case 1: @@ -19373,7 +19579,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UnitEvent_AddGesture); i { + switch v := v.(*CDOTAUserMsg_UnitEvent_Speech); i { case 0: return &v.state case 1: @@ -19385,7 +19591,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UnitEvent_RemoveGesture); i { + switch v := v.(*CDOTAUserMsg_UnitEvent_SpeechMute); i { case 0: return &v.state case 1: @@ -19397,7 +19603,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UnitEvent_BloodImpact); i { + switch v := v.(*CDOTAUserMsg_UnitEvent_AddGesture); i { case 0: return &v.state case 1: @@ -19409,7 +19615,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_UnitEvent_FadeGesture); i { + switch v := v.(*CDOTAUserMsg_UnitEvent_RemoveGesture); i { case 0: return &v.state case 1: @@ -19421,7 +19627,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsHeroPositionInfo_PositionPair); i { + switch v := v.(*CDOTAUserMsg_UnitEvent_BloodImpact); i { case 0: return &v.state case 1: @@ -19433,7 +19639,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance); i { + switch v := v.(*CDOTAUserMsg_UnitEvent_FadeGesture); i { case 0: return &v.state case 1: @@ -19445,7 +19651,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails); i { + switch v := v.(*CDOTAUserMsg_StatsHeroPositionInfo_PositionPair); i { case 0: return &v.state case 1: @@ -19457,7 +19663,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails); i { + switch v := v.(*CDOTAUserMsg_StatsTeamMinuteDetails_LocationPerformance); i { case 0: return &v.state case 1: @@ -19469,7 +19675,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_AllStarEvent_PlayerScore); i { + switch v := v.(*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightTeamDetails); i { case 0: return &v.state case 1: @@ -19481,7 +19687,7 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CDOTAUserMsg_PauseMinigameData_DataBit); i { + switch v := v.(*CDOTAUserMsg_StatsMatchDetails_CDOTAUserMsg_StatsFightDetails); i { case 0: return &v.state case 1: @@ -19493,6 +19699,30 @@ func file_dota_usermessages_proto_init() { } } file_dota_usermessages_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CDOTAUserMsg_AllStarEvent_PlayerScore); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_usermessages_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CDOTAUserMsg_PauseMinigameData_DataBit); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dota_usermessages_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CDOTAUserMsg_GuildChallenge_Progress_PlayerProgress); i { case 0: return &v.state @@ -19511,7 +19741,7 @@ func file_dota_usermessages_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dota_usermessages_proto_rawDesc, NumEnums: 17, - NumMessages: 180, + NumMessages: 182, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/dota_usermessages.proto b/dota/dota_usermessages.proto index c6f75328..0391ea48 100644 --- a/dota/dota_usermessages.proto +++ b/dota/dota_usermessages.proto @@ -164,6 +164,8 @@ enum EDotaUserMessages { DOTA_UM_MuertaReleaseEvent_AssignedTargetKilled = 619; DOTA_UM_PlayerDraftSuggestPick = 620; DOTA_UM_PlayerDraftPick = 621; + DOTA_UM_UpdateLinearProjectileCPData = 622; + DOTA_UM_GiftPlayer = 623; } enum DOTA_CHAT_MESSAGE { @@ -275,6 +277,9 @@ enum DOTA_CHAT_MESSAGE { CHAT_MESSAGE_PRIVATE_COACH_CONNECTED = 113; CHAT_MESSAGE_CANT_PAUSE_TOO_EARLY = 115; CHAT_MESSAGE_HERO_KILL_WITH_PENGUIN = 116; + CHAT_MESSAGE_MINIBOSS_KILL = 117; + CHAT_MESSAGE_PLAYER_IN_GAME_BAN_TEXT = 118; + CHAT_MESSAGE_BANNER_PLANTED = 119; } enum DOTA_NO_BATTLE_POINTS_REASONS { @@ -498,6 +503,12 @@ message CDOTAUserMsg_ProjectileParticleCPData { optional CMsgVector vector = 2; } +message CDOTAUserMsg_UpdateLinearProjectileCPData { + optional int32 handle = 1; + optional int32 control_point = 2; + optional CMsgVector vector = 3; +} + message CDOTAUserMsg_MiniKillCamInfo { message Attacker { message Ability { @@ -993,6 +1004,8 @@ message CDOTAUserMsg_TE_Projectile { optional CMsgVector target_loc = 14; repeated CDOTAUserMsg_ProjectileParticleCPData particle_cp_data = 15; optional int64 additional_particle_system_handle = 16; + optional int32 original_move_speed = 17; + optional uint32 ability = 18; } message CDOTAUserMsg_TE_ProjectileLoc { @@ -1011,6 +1024,7 @@ message CDOTAUserMsg_TE_ProjectileLoc { optional int32 source_attachment = 15; repeated CDOTAUserMsg_ProjectileParticleCPData particle_cp_data = 16; optional int64 additional_particle_system_handle = 17; + optional int32 original_move_speed = 18; } message CDOTAUserMsg_TE_DestroyProjectile { @@ -1385,6 +1399,12 @@ message CDOTAUserMsg_SalutePlayer { optional uint32 num_recent_tips = 6; } +message CDOTAUserMsg_GiftPlayer { + optional int32 source_player_id = 1; + optional int32 target_player_id = 2; + optional uint32 gift_item_def_index = 3; +} + message CDOTAUserMsg_TipAlert { optional int32 player_id = 1; optional string tip_text = 2; diff --git a/dota/econ_gcmessages.pb.go b/dota/econ_gcmessages.pb.go index 23dea9ca..35e44ccc 100644 --- a/dota/econ_gcmessages.pb.go +++ b/dota/econ_gcmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: econ_gcmessages.proto @@ -25,6 +25,8 @@ type EGCItemMsg int32 const ( EGCItemMsg_k_EMsgGCBase EGCItemMsg = 1000 EGCItemMsg_k_EMsgGCSetItemPosition EGCItemMsg = 1001 + EGCItemMsg_k_EMsgClientToGCPackBundle EGCItemMsg = 1002 + EGCItemMsg_k_EMsgClientToGCPackBundleResponse EGCItemMsg = 1003 EGCItemMsg_k_EMsgGCDelete EGCItemMsg = 1004 EGCItemMsg_k_EMsgGCVerifyCacheSubscription EGCItemMsg = 1005 EGCItemMsg_k_EMsgClientToGCNameItem EGCItemMsg = 1006 @@ -59,6 +61,7 @@ const ( EGCItemMsg_k_EMsgGCResetStrangeGemCountResponse EGCItemMsg = 1095 EGCItemMsg_k_EMsgGCServerUseItemRequest EGCItemMsg = 1103 EGCItemMsg_k_EMsgGCAddGiftItem EGCItemMsg = 1104 + EGCItemMsg_k_EMsgSQLGCToGCRevokeUntrustedGift EGCItemMsg = 1105 EGCItemMsg_k_EMsgClientToGCRemoveItemGifterAttributes EGCItemMsg = 1109 EGCItemMsg_k_EMsgClientToGCRemoveItemName EGCItemMsg = 1110 EGCItemMsg_k_EMsgClientToGCRemoveItemDescription EGCItemMsg = 1111 @@ -152,6 +155,8 @@ var ( EGCItemMsg_name = map[int32]string{ 1000: "k_EMsgGCBase", 1001: "k_EMsgGCSetItemPosition", + 1002: "k_EMsgClientToGCPackBundle", + 1003: "k_EMsgClientToGCPackBundleResponse", 1004: "k_EMsgGCDelete", 1005: "k_EMsgGCVerifyCacheSubscription", 1006: "k_EMsgClientToGCNameItem", @@ -186,6 +191,7 @@ var ( 1095: "k_EMsgGCResetStrangeGemCountResponse", 1103: "k_EMsgGCServerUseItemRequest", 1104: "k_EMsgGCAddGiftItem", + 1105: "k_EMsgSQLGCToGCRevokeUntrustedGift", 1109: "k_EMsgClientToGCRemoveItemGifterAttributes", 1110: "k_EMsgClientToGCRemoveItemName", 1111: "k_EMsgClientToGCRemoveItemDescription", @@ -276,6 +282,8 @@ var ( EGCItemMsg_value = map[string]int32{ "k_EMsgGCBase": 1000, "k_EMsgGCSetItemPosition": 1001, + "k_EMsgClientToGCPackBundle": 1002, + "k_EMsgClientToGCPackBundleResponse": 1003, "k_EMsgGCDelete": 1004, "k_EMsgGCVerifyCacheSubscription": 1005, "k_EMsgClientToGCNameItem": 1006, @@ -310,6 +318,7 @@ var ( "k_EMsgGCResetStrangeGemCountResponse": 1095, "k_EMsgGCServerUseItemRequest": 1103, "k_EMsgGCAddGiftItem": 1104, + "k_EMsgSQLGCToGCRevokeUntrustedGift": 1105, "k_EMsgClientToGCRemoveItemGifterAttributes": 1109, "k_EMsgClientToGCRemoveItemName": 1110, "k_EMsgClientToGCRemoveItemDescription": 1111, @@ -803,7 +812,102 @@ func (x *CMsgClientToGCUnpackBundleResponse_EUnpackBundle) UnmarshalJSON(b []byt // Deprecated: Use CMsgClientToGCUnpackBundleResponse_EUnpackBundle.Descriptor instead. func (CMsgClientToGCUnpackBundleResponse_EUnpackBundle) EnumDescriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{48, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{49, 0} +} + +type CMsgClientToGCPackBundleResponse_EPackBundle int32 + +const ( + CMsgClientToGCPackBundleResponse_k_PackBundle_Succeeded CMsgClientToGCPackBundleResponse_EPackBundle = 0 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_InternalError CMsgClientToGCPackBundleResponse_EPackBundle = 1 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_ItemIsNotBundle CMsgClientToGCPackBundleResponse_EPackBundle = 2 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_SOCacheError CMsgClientToGCPackBundleResponse_EPackBundle = 3 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_ItemIsInvalid CMsgClientToGCPackBundleResponse_EPackBundle = 4 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_BadItemQuantity CMsgClientToGCPackBundleResponse_EPackBundle = 5 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_UnableToDeleteItem CMsgClientToGCPackBundleResponse_EPackBundle = 6 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_BundleCannotBePacked CMsgClientToGCPackBundleResponse_EPackBundle = 7 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_ItemIsUntradeable CMsgClientToGCPackBundleResponse_EPackBundle = 8 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_ItemIsEquipped CMsgClientToGCPackBundleResponse_EPackBundle = 9 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_ItemHasGems CMsgClientToGCPackBundleResponse_EPackBundle = 10 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_ItemMixedQuality CMsgClientToGCPackBundleResponse_EPackBundle = 11 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_ItemInvalidQuality CMsgClientToGCPackBundleResponse_EPackBundle = 12 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_ItemIsNonEconomy CMsgClientToGCPackBundleResponse_EPackBundle = 13 + CMsgClientToGCPackBundleResponse_k_PackBundle_Failed_Disabled CMsgClientToGCPackBundleResponse_EPackBundle = 14 +) + +// Enum value maps for CMsgClientToGCPackBundleResponse_EPackBundle. +var ( + CMsgClientToGCPackBundleResponse_EPackBundle_name = map[int32]string{ + 0: "k_PackBundle_Succeeded", + 1: "k_PackBundle_Failed_InternalError", + 2: "k_PackBundle_Failed_ItemIsNotBundle", + 3: "k_PackBundle_Failed_SOCacheError", + 4: "k_PackBundle_Failed_ItemIsInvalid", + 5: "k_PackBundle_Failed_BadItemQuantity", + 6: "k_PackBundle_Failed_UnableToDeleteItem", + 7: "k_PackBundle_Failed_BundleCannotBePacked", + 8: "k_PackBundle_Failed_ItemIsUntradeable", + 9: "k_PackBundle_Failed_ItemIsEquipped", + 10: "k_PackBundle_Failed_ItemHasGems", + 11: "k_PackBundle_Failed_ItemMixedQuality", + 12: "k_PackBundle_Failed_ItemInvalidQuality", + 13: "k_PackBundle_Failed_ItemIsNonEconomy", + 14: "k_PackBundle_Failed_Disabled", + } + CMsgClientToGCPackBundleResponse_EPackBundle_value = map[string]int32{ + "k_PackBundle_Succeeded": 0, + "k_PackBundle_Failed_InternalError": 1, + "k_PackBundle_Failed_ItemIsNotBundle": 2, + "k_PackBundle_Failed_SOCacheError": 3, + "k_PackBundle_Failed_ItemIsInvalid": 4, + "k_PackBundle_Failed_BadItemQuantity": 5, + "k_PackBundle_Failed_UnableToDeleteItem": 6, + "k_PackBundle_Failed_BundleCannotBePacked": 7, + "k_PackBundle_Failed_ItemIsUntradeable": 8, + "k_PackBundle_Failed_ItemIsEquipped": 9, + "k_PackBundle_Failed_ItemHasGems": 10, + "k_PackBundle_Failed_ItemMixedQuality": 11, + "k_PackBundle_Failed_ItemInvalidQuality": 12, + "k_PackBundle_Failed_ItemIsNonEconomy": 13, + "k_PackBundle_Failed_Disabled": 14, + } +) + +func (x CMsgClientToGCPackBundleResponse_EPackBundle) Enum() *CMsgClientToGCPackBundleResponse_EPackBundle { + p := new(CMsgClientToGCPackBundleResponse_EPackBundle) + *p = x + return p +} + +func (x CMsgClientToGCPackBundleResponse_EPackBundle) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (CMsgClientToGCPackBundleResponse_EPackBundle) Descriptor() protoreflect.EnumDescriptor { + return file_econ_gcmessages_proto_enumTypes[6].Descriptor() +} + +func (CMsgClientToGCPackBundleResponse_EPackBundle) Type() protoreflect.EnumType { + return &file_econ_gcmessages_proto_enumTypes[6] +} + +func (x CMsgClientToGCPackBundleResponse_EPackBundle) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *CMsgClientToGCPackBundleResponse_EPackBundle) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = CMsgClientToGCPackBundleResponse_EPackBundle(num) + return nil +} + +// Deprecated: Use CMsgClientToGCPackBundleResponse_EPackBundle.Descriptor instead. +func (CMsgClientToGCPackBundleResponse_EPackBundle) EnumDescriptor() ([]byte, []int) { + return file_econ_gcmessages_proto_rawDescGZIP(), []int{51, 0} } type CMsgClientToGCSetItemStyleResponse_ESetStyle int32 @@ -839,11 +943,11 @@ func (x CMsgClientToGCSetItemStyleResponse_ESetStyle) String() string { } func (CMsgClientToGCSetItemStyleResponse_ESetStyle) Descriptor() protoreflect.EnumDescriptor { - return file_econ_gcmessages_proto_enumTypes[6].Descriptor() + return file_econ_gcmessages_proto_enumTypes[7].Descriptor() } func (CMsgClientToGCSetItemStyleResponse_ESetStyle) Type() protoreflect.EnumType { - return &file_econ_gcmessages_proto_enumTypes[6] + return &file_econ_gcmessages_proto_enumTypes[7] } func (x CMsgClientToGCSetItemStyleResponse_ESetStyle) Number() protoreflect.EnumNumber { @@ -862,7 +966,7 @@ func (x *CMsgClientToGCSetItemStyleResponse_ESetStyle) UnmarshalJSON(b []byte) e // Deprecated: Use CMsgClientToGCSetItemStyleResponse_ESetStyle.Descriptor instead. func (CMsgClientToGCSetItemStyleResponse_ESetStyle) EnumDescriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{53, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{56, 0} } type CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle int32 @@ -925,11 +1029,11 @@ func (x CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle) String() string { } func (CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle) Descriptor() protoreflect.EnumDescriptor { - return file_econ_gcmessages_proto_enumTypes[7].Descriptor() + return file_econ_gcmessages_proto_enumTypes[8].Descriptor() } func (CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle) Type() protoreflect.EnumType { - return &file_econ_gcmessages_proto_enumTypes[7] + return &file_econ_gcmessages_proto_enumTypes[8] } func (x CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle) Number() protoreflect.EnumNumber { @@ -948,7 +1052,7 @@ func (x *CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle) UnmarshalJSON(b []b // Deprecated: Use CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle.Descriptor instead. func (CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle) EnumDescriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{55, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{58, 0} } type CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute int32 @@ -990,11 +1094,11 @@ func (x CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute) String() } func (CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute) Descriptor() protoreflect.EnumDescriptor { - return file_econ_gcmessages_proto_enumTypes[8].Descriptor() + return file_econ_gcmessages_proto_enumTypes[9].Descriptor() } func (CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute) Type() protoreflect.EnumType { - return &file_econ_gcmessages_proto_enumTypes[8] + return &file_econ_gcmessages_proto_enumTypes[9] } func (x CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute) Number() protoreflect.EnumNumber { @@ -1013,7 +1117,7 @@ func (x *CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute) Unmarsh // Deprecated: Use CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute.Descriptor instead. func (CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute) EnumDescriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{60, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{63, 0} } type CMsgClientToGCNameItemResponse_ENameItem int32 @@ -1055,11 +1159,11 @@ func (x CMsgClientToGCNameItemResponse_ENameItem) String() string { } func (CMsgClientToGCNameItemResponse_ENameItem) Descriptor() protoreflect.EnumDescriptor { - return file_econ_gcmessages_proto_enumTypes[9].Descriptor() + return file_econ_gcmessages_proto_enumTypes[10].Descriptor() } func (CMsgClientToGCNameItemResponse_ENameItem) Type() protoreflect.EnumType { - return &file_econ_gcmessages_proto_enumTypes[9] + return &file_econ_gcmessages_proto_enumTypes[10] } func (x CMsgClientToGCNameItemResponse_ENameItem) Number() protoreflect.EnumNumber { @@ -1078,7 +1182,7 @@ func (x *CMsgClientToGCNameItemResponse_ENameItem) UnmarshalJSON(b []byte) error // Deprecated: Use CMsgClientToGCNameItemResponse_ENameItem.Descriptor instead. func (CMsgClientToGCNameItemResponse_ENameItem) EnumDescriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{62, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{65, 0} } type CMsgClientToGCCreateStaticRecipeResponse_EResponse int32 @@ -1123,11 +1227,11 @@ func (x CMsgClientToGCCreateStaticRecipeResponse_EResponse) String() string { } func (CMsgClientToGCCreateStaticRecipeResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_econ_gcmessages_proto_enumTypes[10].Descriptor() + return file_econ_gcmessages_proto_enumTypes[11].Descriptor() } func (CMsgClientToGCCreateStaticRecipeResponse_EResponse) Type() protoreflect.EnumType { - return &file_econ_gcmessages_proto_enumTypes[10] + return &file_econ_gcmessages_proto_enumTypes[11] } func (x CMsgClientToGCCreateStaticRecipeResponse_EResponse) Number() protoreflect.EnumNumber { @@ -1146,7 +1250,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse_EResponse) UnmarshalJSON(b []b // Deprecated: Use CMsgClientToGCCreateStaticRecipeResponse_EResponse.Descriptor instead. func (CMsgClientToGCCreateStaticRecipeResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{85, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{88, 0} } type CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse int32 @@ -1194,11 +1298,11 @@ func (x CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse) String() } func (CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse) Descriptor() protoreflect.EnumDescriptor { - return file_econ_gcmessages_proto_enumTypes[11].Descriptor() + return file_econ_gcmessages_proto_enumTypes[12].Descriptor() } func (CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse) Type() protoreflect.EnumType { - return &file_econ_gcmessages_proto_enumTypes[11] + return &file_econ_gcmessages_proto_enumTypes[12] } func (x CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse) Number() protoreflect.EnumNumber { @@ -1217,7 +1321,7 @@ func (x *CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse) Unmarsh // Deprecated: Use CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse.Descriptor instead. func (CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse) EnumDescriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{106, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{109, 0} } type CMsgApplyAutograph struct { @@ -2055,9 +2159,10 @@ type CMsgRequestCrateItemsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Response *uint32 `protobuf:"varint,1,opt,name=response" json:"response,omitempty"` - ItemDefs []uint32 `protobuf:"varint,2,rep,name=item_defs,json=itemDefs" json:"item_defs,omitempty"` - PeekItemDefs []uint32 `protobuf:"varint,3,rep,name=peek_item_defs,json=peekItemDefs" json:"peek_item_defs,omitempty"` + Response *uint32 `protobuf:"varint,1,opt,name=response" json:"response,omitempty"` + ItemDefs []uint32 `protobuf:"varint,2,rep,name=item_defs,json=itemDefs" json:"item_defs,omitempty"` + PeekItemDefs []uint32 `protobuf:"varint,3,rep,name=peek_item_defs,json=peekItemDefs" json:"peek_item_defs,omitempty"` + PeekItems []*CSOEconItem `protobuf:"bytes,4,rep,name=peek_items,json=peekItems" json:"peek_items,omitempty"` } func (x *CMsgRequestCrateItemsResponse) Reset() { @@ -2113,6 +2218,13 @@ func (x *CMsgRequestCrateItemsResponse) GetPeekItemDefs() []uint32 { return nil } +func (x *CMsgRequestCrateItemsResponse) GetPeekItems() []*CSOEconItem { + if x != nil { + return x.PeekItems + } + return nil +} + type CMsgRequestCrateEscalationLevel struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3622,8 +3734,11 @@ type CMsgGCAddGiftItem struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` - ItemId *uint64 `protobuf:"varint,2,opt,name=item_id,json=itemId" json:"item_id,omitempty"` + GifterAccountId *uint32 `protobuf:"varint,1,opt,name=gifter_account_id,json=gifterAccountId" json:"gifter_account_id,omitempty"` + ReceiverAccountId *uint32 `protobuf:"varint,2,opt,name=receiver_account_id,json=receiverAccountId" json:"receiver_account_id,omitempty"` + WrappedItem *CSOEconItem `protobuf:"bytes,3,opt,name=wrapped_item,json=wrappedItem" json:"wrapped_item,omitempty"` + GiftMessage *string `protobuf:"bytes,4,opt,name=gift_message,json=giftMessage" json:"gift_message,omitempty"` + IsWalletCashTrusted *bool `protobuf:"varint,5,opt,name=is_wallet_cash_trusted,json=isWalletCashTrusted" json:"is_wallet_cash_trusted,omitempty"` } func (x *CMsgGCAddGiftItem) Reset() { @@ -3658,20 +3773,41 @@ func (*CMsgGCAddGiftItem) Descriptor() ([]byte, []int) { return file_econ_gcmessages_proto_rawDescGZIP(), []int{41} } -func (x *CMsgGCAddGiftItem) GetAccountId() uint32 { - if x != nil && x.AccountId != nil { - return *x.AccountId +func (x *CMsgGCAddGiftItem) GetGifterAccountId() uint32 { + if x != nil && x.GifterAccountId != nil { + return *x.GifterAccountId } return 0 } -func (x *CMsgGCAddGiftItem) GetItemId() uint64 { - if x != nil && x.ItemId != nil { - return *x.ItemId +func (x *CMsgGCAddGiftItem) GetReceiverAccountId() uint32 { + if x != nil && x.ReceiverAccountId != nil { + return *x.ReceiverAccountId } return 0 } +func (x *CMsgGCAddGiftItem) GetWrappedItem() *CSOEconItem { + if x != nil { + return x.WrappedItem + } + return nil +} + +func (x *CMsgGCAddGiftItem) GetGiftMessage() string { + if x != nil && x.GiftMessage != nil { + return *x.GiftMessage + } + return "" +} + +func (x *CMsgGCAddGiftItem) GetIsWalletCashTrusted() bool { + if x != nil && x.IsWalletCashTrusted != nil { + return *x.IsWalletCashTrusted + } + return false +} + type CMsgClientToGCWrapAndDeliverGift struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3735,6 +3871,61 @@ func (x *CMsgClientToGCWrapAndDeliverGift) GetGiftMessage() string { return "" } +type CMsgSQLGCToGCRevokeUntrustedGift struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountId *uint32 `protobuf:"varint,1,opt,name=account_id,json=accountId" json:"account_id,omitempty"` + SentItemId *uint64 `protobuf:"varint,4,opt,name=sent_item_id,json=sentItemId" json:"sent_item_id,omitempty"` +} + +func (x *CMsgSQLGCToGCRevokeUntrustedGift) Reset() { + *x = CMsgSQLGCToGCRevokeUntrustedGift{} + if protoimpl.UnsafeEnabled { + mi := &file_econ_gcmessages_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSQLGCToGCRevokeUntrustedGift) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSQLGCToGCRevokeUntrustedGift) ProtoMessage() {} + +func (x *CMsgSQLGCToGCRevokeUntrustedGift) ProtoReflect() protoreflect.Message { + mi := &file_econ_gcmessages_proto_msgTypes[43] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSQLGCToGCRevokeUntrustedGift.ProtoReflect.Descriptor instead. +func (*CMsgSQLGCToGCRevokeUntrustedGift) Descriptor() ([]byte, []int) { + return file_econ_gcmessages_proto_rawDescGZIP(), []int{43} +} + +func (x *CMsgSQLGCToGCRevokeUntrustedGift) GetAccountId() uint32 { + if x != nil && x.AccountId != nil { + return *x.AccountId + } + return 0 +} + +func (x *CMsgSQLGCToGCRevokeUntrustedGift) GetSentItemId() uint64 { + if x != nil && x.SentItemId != nil { + return *x.SentItemId + } + return 0 +} + type CMsgClientToGCWrapAndDeliverGiftResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3752,7 +3943,7 @@ type CMsgClientToGCWrapAndDeliverGiftResponse struct { func (x *CMsgClientToGCWrapAndDeliverGiftResponse) Reset() { *x = CMsgClientToGCWrapAndDeliverGiftResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[43] + mi := &file_econ_gcmessages_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3765,7 +3956,7 @@ func (x *CMsgClientToGCWrapAndDeliverGiftResponse) String() string { func (*CMsgClientToGCWrapAndDeliverGiftResponse) ProtoMessage() {} func (x *CMsgClientToGCWrapAndDeliverGiftResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[43] + mi := &file_econ_gcmessages_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3778,7 +3969,7 @@ func (x *CMsgClientToGCWrapAndDeliverGiftResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCWrapAndDeliverGiftResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCWrapAndDeliverGiftResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{43} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{44} } func (x *CMsgClientToGCWrapAndDeliverGiftResponse) GetResponse() EGCMsgResponse { @@ -3841,7 +4032,7 @@ type CMsgClientToGCUnwrapGift struct { func (x *CMsgClientToGCUnwrapGift) Reset() { *x = CMsgClientToGCUnwrapGift{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[44] + mi := &file_econ_gcmessages_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3854,7 +4045,7 @@ func (x *CMsgClientToGCUnwrapGift) String() string { func (*CMsgClientToGCUnwrapGift) ProtoMessage() {} func (x *CMsgClientToGCUnwrapGift) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[44] + mi := &file_econ_gcmessages_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3867,7 +4058,7 @@ func (x *CMsgClientToGCUnwrapGift) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnwrapGift.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnwrapGift) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{44} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{45} } func (x *CMsgClientToGCUnwrapGift) GetItemId() uint64 { @@ -3886,7 +4077,7 @@ type CMsgClientToGCGetGiftPermissions struct { func (x *CMsgClientToGCGetGiftPermissions) Reset() { *x = CMsgClientToGCGetGiftPermissions{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[45] + mi := &file_econ_gcmessages_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3899,7 +4090,7 @@ func (x *CMsgClientToGCGetGiftPermissions) String() string { func (*CMsgClientToGCGetGiftPermissions) ProtoMessage() {} func (x *CMsgClientToGCGetGiftPermissions) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[45] + mi := &file_econ_gcmessages_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3912,7 +4103,7 @@ func (x *CMsgClientToGCGetGiftPermissions) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCGetGiftPermissions.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetGiftPermissions) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{45} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{46} } type CMsgClientToGCGetGiftPermissionsResponse struct { @@ -3931,7 +4122,7 @@ type CMsgClientToGCGetGiftPermissionsResponse struct { func (x *CMsgClientToGCGetGiftPermissionsResponse) Reset() { *x = CMsgClientToGCGetGiftPermissionsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[46] + mi := &file_econ_gcmessages_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3944,7 +4135,7 @@ func (x *CMsgClientToGCGetGiftPermissionsResponse) String() string { func (*CMsgClientToGCGetGiftPermissionsResponse) ProtoMessage() {} func (x *CMsgClientToGCGetGiftPermissionsResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[46] + mi := &file_econ_gcmessages_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3957,7 +4148,7 @@ func (x *CMsgClientToGCGetGiftPermissionsResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCGetGiftPermissionsResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetGiftPermissionsResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{46} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{47} } func (x *CMsgClientToGCGetGiftPermissionsResponse) GetIsUnlimited() bool { @@ -4013,7 +4204,7 @@ type CMsgClientToGCUnpackBundle struct { func (x *CMsgClientToGCUnpackBundle) Reset() { *x = CMsgClientToGCUnpackBundle{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[47] + mi := &file_econ_gcmessages_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4026,7 +4217,7 @@ func (x *CMsgClientToGCUnpackBundle) String() string { func (*CMsgClientToGCUnpackBundle) ProtoMessage() {} func (x *CMsgClientToGCUnpackBundle) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[47] + mi := &file_econ_gcmessages_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4039,7 +4230,7 @@ func (x *CMsgClientToGCUnpackBundle) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnpackBundle.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnpackBundle) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{47} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{48} } func (x *CMsgClientToGCUnpackBundle) GetItemId() uint64 { @@ -4062,7 +4253,7 @@ type CMsgClientToGCUnpackBundleResponse struct { func (x *CMsgClientToGCUnpackBundleResponse) Reset() { *x = CMsgClientToGCUnpackBundleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[48] + mi := &file_econ_gcmessages_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4075,7 +4266,7 @@ func (x *CMsgClientToGCUnpackBundleResponse) String() string { func (*CMsgClientToGCUnpackBundleResponse) ProtoMessage() {} func (x *CMsgClientToGCUnpackBundleResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[48] + mi := &file_econ_gcmessages_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4088,7 +4279,7 @@ func (x *CMsgClientToGCUnpackBundleResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCUnpackBundleResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnpackBundleResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{48} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{49} } func (x *CMsgClientToGCUnpackBundleResponse) GetUnpackedItemIds() []uint64 { @@ -4112,6 +4303,116 @@ func (x *CMsgClientToGCUnpackBundleResponse) GetUnpackedItemDefIndexes() []uint3 return nil } +type CMsgClientToGCPackBundle struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ItemIds []uint64 `protobuf:"varint,1,rep,name=item_ids,json=itemIds" json:"item_ids,omitempty"` + BundleItemDefIndex *uint32 `protobuf:"varint,2,opt,name=bundle_item_def_index,json=bundleItemDefIndex" json:"bundle_item_def_index,omitempty"` +} + +func (x *CMsgClientToGCPackBundle) Reset() { + *x = CMsgClientToGCPackBundle{} + if protoimpl.UnsafeEnabled { + mi := &file_econ_gcmessages_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCPackBundle) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCPackBundle) ProtoMessage() {} + +func (x *CMsgClientToGCPackBundle) ProtoReflect() protoreflect.Message { + mi := &file_econ_gcmessages_proto_msgTypes[50] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCPackBundle.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCPackBundle) Descriptor() ([]byte, []int) { + return file_econ_gcmessages_proto_rawDescGZIP(), []int{50} +} + +func (x *CMsgClientToGCPackBundle) GetItemIds() []uint64 { + if x != nil { + return x.ItemIds + } + return nil +} + +func (x *CMsgClientToGCPackBundle) GetBundleItemDefIndex() uint32 { + if x != nil && x.BundleItemDefIndex != nil { + return *x.BundleItemDefIndex + } + return 0 +} + +type CMsgClientToGCPackBundleResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ItemId *uint64 `protobuf:"varint,1,opt,name=item_id,json=itemId" json:"item_id,omitempty"` + Response *CMsgClientToGCPackBundleResponse_EPackBundle `protobuf:"varint,2,opt,name=response,enum=dota.CMsgClientToGCPackBundleResponse_EPackBundle" json:"response,omitempty"` +} + +func (x *CMsgClientToGCPackBundleResponse) Reset() { + *x = CMsgClientToGCPackBundleResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_econ_gcmessages_proto_msgTypes[51] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgClientToGCPackBundleResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgClientToGCPackBundleResponse) ProtoMessage() {} + +func (x *CMsgClientToGCPackBundleResponse) ProtoReflect() protoreflect.Message { + mi := &file_econ_gcmessages_proto_msgTypes[51] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgClientToGCPackBundleResponse.ProtoReflect.Descriptor instead. +func (*CMsgClientToGCPackBundleResponse) Descriptor() ([]byte, []int) { + return file_econ_gcmessages_proto_rawDescGZIP(), []int{51} +} + +func (x *CMsgClientToGCPackBundleResponse) GetItemId() uint64 { + if x != nil && x.ItemId != nil { + return *x.ItemId + } + return 0 +} + +func (x *CMsgClientToGCPackBundleResponse) GetResponse() CMsgClientToGCPackBundleResponse_EPackBundle { + if x != nil && x.Response != nil { + return *x.Response + } + return CMsgClientToGCPackBundleResponse_k_PackBundle_Succeeded +} + type CMsgGCToClientStoreTransactionCompleted struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4124,7 +4425,7 @@ type CMsgGCToClientStoreTransactionCompleted struct { func (x *CMsgGCToClientStoreTransactionCompleted) Reset() { *x = CMsgGCToClientStoreTransactionCompleted{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[49] + mi := &file_econ_gcmessages_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4137,7 +4438,7 @@ func (x *CMsgGCToClientStoreTransactionCompleted) String() string { func (*CMsgGCToClientStoreTransactionCompleted) ProtoMessage() {} func (x *CMsgGCToClientStoreTransactionCompleted) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[49] + mi := &file_econ_gcmessages_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4150,7 +4451,7 @@ func (x *CMsgGCToClientStoreTransactionCompleted) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgGCToClientStoreTransactionCompleted.ProtoReflect.Descriptor instead. func (*CMsgGCToClientStoreTransactionCompleted) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{49} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{52} } func (x *CMsgGCToClientStoreTransactionCompleted) GetTxnId() uint64 { @@ -4178,7 +4479,7 @@ type CMsgClientToGCEquipItems struct { func (x *CMsgClientToGCEquipItems) Reset() { *x = CMsgClientToGCEquipItems{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[50] + mi := &file_econ_gcmessages_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4191,7 +4492,7 @@ func (x *CMsgClientToGCEquipItems) String() string { func (*CMsgClientToGCEquipItems) ProtoMessage() {} func (x *CMsgClientToGCEquipItems) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[50] + mi := &file_econ_gcmessages_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4204,7 +4505,7 @@ func (x *CMsgClientToGCEquipItems) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCEquipItems.ProtoReflect.Descriptor instead. func (*CMsgClientToGCEquipItems) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{50} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{53} } func (x *CMsgClientToGCEquipItems) GetEquips() []*CMsgAdjustItemEquippedState { @@ -4225,7 +4526,7 @@ type CMsgClientToGCEquipItemsResponse struct { func (x *CMsgClientToGCEquipItemsResponse) Reset() { *x = CMsgClientToGCEquipItemsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[51] + mi := &file_econ_gcmessages_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4238,7 +4539,7 @@ func (x *CMsgClientToGCEquipItemsResponse) String() string { func (*CMsgClientToGCEquipItemsResponse) ProtoMessage() {} func (x *CMsgClientToGCEquipItemsResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[51] + mi := &file_econ_gcmessages_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4251,7 +4552,7 @@ func (x *CMsgClientToGCEquipItemsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCEquipItemsResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCEquipItemsResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{51} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{54} } func (x *CMsgClientToGCEquipItemsResponse) GetSoCacheVersionId() uint64 { @@ -4273,7 +4574,7 @@ type CMsgClientToGCSetItemStyle struct { func (x *CMsgClientToGCSetItemStyle) Reset() { *x = CMsgClientToGCSetItemStyle{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[52] + mi := &file_econ_gcmessages_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4286,7 +4587,7 @@ func (x *CMsgClientToGCSetItemStyle) String() string { func (*CMsgClientToGCSetItemStyle) ProtoMessage() {} func (x *CMsgClientToGCSetItemStyle) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[52] + mi := &file_econ_gcmessages_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4299,7 +4600,7 @@ func (x *CMsgClientToGCSetItemStyle) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCSetItemStyle.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetItemStyle) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{52} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{55} } func (x *CMsgClientToGCSetItemStyle) GetItemId() uint64 { @@ -4327,7 +4628,7 @@ type CMsgClientToGCSetItemStyleResponse struct { func (x *CMsgClientToGCSetItemStyleResponse) Reset() { *x = CMsgClientToGCSetItemStyleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[53] + mi := &file_econ_gcmessages_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4340,7 +4641,7 @@ func (x *CMsgClientToGCSetItemStyleResponse) String() string { func (*CMsgClientToGCSetItemStyleResponse) ProtoMessage() {} func (x *CMsgClientToGCSetItemStyleResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[53] + mi := &file_econ_gcmessages_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4353,7 +4654,7 @@ func (x *CMsgClientToGCSetItemStyleResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCSetItemStyleResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetItemStyleResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{53} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{56} } func (x *CMsgClientToGCSetItemStyleResponse) GetResponse() CMsgClientToGCSetItemStyleResponse_ESetStyle { @@ -4376,7 +4677,7 @@ type CMsgClientToGCUnlockItemStyle struct { func (x *CMsgClientToGCUnlockItemStyle) Reset() { *x = CMsgClientToGCUnlockItemStyle{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[54] + mi := &file_econ_gcmessages_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4389,7 +4690,7 @@ func (x *CMsgClientToGCUnlockItemStyle) String() string { func (*CMsgClientToGCUnlockItemStyle) ProtoMessage() {} func (x *CMsgClientToGCUnlockItemStyle) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[54] + mi := &file_econ_gcmessages_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4402,7 +4703,7 @@ func (x *CMsgClientToGCUnlockItemStyle) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnlockItemStyle.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnlockItemStyle) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{54} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{57} } func (x *CMsgClientToGCUnlockItemStyle) GetItemToUnlock() uint64 { @@ -4440,7 +4741,7 @@ type CMsgClientToGCUnlockItemStyleResponse struct { func (x *CMsgClientToGCUnlockItemStyleResponse) Reset() { *x = CMsgClientToGCUnlockItemStyleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[55] + mi := &file_econ_gcmessages_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4453,7 +4754,7 @@ func (x *CMsgClientToGCUnlockItemStyleResponse) String() string { func (*CMsgClientToGCUnlockItemStyleResponse) ProtoMessage() {} func (x *CMsgClientToGCUnlockItemStyleResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[55] + mi := &file_econ_gcmessages_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4466,7 +4767,7 @@ func (x *CMsgClientToGCUnlockItemStyleResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCUnlockItemStyleResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnlockItemStyleResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{55} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{58} } func (x *CMsgClientToGCUnlockItemStyleResponse) GetResponse() CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle { @@ -4511,7 +4812,7 @@ type CMsgClientToGCSetItemInventoryCategory struct { func (x *CMsgClientToGCSetItemInventoryCategory) Reset() { *x = CMsgClientToGCSetItemInventoryCategory{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[56] + mi := &file_econ_gcmessages_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4524,7 +4825,7 @@ func (x *CMsgClientToGCSetItemInventoryCategory) String() string { func (*CMsgClientToGCSetItemInventoryCategory) ProtoMessage() {} func (x *CMsgClientToGCSetItemInventoryCategory) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[56] + mi := &file_econ_gcmessages_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4537,7 +4838,7 @@ func (x *CMsgClientToGCSetItemInventoryCategory) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCSetItemInventoryCategory.ProtoReflect.Descriptor instead. func (*CMsgClientToGCSetItemInventoryCategory) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{56} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{59} } func (x *CMsgClientToGCSetItemInventoryCategory) GetItemIds() []uint64 { @@ -4580,7 +4881,7 @@ type CMsgClientToGCUnlockCrate struct { func (x *CMsgClientToGCUnlockCrate) Reset() { *x = CMsgClientToGCUnlockCrate{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[57] + mi := &file_econ_gcmessages_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4593,7 +4894,7 @@ func (x *CMsgClientToGCUnlockCrate) String() string { func (*CMsgClientToGCUnlockCrate) ProtoMessage() {} func (x *CMsgClientToGCUnlockCrate) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[57] + mi := &file_econ_gcmessages_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4606,7 +4907,7 @@ func (x *CMsgClientToGCUnlockCrate) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCUnlockCrate.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnlockCrate) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{57} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{60} } func (x *CMsgClientToGCUnlockCrate) GetCrateItemId() uint64 { @@ -4635,7 +4936,7 @@ type CMsgClientToGCUnlockCrateResponse struct { func (x *CMsgClientToGCUnlockCrateResponse) Reset() { *x = CMsgClientToGCUnlockCrateResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[58] + mi := &file_econ_gcmessages_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4648,7 +4949,7 @@ func (x *CMsgClientToGCUnlockCrateResponse) String() string { func (*CMsgClientToGCUnlockCrateResponse) ProtoMessage() {} func (x *CMsgClientToGCUnlockCrateResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[58] + mi := &file_econ_gcmessages_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4661,7 +4962,7 @@ func (x *CMsgClientToGCUnlockCrateResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCUnlockCrateResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnlockCrateResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{58} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{61} } func (x *CMsgClientToGCUnlockCrateResponse) GetResult() EGCMsgResponse { @@ -4689,7 +4990,7 @@ type CMsgClientToGCRemoveItemAttribute struct { func (x *CMsgClientToGCRemoveItemAttribute) Reset() { *x = CMsgClientToGCRemoveItemAttribute{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[59] + mi := &file_econ_gcmessages_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4702,7 +5003,7 @@ func (x *CMsgClientToGCRemoveItemAttribute) String() string { func (*CMsgClientToGCRemoveItemAttribute) ProtoMessage() {} func (x *CMsgClientToGCRemoveItemAttribute) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[59] + mi := &file_econ_gcmessages_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4715,7 +5016,7 @@ func (x *CMsgClientToGCRemoveItemAttribute) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgClientToGCRemoveItemAttribute.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRemoveItemAttribute) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{59} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{62} } func (x *CMsgClientToGCRemoveItemAttribute) GetItemId() uint64 { @@ -4737,7 +5038,7 @@ type CMsgClientToGCRemoveItemAttributeResponse struct { func (x *CMsgClientToGCRemoveItemAttributeResponse) Reset() { *x = CMsgClientToGCRemoveItemAttributeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[60] + mi := &file_econ_gcmessages_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4750,7 +5051,7 @@ func (x *CMsgClientToGCRemoveItemAttributeResponse) String() string { func (*CMsgClientToGCRemoveItemAttributeResponse) ProtoMessage() {} func (x *CMsgClientToGCRemoveItemAttributeResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[60] + mi := &file_econ_gcmessages_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4763,7 +5064,7 @@ func (x *CMsgClientToGCRemoveItemAttributeResponse) ProtoReflect() protoreflect. // Deprecated: Use CMsgClientToGCRemoveItemAttributeResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCRemoveItemAttributeResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{60} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{63} } func (x *CMsgClientToGCRemoveItemAttributeResponse) GetResponse() CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute { @@ -4793,7 +5094,7 @@ type CMsgClientToGCNameItem struct { func (x *CMsgClientToGCNameItem) Reset() { *x = CMsgClientToGCNameItem{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[61] + mi := &file_econ_gcmessages_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4806,7 +5107,7 @@ func (x *CMsgClientToGCNameItem) String() string { func (*CMsgClientToGCNameItem) ProtoMessage() {} func (x *CMsgClientToGCNameItem) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[61] + mi := &file_econ_gcmessages_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4819,7 +5120,7 @@ func (x *CMsgClientToGCNameItem) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCNameItem.ProtoReflect.Descriptor instead. func (*CMsgClientToGCNameItem) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{61} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{64} } func (x *CMsgClientToGCNameItem) GetSubjectItemId() uint64 { @@ -4855,7 +5156,7 @@ type CMsgClientToGCNameItemResponse struct { func (x *CMsgClientToGCNameItemResponse) Reset() { *x = CMsgClientToGCNameItemResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[62] + mi := &file_econ_gcmessages_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4868,7 +5169,7 @@ func (x *CMsgClientToGCNameItemResponse) String() string { func (*CMsgClientToGCNameItemResponse) ProtoMessage() {} func (x *CMsgClientToGCNameItemResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[62] + mi := &file_econ_gcmessages_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4881,7 +5182,7 @@ func (x *CMsgClientToGCNameItemResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCNameItemResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCNameItemResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{62} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{65} } func (x *CMsgClientToGCNameItemResponse) GetResponse() CMsgClientToGCNameItemResponse_ENameItem { @@ -4910,7 +5211,7 @@ type CMsgGCSetItemPosition struct { func (x *CMsgGCSetItemPosition) Reset() { *x = CMsgGCSetItemPosition{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[63] + mi := &file_econ_gcmessages_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4923,7 +5224,7 @@ func (x *CMsgGCSetItemPosition) String() string { func (*CMsgGCSetItemPosition) ProtoMessage() {} func (x *CMsgGCSetItemPosition) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[63] + mi := &file_econ_gcmessages_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4936,7 +5237,7 @@ func (x *CMsgGCSetItemPosition) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCSetItemPosition.ProtoReflect.Descriptor instead. func (*CMsgGCSetItemPosition) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{63} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{66} } func (x *CMsgGCSetItemPosition) GetItemId() uint64 { @@ -4973,7 +5274,7 @@ type CAttribute_ItemDynamicRecipeComponent struct { func (x *CAttribute_ItemDynamicRecipeComponent) Reset() { *x = CAttribute_ItemDynamicRecipeComponent{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[64] + mi := &file_econ_gcmessages_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4986,7 +5287,7 @@ func (x *CAttribute_ItemDynamicRecipeComponent) String() string { func (*CAttribute_ItemDynamicRecipeComponent) ProtoMessage() {} func (x *CAttribute_ItemDynamicRecipeComponent) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[64] + mi := &file_econ_gcmessages_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4999,7 +5300,7 @@ func (x *CAttribute_ItemDynamicRecipeComponent) ProtoReflect() protoreflect.Mess // Deprecated: Use CAttribute_ItemDynamicRecipeComponent.ProtoReflect.Descriptor instead. func (*CAttribute_ItemDynamicRecipeComponent) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{64} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{67} } func (x *CAttribute_ItemDynamicRecipeComponent) GetItemDef() uint32 { @@ -5089,7 +5390,7 @@ type CProtoItemSocket struct { func (x *CProtoItemSocket) Reset() { *x = CProtoItemSocket{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[65] + mi := &file_econ_gcmessages_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5102,7 +5403,7 @@ func (x *CProtoItemSocket) String() string { func (*CProtoItemSocket) ProtoMessage() {} func (x *CProtoItemSocket) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[65] + mi := &file_econ_gcmessages_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5115,7 +5416,7 @@ func (x *CProtoItemSocket) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket.ProtoReflect.Descriptor instead. func (*CProtoItemSocket) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{65} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{68} } func (x *CProtoItemSocket) GetItemId() uint64 { @@ -5178,7 +5479,7 @@ type CProtoItemSocket_Empty struct { func (x *CProtoItemSocket_Empty) Reset() { *x = CProtoItemSocket_Empty{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[66] + mi := &file_econ_gcmessages_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5191,7 +5492,7 @@ func (x *CProtoItemSocket_Empty) String() string { func (*CProtoItemSocket_Empty) ProtoMessage() {} func (x *CProtoItemSocket_Empty) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[66] + mi := &file_econ_gcmessages_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5204,7 +5505,7 @@ func (x *CProtoItemSocket_Empty) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket_Empty.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_Empty) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{66} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{69} } func (x *CProtoItemSocket_Empty) GetSocket() *CProtoItemSocket { @@ -5226,7 +5527,7 @@ type CProtoItemSocket_Effect struct { func (x *CProtoItemSocket_Effect) Reset() { *x = CProtoItemSocket_Effect{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[67] + mi := &file_econ_gcmessages_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5239,7 +5540,7 @@ func (x *CProtoItemSocket_Effect) String() string { func (*CProtoItemSocket_Effect) ProtoMessage() {} func (x *CProtoItemSocket_Effect) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[67] + mi := &file_econ_gcmessages_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5252,7 +5553,7 @@ func (x *CProtoItemSocket_Effect) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket_Effect.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_Effect) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{67} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{70} } func (x *CProtoItemSocket_Effect) GetSocket() *CProtoItemSocket { @@ -5283,7 +5584,7 @@ type CProtoItemSocket_Color struct { func (x *CProtoItemSocket_Color) Reset() { *x = CProtoItemSocket_Color{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[68] + mi := &file_econ_gcmessages_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5296,7 +5597,7 @@ func (x *CProtoItemSocket_Color) String() string { func (*CProtoItemSocket_Color) ProtoMessage() {} func (x *CProtoItemSocket_Color) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[68] + mi := &file_econ_gcmessages_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5309,7 +5610,7 @@ func (x *CProtoItemSocket_Color) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket_Color.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_Color) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{68} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{71} } func (x *CProtoItemSocket_Color) GetSocket() *CProtoItemSocket { @@ -5353,7 +5654,7 @@ type CProtoItemSocket_Strange struct { func (x *CProtoItemSocket_Strange) Reset() { *x = CProtoItemSocket_Strange{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[69] + mi := &file_econ_gcmessages_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5366,7 +5667,7 @@ func (x *CProtoItemSocket_Strange) String() string { func (*CProtoItemSocket_Strange) ProtoMessage() {} func (x *CProtoItemSocket_Strange) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[69] + mi := &file_econ_gcmessages_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5379,7 +5680,7 @@ func (x *CProtoItemSocket_Strange) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket_Strange.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_Strange) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{69} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{72} } func (x *CProtoItemSocket_Strange) GetSocket() *CProtoItemSocket { @@ -5417,7 +5718,7 @@ type CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY struct { func (x *CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY) Reset() { *x = CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[70] + mi := &file_econ_gcmessages_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5430,7 +5731,7 @@ func (x *CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY) String() string func (*CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY) ProtoMessage() {} func (x *CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[70] + mi := &file_econ_gcmessages_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5443,7 +5744,7 @@ func (x *CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY) ProtoReflect() p // Deprecated: Use CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{70} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{73} } func (x *CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY) GetSocket() *CProtoItemSocket { @@ -5489,7 +5790,7 @@ type CProtoItemSocket_Spectator struct { func (x *CProtoItemSocket_Spectator) Reset() { *x = CProtoItemSocket_Spectator{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[71] + mi := &file_econ_gcmessages_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5502,7 +5803,7 @@ func (x *CProtoItemSocket_Spectator) String() string { func (*CProtoItemSocket_Spectator) ProtoMessage() {} func (x *CProtoItemSocket_Spectator) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[71] + mi := &file_econ_gcmessages_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5515,7 +5816,7 @@ func (x *CProtoItemSocket_Spectator) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket_Spectator.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_Spectator) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{71} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{74} } func (x *CProtoItemSocket_Spectator) GetSocket() *CProtoItemSocket { @@ -5565,7 +5866,7 @@ type CProtoItemSocket_AssetModifier struct { func (x *CProtoItemSocket_AssetModifier) Reset() { *x = CProtoItemSocket_AssetModifier{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[72] + mi := &file_econ_gcmessages_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5578,7 +5879,7 @@ func (x *CProtoItemSocket_AssetModifier) String() string { func (*CProtoItemSocket_AssetModifier) ProtoMessage() {} func (x *CProtoItemSocket_AssetModifier) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[72] + mi := &file_econ_gcmessages_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5591,7 +5892,7 @@ func (x *CProtoItemSocket_AssetModifier) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket_AssetModifier.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_AssetModifier) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{72} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{75} } func (x *CProtoItemSocket_AssetModifier) GetSocket() *CProtoItemSocket { @@ -5622,7 +5923,7 @@ type CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY struct { func (x *CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY) Reset() { *x = CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[73] + mi := &file_econ_gcmessages_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5635,7 +5936,7 @@ func (x *CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY) String() s func (*CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY) ProtoMessage() {} func (x *CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[73] + mi := &file_econ_gcmessages_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5648,7 +5949,7 @@ func (x *CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY) ProtoRefle // Deprecated: Use CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{73} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{76} } func (x *CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY) GetSocket() *CProtoItemSocket { @@ -5693,7 +5994,7 @@ type CProtoItemSocket_Autograph struct { func (x *CProtoItemSocket_Autograph) Reset() { *x = CProtoItemSocket_Autograph{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[74] + mi := &file_econ_gcmessages_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5706,7 +6007,7 @@ func (x *CProtoItemSocket_Autograph) String() string { func (*CProtoItemSocket_Autograph) ProtoMessage() {} func (x *CProtoItemSocket_Autograph) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[74] + mi := &file_econ_gcmessages_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5719,7 +6020,7 @@ func (x *CProtoItemSocket_Autograph) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket_Autograph.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_Autograph) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{74} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{77} } func (x *CProtoItemSocket_Autograph) GetSocket() *CProtoItemSocket { @@ -5761,7 +6062,7 @@ type CProtoItemSocket_StaticVisuals struct { func (x *CProtoItemSocket_StaticVisuals) Reset() { *x = CProtoItemSocket_StaticVisuals{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[75] + mi := &file_econ_gcmessages_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5774,7 +6075,7 @@ func (x *CProtoItemSocket_StaticVisuals) String() string { func (*CProtoItemSocket_StaticVisuals) ProtoMessage() {} func (x *CProtoItemSocket_StaticVisuals) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[75] + mi := &file_econ_gcmessages_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5787,7 +6088,7 @@ func (x *CProtoItemSocket_StaticVisuals) ProtoReflect() protoreflect.Message { // Deprecated: Use CProtoItemSocket_StaticVisuals.ProtoReflect.Descriptor instead. func (*CProtoItemSocket_StaticVisuals) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{75} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{78} } func (x *CProtoItemSocket_StaticVisuals) GetSocket() *CProtoItemSocket { @@ -5808,7 +6109,7 @@ type CAttribute_String struct { func (x *CAttribute_String) Reset() { *x = CAttribute_String{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[76] + mi := &file_econ_gcmessages_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5821,7 +6122,7 @@ func (x *CAttribute_String) String() string { func (*CAttribute_String) ProtoMessage() {} func (x *CAttribute_String) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[76] + mi := &file_econ_gcmessages_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5834,7 +6135,7 @@ func (x *CAttribute_String) ProtoReflect() protoreflect.Message { // Deprecated: Use CAttribute_String.ProtoReflect.Descriptor instead. func (*CAttribute_String) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{76} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{79} } func (x *CAttribute_String) GetValue() string { @@ -5858,7 +6159,7 @@ type CWorkshop_GetItemDailyRevenue_Request struct { func (x *CWorkshop_GetItemDailyRevenue_Request) Reset() { *x = CWorkshop_GetItemDailyRevenue_Request{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[77] + mi := &file_econ_gcmessages_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5871,7 +6172,7 @@ func (x *CWorkshop_GetItemDailyRevenue_Request) String() string { func (*CWorkshop_GetItemDailyRevenue_Request) ProtoMessage() {} func (x *CWorkshop_GetItemDailyRevenue_Request) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[77] + mi := &file_econ_gcmessages_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5884,7 +6185,7 @@ func (x *CWorkshop_GetItemDailyRevenue_Request) ProtoReflect() protoreflect.Mess // Deprecated: Use CWorkshop_GetItemDailyRevenue_Request.ProtoReflect.Descriptor instead. func (*CWorkshop_GetItemDailyRevenue_Request) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{77} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{80} } func (x *CWorkshop_GetItemDailyRevenue_Request) GetAppid() uint32 { @@ -5926,7 +6227,7 @@ type CWorkshop_GetItemDailyRevenue_Response struct { func (x *CWorkshop_GetItemDailyRevenue_Response) Reset() { *x = CWorkshop_GetItemDailyRevenue_Response{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[78] + mi := &file_econ_gcmessages_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5939,7 +6240,7 @@ func (x *CWorkshop_GetItemDailyRevenue_Response) String() string { func (*CWorkshop_GetItemDailyRevenue_Response) ProtoMessage() {} func (x *CWorkshop_GetItemDailyRevenue_Response) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[78] + mi := &file_econ_gcmessages_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5952,7 +6253,7 @@ func (x *CWorkshop_GetItemDailyRevenue_Response) ProtoReflect() protoreflect.Mes // Deprecated: Use CWorkshop_GetItemDailyRevenue_Response.ProtoReflect.Descriptor instead. func (*CWorkshop_GetItemDailyRevenue_Response) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{78} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{81} } func (x *CWorkshop_GetItemDailyRevenue_Response) GetCountryRevenue() []*CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue { @@ -5975,7 +6276,7 @@ type CWorkshop_GetPackageDailyRevenue_Request struct { func (x *CWorkshop_GetPackageDailyRevenue_Request) Reset() { *x = CWorkshop_GetPackageDailyRevenue_Request{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[79] + mi := &file_econ_gcmessages_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5988,7 +6289,7 @@ func (x *CWorkshop_GetPackageDailyRevenue_Request) String() string { func (*CWorkshop_GetPackageDailyRevenue_Request) ProtoMessage() {} func (x *CWorkshop_GetPackageDailyRevenue_Request) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[79] + mi := &file_econ_gcmessages_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6001,7 +6302,7 @@ func (x *CWorkshop_GetPackageDailyRevenue_Request) ProtoReflect() protoreflect.M // Deprecated: Use CWorkshop_GetPackageDailyRevenue_Request.ProtoReflect.Descriptor instead. func (*CWorkshop_GetPackageDailyRevenue_Request) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{79} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{82} } func (x *CWorkshop_GetPackageDailyRevenue_Request) GetPackageid() uint32 { @@ -6036,7 +6337,7 @@ type CWorkshop_GetPackageDailyRevenue_Response struct { func (x *CWorkshop_GetPackageDailyRevenue_Response) Reset() { *x = CWorkshop_GetPackageDailyRevenue_Response{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[80] + mi := &file_econ_gcmessages_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6049,7 +6350,7 @@ func (x *CWorkshop_GetPackageDailyRevenue_Response) String() string { func (*CWorkshop_GetPackageDailyRevenue_Response) ProtoMessage() {} func (x *CWorkshop_GetPackageDailyRevenue_Response) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[80] + mi := &file_econ_gcmessages_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6062,7 +6363,7 @@ func (x *CWorkshop_GetPackageDailyRevenue_Response) ProtoReflect() protoreflect. // Deprecated: Use CWorkshop_GetPackageDailyRevenue_Response.ProtoReflect.Descriptor instead. func (*CWorkshop_GetPackageDailyRevenue_Response) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{80} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{83} } func (x *CWorkshop_GetPackageDailyRevenue_Response) GetCountryRevenue() []*CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue { @@ -6084,7 +6385,7 @@ type CMsgSQLGCToGCGrantBackpackSlots struct { func (x *CMsgSQLGCToGCGrantBackpackSlots) Reset() { *x = CMsgSQLGCToGCGrantBackpackSlots{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[81] + mi := &file_econ_gcmessages_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6097,7 +6398,7 @@ func (x *CMsgSQLGCToGCGrantBackpackSlots) String() string { func (*CMsgSQLGCToGCGrantBackpackSlots) ProtoMessage() {} func (x *CMsgSQLGCToGCGrantBackpackSlots) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[81] + mi := &file_econ_gcmessages_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6110,7 +6411,7 @@ func (x *CMsgSQLGCToGCGrantBackpackSlots) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSQLGCToGCGrantBackpackSlots.ProtoReflect.Descriptor instead. func (*CMsgSQLGCToGCGrantBackpackSlots) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{81} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{84} } func (x *CMsgSQLGCToGCGrantBackpackSlots) GetAccountId() uint32 { @@ -6138,7 +6439,7 @@ type CMsgClientToGCLookupAccountName struct { func (x *CMsgClientToGCLookupAccountName) Reset() { *x = CMsgClientToGCLookupAccountName{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[82] + mi := &file_econ_gcmessages_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6151,7 +6452,7 @@ func (x *CMsgClientToGCLookupAccountName) String() string { func (*CMsgClientToGCLookupAccountName) ProtoMessage() {} func (x *CMsgClientToGCLookupAccountName) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[82] + mi := &file_econ_gcmessages_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6164,7 +6465,7 @@ func (x *CMsgClientToGCLookupAccountName) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCLookupAccountName.ProtoReflect.Descriptor instead. func (*CMsgClientToGCLookupAccountName) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{82} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{85} } func (x *CMsgClientToGCLookupAccountName) GetAccountId() uint32 { @@ -6186,7 +6487,7 @@ type CMsgClientToGCLookupAccountNameResponse struct { func (x *CMsgClientToGCLookupAccountNameResponse) Reset() { *x = CMsgClientToGCLookupAccountNameResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[83] + mi := &file_econ_gcmessages_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6199,7 +6500,7 @@ func (x *CMsgClientToGCLookupAccountNameResponse) String() string { func (*CMsgClientToGCLookupAccountNameResponse) ProtoMessage() {} func (x *CMsgClientToGCLookupAccountNameResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[83] + mi := &file_econ_gcmessages_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6212,7 +6513,7 @@ func (x *CMsgClientToGCLookupAccountNameResponse) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgClientToGCLookupAccountNameResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCLookupAccountNameResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{83} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{86} } func (x *CMsgClientToGCLookupAccountNameResponse) GetAccountId() uint32 { @@ -6241,7 +6542,7 @@ type CMsgClientToGCCreateStaticRecipe struct { func (x *CMsgClientToGCCreateStaticRecipe) Reset() { *x = CMsgClientToGCCreateStaticRecipe{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[84] + mi := &file_econ_gcmessages_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6254,7 +6555,7 @@ func (x *CMsgClientToGCCreateStaticRecipe) String() string { func (*CMsgClientToGCCreateStaticRecipe) ProtoMessage() {} func (x *CMsgClientToGCCreateStaticRecipe) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[84] + mi := &file_econ_gcmessages_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6267,7 +6568,7 @@ func (x *CMsgClientToGCCreateStaticRecipe) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientToGCCreateStaticRecipe.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateStaticRecipe) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{84} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{87} } func (x *CMsgClientToGCCreateStaticRecipe) GetItems() []*CMsgClientToGCCreateStaticRecipe_Item { @@ -6298,7 +6599,7 @@ type CMsgClientToGCCreateStaticRecipeResponse struct { func (x *CMsgClientToGCCreateStaticRecipeResponse) Reset() { *x = CMsgClientToGCCreateStaticRecipeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[85] + mi := &file_econ_gcmessages_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6311,7 +6612,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse) String() string { func (*CMsgClientToGCCreateStaticRecipeResponse) ProtoMessage() {} func (x *CMsgClientToGCCreateStaticRecipeResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[85] + mi := &file_econ_gcmessages_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6324,7 +6625,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgClientToGCCreateStaticRecipeResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateStaticRecipeResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{85} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{88} } func (x *CMsgClientToGCCreateStaticRecipeResponse) GetResponse() CMsgClientToGCCreateStaticRecipeResponse_EResponse { @@ -6374,7 +6675,7 @@ type CMsgProcessTransactionOrder struct { func (x *CMsgProcessTransactionOrder) Reset() { *x = CMsgProcessTransactionOrder{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[86] + mi := &file_econ_gcmessages_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6387,7 +6688,7 @@ func (x *CMsgProcessTransactionOrder) String() string { func (*CMsgProcessTransactionOrder) ProtoMessage() {} func (x *CMsgProcessTransactionOrder) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[86] + mi := &file_econ_gcmessages_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6400,7 +6701,7 @@ func (x *CMsgProcessTransactionOrder) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgProcessTransactionOrder.ProtoReflect.Descriptor instead. func (*CMsgProcessTransactionOrder) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{86} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{89} } func (x *CMsgProcessTransactionOrder) GetTxnId() uint64 { @@ -6479,7 +6780,7 @@ type CMsgGCToGCStoreProcessCDKeyTransaction struct { func (x *CMsgGCToGCStoreProcessCDKeyTransaction) Reset() { *x = CMsgGCToGCStoreProcessCDKeyTransaction{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[87] + mi := &file_econ_gcmessages_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6492,7 +6793,7 @@ func (x *CMsgGCToGCStoreProcessCDKeyTransaction) String() string { func (*CMsgGCToGCStoreProcessCDKeyTransaction) ProtoMessage() {} func (x *CMsgGCToGCStoreProcessCDKeyTransaction) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[87] + mi := &file_econ_gcmessages_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6505,7 +6806,7 @@ func (x *CMsgGCToGCStoreProcessCDKeyTransaction) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgGCToGCStoreProcessCDKeyTransaction.ProtoReflect.Descriptor instead. func (*CMsgGCToGCStoreProcessCDKeyTransaction) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{87} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{90} } func (x *CMsgGCToGCStoreProcessCDKeyTransaction) GetOrder() *CMsgProcessTransactionOrder { @@ -6540,7 +6841,7 @@ type CMsgGCToGCStoreProcessCDKeyTransactionResponse struct { func (x *CMsgGCToGCStoreProcessCDKeyTransactionResponse) Reset() { *x = CMsgGCToGCStoreProcessCDKeyTransactionResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[88] + mi := &file_econ_gcmessages_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6553,7 +6854,7 @@ func (x *CMsgGCToGCStoreProcessCDKeyTransactionResponse) String() string { func (*CMsgGCToGCStoreProcessCDKeyTransactionResponse) ProtoMessage() {} func (x *CMsgGCToGCStoreProcessCDKeyTransactionResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[88] + mi := &file_econ_gcmessages_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6566,7 +6867,7 @@ func (x *CMsgGCToGCStoreProcessCDKeyTransactionResponse) ProtoReflect() protoref // Deprecated: Use CMsgGCToGCStoreProcessCDKeyTransactionResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToGCStoreProcessCDKeyTransactionResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{88} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{91} } func (x *CMsgGCToGCStoreProcessCDKeyTransactionResponse) GetSuccess() bool { @@ -6587,7 +6888,7 @@ type CMsgGCToGCStoreProcessSettlement struct { func (x *CMsgGCToGCStoreProcessSettlement) Reset() { *x = CMsgGCToGCStoreProcessSettlement{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[89] + mi := &file_econ_gcmessages_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6600,7 +6901,7 @@ func (x *CMsgGCToGCStoreProcessSettlement) String() string { func (*CMsgGCToGCStoreProcessSettlement) ProtoMessage() {} func (x *CMsgGCToGCStoreProcessSettlement) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[89] + mi := &file_econ_gcmessages_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6613,7 +6914,7 @@ func (x *CMsgGCToGCStoreProcessSettlement) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCStoreProcessSettlement.ProtoReflect.Descriptor instead. func (*CMsgGCToGCStoreProcessSettlement) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{89} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{92} } func (x *CMsgGCToGCStoreProcessSettlement) GetOrder() *CMsgProcessTransactionOrder { @@ -6634,7 +6935,7 @@ type CMsgGCToGCStoreProcessSettlementResponse struct { func (x *CMsgGCToGCStoreProcessSettlementResponse) Reset() { *x = CMsgGCToGCStoreProcessSettlementResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[90] + mi := &file_econ_gcmessages_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6647,7 +6948,7 @@ func (x *CMsgGCToGCStoreProcessSettlementResponse) String() string { func (*CMsgGCToGCStoreProcessSettlementResponse) ProtoMessage() {} func (x *CMsgGCToGCStoreProcessSettlementResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[90] + mi := &file_econ_gcmessages_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6660,7 +6961,7 @@ func (x *CMsgGCToGCStoreProcessSettlementResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgGCToGCStoreProcessSettlementResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToGCStoreProcessSettlementResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{90} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{93} } func (x *CMsgGCToGCStoreProcessSettlementResponse) GetSuccess() bool { @@ -6684,7 +6985,7 @@ type CMsgGCToGCBroadcastConsoleCommand struct { func (x *CMsgGCToGCBroadcastConsoleCommand) Reset() { *x = CMsgGCToGCBroadcastConsoleCommand{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[91] + mi := &file_econ_gcmessages_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6697,7 +6998,7 @@ func (x *CMsgGCToGCBroadcastConsoleCommand) String() string { func (*CMsgGCToGCBroadcastConsoleCommand) ProtoMessage() {} func (x *CMsgGCToGCBroadcastConsoleCommand) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[91] + mi := &file_econ_gcmessages_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6710,7 +7011,7 @@ func (x *CMsgGCToGCBroadcastConsoleCommand) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToGCBroadcastConsoleCommand.ProtoReflect.Descriptor instead. func (*CMsgGCToGCBroadcastConsoleCommand) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{91} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{94} } func (x *CMsgGCToGCBroadcastConsoleCommand) GetConCommand() string { @@ -6755,7 +7056,7 @@ type CMsgGCToGCConsoleOutput struct { func (x *CMsgGCToGCConsoleOutput) Reset() { *x = CMsgGCToGCConsoleOutput{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[92] + mi := &file_econ_gcmessages_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6768,7 +7069,7 @@ func (x *CMsgGCToGCConsoleOutput) String() string { func (*CMsgGCToGCConsoleOutput) ProtoMessage() {} func (x *CMsgGCToGCConsoleOutput) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[92] + mi := &file_econ_gcmessages_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6781,7 +7082,7 @@ func (x *CMsgGCToGCConsoleOutput) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCConsoleOutput.ProtoReflect.Descriptor instead. func (*CMsgGCToGCConsoleOutput) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{92} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{95} } func (x *CMsgGCToGCConsoleOutput) GetInitiator() string { @@ -6823,7 +7124,7 @@ type CMsgItemAges struct { func (x *CMsgItemAges) Reset() { *x = CMsgItemAges{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[93] + mi := &file_econ_gcmessages_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6836,7 +7137,7 @@ func (x *CMsgItemAges) String() string { func (*CMsgItemAges) ProtoMessage() {} func (x *CMsgItemAges) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[93] + mi := &file_econ_gcmessages_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6849,7 +7150,7 @@ func (x *CMsgItemAges) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgItemAges.ProtoReflect.Descriptor instead. func (*CMsgItemAges) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{93} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{96} } func (x *CMsgItemAges) GetMaxItemIdTimestamps() []*CMsgItemAges_MaxItemIDTimestamp { @@ -6876,7 +7177,7 @@ type CMsgGCToGCInternalTestMsg struct { func (x *CMsgGCToGCInternalTestMsg) Reset() { *x = CMsgGCToGCInternalTestMsg{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[94] + mi := &file_econ_gcmessages_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6889,7 +7190,7 @@ func (x *CMsgGCToGCInternalTestMsg) String() string { func (*CMsgGCToGCInternalTestMsg) ProtoMessage() {} func (x *CMsgGCToGCInternalTestMsg) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[94] + mi := &file_econ_gcmessages_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6902,7 +7203,7 @@ func (x *CMsgGCToGCInternalTestMsg) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCInternalTestMsg.ProtoReflect.Descriptor instead. func (*CMsgGCToGCInternalTestMsg) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{94} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{97} } func (x *CMsgGCToGCInternalTestMsg) GetSendingGc() int32 { @@ -6969,7 +7270,7 @@ type CMsgGCToGCClientServerVersionsUpdated struct { func (x *CMsgGCToGCClientServerVersionsUpdated) Reset() { *x = CMsgGCToGCClientServerVersionsUpdated{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[95] + mi := &file_econ_gcmessages_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6982,7 +7283,7 @@ func (x *CMsgGCToGCClientServerVersionsUpdated) String() string { func (*CMsgGCToGCClientServerVersionsUpdated) ProtoMessage() {} func (x *CMsgGCToGCClientServerVersionsUpdated) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[95] + mi := &file_econ_gcmessages_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6995,7 +7296,7 @@ func (x *CMsgGCToGCClientServerVersionsUpdated) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCToGCClientServerVersionsUpdated.ProtoReflect.Descriptor instead. func (*CMsgGCToGCClientServerVersionsUpdated) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{95} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{98} } func (x *CMsgGCToGCClientServerVersionsUpdated) GetClientMinAllowedVersion() uint32 { @@ -7047,7 +7348,7 @@ type CMsgGCToGCBroadcastMessageFromSub struct { func (x *CMsgGCToGCBroadcastMessageFromSub) Reset() { *x = CMsgGCToGCBroadcastMessageFromSub{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[96] + mi := &file_econ_gcmessages_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7060,7 +7361,7 @@ func (x *CMsgGCToGCBroadcastMessageFromSub) String() string { func (*CMsgGCToGCBroadcastMessageFromSub) ProtoMessage() {} func (x *CMsgGCToGCBroadcastMessageFromSub) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[96] + mi := &file_econ_gcmessages_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7073,7 +7374,7 @@ func (x *CMsgGCToGCBroadcastMessageFromSub) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToGCBroadcastMessageFromSub.ProtoReflect.Descriptor instead. func (*CMsgGCToGCBroadcastMessageFromSub) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{96} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{99} } func (x *CMsgGCToGCBroadcastMessageFromSub) GetMsgId() uint32 { @@ -7116,7 +7417,7 @@ type CMsgGCToClientCurrencyPricePoints struct { func (x *CMsgGCToClientCurrencyPricePoints) Reset() { *x = CMsgGCToClientCurrencyPricePoints{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[97] + mi := &file_econ_gcmessages_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7129,7 +7430,7 @@ func (x *CMsgGCToClientCurrencyPricePoints) String() string { func (*CMsgGCToClientCurrencyPricePoints) ProtoMessage() {} func (x *CMsgGCToClientCurrencyPricePoints) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[97] + mi := &file_econ_gcmessages_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7142,7 +7443,7 @@ func (x *CMsgGCToClientCurrencyPricePoints) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToClientCurrencyPricePoints.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCurrencyPricePoints) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{97} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{100} } func (x *CMsgGCToClientCurrencyPricePoints) GetPriceKey() []uint64 { @@ -7171,7 +7472,7 @@ type CMsgBannedWordList struct { func (x *CMsgBannedWordList) Reset() { *x = CMsgBannedWordList{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[98] + mi := &file_econ_gcmessages_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7184,7 +7485,7 @@ func (x *CMsgBannedWordList) String() string { func (*CMsgBannedWordList) ProtoMessage() {} func (x *CMsgBannedWordList) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[98] + mi := &file_econ_gcmessages_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7197,7 +7498,7 @@ func (x *CMsgBannedWordList) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgBannedWordList.ProtoReflect.Descriptor instead. func (*CMsgBannedWordList) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{98} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{101} } func (x *CMsgBannedWordList) GetVersion() uint32 { @@ -7225,7 +7526,7 @@ type CMsgGCToGCFlushSteamInventoryCache struct { func (x *CMsgGCToGCFlushSteamInventoryCache) Reset() { *x = CMsgGCToGCFlushSteamInventoryCache{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[99] + mi := &file_econ_gcmessages_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7238,7 +7539,7 @@ func (x *CMsgGCToGCFlushSteamInventoryCache) String() string { func (*CMsgGCToGCFlushSteamInventoryCache) ProtoMessage() {} func (x *CMsgGCToGCFlushSteamInventoryCache) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[99] + mi := &file_econ_gcmessages_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7251,7 +7552,7 @@ func (x *CMsgGCToGCFlushSteamInventoryCache) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToGCFlushSteamInventoryCache.ProtoReflect.Descriptor instead. func (*CMsgGCToGCFlushSteamInventoryCache) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{99} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{102} } func (x *CMsgGCToGCFlushSteamInventoryCache) GetKeys() []*CMsgGCToGCFlushSteamInventoryCache_Key { @@ -7273,7 +7574,7 @@ type CMsgGCToGCUpdateSubscriptionItems struct { func (x *CMsgGCToGCUpdateSubscriptionItems) Reset() { *x = CMsgGCToGCUpdateSubscriptionItems{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[100] + mi := &file_econ_gcmessages_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7286,7 +7587,7 @@ func (x *CMsgGCToGCUpdateSubscriptionItems) String() string { func (*CMsgGCToGCUpdateSubscriptionItems) ProtoMessage() {} func (x *CMsgGCToGCUpdateSubscriptionItems) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[100] + mi := &file_econ_gcmessages_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7299,7 +7600,7 @@ func (x *CMsgGCToGCUpdateSubscriptionItems) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToGCUpdateSubscriptionItems.ProtoReflect.Descriptor instead. func (*CMsgGCToGCUpdateSubscriptionItems) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{100} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{103} } func (x *CMsgGCToGCUpdateSubscriptionItems) GetAccountId() uint32 { @@ -7327,7 +7628,7 @@ type CMsgGCToGCSelfPing struct { func (x *CMsgGCToGCSelfPing) Reset() { *x = CMsgGCToGCSelfPing{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[101] + mi := &file_econ_gcmessages_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7340,7 +7641,7 @@ func (x *CMsgGCToGCSelfPing) String() string { func (*CMsgGCToGCSelfPing) ProtoMessage() {} func (x *CMsgGCToGCSelfPing) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[101] + mi := &file_econ_gcmessages_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7353,7 +7654,7 @@ func (x *CMsgGCToGCSelfPing) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCSelfPing.ProtoReflect.Descriptor instead. func (*CMsgGCToGCSelfPing) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{101} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{104} } func (x *CMsgGCToGCSelfPing) GetSampleId() uint32 { @@ -7372,7 +7673,7 @@ type CMsgGCToGCGetInfuxIntervalStats struct { func (x *CMsgGCToGCGetInfuxIntervalStats) Reset() { *x = CMsgGCToGCGetInfuxIntervalStats{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[102] + mi := &file_econ_gcmessages_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7385,7 +7686,7 @@ func (x *CMsgGCToGCGetInfuxIntervalStats) String() string { func (*CMsgGCToGCGetInfuxIntervalStats) ProtoMessage() {} func (x *CMsgGCToGCGetInfuxIntervalStats) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[102] + mi := &file_econ_gcmessages_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7398,7 +7699,7 @@ func (x *CMsgGCToGCGetInfuxIntervalStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCGetInfuxIntervalStats.ProtoReflect.Descriptor instead. func (*CMsgGCToGCGetInfuxIntervalStats) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{102} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{105} } type CMsgGCToGCGetInfuxIntervalStatsResponse struct { @@ -7416,7 +7717,7 @@ type CMsgGCToGCGetInfuxIntervalStatsResponse struct { func (x *CMsgGCToGCGetInfuxIntervalStatsResponse) Reset() { *x = CMsgGCToGCGetInfuxIntervalStatsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[103] + mi := &file_econ_gcmessages_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7429,7 +7730,7 @@ func (x *CMsgGCToGCGetInfuxIntervalStatsResponse) String() string { func (*CMsgGCToGCGetInfuxIntervalStatsResponse) ProtoMessage() {} func (x *CMsgGCToGCGetInfuxIntervalStatsResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[103] + mi := &file_econ_gcmessages_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7442,7 +7743,7 @@ func (x *CMsgGCToGCGetInfuxIntervalStatsResponse) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgGCToGCGetInfuxIntervalStatsResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToGCGetInfuxIntervalStatsResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{103} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{106} } func (x *CMsgGCToGCGetInfuxIntervalStatsResponse) GetStatIds() []uint32 { @@ -7489,7 +7790,7 @@ type CMsgGCToGCPurchaseSucceeded struct { func (x *CMsgGCToGCPurchaseSucceeded) Reset() { *x = CMsgGCToGCPurchaseSucceeded{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[104] + mi := &file_econ_gcmessages_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7502,7 +7803,7 @@ func (x *CMsgGCToGCPurchaseSucceeded) String() string { func (*CMsgGCToGCPurchaseSucceeded) ProtoMessage() {} func (x *CMsgGCToGCPurchaseSucceeded) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[104] + mi := &file_econ_gcmessages_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7515,7 +7816,7 @@ func (x *CMsgGCToGCPurchaseSucceeded) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCPurchaseSucceeded.ProtoReflect.Descriptor instead. func (*CMsgGCToGCPurchaseSucceeded) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{104} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{107} } type CMsgClientToGCGetLimitedItemPurchaseQuantity struct { @@ -7529,7 +7830,7 @@ type CMsgClientToGCGetLimitedItemPurchaseQuantity struct { func (x *CMsgClientToGCGetLimitedItemPurchaseQuantity) Reset() { *x = CMsgClientToGCGetLimitedItemPurchaseQuantity{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[105] + mi := &file_econ_gcmessages_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7542,7 +7843,7 @@ func (x *CMsgClientToGCGetLimitedItemPurchaseQuantity) String() string { func (*CMsgClientToGCGetLimitedItemPurchaseQuantity) ProtoMessage() {} func (x *CMsgClientToGCGetLimitedItemPurchaseQuantity) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[105] + mi := &file_econ_gcmessages_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7555,7 +7856,7 @@ func (x *CMsgClientToGCGetLimitedItemPurchaseQuantity) ProtoReflect() protorefle // Deprecated: Use CMsgClientToGCGetLimitedItemPurchaseQuantity.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetLimitedItemPurchaseQuantity) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{105} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{108} } func (x *CMsgClientToGCGetLimitedItemPurchaseQuantity) GetItemDef() uint32 { @@ -7577,7 +7878,7 @@ type CMsgClientToGCGetLimitedItemPurchaseQuantityResponse struct { func (x *CMsgClientToGCGetLimitedItemPurchaseQuantityResponse) Reset() { *x = CMsgClientToGCGetLimitedItemPurchaseQuantityResponse{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[106] + mi := &file_econ_gcmessages_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7590,7 +7891,7 @@ func (x *CMsgClientToGCGetLimitedItemPurchaseQuantityResponse) String() string { func (*CMsgClientToGCGetLimitedItemPurchaseQuantityResponse) ProtoMessage() {} func (x *CMsgClientToGCGetLimitedItemPurchaseQuantityResponse) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[106] + mi := &file_econ_gcmessages_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7603,7 +7904,7 @@ func (x *CMsgClientToGCGetLimitedItemPurchaseQuantityResponse) ProtoReflect() pr // Deprecated: Use CMsgClientToGCGetLimitedItemPurchaseQuantityResponse.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetLimitedItemPurchaseQuantityResponse) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{106} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{109} } func (x *CMsgClientToGCGetLimitedItemPurchaseQuantityResponse) GetResult() CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse { @@ -7633,7 +7934,7 @@ type CMsgGCToGCUpdateWelcomeMsg struct { func (x *CMsgGCToGCUpdateWelcomeMsg) Reset() { *x = CMsgGCToGCUpdateWelcomeMsg{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[107] + mi := &file_econ_gcmessages_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7646,7 +7947,7 @@ func (x *CMsgGCToGCUpdateWelcomeMsg) String() string { func (*CMsgGCToGCUpdateWelcomeMsg) ProtoMessage() {} func (x *CMsgGCToGCUpdateWelcomeMsg) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[107] + mi := &file_econ_gcmessages_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7659,7 +7960,7 @@ func (x *CMsgGCToGCUpdateWelcomeMsg) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCUpdateWelcomeMsg.ProtoReflect.Descriptor instead. func (*CMsgGCToGCUpdateWelcomeMsg) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{107} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{110} } func (x *CMsgGCToGCUpdateWelcomeMsg) GetServer() bool { @@ -7696,7 +7997,7 @@ type CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment struct { func (x *CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment) Reset() { *x = CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[108] + mi := &file_econ_gcmessages_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7709,7 +8010,7 @@ func (x *CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment) String() func (*CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment) ProtoMessage() {} func (x *CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[108] + mi := &file_econ_gcmessages_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7758,7 +8059,7 @@ type CMsgGCRequestStoreSalesDataResponse_Price struct { func (x *CMsgGCRequestStoreSalesDataResponse_Price) Reset() { *x = CMsgGCRequestStoreSalesDataResponse_Price{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[109] + mi := &file_econ_gcmessages_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7771,7 +8072,7 @@ func (x *CMsgGCRequestStoreSalesDataResponse_Price) String() string { func (*CMsgGCRequestStoreSalesDataResponse_Price) ProtoMessage() {} func (x *CMsgGCRequestStoreSalesDataResponse_Price) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[109] + mi := &file_econ_gcmessages_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7813,7 +8114,7 @@ type CMsgLookupMultipleAccountNamesResponse_Account struct { func (x *CMsgLookupMultipleAccountNamesResponse_Account) Reset() { *x = CMsgLookupMultipleAccountNamesResponse_Account{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[110] + mi := &file_econ_gcmessages_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7826,7 +8127,7 @@ func (x *CMsgLookupMultipleAccountNamesResponse_Account) String() string { func (*CMsgLookupMultipleAccountNamesResponse_Account) ProtoMessage() {} func (x *CMsgLookupMultipleAccountNamesResponse_Account) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[110] + mi := &file_econ_gcmessages_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7868,12 +8169,13 @@ type CMsgGCToGCGrantAccountRolledItems_Item struct { DynamicAttributes []*CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute `protobuf:"bytes,5,rep,name=dynamic_attributes,json=dynamicAttributes" json:"dynamic_attributes,omitempty"` AdditionalAuditEntries []*CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry `protobuf:"bytes,6,rep,name=additional_audit_entries,json=additionalAuditEntries" json:"additional_audit_entries,omitempty"` InventoryToken *uint32 `protobuf:"varint,7,opt,name=inventory_token,json=inventoryToken" json:"inventory_token,omitempty"` + Quality *int32 `protobuf:"varint,8,opt,name=quality" json:"quality,omitempty"` } func (x *CMsgGCToGCGrantAccountRolledItems_Item) Reset() { *x = CMsgGCToGCGrantAccountRolledItems_Item{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[111] + mi := &file_econ_gcmessages_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7886,7 +8188,7 @@ func (x *CMsgGCToGCGrantAccountRolledItems_Item) String() string { func (*CMsgGCToGCGrantAccountRolledItems_Item) ProtoMessage() {} func (x *CMsgGCToGCGrantAccountRolledItems_Item) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[111] + mi := &file_econ_gcmessages_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7951,6 +8253,13 @@ func (x *CMsgGCToGCGrantAccountRolledItems_Item) GetInventoryToken() uint32 { return 0 } +func (x *CMsgGCToGCGrantAccountRolledItems_Item) GetQuality() int32 { + if x != nil && x.Quality != nil { + return *x.Quality + } + return 0 +} + type CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7965,7 +8274,7 @@ type CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute struct { func (x *CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute) Reset() { *x = CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[112] + mi := &file_econ_gcmessages_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7978,7 +8287,7 @@ func (x *CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute) String() strin func (*CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute) ProtoMessage() {} func (x *CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[112] + mi := &file_econ_gcmessages_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8035,7 +8344,7 @@ type CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry struct { func (x *CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry) Reset() { *x = CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[113] + mi := &file_econ_gcmessages_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8048,7 +8357,7 @@ func (x *CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry) String() s func (*CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry) ProtoMessage() {} func (x *CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[113] + mi := &file_econ_gcmessages_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8097,7 +8406,7 @@ type CMsgClientToGCGetGiftPermissionsResponse_FriendPermission struct { func (x *CMsgClientToGCGetGiftPermissionsResponse_FriendPermission) Reset() { *x = CMsgClientToGCGetGiftPermissionsResponse_FriendPermission{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[114] + mi := &file_econ_gcmessages_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8110,7 +8419,7 @@ func (x *CMsgClientToGCGetGiftPermissionsResponse_FriendPermission) String() str func (*CMsgClientToGCGetGiftPermissionsResponse_FriendPermission) ProtoMessage() {} func (x *CMsgClientToGCGetGiftPermissionsResponse_FriendPermission) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[114] + mi := &file_econ_gcmessages_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8123,7 +8432,7 @@ func (x *CMsgClientToGCGetGiftPermissionsResponse_FriendPermission) ProtoReflect // Deprecated: Use CMsgClientToGCGetGiftPermissionsResponse_FriendPermission.ProtoReflect.Descriptor instead. func (*CMsgClientToGCGetGiftPermissionsResponse_FriendPermission) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{46, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{47, 0} } func (x *CMsgClientToGCGetGiftPermissionsResponse_FriendPermission) GetAccountId() uint32 { @@ -8152,7 +8461,7 @@ type CMsgClientToGCUnlockCrateResponse_Item struct { func (x *CMsgClientToGCUnlockCrateResponse_Item) Reset() { *x = CMsgClientToGCUnlockCrateResponse_Item{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[115] + mi := &file_econ_gcmessages_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8165,7 +8474,7 @@ func (x *CMsgClientToGCUnlockCrateResponse_Item) String() string { func (*CMsgClientToGCUnlockCrateResponse_Item) ProtoMessage() {} func (x *CMsgClientToGCUnlockCrateResponse_Item) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[115] + mi := &file_econ_gcmessages_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8178,7 +8487,7 @@ func (x *CMsgClientToGCUnlockCrateResponse_Item) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgClientToGCUnlockCrateResponse_Item.ProtoReflect.Descriptor instead. func (*CMsgClientToGCUnlockCrateResponse_Item) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{58, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{61, 0} } func (x *CMsgClientToGCUnlockCrateResponse_Item) GetItemId() uint64 { @@ -8209,7 +8518,7 @@ type CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue struct { func (x *CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue) Reset() { *x = CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[116] + mi := &file_econ_gcmessages_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8222,7 +8531,7 @@ func (x *CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue) String() st func (*CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue) ProtoMessage() {} func (x *CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[116] + mi := &file_econ_gcmessages_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8235,7 +8544,7 @@ func (x *CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue) ProtoReflec // Deprecated: Use CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue.ProtoReflect.Descriptor instead. func (*CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{78, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{81, 0} } func (x *CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue) GetCountryCode() string { @@ -8280,7 +8589,7 @@ type CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue struct { func (x *CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue) Reset() { *x = CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[117] + mi := &file_econ_gcmessages_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8293,7 +8602,7 @@ func (x *CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue) String() func (*CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue) ProtoMessage() {} func (x *CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[117] + mi := &file_econ_gcmessages_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8306,7 +8615,7 @@ func (x *CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue) ProtoRef // Deprecated: Use CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue.ProtoReflect.Descriptor instead. func (*CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{80, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{83, 0} } func (x *CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue) GetCountryCode() string { @@ -8349,7 +8658,7 @@ type CMsgClientToGCCreateStaticRecipe_Item struct { func (x *CMsgClientToGCCreateStaticRecipe_Item) Reset() { *x = CMsgClientToGCCreateStaticRecipe_Item{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[118] + mi := &file_econ_gcmessages_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8362,7 +8671,7 @@ func (x *CMsgClientToGCCreateStaticRecipe_Item) String() string { func (*CMsgClientToGCCreateStaticRecipe_Item) ProtoMessage() {} func (x *CMsgClientToGCCreateStaticRecipe_Item) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[118] + mi := &file_econ_gcmessages_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8375,7 +8684,7 @@ func (x *CMsgClientToGCCreateStaticRecipe_Item) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgClientToGCCreateStaticRecipe_Item.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateStaticRecipe_Item) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{84, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{87, 0} } func (x *CMsgClientToGCCreateStaticRecipe_Item) GetItemId() uint64 { @@ -8405,7 +8714,7 @@ type CMsgClientToGCCreateStaticRecipeResponse_OutputItem struct { func (x *CMsgClientToGCCreateStaticRecipeResponse_OutputItem) Reset() { *x = CMsgClientToGCCreateStaticRecipeResponse_OutputItem{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[119] + mi := &file_econ_gcmessages_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8418,7 +8727,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse_OutputItem) String() string { func (*CMsgClientToGCCreateStaticRecipeResponse_OutputItem) ProtoMessage() {} func (x *CMsgClientToGCCreateStaticRecipeResponse_OutputItem) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[119] + mi := &file_econ_gcmessages_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8431,7 +8740,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse_OutputItem) ProtoReflect() pro // Deprecated: Use CMsgClientToGCCreateStaticRecipeResponse_OutputItem.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateStaticRecipeResponse_OutputItem) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{85, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{88, 0} } func (x *CMsgClientToGCCreateStaticRecipeResponse_OutputItem) GetDefIndex() uint32 { @@ -8467,7 +8776,7 @@ type CMsgClientToGCCreateStaticRecipeResponse_InputError struct { func (x *CMsgClientToGCCreateStaticRecipeResponse_InputError) Reset() { *x = CMsgClientToGCCreateStaticRecipeResponse_InputError{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[120] + mi := &file_econ_gcmessages_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8480,7 +8789,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse_InputError) String() string { func (*CMsgClientToGCCreateStaticRecipeResponse_InputError) ProtoMessage() {} func (x *CMsgClientToGCCreateStaticRecipeResponse_InputError) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[120] + mi := &file_econ_gcmessages_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8493,7 +8802,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse_InputError) ProtoReflect() pro // Deprecated: Use CMsgClientToGCCreateStaticRecipeResponse_InputError.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateStaticRecipeResponse_InputError) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{85, 1} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{88, 1} } func (x *CMsgClientToGCCreateStaticRecipeResponse_InputError) GetSlotId() uint32 { @@ -8522,7 +8831,7 @@ type CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput struct { func (x *CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput) Reset() { *x = CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[121] + mi := &file_econ_gcmessages_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8535,7 +8844,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput) String() str func (*CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput) ProtoMessage() {} func (x *CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[121] + mi := &file_econ_gcmessages_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8548,7 +8857,7 @@ func (x *CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput) ProtoReflect // Deprecated: Use CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput.ProtoReflect.Descriptor instead. func (*CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{85, 2} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{88, 2} } func (x *CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput) GetSlotId() uint32 { @@ -8584,7 +8893,7 @@ type CMsgProcessTransactionOrder_Item struct { func (x *CMsgProcessTransactionOrder_Item) Reset() { *x = CMsgProcessTransactionOrder_Item{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[122] + mi := &file_econ_gcmessages_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8597,7 +8906,7 @@ func (x *CMsgProcessTransactionOrder_Item) String() string { func (*CMsgProcessTransactionOrder_Item) ProtoMessage() {} func (x *CMsgProcessTransactionOrder_Item) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[122] + mi := &file_econ_gcmessages_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8610,7 +8919,7 @@ func (x *CMsgProcessTransactionOrder_Item) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgProcessTransactionOrder_Item.ProtoReflect.Descriptor instead. func (*CMsgProcessTransactionOrder_Item) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{86, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{89, 0} } func (x *CMsgProcessTransactionOrder_Item) GetItemDefIndex() uint32 { @@ -8688,7 +8997,7 @@ type CMsgGCToGCConsoleOutput_OutputLine struct { func (x *CMsgGCToGCConsoleOutput_OutputLine) Reset() { *x = CMsgGCToGCConsoleOutput_OutputLine{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[123] + mi := &file_econ_gcmessages_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8701,7 +9010,7 @@ func (x *CMsgGCToGCConsoleOutput_OutputLine) String() string { func (*CMsgGCToGCConsoleOutput_OutputLine) ProtoMessage() {} func (x *CMsgGCToGCConsoleOutput_OutputLine) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[123] + mi := &file_econ_gcmessages_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8714,7 +9023,7 @@ func (x *CMsgGCToGCConsoleOutput_OutputLine) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToGCConsoleOutput_OutputLine.ProtoReflect.Descriptor instead. func (*CMsgGCToGCConsoleOutput_OutputLine) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{92, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{95, 0} } func (x *CMsgGCToGCConsoleOutput_OutputLine) GetText() string { @@ -8743,7 +9052,7 @@ type CMsgItemAges_MaxItemIDTimestamp struct { func (x *CMsgItemAges_MaxItemIDTimestamp) Reset() { *x = CMsgItemAges_MaxItemIDTimestamp{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[124] + mi := &file_econ_gcmessages_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8756,7 +9065,7 @@ func (x *CMsgItemAges_MaxItemIDTimestamp) String() string { func (*CMsgItemAges_MaxItemIDTimestamp) ProtoMessage() {} func (x *CMsgItemAges_MaxItemIDTimestamp) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[124] + mi := &file_econ_gcmessages_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8769,7 +9078,7 @@ func (x *CMsgItemAges_MaxItemIDTimestamp) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgItemAges_MaxItemIDTimestamp.ProtoReflect.Descriptor instead. func (*CMsgItemAges_MaxItemIDTimestamp) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{93, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{96, 0} } func (x *CMsgItemAges_MaxItemIDTimestamp) GetTimestamp() uint32 { @@ -8798,7 +9107,7 @@ type CMsgGCToClientCurrencyPricePoints_Currency struct { func (x *CMsgGCToClientCurrencyPricePoints_Currency) Reset() { *x = CMsgGCToClientCurrencyPricePoints_Currency{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[125] + mi := &file_econ_gcmessages_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8811,7 +9120,7 @@ func (x *CMsgGCToClientCurrencyPricePoints_Currency) String() string { func (*CMsgGCToClientCurrencyPricePoints_Currency) ProtoMessage() {} func (x *CMsgGCToClientCurrencyPricePoints_Currency) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[125] + mi := &file_econ_gcmessages_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8824,7 +9133,7 @@ func (x *CMsgGCToClientCurrencyPricePoints_Currency) ProtoReflect() protoreflect // Deprecated: Use CMsgGCToClientCurrencyPricePoints_Currency.ProtoReflect.Descriptor instead. func (*CMsgGCToClientCurrencyPricePoints_Currency) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{97, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{100, 0} } func (x *CMsgGCToClientCurrencyPricePoints_Currency) GetCurrencyId() uint32 { @@ -8853,7 +9162,7 @@ type CMsgGCToGCFlushSteamInventoryCache_Key struct { func (x *CMsgGCToGCFlushSteamInventoryCache_Key) Reset() { *x = CMsgGCToGCFlushSteamInventoryCache_Key{} if protoimpl.UnsafeEnabled { - mi := &file_econ_gcmessages_proto_msgTypes[126] + mi := &file_econ_gcmessages_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8866,7 +9175,7 @@ func (x *CMsgGCToGCFlushSteamInventoryCache_Key) String() string { func (*CMsgGCToGCFlushSteamInventoryCache_Key) ProtoMessage() {} func (x *CMsgGCToGCFlushSteamInventoryCache_Key) ProtoReflect() protoreflect.Message { - mi := &file_econ_gcmessages_proto_msgTypes[126] + mi := &file_econ_gcmessages_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8879,7 +9188,7 @@ func (x *CMsgGCToGCFlushSteamInventoryCache_Key) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgGCToGCFlushSteamInventoryCache_Key.ProtoReflect.Descriptor instead. func (*CMsgGCToGCFlushSteamInventoryCache_Key) Descriptor() ([]byte, []int) { - return file_econ_gcmessages_proto_rawDescGZIP(), []int{99, 0} + return file_econ_gcmessages_proto_rawDescGZIP(), []int{102, 0} } func (x *CMsgGCToGCFlushSteamInventoryCache_Key) GetSteamid() uint64 { @@ -8905,845 +9214,949 @@ var file_econ_gcmessages_proto_rawDesc = []byte{ 0x74, 0x6f, 0x1a, 0x17, 0x65, 0x63, 0x6f, 0x6e, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x63, 0x73, 0x64, 0x6b, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x22, 0x62, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x70, 0x70, 0x6c, 0x79, - 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x75, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x49, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, - 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x8f, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x70, - 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x77, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x19, 0x0a, - 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x6e, 0x65, 0x77, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x79, 0x6c, - 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, - 0x74, 0x79, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xd7, 0x02, 0x0a, 0x24, 0x43, 0x4d, - 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x72, 0x61, + 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x67, 0x63, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x62, 0x0a, 0x12, 0x43, 0x4d, + 0x73, 0x67, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, + 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x61, 0x75, 0x74, + 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x8f, + 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x49, 0x74, 0x65, + 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x17, + 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x5f, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x65, 0x77, 0x43, + 0x6c, 0x61, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x73, 0x6c, 0x6f, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x53, 0x6c, 0x6f, 0x74, 0x12, + 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x22, 0xd7, 0x02, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, + 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x7e, 0x0a, 0x19, 0x73, 0x74, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, + 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x17, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, + 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x75, 0x72, 0x62, + 0x6f, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x74, 0x75, + 0x72, 0x62, 0x6f, 0x4d, 0x6f, 0x64, 0x65, 0x1a, 0x71, 0x0a, 0x17, 0x43, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, - 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x7e, 0x0a, 0x19, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x45, 0x63, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, - 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, - 0x2e, 0x43, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, - 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x17, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, - 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x75, 0x72, 0x62, 0x6f, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x74, 0x75, 0x72, 0x62, 0x6f, 0x4d, 0x6f, 0x64, 0x65, - 0x1a, 0x71, 0x0a, 0x17, 0x43, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, - 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, - 0x65, 0x6e, 0x74, 0x22, 0x31, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x72, 0x61, 0x66, 0x74, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x53, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, - 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, - 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x22, 0xf2, 0x01, 0x0a, 0x23, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, - 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0a, 0x73, 0x61, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, - 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, - 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x09, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x72, - 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, - 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x38, 0x0a, 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, - 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, - 0x22, 0x70, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x55, - 0x70, 0x54, 0x6f, 0x44, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, - 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, - 0x6d, 0x65, 0x22, 0x17, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x18, 0x0a, 0x16, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3f, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x6d, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x6f, - 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x4f, - 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x66, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x70, - 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x6d, 0x61, 0x78, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x22, 0x54, 0x0a, + 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x64, + 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x31, 0x0a, 0x14, 0x43, 0x4d, + 0x73, 0x67, 0x43, 0x72, 0x61, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x53, 0x0a, + 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, + 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x63, 0x79, 0x22, 0xf2, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0a, 0x73, 0x61, + 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, + 0x09, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x65, + 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x38, 0x0a, + 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, + 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, + 0x66, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0x70, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, + 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x54, 0x6f, 0x44, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x17, 0x0a, 0x15, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x22, 0x18, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3f, 0x0a, 0x1e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x6d, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x22, 0x40, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, - 0x70, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x69, 0x64, 0x73, 0x22, 0xbd, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, - 0x6f, 0x6b, 0x75, 0x70, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x50, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, - 0x6f, 0x6b, 0x75, 0x70, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x1a, 0x41, 0x0a, 0x07, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, - 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x65, - 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x22, 0x3d, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x24, - 0x0a, 0x0e, 0x63, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, - 0x6d, 0x44, 0x65, 0x66, 0x22, 0xa8, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, 0x12, - 0x24, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x6b, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x65, 0x65, 0x6b, 0x49, 0x74, 0x65, - 0x6d, 0x44, 0x65, 0x66, 0x73, 0x22, 0x28, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, - 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x22, - 0x47, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, - 0x61, 0x74, 0x65, 0x45, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, - 0x65, 0x6c, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x72, 0x61, 0x74, - 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x22, 0xa3, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, 0x45, 0x73, 0x63, - 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, - 0x65, 0x76, 0x65, 0x6c, 0x30, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x73, 0x63, - 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x30, 0x12, 0x2b, 0x0a, - 0x11, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x31, 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x73, - 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x32, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x32, 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x73, 0x63, 0x61, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x33, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x10, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x33, 0x22, 0x28, 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, - 0x12, 0x0c, 0x0a, 0x08, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x22, 0xe1, - 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, - 0x55, 0x73, 0x65, 0x44, 0x72, 0x6f, 0x70, 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, - 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x26, 0x0a, 0x0f, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x6f, 0x6e, - 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x64, 0x72, 0x6f, 0x70, 0x52, 0x61, - 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x73, 0x74, - 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, - 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x78, - 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, - 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, - 0x77, 0x5f, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x45, 0x71, 0x75, 0x61, 0x6c, 0x52, 0x61, - 0x74, 0x65, 0x22, 0x88, 0x02, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x41, 0x64, - 0x64, 0x44, 0x72, 0x6f, 0x70, 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, + 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, + 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x66, 0x0a, 0x1e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, - 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, - 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, - 0x65, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, - 0x66, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, - 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x64, 0x72, 0x6f, 0x70, - 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, - 0x73, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, - 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x44, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x64, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0c, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x9c, 0x01, - 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, - 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x6f, 0x6e, 0x75, 0x73, - 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x62, - 0x6f, 0x6e, 0x75, 0x73, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, - 0x73, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x22, 0x51, 0x0a, 0x18, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, - 0x68, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6c, 0x6f, 0x61, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x22, - 0xb8, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, - 0x64, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, + 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, + 0x74, 0x6f, 0x72, 0x73, 0x22, 0x54, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, + 0x0a, 0x11, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x40, 0x0a, 0x1e, 0x43, 0x4d, + 0x73, 0x67, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x73, 0x22, 0xbd, 0x01, 0x0a, + 0x26, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4d, 0x75, 0x6c, 0x74, 0x69, + 0x70, 0x6c, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4d, 0x75, 0x6c, 0x74, 0x69, + 0x70, 0x6c, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, + 0x08, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x41, 0x0a, 0x07, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x22, 0x3d, 0x0a, 0x15, + 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, + 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x22, 0xda, 0x01, 0x0a, 0x1d, + 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, + 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x6b, 0x5f, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, + 0x70, 0x65, 0x65, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, 0x12, 0x30, 0x0a, 0x0a, + 0x70, 0x65, 0x65, 0x6b, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, 0x49, + 0x74, 0x65, 0x6d, 0x52, 0x09, 0x70, 0x65, 0x65, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x28, + 0x0a, 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x6b, 0x5f, + 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x22, 0x47, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, 0x45, 0x73, 0x63, 0x61, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x24, 0x0a, 0x0e, 0x63, + 0x72, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, + 0x66, 0x22, 0xa3, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, 0x45, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x73, 0x63, + 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x30, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x30, 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, + 0x65, 0x6c, 0x31, 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x32, + 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x33, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x73, 0x63, + 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x33, 0x22, 0x28, 0x0a, + 0x07, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x53, 0x75, + 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x6b, 0x5f, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x22, 0xe1, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x44, 0x72, 0x6f, 0x70, + 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x72, 0x6f, 0x70, + 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x0d, 0x64, 0x72, 0x6f, 0x70, 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, + 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, + 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x10, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, + 0x66, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x65, 0x71, 0x75, 0x61, 0x6c, + 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x6c, 0x6c, + 0x6f, 0x77, 0x45, 0x71, 0x75, 0x61, 0x6c, 0x52, 0x61, 0x74, 0x65, 0x22, 0x88, 0x02, 0x0a, 0x17, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x41, 0x64, 0x64, 0x44, 0x72, 0x6f, 0x70, 0x52, 0x61, + 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, + 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x72, + 0x6f, 0x70, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x0d, 0x64, 0x72, 0x6f, 0x70, 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, + 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, + 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, + 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, + 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x9c, 0x01, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x51, 0x4c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x42, + 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, + 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, + 0x12, 0x20, 0x0a, 0x0c, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x62, 0x6f, 0x6e, 0x75, 0x73, 0x54, 0x6f, 0x41, + 0x64, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, + 0x72, 0x54, 0x79, 0x70, 0x65, 0x22, 0x51, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x49, 0x0a, 0x21, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x1e, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x61, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0xef, 0x06, 0x0a, 0x21, 0x43, + 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x06, 0x72, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xb8, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x21, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x1e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x11, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x6f, + 0x6e, 0x64, 0x73, 0x22, 0x89, 0x07, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x6f, + 0x6c, 0x6c, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, - 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x42, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, - 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, - 0x65, 0x6d, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, - 0x74, 0x44, 0x61, 0x74, 0x61, 0x1a, 0xa4, 0x05, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x19, - 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x6f, - 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6c, - 0x6f, 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, - 0x72, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, - 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, - 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x72, 0x69, - 0x67, 0x69, 0x6e, 0x12, 0x6c, 0x0a, 0x12, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x61, - 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x6f, 0x6c, - 0x6c, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x44, 0x79, - 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x11, - 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x73, 0x12, 0x7b, 0x0a, 0x18, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, - 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, - 0x6d, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x64, 0x69, - 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x16, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x41, 0x75, 0x64, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x27, - 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x8d, 0x01, 0x0a, 0x10, 0x44, 0x79, 0x6e, 0x61, - 0x6d, 0x69, 0x63, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x55, 0x69, 0x6e, - 0x74, 0x33, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x66, 0x6c, 0x6f, - 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x46, - 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x1a, 0x82, 0x01, 0x0a, 0x14, 0x41, 0x64, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x64, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x77, 0x6e, 0x65, - 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, - 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, - 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x72, 0x0a, 0x19, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x65, 0x74, 0x61, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, - 0x49, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x73, - 0x22, 0x6a, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, - 0x61, 0x6e, 0x74, 0x53, 0x65, 0x6c, 0x66, 0x4d, 0x61, 0x64, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x54, - 0x6f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, - 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x22, 0x97, 0x02, 0x0a, - 0x0b, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, + 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x1a, 0xbe, + 0x05, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, + 0x65, 0x66, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x6f, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, + 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x4c, + 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x6c, 0x0a, 0x12, + 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, + 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x11, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x7b, 0x0a, 0x18, 0x61, 0x64, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x65, + 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, + 0x61, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x65, 0x64, + 0x49, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x64, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x16, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x64, 0x69, 0x74, + 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x8d, 0x01, 0x0a, 0x10, 0x44, + 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x75, 0x69, 0x6e, + 0x74, 0x33, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x55, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, + 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x1a, 0x82, 0x01, 0x0a, 0x14, 0x41, + 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x64, 0x69, 0x74, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, + 0x77, 0x6e, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, + 0x0c, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, + 0x72, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x65, 0x74, + 0x61, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, + 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, + 0x65, 0x66, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x44, + 0x65, 0x66, 0x73, 0x22, 0x6a, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x6c, 0x66, 0x4d, 0x61, 0x64, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x54, 0x6f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x64, 0x22, + 0x97, 0x02, 0x0a, 0x0b, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, + 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x06, 0x52, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, + 0x12, 0x35, 0x0a, 0x17, 0x67, 0x69, 0x66, 0x74, 0x5f, 0x5f, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x14, 0x67, 0x69, 0x66, 0x74, 0x50, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, + 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x12, 0x27, 0x0a, 0x10, 0x64, 0x75, 0x65, 0x6c, 0x5f, + 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0d, 0x64, 0x75, 0x65, 0x6c, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x4c, 0x6f, 0x63, 0x6b, + 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x39, + 0x0a, 0x19, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x5f, 0x61, 0x63, 0x6b, 0x5f, + 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x16, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x61, 0x63, 0x6b, 0x41, 0x63, 0x6b, 0x49, 0x6d, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x22, 0x7a, 0x0a, 0x11, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x30, + 0x0a, 0x14, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x33, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x6d, 0x73, 0x67, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x4d, 0x73, 0x67, 0x22, 0x31, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x73, 0x65, + 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x19, 0x0a, + 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, + 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x21, 0x43, 0x47, 0x43, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x5f, 0x4c, 0x69, 0x6e, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, + 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0xfa, 0x01, 0x0a, 0x29, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x45, 0x63, 0x6f, 0x6e, 0x53, 0x51, 0x4c, 0x57, 0x6f, 0x72, 0x6b, 0x49, + 0x74, 0x65, 0x6d, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x52, 0x6f, 0x6c, 0x6c, 0x62, + 0x61, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x28, + 0x0a, 0x10, 0x6f, 0x6c, 0x64, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x6c, 0x64, 0x41, 0x75, 0x64, + 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x65, 0x77, 0x5f, + 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0e, 0x6e, 0x65, 0x77, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x61, + 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x13, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc8, 0x01, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x72, 0x61, 0x66, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, + 0x72, 0x6f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, + 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, + 0x0a, 0x10, 0x70, 0x65, 0x64, 0x65, 0x73, 0x74, 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x64, + 0x65, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x64, 0x65, 0x73, 0x74, + 0x61, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x64, 0x65, 0x66, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x6f, 0x6f, + 0x6c, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x6f, 0x6f, 0x6c, 0x69, + 0x64, 0x22, 0x24, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x43, + 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0xbf, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, + 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, + 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x70, 0x0a, 0x0b, 0x45, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x53, 0x75, 0x63, 0x63, + 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x46, 0x61, 0x69, + 0x6c, 0x65, 0x64, 0x5f, 0x43, 0x6f, 0x64, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, + 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, + 0x6f, 0x64, 0x65, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, 0x73, 0x65, 0x64, 0x10, 0x02, + 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x4f, 0x74, 0x68, + 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x22, 0xc7, 0x01, 0x0a, 0x15, 0x43, 0x4d, + 0x73, 0x67, 0x44, 0x65, 0x76, 0x4e, 0x65, 0x77, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, + 0x44, 0x65, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x6f, 0x6f, 0x74, 0x5f, + 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x6c, 0x6f, 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, + 0x0d, 0x61, 0x74, 0x74, 0x72, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x72, 0x44, 0x65, 0x66, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x74, 0x74, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x74, 0x79, 0x22, 0x39, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x4e, 0x65, + 0x77, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x35, + 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x41, + 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, - 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x35, 0x0a, - 0x17, 0x67, 0x69, 0x66, 0x74, 0x5f, 0x5f, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x14, - 0x67, 0x69, 0x66, 0x74, 0x50, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x54, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x73, 0x12, 0x27, 0x0a, 0x10, 0x64, 0x75, 0x65, 0x6c, 0x5f, 0x5f, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x64, 0x75, 0x65, 0x6c, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x4c, 0x6f, 0x63, 0x6b, 0x12, 0x2c, 0x0a, - 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x19, 0x69, - 0x74, 0x65, 0x6d, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6d, 0x6d, - 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, - 0x69, 0x74, 0x65, 0x6d, 0x70, 0x61, 0x63, 0x6b, 0x41, 0x63, 0x6b, 0x49, 0x6d, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x22, 0x7a, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x30, 0x0a, 0x14, 0x69, - 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x74, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x33, 0x0a, - 0x0c, 0x75, 0x73, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x55, - 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4d, - 0x73, 0x67, 0x22, 0x31, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x73, 0x65, 0x4d, 0x75, 0x6c, - 0x74, 0x69, 0x70, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, - 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x21, 0x43, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, - 0x65, 0x52, 0x65, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x5f, 0x4c, 0x69, 0x6e, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, 0x0b, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, - 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, - 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0xfa, 0x01, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x45, 0x63, 0x6f, 0x6e, 0x53, 0x51, 0x4c, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x74, 0x65, 0x6d, - 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x64, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x6f, - 0x6c, 0x64, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6f, 0x6c, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x65, 0x77, 0x5f, 0x61, 0x75, 0x64, - 0x69, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0e, 0x6e, 0x65, 0x77, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x32, 0x0a, 0x15, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x75, 0x64, 0x69, - 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, - 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x75, 0x64, 0x69, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0xc8, 0x01, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x72, 0x61, 0x66, - 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x12, - 0x22, 0x0a, 0x0c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x05, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x70, - 0x65, 0x64, 0x65, 0x73, 0x74, 0x61, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x64, 0x65, 0x66, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x64, 0x65, 0x73, 0x74, 0x61, 0x6c, 0x49, - 0x74, 0x65, 0x6d, 0x64, 0x65, 0x66, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x6f, 0x6f, 0x6c, 0x69, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x6f, 0x6f, 0x6c, 0x69, 0x64, 0x22, 0x24, - 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x63, 0x6f, 0x64, 0x65, 0x22, 0xbf, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x64, - 0x65, 0x65, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, - 0x65, 0x6d, 0x49, 0x64, 0x22, 0x70, 0x0a, 0x0b, 0x45, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, - 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, - 0x65, 0x64, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, - 0x5f, 0x43, 0x6f, 0x64, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x01, 0x12, - 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, 0x6f, 0x64, 0x65, - 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, 0x73, 0x65, 0x64, 0x10, 0x02, 0x12, 0x17, 0x0a, - 0x13, 0x6b, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x22, 0xc7, 0x01, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x44, - 0x65, 0x76, 0x4e, 0x65, 0x77, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x6f, 0x6f, 0x74, 0x5f, 0x6c, 0x69, 0x73, - 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, - 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x74, - 0x74, 0x72, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x72, 0x44, 0x65, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, - 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x09, 0x61, 0x74, 0x74, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x22, 0x39, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x4e, 0x65, 0x77, 0x49, 0x74, - 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x35, 0x0a, 0x1a, 0x43, - 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x6c, 0x6c, 0x49, - 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, - 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, - 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x55, 0x6e, 0x6c, - 0x6f, 0x63, 0x6b, 0x41, 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x22, 0x41, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, + 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, + 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x41, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x4b, - 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x47, 0x69, 0x66, 0x74, 0x49, - 0x74, 0x65, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x22, 0xfd, 0x01, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x47, + 0x69, 0x66, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x2a, 0x0a, 0x11, 0x67, 0x69, 0x66, 0x74, 0x65, + 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x69, 0x66, 0x74, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x11, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x0c, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x69, + 0x74, 0x65, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x53, 0x4f, 0x45, 0x63, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0b, 0x77, 0x72, + 0x61, 0x70, 0x70, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x69, 0x66, + 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x67, 0x69, 0x66, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x33, 0x0a, 0x16, + 0x69, 0x73, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x63, 0x61, 0x73, 0x68, 0x5f, 0x74, + 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x69, 0x73, + 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x61, 0x73, 0x68, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, + 0x64, 0x22, 0x8b, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x57, 0x72, 0x61, 0x70, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x69, 0x76, + 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, + 0x2b, 0x0a, 0x12, 0x67, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x69, 0x76, + 0x65, 0x54, 0x6f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x67, 0x69, 0x66, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x67, 0x69, 0x66, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, + 0x63, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x55, 0x6e, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x47, + 0x69, 0x66, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x8b, 0x01, 0x0a, 0x20, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x72, - 0x61, 0x70, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, - 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x12, 0x67, 0x69, 0x76, - 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x67, 0x69, 0x76, 0x65, 0x54, 0x6f, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x69, 0x66, 0x74, 0x5f, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x67, 0x69, - 0x66, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x80, 0x03, 0x0a, 0x28, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x72, 0x61, 0x70, - 0x41, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x67, 0x69, 0x66, 0x74, - 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x68, - 0x61, 0x72, 0x67, 0x65, 0x55, 0x73, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x67, 0x69, 0x66, 0x74, - 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, - 0x72, 0x67, 0x65, 0x4d, 0x61, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, - 0x67, 0x5f, 0x75, 0x73, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x69, - 0x66, 0x74, 0x69, 0x6e, 0x67, 0x55, 0x73, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x69, 0x66, - 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x78, 0x12, 0x30, 0x0a, 0x14, 0x67, 0x69, - 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x68, 0x6f, 0x75, - 0x72, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, - 0x67, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x48, 0x6f, 0x75, 0x72, 0x73, 0x12, 0x4e, 0x0a, 0x11, - 0x74, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, - 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x10, 0x74, 0x72, 0x61, 0x64, - 0x65, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x33, 0x0a, 0x18, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, - 0x77, 0x72, 0x61, 0x70, 0x47, 0x69, 0x66, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, - 0x64, 0x22, 0x22, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x73, 0x65, 0x6e, 0x74, 0x49, 0x74, + 0x65, 0x6d, 0x49, 0x64, 0x22, 0x80, 0x03, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x72, 0x61, 0x70, 0x41, 0x6e, 0x64, 0x44, 0x65, + 0x6c, 0x69, 0x76, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x30, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x43, 0x4d, 0x73, + 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x63, + 0x68, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x11, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x55, + 0x73, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x63, + 0x68, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x10, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x4d, 0x61, + 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x75, 0x73, 0x65, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x55, 0x73, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x5f, + 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x67, 0x69, 0x66, 0x74, 0x69, + 0x6e, 0x67, 0x4d, 0x61, 0x78, 0x12, 0x30, 0x0a, 0x14, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, + 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x68, 0x6f, 0x75, 0x72, 0x73, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x12, 0x67, 0x69, 0x66, 0x74, 0x69, 0x6e, 0x67, 0x57, 0x69, 0x6e, 0x64, + 0x6f, 0x77, 0x48, 0x6f, 0x75, 0x72, 0x73, 0x12, 0x4e, 0x0a, 0x11, 0x74, 0x72, 0x61, 0x64, 0x65, + 0x5f, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, + 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x10, 0x74, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x74, + 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x33, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x77, 0x72, 0x61, 0x70, 0x47, + 0x69, 0x66, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x22, 0x0a, 0x20, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x47, 0x69, 0x66, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x22, 0xb9, 0x04, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x69, 0x66, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xb9, 0x04, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x69, 0x73, 0x5f, 0x75, 0x6e, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x55, 0x6e, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, + 0x12, 0x24, 0x0a, 0x0e, 0x68, 0x61, 0x73, 0x5f, 0x74, 0x77, 0x6f, 0x5f, 0x66, 0x61, 0x63, 0x74, + 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x68, 0x61, 0x73, 0x54, 0x77, 0x6f, + 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x4e, 0x0a, 0x11, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, + 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x1a, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x73, 0x68, 0x69, 0x70, 0x5f, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x66, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x73, 0x68, 0x69, 0x70, 0x41, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x25, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x68, + 0x69, 0x70, 0x5f, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x5f, 0x74, 0x77, 0x6f, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x21, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x68, 0x69, 0x70, 0x41, + 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x77, 0x6f, + 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x6e, 0x0a, 0x12, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x09, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x47, 0x69, 0x66, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x75, 0x6e, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x55, 0x6e, 0x6c, 0x69, - 0x6d, 0x69, 0x74, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x68, 0x61, 0x73, 0x5f, 0x74, 0x77, 0x6f, - 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x68, - 0x61, 0x73, 0x54, 0x77, 0x6f, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x4e, 0x0a, 0x11, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, - 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x1a, 0x66, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x68, 0x69, 0x70, 0x5f, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, - 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x18, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x68, 0x69, 0x70, 0x41, 0x67, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x25, 0x66, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x73, 0x68, 0x69, 0x70, 0x5f, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, - 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x77, 0x6f, 0x5f, 0x66, 0x61, 0x63, 0x74, - 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x21, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x73, 0x68, 0x69, 0x70, 0x41, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x54, 0x77, 0x6f, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x6e, 0x0a, 0x12, 0x66, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x47, 0x69, 0x66, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x74, 0x0a, 0x10, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, - 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x41, - 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, - 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x22, 0x35, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, - 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x9b, 0x04, 0x0a, 0x22, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x70, 0x61, 0x63, - 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x2a, 0x0a, 0x11, 0x75, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0f, 0x75, 0x6e, 0x70, 0x61, - 0x63, 0x6b, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x52, 0x0a, 0x08, 0x72, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x39, 0x0a, 0x19, 0x75, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0d, 0x52, 0x16, 0x75, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, - 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x22, 0xb9, 0x02, 0x0a, 0x0d, 0x45, - 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x18, - 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x53, - 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, - 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, - 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x4e, 0x6f, 0x74, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x10, 0x01, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, - 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x55, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, - 0x74, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, - 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0x03, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, - 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, - 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x04, 0x12, 0x29, 0x0a, - 0x25, 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x42, 0x61, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x51, 0x75, - 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x05, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x55, 0x6e, + 0x73, 0x65, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x74, 0x0a, 0x10, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x0a, 0x70, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, + 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x35, 0x0a, 0x1a, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, + 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, + 0x6d, 0x49, 0x64, 0x22, 0x9b, 0x04, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x75, 0x6e, + 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0f, 0x75, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x49, + 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x52, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, + 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x45, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x75, 0x6e, + 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x16, 0x75, + 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x65, 0x73, 0x22, 0xb9, 0x02, 0x0a, 0x0d, 0x45, 0x55, 0x6e, 0x70, 0x61, 0x63, + 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x55, 0x6e, 0x70, + 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, + 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, + 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, + 0x74, 0x65, 0x6d, 0x49, 0x73, 0x4e, 0x6f, 0x74, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x10, 0x01, + 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x55, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x54, 0x6f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, + 0x64, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x55, 0x6e, 0x70, + 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, + 0x5f, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x12, + 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x5f, 0x55, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x49, 0x74, 0x65, 0x6d, 0x10, 0x06, 0x22, 0x5b, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x64, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x78, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x05, 0x74, 0x78, 0x6e, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, - 0x49, 0x64, 0x73, 0x22, 0x55, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x71, 0x75, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, - 0x39, 0x0a, 0x06, 0x65, 0x71, 0x75, 0x69, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6a, 0x75, 0x73, - 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x52, 0x06, 0x65, 0x71, 0x75, 0x69, 0x70, 0x73, 0x22, 0x51, 0x0a, 0x20, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x71, 0x75, 0x69, - 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, - 0x0a, 0x13, 0x73, 0x6f, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x10, 0x73, 0x6f, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x56, 0x0a, - 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, - 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, - 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x79, 0x6c, 0x65, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xd7, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x64, 0x5f, 0x42, 0x61, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x10, 0x05, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x55, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x54, 0x6f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, + 0x06, 0x22, 0x68, 0x0a, 0x18, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x19, 0x0a, + 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, + 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x49, + 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xf1, 0x05, 0x0a, 0x20, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x61, + 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x4e, 0x0a, 0x08, 0x72, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe3, 0x04, 0x0a, 0x0b, 0x45, 0x50, + 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x6b, 0x5f, 0x50, + 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, + 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x27, 0x0a, 0x23, + 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, + 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x4e, 0x6f, 0x74, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x53, 0x4f, 0x43, + 0x61, 0x63, 0x68, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x12, 0x25, 0x0a, 0x21, 0x6b, + 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, + 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x10, 0x04, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x42, 0x61, 0x64, 0x49, 0x74, 0x65, + 0x6d, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x05, 0x12, 0x2a, 0x0a, 0x26, 0x6b, + 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, + 0x65, 0x64, 0x5f, 0x55, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6f, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x06, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x50, 0x61, 0x63, + 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x42, 0x65, 0x50, 0x61, 0x63, + 0x6b, 0x65, 0x64, 0x10, 0x07, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, + 0x6d, 0x49, 0x73, 0x55, 0x6e, 0x74, 0x72, 0x61, 0x64, 0x65, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x08, + 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x45, 0x71, + 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x10, 0x09, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x50, 0x61, + 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, + 0x49, 0x74, 0x65, 0x6d, 0x48, 0x61, 0x73, 0x47, 0x65, 0x6d, 0x73, 0x10, 0x0a, 0x12, 0x28, 0x0a, + 0x24, 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x51, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x10, 0x0b, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x50, 0x61, 0x63, + 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, + 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x10, 0x0c, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, + 0x73, 0x4e, 0x6f, 0x6e, 0x45, 0x63, 0x6f, 0x6e, 0x6f, 0x6d, 0x79, 0x10, 0x0d, 0x12, 0x20, 0x0a, + 0x1c, 0x6b, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x46, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x0e, 0x22, + 0x5b, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x78, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x78, 0x6e, 0x49, + 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x55, 0x0a, 0x18, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x71, + 0x75, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x39, 0x0a, 0x06, 0x65, 0x71, 0x75, 0x69, + 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, + 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x06, 0x65, 0x71, 0x75, + 0x69, 0x70, 0x73, 0x22, 0x51, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x71, 0x75, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x13, 0x73, 0x6f, 0x5f, 0x63, 0x61, + 0x63, 0x68, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x10, 0x73, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x56, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, - 0x74, 0x79, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, - 0x6c, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x61, 0x0a, 0x09, - 0x45, 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x53, - 0x65, 0x74, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, - 0x64, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, 0x6c, - 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, - 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, - 0x53, 0x74, 0x79, 0x6c, 0x65, 0x49, 0x73, 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x02, 0x22, - 0x96, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, - 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x6e, 0x6c, - 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x54, - 0x6f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, - 0x79, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x73, - 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x04, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, - 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0xb9, 0x05, 0x0a, 0x25, 0x43, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, - 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x54, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, + 0x74, 0x79, 0x6c, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1f, 0x0a, + 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xd7, + 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x45, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, - 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x49, 0x6e, 0x64, - 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x72, - 0x65, 0x71, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x50, - 0x72, 0x65, 0x72, 0x65, 0x71, 0x22, 0xdc, 0x03, 0x0a, 0x0c, 0x45, 0x55, 0x6e, 0x6c, 0x6f, 0x63, - 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, - 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, - 0x64, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, - 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x50, 0x72, 0x65, 0x52, - 0x65, 0x71, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, - 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, - 0x74, 0x41, 0x66, 0x66, 0x6f, 0x72, 0x64, 0x10, 0x02, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x55, - 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x03, 0x12, 0x26, - 0x0a, 0x22, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, - 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, - 0x61, 0x6e, 0x74, 0x41, 0x66, 0x66, 0x6f, 0x72, 0x64, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x10, - 0x05, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, - 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x41, 0x66, - 0x66, 0x6f, 0x72, 0x64, 0x47, 0x65, 0x6d, 0x10, 0x06, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x55, - 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x5f, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x10, 0x07, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, - 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x41, 0x6c, - 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x08, 0x12, - 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, - 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0x09, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, - 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, - 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x0a, 0x12, 0x26, 0x0a, 0x22, + 0x65, 0x2e, 0x45, 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x61, 0x0a, 0x09, 0x45, 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, + 0x6b, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, + 0x64, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x74, 0x79, 0x6c, + 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x49, 0x73, + 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x02, 0x22, 0x96, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, + 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, + 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x5f, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x04, 0x52, 0x11, + 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, + 0x73, 0x22, 0xb9, 0x05, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, + 0x79, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x08, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x55, 0x6e, 0x6c, 0x6f, + 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, + 0x79, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x73, + 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x72, 0x65, 0x71, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x72, 0x65, 0x71, 0x22, 0xdc, + 0x03, 0x0a, 0x0c, 0x45, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, + 0x1b, 0x0a, 0x17, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, - 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x54, 0x6f, 0x6f, 0x6c, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x10, 0x0b, 0x22, 0xb9, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, - 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x65, - 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2b, 0x0a, 0x11, - 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, - 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x64, 0x64, - 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0d, 0x61, 0x64, 0x64, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, - 0x22, 0x5f, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x72, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, - 0x0d, 0x63, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x63, 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, - 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x49, - 0x64, 0x22, 0xe2, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x72, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x47, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x51, 0x0a, 0x0d, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, - 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0c, 0x67, 0x72, 0x61, 0x6e, - 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0x3c, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, - 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, - 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x3c, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, - 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, - 0x65, 0x6d, 0x49, 0x64, 0x22, 0xa8, 0x03, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, - 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x60, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, - 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xff, 0x01, - 0x0a, 0x14, 0x45, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, - 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x52, 0x65, 0x6d, 0x6f, + 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x50, 0x72, 0x65, 0x52, 0x65, 0x71, 0x10, 0x01, 0x12, 0x23, 0x0a, + 0x1f, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x41, 0x66, 0x66, 0x6f, 0x72, 0x64, + 0x10, 0x02, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, + 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x43, + 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x03, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, + 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, + 0x43, 0x61, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0x04, 0x12, + 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, + 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x41, 0x66, 0x66, 0x6f, + 0x72, 0x64, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x10, 0x05, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, + 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, + 0x65, 0x64, 0x5f, 0x43, 0x61, 0x6e, 0x74, 0x41, 0x66, 0x66, 0x6f, 0x72, 0x64, 0x47, 0x65, 0x6d, + 0x10, 0x06, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, + 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, + 0x70, 0x65, 0x6e, 0x64, 0x69, 0x75, 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x10, 0x07, 0x12, 0x28, + 0x0a, 0x24, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, + 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x55, 0x6e, + 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x08, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x55, 0x6e, + 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, + 0x5f, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x09, 0x12, 0x26, 0x0a, + 0x22, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x10, 0x0a, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, + 0x6b, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x54, 0x6f, + 0x6f, 0x6c, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x0b, 0x22, 0xb9, 0x01, + 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, + 0x49, 0x64, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x65, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x74, 0x54, 0x6f, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, + 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x64, 0x64, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, + 0x72, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x64, 0x64, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x22, 0x5f, 0x0a, 0x19, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, + 0x6b, 0x43, 0x72, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x72, 0x61, 0x74, 0x65, 0x5f, + 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x63, + 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x6b, 0x65, + 0x79, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x09, 0x6b, 0x65, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xe2, 0x01, 0x0a, 0x21, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, + 0x6f, 0x63, 0x6b, 0x43, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x2c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x51, + 0x0a, 0x0d, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, + 0x6b, 0x43, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, + 0x74, 0x65, 0x6d, 0x52, 0x0c, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, + 0x73, 0x1a, 0x3c, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, + 0x3c, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xa8, 0x03, + 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, + 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x08, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x44, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, + 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, + 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, + 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xff, 0x01, 0x0a, 0x14, 0x45, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, + 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, + 0x65, 0x64, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x46, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, - 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, - 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, - 0x62, 0x75, 0x74, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x12, 0x2e, 0x0a, - 0x2a, 0x6b, 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, - 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, - 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x02, 0x12, 0x39, 0x0a, - 0x35, 0x6b, 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, - 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x41, 0x74, - 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x42, 0x65, 0x52, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x10, 0x03, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x52, 0x65, - 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, - 0x74, 0x65, 0x44, 0x6f, 0x65, 0x73, 0x6e, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x10, 0x04, 0x22, - 0x76, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x75, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, - 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x6f, 0x6f, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x74, 0x6f, 0x6f, 0x6c, 0x49, 0x74, 0x65, - 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xb3, 0x02, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, + 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x10, 0x02, 0x12, 0x39, 0x0a, 0x35, 0x6b, 0x5f, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, + 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x42, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x10, + 0x03, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, + 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, + 0x64, 0x5f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x44, 0x6f, 0x65, 0x73, 0x6e, + 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x10, 0x04, 0x22, 0x76, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, - 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x08, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x45, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, - 0xab, 0x01, 0x0a, 0x09, 0x45, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x18, 0x0a, - 0x14, 0x6b, 0x5f, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x53, 0x75, 0x63, 0x63, - 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x4e, 0x61, 0x6d, - 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x12, 0x23, - 0x0a, 0x1f, 0x6b, 0x5f, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, - 0x6c, 0x65, 0x64, 0x5f, 0x54, 0x6f, 0x6f, 0x6c, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x10, 0x02, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, - 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, - 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x03, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x4e, 0x61, - 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x4e, 0x61, - 0x6d, 0x65, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x04, 0x22, 0x53, 0x0a, - 0x15, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, - 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x92, 0x03, 0x0a, 0x25, 0x43, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x52, 0x65, 0x63, - 0x69, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, - 0x74, 0x65, 0x6d, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x69, 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x74, 0x74, - 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x66, - 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x72, 0x61, 0x72, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x52, 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, - 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x6f, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x6f, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x66, - 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, - 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x73, 0x73, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, - 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x22, 0x90, 0x02, 0x0a, 0x10, 0x43, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x17, 0x0a, 0x07, - 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, - 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x74, 0x74, 0x72, 0x5f, 0x64, 0x65, - 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, - 0x74, 0x74, 0x72, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x72, - 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, - 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, - 0x64, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x22, 0x0a, 0x0d, 0x67, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x65, - 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x6f, 0x74, - 0x5f, 0x74, 0x72, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x6e, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x2c, 0x0a, 0x12, - 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x6c, - 0x6f, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, - 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x22, 0x48, 0x0a, 0x16, 0x43, 0x50, - 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, - 0x63, 0x6b, 0x65, 0x74, 0x22, 0x61, 0x0a, 0x17, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, - 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x12, - 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, - 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, - 0x16, 0x0a, 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x22, 0x84, 0x01, 0x0a, 0x16, 0x43, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x43, 0x6f, 0x6c, - 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, - 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x03, 0x72, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6c, - 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x6c, 0x75, 0x65, 0x22, 0x92, - 0x01, 0x0a, 0x18, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, - 0x6b, 0x65, 0x74, 0x5f, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x73, - 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, - 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, - 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, - 0x0a, 0x0d, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x22, 0xd6, 0x01, 0x0a, 0x35, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, - 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, - 0x5f, 0x44, 0x45, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x5f, 0x46, 0x52, 0x4f, - 0x4d, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x12, 0x2e, 0x0a, + 0x65, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x74, + 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x73, 0x75, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x6f, + 0x6f, 0x6c, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0a, 0x74, 0x6f, 0x6f, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x22, 0xb3, 0x02, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x49, + 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x4e, 0x61, 0x6d, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xab, 0x01, 0x0a, 0x09, 0x45, 0x4e, 0x61, + 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x4e, 0x61, 0x6d, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0x00, + 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x4e, 0x61, 0x6d, + 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x54, 0x6f, 0x6f, + 0x6c, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x02, 0x12, 0x23, 0x0a, 0x1f, + 0x6b, 0x5f, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, 0x46, 0x61, 0x69, 0x6c, 0x65, + 0x64, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x73, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, + 0x03, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x5f, + 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x73, 0x49, 0x6e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x10, 0x04, 0x22, 0x53, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x6e, 0x65, 0x77, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x92, 0x03, 0x0a, 0x25, + 0x43, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x44, + 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, + 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, + 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x66, 0x6c, 0x61, 0x67, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x46, 0x6c, 0x61, + 0x67, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, + 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, + 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, + 0x0a, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, + 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x46, 0x75, + 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x72, 0x61, 0x72, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x69, 0x74, + 0x65, 0x6d, 0x52, 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x6f, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x6f, 0x74, + 0x6c, 0x69, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, + 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x0f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, + 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, + 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, + 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, + 0x22, 0x90, 0x02, 0x0a, 0x10, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, + 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x24, + 0x0a, 0x0e, 0x61, 0x74, 0x74, 0x72, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x72, 0x44, 0x65, 0x66, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x22, + 0x0a, 0x0d, 0x67, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, + 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x6f, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x61, 0x62, + 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6e, 0x6f, 0x74, 0x54, 0x72, 0x61, + 0x64, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x53, + 0x6c, 0x6f, 0x74, 0x22, 0x48, 0x0a, 0x16, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, + 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, - 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x21, 0x0a, - 0x0c, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, - 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x22, 0xcc, 0x01, 0x0a, - 0x1a, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, - 0x74, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x73, + 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x61, 0x0a, + 0x17, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, + 0x74, 0x5f, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, + 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, + 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x66, 0x66, 0x65, + 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x22, 0x84, 0x01, 0x0a, 0x16, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, + 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, - 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x67, - 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x56, 0x69, 0x65, 0x77, 0x65, 0x64, 0x12, 0x25, - 0x0a, 0x0e, 0x63, 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, - 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x77, 0x0a, 0x1e, 0x43, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, - 0x41, 0x73, 0x73, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x2e, 0x0a, + 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x72, + 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x65, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x67, 0x72, + 0x65, 0x65, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x04, 0x62, 0x6c, 0x75, 0x65, 0x22, 0x92, 0x01, 0x0a, 0x18, 0x43, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x53, 0x74, 0x72, + 0x61, 0x6e, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, + 0x63, 0x6b, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xd6, 0x01, 0x0a, + 0x35, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, + 0x74, 0x5f, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x44, 0x45, 0x53, 0x45, 0x52, 0x49, + 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x5f, 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, + 0x47, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, + 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, + 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x72, + 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x25, + 0x0a, 0x0e, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x45, + 0x66, 0x66, 0x65, 0x63, 0x74, 0x22, 0xcc, 0x01, 0x0a, 0x1a, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x53, 0x70, 0x65, 0x63, 0x74, + 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, + 0x63, 0x6b, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x76, 0x69, + 0x65, 0x77, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x61, 0x6d, 0x65, + 0x73, 0x56, 0x69, 0x65, 0x77, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x72, 0x70, 0x6f, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x63, 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x65, + 0x61, 0x6d, 0x49, 0x64, 0x22, 0x77, 0x0a, 0x1e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, + 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x41, 0x73, 0x73, 0x65, 0x74, 0x4d, 0x6f, + 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, + 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, + 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x61, 0x73, 0x73, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x22, 0xe0, 0x01, + 0x0a, 0x3b, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, + 0x65, 0x74, 0x5f, 0x41, 0x73, 0x73, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x5f, 0x44, 0x45, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, 0x49, 0x5a, 0x45, 0x5f, 0x46, 0x52, 0x4f, + 0x4d, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x73, 0x73, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x69, - 0x66, 0x69, 0x65, 0x72, 0x22, 0xe0, 0x01, 0x0a, 0x3b, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, - 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x41, 0x73, 0x73, 0x65, 0x74, 0x4d, - 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x44, 0x45, 0x53, 0x45, 0x52, 0x49, 0x41, 0x4c, - 0x49, 0x5a, 0x45, 0x5f, 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x5f, - 0x4f, 0x4e, 0x4c, 0x59, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, - 0x63, 0x6b, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, 0x6d, 0x6f, - 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x73, - 0x73, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x61, - 0x6e, 0x69, 0x6d, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x6e, 0x69, 0x6d, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, - 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x66, 0x66, 0x65, - 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x22, 0xb6, 0x01, 0x0a, 0x1a, 0x43, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x41, 0x75, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, - 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, - 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, - 0x61, 0x70, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x70, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, - 0x68, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, - 0x67, 0x72, 0x61, 0x70, 0x68, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x75, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x70, 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0e, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, - 0x22, 0x50, 0x0a, 0x1e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, - 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x56, 0x69, 0x73, 0x75, 0x61, - 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, - 0x65, 0x74, 0x22, 0x29, 0x0a, 0x11, 0x43, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x5f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x90, 0x01, - 0x0a, 0x25, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x49, - 0x74, 0x65, 0x6d, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x17, 0x0a, - 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x61, 0x74, 0x65, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x6e, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, - 0x22, 0x99, 0x02, 0x0a, 0x26, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, + 0x66, 0x69, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x69, 0x6d, 0x5f, 0x6d, 0x6f, 0x64, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x61, 0x6e, 0x69, + 0x6d, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0d, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x22, 0xb6, 0x01, 0x0a, 0x1a, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, + 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x12, + 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, + 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x12, 0x21, 0x0a, + 0x0c, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x49, 0x64, + 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x75, 0x74, 0x6f, 0x67, + 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x50, 0x0a, 0x1e, 0x43, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x53, 0x74, + 0x61, 0x74, 0x69, 0x63, 0x56, 0x69, 0x73, 0x75, 0x61, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x06, 0x73, + 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x6f, 0x63, + 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x29, 0x0a, 0x11, 0x43, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x90, 0x01, 0x0a, 0x25, 0x43, 0x57, 0x6f, 0x72, 0x6b, + 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x61, 0x69, 0x6c, + 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x19, + 0x0a, 0x08, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x07, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x22, 0x99, 0x02, 0x0a, 0x26, 0x43, 0x57, + 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x44, + 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, + 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, - 0x75, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x0f, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, - 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x61, 0x69, + 0x75, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x72, 0x79, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x52, + 0x0e, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x1a, + 0x83, 0x01, 0x0a, 0x13, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, + 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1f, + 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x75, 0x73, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x55, 0x73, 0x64, 0x12, + 0x14, 0x0a, 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x75, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x28, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, + 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x44, 0x61, + 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x69, 0x64, + 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, + 0x19, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x22, 0x9f, 0x02, 0x0a, 0x29, 0x43, + 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, + 0x61, 0x67, 0x65, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x43, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, + 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x52, 0x0e, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x52, @@ -9755,742 +10168,723 @@ var file_econ_gcmessages_proto_rawDesc = []byte{ 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x75, 0x73, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x55, 0x73, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x82, 0x01, 0x0a, - 0x28, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x50, 0x61, - 0x63, 0x6b, 0x61, 0x67, 0x65, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, - 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x61, 0x63, - 0x6b, 0x61, 0x67, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x61, - 0x63, 0x6b, 0x61, 0x67, 0x65, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x65, 0x5f, - 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x61, 0x74, - 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x65, - 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, - 0x64, 0x22, 0x9f, 0x02, 0x0a, 0x29, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, - 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, - 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x6c, 0x0a, 0x0f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x6e, - 0x75, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, - 0x6b, 0x61, 0x67, 0x65, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, - 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, - 0x79, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x52, 0x0e, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x1a, 0x83, 0x01, - 0x0a, 0x13, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, - 0x76, 0x65, 0x6e, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, - 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x75, 0x73, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x55, 0x73, 0x64, 0x12, 0x14, 0x0a, - 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x6e, - 0x69, 0x74, 0x73, 0x22, 0x5d, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, - 0x6b, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x5f, 0x73, 0x6c, 0x6f, - 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, 0x64, 0x64, 0x53, 0x6c, 0x6f, - 0x74, 0x73, 0x22, 0x40, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x22, 0x6b, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x22, 0x5d, 0x0a, 0x1f, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, + 0x6e, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, 0x6b, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, - 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, - 0x65, 0x22, 0xc9, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x61, 0x64, 0x64, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x61, 0x64, 0x64, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x22, 0x40, 0x0a, 0x1f, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x6f, + 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x6b, 0x0a, + 0x27, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, + 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xc9, 0x01, 0x0a, 0x20, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x12, + 0x41, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, - 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x12, 0x41, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, + 0x6d, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x69, 0x70, 0x65, 0x5f, 0x64, 0x65, 0x66, + 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, + 0x63, 0x69, 0x70, 0x65, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x1a, 0x38, 0x0a, 0x04, + 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x17, 0x0a, + 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x22, 0xfa, 0x06, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x2e, 0x49, 0x74, - 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x63, - 0x69, 0x70, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x69, 0x70, 0x65, 0x44, 0x65, 0x66, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x1a, 0x38, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x0a, 0x07, 0x69, - 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, - 0x65, 0x6d, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x22, 0xfa, 0x06, - 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, - 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x08, 0x72, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, - 0x63, 0x69, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x5c, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x74, 0x65, - 0x6d, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x5c, - 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, - 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x6e, 0x0a, 0x12, - 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, - 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x11, 0x61, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x1a, 0x5b, 0x0a, 0x0a, - 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, - 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, - 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, - 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x1a, 0x75, 0x0a, 0x0a, 0x49, 0x6e, 0x70, - 0x75, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, - 0x12, 0x4e, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x0c, 0x6f, 0x75, 0x74, + 0x70, 0x75, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, - 0x1a, 0x41, 0x0a, 0x10, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x75, - 0x74, 0x70, 0x75, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x22, 0xb4, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x15, 0x0a, 0x11, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x53, - 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x74, 0x65, - 0x6d, 0x73, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, - 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4d, - 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x10, 0x04, 0x12, 0x1a, - 0x0a, 0x16, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4d, 0x69, 0x73, 0x73, - 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x05, 0x22, 0xcc, 0x05, 0x0a, 0x1b, 0x43, - 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x78, - 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x78, 0x6e, 0x49, - 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x78, 0x6e, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x54, 0x78, - 0x6e, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x5f, 0x74, - 0x78, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x61, 0x72, - 0x74, 0x6e, 0x65, 0x72, 0x54, 0x78, 0x6e, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, - 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, - 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, - 0x61, 0x6d, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x61, 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x77, 0x61, 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, - 0x6b, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x14, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x63, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x63, 0x79, 0x12, 0x3c, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, - 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, - 0x73, 0x1a, 0xe5, 0x02, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, - 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x63, - 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x44, 0x65, 0x73, 0x63, - 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, - 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, - 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, - 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, - 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x70, 0x61, - 0x72, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, - 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, - 0x69, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x66, - 0x61, 0x63, 0x69, 0x6e, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x55, - 0x73, 0x65, 0x72, 0x46, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x22, 0x9c, 0x01, 0x0a, 0x26, 0x43, 0x4d, + 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, + 0x75, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x5c, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, + 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x6e, + 0x70, 0x75, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x6e, 0x0a, 0x12, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x70, + 0x75, 0x74, 0x52, 0x11, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x75, + 0x74, 0x70, 0x75, 0x74, 0x73, 0x1a, 0x5b, 0x0a, 0x0a, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, + 0x74, 0x65, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, + 0x49, 0x64, 0x1a, 0x75, 0x0a, 0x0a, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x4e, 0x0a, 0x05, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x1a, 0x41, 0x0a, 0x10, 0x41, 0x64, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x17, 0x0a, + 0x07, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x73, 0x6c, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xb4, 0x01, 0x0a, + 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, + 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4f, + 0x66, 0x66, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, + 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0x02, 0x12, 0x1b, 0x0a, + 0x17, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4c, + 0x65, 0x61, 0x67, 0x75, 0x65, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x10, 0x05, 0x22, 0xcc, 0x05, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x78, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x78, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x78, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0a, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x54, 0x78, 0x6e, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, + 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x5f, 0x74, 0x78, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x54, 0x78, 0x6e, + 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1d, 0x0a, + 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1c, 0x0a, 0x09, + 0x77, 0x61, 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x09, 0x77, 0x61, 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x70, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x3c, 0x0a, 0x05, + 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x2e, 0x49, + 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0xe5, 0x02, 0x0a, 0x04, 0x49, + 0x74, 0x65, 0x6d, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x5f, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x74, 0x65, + 0x6d, 0x44, 0x65, 0x66, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, + 0x6d, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, + 0x74, 0x65, 0x6d, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, + 0x5f, 0x64, 0x65, 0x73, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x44, 0x65, 0x73, 0x63, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x74, 0x6f, + 0x72, 0x65, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, + 0x63, 0x6b, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, + 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0e, + 0x69, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x55, 0x73, 0x65, 0x72, 0x46, 0x61, 0x63, 0x69, + 0x6e, 0x67, 0x22, 0x9c, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, + 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x44, 0x4b, + 0x65, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, + 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, + 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, + 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x74, 0x6e, + 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, + 0x72, 0x22, 0x4a, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x44, 0x4b, 0x65, 0x79, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x5b, 0x0a, + 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x37, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x44, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, - 0x63, 0x65, 0x73, 0x73, 0x43, 0x44, 0x4b, 0x65, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x50, - 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1f, 0x0a, - 0x0b, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x22, 0x4a, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x43, 0x44, 0x4b, 0x65, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x22, 0x5b, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, - 0x74, 0x74, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x22, 0x44, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, - 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x6c, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, - 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1f, 0x0a, - 0x0b, 0x63, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x23, - 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x75, 0x74, - 0x70, 0x75, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, - 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, - 0x47, 0x63, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x69, - 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x75, - 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x89, 0x02, - 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x73, - 0x6f, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x69, - 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x5f, 0x67, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x65, 0x6e, - 0x64, 0x69, 0x6e, 0x67, 0x47, 0x63, 0x12, 0x3c, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x4f, 0x75, 0x74, - 0x70, 0x75, 0x74, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x04, - 0x6d, 0x73, 0x67, 0x73, 0x12, 0x32, 0x0a, 0x16, 0x69, 0x73, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, - 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6a, 0x6f, 0x62, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x73, 0x4c, 0x61, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4a, 0x6f, 0x62, 0x1a, 0x3f, 0x0a, 0x0a, 0x4f, 0x75, 0x74, 0x70, - 0x75, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x70, - 0x65, 0x77, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x73, 0x70, 0x65, 0x77, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0xbe, 0x01, 0x0a, 0x0c, 0x43, 0x4d, - 0x73, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x67, 0x65, 0x73, 0x12, 0x5a, 0x0a, 0x16, 0x6d, 0x61, - 0x78, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x67, 0x65, 0x73, 0x2e, 0x4d, - 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x44, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x73, 0x1a, 0x52, 0x0a, 0x12, 0x4d, 0x61, 0x78, 0x49, 0x74, 0x65, - 0x6d, 0x49, 0x44, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1e, 0x0a, 0x0b, 0x6d, 0x61, - 0x78, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x09, 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xfb, 0x01, 0x0a, 0x19, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, - 0x6c, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x73, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x65, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x63, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, - 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x6f, 0x64, 0x79, - 0x12, 0x22, 0x0a, 0x0d, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x53, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x5f, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x6a, 0x6f, 0x62, - 0x49, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0xa7, 0x02, 0x0a, 0x25, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x69, 0x6e, - 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x69, - 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, - 0x32, 0x0a, 0x15, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x13, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, - 0x21, 0x0a, 0x0c, 0x77, 0x68, 0x61, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x77, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x64, 0x22, 0xad, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x75, 0x62, 0x12, 0x15, 0x0a, 0x06, 0x6d, 0x73, 0x67, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6d, 0x73, 0x67, 0x49, 0x64, 0x12, - 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x6d, 0x73, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, - 0x7a, 0x65, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, - 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x22, - 0x0a, 0x0d, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0b, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x4c, 0x69, - 0x73, 0x74, 0x22, 0xe6, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x50, 0x72, 0x69, - 0x63, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x63, - 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x08, 0x70, 0x72, 0x69, - 0x63, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x50, 0x0a, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, - 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x6f, 0x69, 0x6e, - 0x74, 0x73, 0x2e, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x0a, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x1a, 0x52, 0x0a, 0x08, 0x43, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x63, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x63, 0x79, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, - 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x50, 0x72, 0x69, 0x63, 0x65, 0x22, 0x51, 0x0a, 0x12, 0x43, - 0x4d, 0x73, 0x67, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x73, - 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x62, - 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0b, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x22, 0xa5, - 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x6c, 0x75, - 0x73, 0x68, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x40, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x4b, 0x65, - 0x79, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x1a, 0x3d, 0x0a, 0x03, 0x4b, 0x65, 0x79, 0x12, 0x18, - 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x78, 0x74, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x69, 0x64, 0x22, 0x67, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, - 0x77, 0x61, 0x79, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x22, - 0x31, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, - 0x66, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, - 0x49, 0x64, 0x22, 0x21, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x75, 0x78, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xcf, 0x01, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x75, 0x78, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x07, 0x52, 0x07, 0x73, 0x74, 0x61, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, - 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, - 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x73, - 0x74, 0x61, 0x74, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x19, - 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, - 0x52, 0x07, 0x73, 0x74, 0x61, 0x74, 0x4d, 0x61, 0x78, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x61, 0x6d, - 0x70, 0x6c, 0x65, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x44, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x22, 0x1d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x53, 0x75, 0x63, - 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x22, 0x49, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, - 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, 0x75, - 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, - 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, - 0x66, 0x22, 0xd9, 0x02, 0x0a, 0x34, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x49, 0x74, - 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x06, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, - 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x71, 0x75, 0x61, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x75, - 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x22, 0x93, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, - 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, - 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, - 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, - 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, - 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, - 0x66, 0x10, 0x05, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x5f, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, - 0x66, 0x4e, 0x6f, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x10, 0x06, 0x22, 0x81, 0x01, - 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x73, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x78, - 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x06, 0x6e, 0x65, 0x77, - 0x4d, 0x73, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, - 0x74, 0x2a, 0x8f, 0x24, 0x0a, 0x0a, 0x45, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x4d, 0x73, 0x67, - 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, 0x73, 0x65, - 0x10, 0xe8, 0x07, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, - 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xe9, - 0x07, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x10, 0xec, 0x07, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xed, 0x07, 0x12, 0x1d, 0x0a, 0x18, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xee, 0x07, 0x12, 0x16, 0x0a, 0x11, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, - 0x10, 0xf1, 0x07, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, - 0x61, 0x69, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xf2, 0x07, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, - 0x61, 0x6d, 0x65, 0x42, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xfb, 0x07, 0x12, 0x21, - 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x61, - 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, - 0x07, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x73, 0x65, - 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x81, 0x08, 0x12, 0x1c, - 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, - 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x08, 0x12, 0x18, 0x0a, 0x13, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x69, 0x66, 0x74, 0x65, 0x64, 0x49, 0x74, - 0x65, 0x6d, 0x73, 0x10, 0x83, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x55, 0x6e, 0x77, 0x72, 0x61, 0x70, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x10, 0x8d, 0x08, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x55, 0x6e, 0x77, 0x72, 0x61, 0x70, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x08, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x53, 0x6f, 0x72, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0x91, 0x08, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, 0x63, 0x6b, 0x70, - 0x61, 0x63, 0x6b, 0x53, 0x6f, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, - 0xa2, 0x08, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, - 0x6a, 0x75, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xa3, 0x08, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, - 0x64, 0x67, 0x65, 0x64, 0x10, 0xa6, 0x08, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x49, - 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xac, 0x08, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, - 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x10, 0xb1, 0x08, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x50, 0x65, - 0x6e, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x10, 0xb4, 0x08, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, - 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xb5, 0x08, 0x12, 0x1c, - 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x45, - 0x67, 0x67, 0x45, 0x73, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x10, 0xb6, 0x08, 0x12, 0x23, 0x0a, 0x1e, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x45, 0x67, 0x67, 0x45, - 0x73, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, - 0x08, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x45, 0x78, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x10, 0xbe, 0x08, 0x12, 0x16, 0x0a, 0x11, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, - 0x10, 0xbf, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, - 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x10, 0xc0, - 0x08, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, - 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc2, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x22, 0xb3, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, + 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, + 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, + 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x63, 0x12, 0x29, 0x0a, 0x10, 0x6f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x69, + 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x89, 0x02, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, + 0x75, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, + 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x63, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x63, 0x12, + 0x3c, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e, 0x4f, 0x75, 0x74, + 0x70, 0x75, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x12, 0x32, 0x0a, + 0x16, 0x69, 0x73, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x5f, 0x6a, 0x6f, 0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, + 0x73, 0x4c, 0x61, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4a, 0x6f, + 0x62, 0x1a, 0x3f, 0x0a, 0x0a, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, + 0x65, 0x78, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x70, 0x65, 0x77, 0x5f, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x70, 0x65, 0x77, 0x4c, 0x65, 0x76, + 0x65, 0x6c, 0x22, 0xbe, 0x01, 0x0a, 0x0c, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x41, + 0x67, 0x65, 0x73, 0x12, 0x5a, 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x69, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, + 0x74, 0x65, 0x6d, 0x41, 0x67, 0x65, 0x73, 0x2e, 0x4d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x49, + 0x44, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x49, + 0x74, 0x65, 0x6d, 0x49, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x73, 0x1a, + 0x52, 0x0a, 0x12, 0x4d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x44, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x12, 0x1e, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, + 0x6d, 0x49, 0x64, 0x22, 0xfb, 0x01, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x73, + 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x67, 0x63, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x47, 0x63, + 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x06, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x22, 0x0a, 0x0d, 0x6a, 0x6f, 0x62, + 0x5f, 0x69, 0x64, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x0b, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x22, 0x0a, + 0x0d, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x22, 0xa7, 0x02, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, + 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x17, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x69, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, + 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x36, 0x0a, 0x17, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, + 0x79, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x15, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, + 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x68, 0x61, 0x74, + 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x77, 0x68, 0x61, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x22, 0xad, 0x01, 0x0a, 0x21, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, + 0x61, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x75, + 0x62, 0x12, 0x15, 0x0a, 0x06, 0x6d, 0x73, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x05, 0x6d, 0x73, 0x67, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x69, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x0d, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x4d, 0x73, 0x67, 0x12, + 0x26, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x5f, 0x6c, 0x69, + 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x69, 0x64, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0b, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x22, 0xe6, 0x01, 0x0a, 0x21, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x63, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x04, 0x52, 0x08, 0x70, 0x72, 0x69, 0x63, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x50, + 0x0a, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, + 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x63, 0x79, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, + 0x1a, 0x52, 0x0a, 0x08, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1f, 0x0a, 0x0b, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x64, 0x12, 0x25, 0x0a, + 0x0e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x50, + 0x72, 0x69, 0x63, 0x65, 0x22, 0x51, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x6e, 0x6e, + 0x65, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x77, + 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x62, 0x61, 0x6e, 0x6e, + 0x65, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x22, 0xa5, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x40, + 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x6c, + 0x75, 0x73, 0x68, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, + 0x1a, 0x3d, 0x0a, 0x03, 0x4b, 0x65, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, + 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x69, 0x64, 0x22, + 0x67, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x6e, 0x6f, + 0x74, 0x69, 0x66, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x77, 0x61, + 0x79, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x22, 0x31, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x66, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1b, + 0x0a, 0x09, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x21, 0x0a, 0x1f, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x75, + 0x78, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xcf, + 0x01, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x49, 0x6e, 0x66, 0x75, 0x78, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, + 0x61, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x07, 0x52, 0x07, 0x73, 0x74, + 0x61, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x54, + 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x73, 0x61, 0x6d, + 0x70, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, + 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x5f, + 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x73, 0x74, 0x61, 0x74, 0x4d, + 0x61, 0x78, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x64, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, + 0x22, 0x1d, 0x0a, 0x1b, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x22, + 0x49, 0x0a, 0x2c, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x50, + 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, + 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x22, 0xd9, 0x02, 0x0a, 0x34, 0x43, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, + 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, + 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x44, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, + 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, + 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x71, + 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, + 0x22, 0x93, 0x01, 0x0a, 0x09, 0x45, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, + 0x0a, 0x10, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x6f, 0x6f, 0x42, 0x75, + 0x73, 0x79, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x5f, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x6f, 0x75, 0x74, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x5f, 0x65, 0x49, 0x6e, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x10, 0x05, 0x12, 0x18, 0x0a, 0x14, + 0x6b, 0x5f, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x66, 0x4e, 0x6f, 0x74, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x65, 0x64, 0x10, 0x06, 0x22, 0x81, 0x01, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x65, 0x6c, 0x63, 0x6f, + 0x6d, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2d, 0x0a, + 0x07, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x06, 0x6e, 0x65, 0x77, 0x4d, 0x73, 0x67, 0x12, 0x1c, 0x0a, 0x09, + 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x09, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x2a, 0x82, 0x25, 0x0a, 0x0a, 0x45, + 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x4d, 0x73, 0x67, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, 0x73, 0x65, 0x10, 0xe8, 0x07, 0x12, 0x1c, 0x0a, 0x17, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xe9, 0x07, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x61, + 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x10, 0xea, 0x07, 0x12, 0x27, 0x0a, 0x22, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x50, + 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xeb, 0x07, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xec, 0x07, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, + 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xed, 0x07, 0x12, + 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xee, 0x07, 0x12, 0x16, + 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x49, + 0x74, 0x65, 0x6d, 0x10, 0xf1, 0x07, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xf2, 0x07, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xfb, + 0x07, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x61, 0x6d, + 0x65, 0x42, 0x61, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xfc, 0x07, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x81, + 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x73, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x08, 0x12, + 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x69, 0x66, 0x74, 0x65, + 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0x83, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x6e, 0x77, 0x72, 0x61, 0x70, 0x47, 0x69, 0x66, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x8d, 0x08, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x6e, 0x77, 0x72, 0x61, 0x70, 0x47, 0x69, 0x66, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x08, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x6f, 0x72, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, + 0x91, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x42, 0x61, + 0x63, 0x6b, 0x70, 0x61, 0x63, 0x6b, 0x53, 0x6f, 0x72, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, + 0x65, 0x64, 0x10, 0xa2, 0x08, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x71, 0x75, 0x69, 0x70, + 0x70, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xa3, 0x08, 0x12, 0x1d, 0x0a, 0x18, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x63, 0x6b, 0x6e, 0x6f, + 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x64, 0x10, 0xa6, 0x08, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4e, 0x61, + 0x6d, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xac, + 0x08, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x10, 0xb1, 0x08, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, + 0x79, 0x50, 0x65, 0x6e, 0x6e, 0x61, 0x6e, 0x74, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x10, + 0xb4, 0x08, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, + 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xb5, + 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x45, 0x67, 0x67, 0x45, 0x73, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x10, 0xb6, 0x08, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4e, 0x61, 0x6d, 0x65, 0x45, + 0x67, 0x67, 0x45, 0x73, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xb7, 0x08, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x10, 0xbe, 0x08, 0x12, 0x16, + 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, + 0x6b, 0x65, 0x74, 0x10, 0xbf, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, + 0x74, 0x10, 0xc0, 0x08, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x41, 0x64, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc2, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x47, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xc3, 0x08, 0x12, 0x1e, 0x0a, + 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x43, 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0xc4, 0x08, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x43, 0x72, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xc5, 0x08, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x08, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, - 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xc3, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, - 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0xc4, 0x08, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, - 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xc5, 0x08, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x45, 0x78, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x47, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xc6, 0x08, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x6d, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x08, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xcf, 0x08, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x64, - 0x64, 0x47, 0x69, 0x66, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xd0, 0x08, 0x12, 0x2f, 0x0a, 0x2a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x65, 0x72, - 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x10, 0xd5, 0x08, 0x12, 0x23, 0x0a, - 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x10, - 0xd6, 0x08, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, - 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd7, 0x08, 0x12, 0x30, - 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, - 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x08, - 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x44, 0x65, 0x76, 0x5f, - 0x4e, 0x65, 0x77, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd1, - 0x0f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x44, 0x65, 0x76, - 0x5f, 0x4e, 0x65, 0x77, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x0f, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x44, 0x65, 0x76, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, - 0x41, 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xd3, 0x0f, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x44, 0x65, 0x76, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x6c, 0x6c, - 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xd4, 0x0f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xc7, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x55, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0xcf, 0x08, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x41, 0x64, 0x64, 0x47, 0x69, 0x66, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xd0, 0x08, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x55, 0x6e, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, + 0x64, 0x47, 0x69, 0x66, 0x74, 0x10, 0xd1, 0x08, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x47, 0x69, 0x66, 0x74, 0x65, 0x72, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x10, 0xd5, 0x08, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0xd6, 0x08, 0x12, 0x2a, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, + 0x47, 0x43, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd7, 0x08, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, + 0x6d, 0x6f, 0x76, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x08, 0x12, 0x1f, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x44, 0x65, 0x76, 0x5f, 0x4e, 0x65, 0x77, 0x49, + 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd1, 0x0f, 0x12, 0x27, 0x0a, + 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x44, 0x65, 0x76, 0x5f, 0x4e, 0x65, 0x77, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x0f, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x44, 0x65, 0x76, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x6c, 0x6c, 0x49, + 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x10, 0xd3, 0x0f, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x44, + 0x65, 0x76, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, + 0x53, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd4, + 0x0f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, + 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, + 0x7a, 0x65, 0x10, 0xc8, 0x13, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x46, 0x69, - 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x10, 0xc8, 0x13, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, - 0x73, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xc9, 0x13, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x43, 0x61, - 0x6e, 0x63, 0x65, 0x6c, 0x10, 0xca, 0x13, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcb, - 0x13, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, - 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x10, 0xce, - 0x13, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, - 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcf, 0x13, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x57, - 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd3, - 0x13, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x44, 0x69, 0x72, 0x74, 0x79, 0x53, 0x44, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0xd4, - 0x13, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x51, 0x4c, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x10, 0xd6, 0x13, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x10, 0xd9, 0x13, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, - 0xda, 0x13, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, - 0x70, 0x6c, 0x79, 0x41, 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x10, 0xdb, 0x13, 0x12, - 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x57, - 0x65, 0x62, 0x41, 0x50, 0x49, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x64, 0x10, 0xdc, 0x13, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xe0, 0x13, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, - 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x73, 0x67, 0x10, 0xe1, 0x13, 0x12, 0x2e, 0x0a, 0x29, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x53, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, - 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xe7, 0x13, 0x12, 0x22, 0x0a, 0x1d, + 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc9, + 0x13, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, + 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, + 0x10, 0xca, 0x13, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x43, 0x61, 0x6e, 0x63, + 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcb, 0x13, 0x12, 0x1e, 0x0a, + 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x10, 0xce, 0x13, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x75, + 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xcf, 0x13, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x4c, + 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd3, 0x13, 0x12, 0x1e, 0x0a, + 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x44, 0x69, 0x72, + 0x74, 0x79, 0x53, 0x44, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0xd4, 0x13, 0x12, 0x22, 0x0a, + 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x51, 0x4c, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x10, 0xd6, + 0x13, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, + 0x43, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x10, 0xd9, 0x13, 0x12, 0x21, 0x0a, 0x1c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xda, 0x13, 0x12, 0x1b, + 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x41, + 0x75, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x10, 0xdb, 0x13, 0x12, 0x25, 0x0a, 0x20, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x65, 0x62, 0x41, 0x50, + 0x49, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, + 0xdc, 0x13, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x10, 0xe0, 0x13, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x65, 0x6c, 0x63, 0x6f, + 0x6d, 0x65, 0x4d, 0x73, 0x67, 0x10, 0xe1, 0x13, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xe7, 0x13, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x10, 0xe8, 0x13, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, - 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x10, 0xe8, 0x13, - 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, - 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe9, 0x13, 0x12, 0x32, 0x0a, 0x2d, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, - 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x54, - 0x6f, 0x44, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xea, 0x13, - 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xeb, 0x13, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xec, 0x13, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x10, 0xed, 0x13, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xee, 0x13, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x10, 0xef, 0x13, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf0, 0x13, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x44, - 0x72, 0x6f, 0x70, 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x10, 0xf3, 0x13, 0x12, - 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x41, 0x64, 0x64, 0x44, - 0x72, 0x6f, 0x70, 0x52, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x10, 0xf4, 0x13, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, - 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0xf5, 0x13, - 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x47, 0x72, 0x61, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, - 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0xfa, 0x13, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, - 0x65, 0x6c, 0x66, 0x4d, 0x61, 0x64, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xfb, 0x13, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x53, 0x74, 0x61, 0x74, 0x75, 0x65, 0x43, 0x72, 0x61, 0x66, 0x74, 0x10, 0x81, - 0x14, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x64, - 0x65, 0x65, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x10, 0x82, 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x43, 0x6f, 0x64, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x83, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x43, - 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, - 0x63, 0x6b, 0x10, 0x84, 0x14, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x72, 0x61, 0x70, 0x41, 0x6e, 0x64, - 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x10, 0x85, 0x14, 0x12, 0x2f, - 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, - 0x47, 0x43, 0x57, 0x72, 0x61, 0x70, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, - 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x14, 0x12, - 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x87, 0x14, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, - 0x6f, 0x72, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0x88, 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x71, - 0x75, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0x89, 0x14, 0x12, 0x27, 0x0a, 0x22, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, - 0x71, 0x75, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x8a, 0x14, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x74, - 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x10, 0x8b, 0x14, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, - 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x14, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, - 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x74, 0x65, - 0x67, 0x6f, 0x72, 0x79, 0x10, 0x8d, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, - 0x6b, 0x43, 0x72, 0x61, 0x74, 0x65, 0x10, 0x8e, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, - 0x6f, 0x63, 0x6b, 0x43, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x8f, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x10, 0x90, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, - 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x10, 0x91, 0x14, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, + 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe9, 0x13, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x54, 0x6f, 0x44, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xea, 0x13, 0x12, 0x1c, 0x0a, 0x17, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x69, 0x6e, 0x67, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xeb, 0x13, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xec, 0x13, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xed, 0x13, + 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xee, 0x13, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x10, 0xef, 0x13, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xf0, 0x13, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x44, 0x72, 0x6f, 0x70, 0x52, + 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x10, 0xf3, 0x13, 0x12, 0x1e, 0x0a, 0x19, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x41, 0x64, 0x64, 0x44, 0x72, 0x6f, 0x70, 0x52, + 0x61, 0x74, 0x65, 0x42, 0x6f, 0x6e, 0x75, 0x73, 0x10, 0xf4, 0x13, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x52, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0xf5, 0x13, 0x12, 0x28, 0x0a, 0x23, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, + 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x49, 0x74, + 0x65, 0x6d, 0x73, 0x10, 0xfa, 0x13, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x6c, 0x66, 0x4d, + 0x61, 0x64, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x54, 0x6f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x10, 0xfb, 0x13, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x65, 0x43, 0x72, 0x61, 0x66, 0x74, 0x10, 0x81, 0x14, 0x12, 0x17, 0x0a, + 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x43, + 0x6f, 0x64, 0x65, 0x10, 0x82, 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x83, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x6e, 0x73, 0x75, + 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x10, 0x84, + 0x14, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x72, 0x61, 0x70, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x69, + 0x76, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x10, 0x85, 0x14, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x57, 0x72, + 0x61, 0x70, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x14, 0x12, 0x29, 0x0a, 0x24, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, + 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x87, 0x14, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x64, 0x10, 0x88, 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x71, 0x75, 0x69, 0x70, 0x49, + 0x74, 0x65, 0x6d, 0x73, 0x10, 0x89, 0x14, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x45, 0x71, 0x75, 0x69, 0x70, + 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x14, + 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, + 0x79, 0x6c, 0x65, 0x10, 0x8b, 0x14, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x92, 0x14, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, - 0x4c, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x42, 0x61, 0x63, 0x6b, - 0x70, 0x61, 0x63, 0x6b, 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x10, 0x94, 0x14, 0x12, 0x26, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, - 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, - 0x65, 0x10, 0x95, 0x14, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x96, 0x14, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x10, 0x98, 0x14, 0x12, 0x2f, 0x0a, - 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, - 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, - 0x69, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x14, 0x12, 0x2d, - 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, - 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x44, 0x4b, 0x65, 0x79, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x9a, 0x14, 0x12, 0x35, 0x0a, - 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, - 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x44, 0x4b, 0x65, 0x79, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x9b, 0x14, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0x9c, 0x14, 0x12, 0x2f, 0x0a, - 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, - 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x14, 0x12, 0x1e, - 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x10, 0x9e, 0x14, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x67, 0x65, 0x73, 0x10, 0x9f, 0x14, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x73, 0x67, 0x10, 0xa0, 0x14, 0x12, - 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xa1, 0x14, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x73, 0x65, 0x4d, 0x75, 0x6c, 0x74, - 0x69, 0x70, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x10, 0xa2, 0x14, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, - 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xa3, 0x14, 0x12, 0x2f, 0x0a, 0x2a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x74, - 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, 0x14, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x72, 0x6f, - 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x72, 0x6f, - 0x6d, 0x53, 0x75, 0x62, 0x10, 0xa6, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x63, 0x79, 0x50, 0x72, 0x69, 0x63, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xa7, - 0x14, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x41, 0x64, 0x64, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x69, 0x6d, 0x65, 0x10, 0xa8, 0x14, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, - 0xa9, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, 0x45, 0x73, 0x63, 0x61, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x10, 0xaa, 0x14, 0x12, 0x30, 0x0a, 0x2b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, - 0x72, 0x61, 0x74, 0x65, 0x45, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x14, 0x12, 0x28, - 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0xac, 0x14, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x66, 0x50, 0x69, 0x6e, 0x67, - 0x10, 0xad, 0x14, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x75, 0x78, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x76, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xae, 0x14, 0x12, 0x2e, 0x0a, 0x29, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x49, 0x6e, - 0x66, 0x75, 0x78, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x14, 0x12, 0x22, 0x0a, 0x1d, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, - 0x61, 0x73, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0xb0, 0x14, 0x12, - 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, - 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, - 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x10, 0xb1, 0x14, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, - 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, 0x75, - 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb2, - 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x42, 0x65, 0x74, 0x61, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, - 0x10, 0xb3, 0x14, 0x2a, 0xb9, 0x0a, 0x0a, 0x1b, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, - 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x10, 0x00, 0x12, + 0x65, 0x10, 0x8c, 0x14, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, + 0x10, 0x8d, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x43, 0x72, 0x61, + 0x74, 0x65, 0x10, 0x8e, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x43, + 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x14, 0x12, + 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, + 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x10, + 0x90, 0x14, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x79, + 0x6c, 0x65, 0x10, 0x91, 0x14, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, + 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x14, + 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x51, 0x4c, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, 0x6b, + 0x53, 0x6c, 0x6f, 0x74, 0x73, 0x10, 0x94, 0x14, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x6f, 0x6b, + 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x95, 0x14, + 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x96, 0x14, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, + 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x10, 0x98, 0x14, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x14, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x44, 0x4b, 0x65, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x9a, 0x14, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x44, 0x4b, 0x65, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x14, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0x9c, 0x14, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x14, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x10, 0x9e, 0x14, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x74, + 0x65, 0x6d, 0x41, 0x67, 0x65, 0x73, 0x10, 0x9f, 0x14, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x73, 0x67, 0x10, 0xa0, 0x14, 0x12, 0x2c, 0x0a, 0x27, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xa1, 0x14, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x73, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa2, 0x14, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xa3, 0x14, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, + 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x75, 0x62, + 0x10, 0xa6, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x50, + 0x72, 0x69, 0x63, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x10, 0xa7, 0x14, 0x12, 0x24, 0x0a, + 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x41, 0x64, 0x64, + 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, + 0x10, 0xa8, 0x14, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0xa9, 0x14, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, 0x45, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x10, 0xaa, 0x14, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x61, 0x74, 0x65, + 0x45, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x14, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x74, 0x65, 0x6d, + 0x73, 0x10, 0xac, 0x14, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x53, 0x65, 0x6c, 0x66, 0x50, 0x69, 0x6e, 0x67, 0x10, 0xad, 0x14, 0x12, + 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x49, 0x6e, 0x66, 0x75, 0x78, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x10, 0xae, 0x14, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x75, 0x78, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x14, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x10, 0xb0, 0x14, 0x12, 0x33, 0x0a, 0x2e, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0xb1, 0x14, + 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x54, 0x6f, 0x47, 0x43, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x49, 0x74, + 0x65, 0x6d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb2, 0x14, 0x12, 0x20, 0x0a, + 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x42, 0x65, 0x74, + 0x61, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x10, 0xb3, 0x14, 0x2a, + 0xb9, 0x0a, 0x0a, 0x1b, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x5f, 0x44, 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x10, 0x01, 0x12, 0x36, 0x0a, 0x32, 0x6b, + 0x5f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x10, 0x00, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, - 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x56, 0x41, 0x43, - 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, - 0x72, 0x10, 0x02, 0x12, 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, - 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x56, 0x41, 0x43, 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, - 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x10, 0x03, 0x12, 0x38, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x47, - 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x5f, 0x41, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x5f, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, - 0x10, 0x04, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x5f, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x05, 0x12, 0x2d, - 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, - 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, - 0x4e, 0x6f, 0x74, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x10, 0x06, 0x12, 0x28, 0x0a, - 0x24, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, - 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x43, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x10, 0x07, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x47, 0x43, + 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x44, 0x65, 0x63, + 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x10, 0x01, 0x12, 0x36, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x6f, 0x6f, 0x53, 0x6f, 0x6f, 0x6e, - 0x10, 0x08, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x6f, 0x6f, 0x53, 0x6f, 0x6f, 0x6e, 0x50, 0x65, 0x6e, 0x61, 0x6c, - 0x74, 0x79, 0x10, 0x09, 0x12, 0x38, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x56, 0x41, 0x43, 0x5f, 0x42, 0x61, 0x6e, + 0x6e, 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x02, 0x12, + 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, + 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x5f, 0x56, 0x41, 0x43, 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x54, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x10, 0x03, 0x12, 0x38, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x42, 0x61, 0x6e, 0x6e, - 0x65, 0x64, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x0a, 0x12, 0x35, - 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x41, 0x6c, 0x72, + 0x65, 0x61, 0x64, 0x79, 0x5f, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x10, 0x04, 0x12, 0x2a, + 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, + 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x05, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, + 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, + 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4e, 0x6f, 0x74, 0x4c, + 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x10, 0x06, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, + 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x43, 0x61, 0x6e, 0x63, 0x65, + 0x6c, 0x10, 0x07, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, + 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x6f, 0x6f, 0x53, 0x6f, 0x6f, 0x6e, 0x10, 0x08, 0x12, 0x30, + 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x54, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x10, 0x0b, 0x12, 0x43, 0x0a, 0x3f, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, - 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x46, 0x72, 0x65, 0x65, 0x5f, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x44, 0x45, - 0x50, 0x52, 0x45, 0x43, 0x41, 0x54, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x3a, 0x0a, 0x36, 0x6b, 0x5f, + 0x54, 0x6f, 0x6f, 0x53, 0x6f, 0x6f, 0x6e, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x10, 0x09, + 0x12, 0x38, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, + 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x5f, 0x54, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x49, + 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x0a, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, - 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x68, 0x61, 0x72, - 0x65, 0x64, 0x5f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x74, 0x6f, 0x72, 0x10, 0x0d, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, + 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x72, 0x61, 0x64, + 0x65, 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x10, + 0x0b, 0x12, 0x43, 0x0a, 0x3f, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, + 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x5f, 0x46, 0x72, 0x65, 0x65, 0x5f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x44, 0x45, 0x50, 0x52, 0x45, 0x43, + 0x41, 0x54, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x3a, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, - 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x0e, 0x12, 0x30, 0x0a, - 0x2c, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, - 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0f, 0x12, - 0x33, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x5f, 0x4e, 0x65, 0x65, 0x64, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x10, 0x10, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, + 0x10, 0x0d, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x55, 0x6e, 0x61, 0x76, + 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x0e, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, + 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, + 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x5f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x0f, 0x12, 0x33, 0x0a, 0x2f, 0x6b, + 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, + 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4e, 0x65, 0x65, + 0x64, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x10, 0x10, + 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, + 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x5f, 0x4e, 0x65, 0x65, 0x64, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x47, 0x75, 0x61, 0x72, 0x64, + 0x10, 0x11, 0x12, 0x34, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x47, 0x75, 0x61, 0x72, 0x64, 0x44, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x12, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x47, + 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x68, 0x65, 0x79, 0x43, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x10, 0x13, 0x12, 0x37, 0x0a, 0x33, 0x6b, + 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, + 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x52, 0x65, 0x63, + 0x65, 0x6e, 0x74, 0x5f, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x52, 0x65, 0x73, + 0x65, 0x74, 0x10, 0x14, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4e, 0x65, 0x65, 0x64, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x47, - 0x75, 0x61, 0x72, 0x64, 0x10, 0x11, 0x12, 0x34, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, - 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x47, 0x75, 0x61, - 0x72, 0x64, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x12, 0x12, 0x31, 0x0a, 0x2d, - 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x68, - 0x65, 0x79, 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x10, 0x13, 0x12, - 0x37, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x5f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x10, 0x14, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x47, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x4e, 0x65, 0x77, 0x5f, + 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x10, 0x15, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x5f, - 0x4e, 0x65, 0x77, 0x5f, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x10, 0x15, 0x12, 0x35, 0x0a, 0x31, - 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, - 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x65, - 0x6e, 0x74, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x43, 0x6f, 0x6f, 0x6b, 0x69, - 0x65, 0x10, 0x16, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, - 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x54, 0x6f, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x10, 0x17, 0x12, 0x37, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, - 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x46, 0x75, - 0x6e, 0x64, 0x73, 0x4e, 0x6f, 0x74, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x10, 0x18, 0x42, - 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, - 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, - 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x53, 0x65, 0x6e, 0x74, 0x5f, 0x49, + 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x43, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x10, 0x16, 0x12, + 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, + 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x5f, 0x54, 0x6f, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x10, 0x17, 0x12, 0x37, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x5f, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x4e, + 0x6f, 0x74, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x10, 0x18, 0x42, 0x25, 0x5a, 0x23, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, + 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, + 0x74, 0x61, } var ( @@ -10505,8 +10899,8 @@ func file_econ_gcmessages_proto_rawDescGZIP() []byte { return file_econ_gcmessages_proto_rawDescData } -var file_econ_gcmessages_proto_enumTypes = make([]protoimpl.EnumInfo, 12) -var file_econ_gcmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 127) +var file_econ_gcmessages_proto_enumTypes = make([]protoimpl.EnumInfo, 13) +var file_econ_gcmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 130) var file_econ_gcmessages_proto_goTypes = []interface{}{ (EGCItemMsg)(0), // 0: dota.EGCItemMsg (EGCMsgInitiateTradeResponse)(0), // 1: dota.EGCMsgInitiateTradeResponse @@ -10514,195 +10908,203 @@ var file_econ_gcmessages_proto_goTypes = []interface{}{ (CMsgRequestCrateEscalationLevelResponse_EResult)(0), // 3: dota.CMsgRequestCrateEscalationLevelResponse.EResult (CMsgRedeemCodeResponse_EResultCode)(0), // 4: dota.CMsgRedeemCodeResponse.EResultCode (CMsgClientToGCUnpackBundleResponse_EUnpackBundle)(0), // 5: dota.CMsgClientToGCUnpackBundleResponse.EUnpackBundle - (CMsgClientToGCSetItemStyleResponse_ESetStyle)(0), // 6: dota.CMsgClientToGCSetItemStyleResponse.ESetStyle - (CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle)(0), // 7: dota.CMsgClientToGCUnlockItemStyleResponse.EUnlockStyle - (CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute)(0), // 8: dota.CMsgClientToGCRemoveItemAttributeResponse.ERemoveItemAttribute - (CMsgClientToGCNameItemResponse_ENameItem)(0), // 9: dota.CMsgClientToGCNameItemResponse.ENameItem - (CMsgClientToGCCreateStaticRecipeResponse_EResponse)(0), // 10: dota.CMsgClientToGCCreateStaticRecipeResponse.EResponse - (CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse)(0), // 11: dota.CMsgClientToGCGetLimitedItemPurchaseQuantityResponse.EResponse - (*CMsgApplyAutograph)(nil), // 12: dota.CMsgApplyAutograph - (*CMsgAdjustItemEquippedState)(nil), // 13: dota.CMsgAdjustItemEquippedState - (*CMsgEconPlayerStrangeCountAdjustment)(nil), // 14: dota.CMsgEconPlayerStrangeCountAdjustment - (*CMsgCraftingResponse)(nil), // 15: dota.CMsgCraftingResponse - (*CMsgGCRequestStoreSalesData)(nil), // 16: dota.CMsgGCRequestStoreSalesData - (*CMsgGCRequestStoreSalesDataResponse)(nil), // 17: dota.CMsgGCRequestStoreSalesDataResponse - (*CMsgGCRequestStoreSalesDataUpToDateResponse)(nil), // 18: dota.CMsgGCRequestStoreSalesDataUpToDateResponse - (*CMsgGCToGCPingRequest)(nil), // 19: dota.CMsgGCToGCPingRequest - (*CMsgGCToGCPingResponse)(nil), // 20: dota.CMsgGCToGCPingResponse - (*CMsgGCToGCGetUserSessionServer)(nil), // 21: dota.CMsgGCToGCGetUserSessionServer - (*CMsgGCToGCGetUserSessionServerResponse)(nil), // 22: dota.CMsgGCToGCGetUserSessionServerResponse - (*CMsgGCToGCGetUserServerMembers)(nil), // 23: dota.CMsgGCToGCGetUserServerMembers - (*CMsgGCToGCGetUserServerMembersResponse)(nil), // 24: dota.CMsgGCToGCGetUserServerMembersResponse - (*CMsgLookupMultipleAccountNames)(nil), // 25: dota.CMsgLookupMultipleAccountNames - (*CMsgLookupMultipleAccountNamesResponse)(nil), // 26: dota.CMsgLookupMultipleAccountNamesResponse - (*CMsgRequestCrateItems)(nil), // 27: dota.CMsgRequestCrateItems - (*CMsgRequestCrateItemsResponse)(nil), // 28: dota.CMsgRequestCrateItemsResponse - (*CMsgRequestCrateEscalationLevel)(nil), // 29: dota.CMsgRequestCrateEscalationLevel - (*CMsgRequestCrateEscalationLevelResponse)(nil), // 30: dota.CMsgRequestCrateEscalationLevelResponse - (*CMsgGCToGCCanUseDropRateBonus)(nil), // 31: dota.CMsgGCToGCCanUseDropRateBonus - (*CMsgSQLAddDropRateBonus)(nil), // 32: dota.CMsgSQLAddDropRateBonus - (*CMsgSQLUpgradeBattleBooster)(nil), // 33: dota.CMsgSQLUpgradeBattleBooster - (*CMsgGCToGCRefreshSOCache)(nil), // 34: dota.CMsgGCToGCRefreshSOCache - (*CMsgGCToGCAddSubscriptionTime)(nil), // 35: dota.CMsgGCToGCAddSubscriptionTime - (*CMsgGCToGCGrantAccountRolledItems)(nil), // 36: dota.CMsgGCToGCGrantAccountRolledItems - (*CMsgGCToGCBetaDeleteItems)(nil), // 37: dota.CMsgGCToGCBetaDeleteItems - (*CMsgGCToGCGrantSelfMadeItemToAccount)(nil), // 38: dota.CMsgGCToGCGrantSelfMadeItemToAccount - (*CMsgUseItem)(nil), // 39: dota.CMsgUseItem - (*CMsgServerUseItem)(nil), // 40: dota.CMsgServerUseItem - (*CMsgUseMultipleItems)(nil), // 41: dota.CMsgUseMultipleItems - (*CGCStoreRechargeRedirect_LineItem)(nil), // 42: dota.CGCStoreRechargeRedirect_LineItem - (*CMsgGCEconSQLWorkItemEmbeddedRollbackData)(nil), // 43: dota.CMsgGCEconSQLWorkItemEmbeddedRollbackData - (*CMsgCraftStatue)(nil), // 44: dota.CMsgCraftStatue - (*CMsgRedeemCode)(nil), // 45: dota.CMsgRedeemCode - (*CMsgRedeemCodeResponse)(nil), // 46: dota.CMsgRedeemCodeResponse - (*CMsgDevNewItemRequest)(nil), // 47: dota.CMsgDevNewItemRequest - (*CMsgDevNewItemRequestResponse)(nil), // 48: dota.CMsgDevNewItemRequestResponse - (*CMsgDevUnlockAllItemStyles)(nil), // 49: dota.CMsgDevUnlockAllItemStyles - (*CMsgDevUnlockAllItemStylesResponse)(nil), // 50: dota.CMsgDevUnlockAllItemStylesResponse - (*CMsgGCGetAccountSubscriptionItem)(nil), // 51: dota.CMsgGCGetAccountSubscriptionItem - (*CMsgGCGetAccountSubscriptionItemResponse)(nil), // 52: dota.CMsgGCGetAccountSubscriptionItemResponse - (*CMsgGCAddGiftItem)(nil), // 53: dota.CMsgGCAddGiftItem - (*CMsgClientToGCWrapAndDeliverGift)(nil), // 54: dota.CMsgClientToGCWrapAndDeliverGift - (*CMsgClientToGCWrapAndDeliverGiftResponse)(nil), // 55: dota.CMsgClientToGCWrapAndDeliverGiftResponse - (*CMsgClientToGCUnwrapGift)(nil), // 56: dota.CMsgClientToGCUnwrapGift - (*CMsgClientToGCGetGiftPermissions)(nil), // 57: dota.CMsgClientToGCGetGiftPermissions - (*CMsgClientToGCGetGiftPermissionsResponse)(nil), // 58: dota.CMsgClientToGCGetGiftPermissionsResponse - (*CMsgClientToGCUnpackBundle)(nil), // 59: dota.CMsgClientToGCUnpackBundle - (*CMsgClientToGCUnpackBundleResponse)(nil), // 60: dota.CMsgClientToGCUnpackBundleResponse - (*CMsgGCToClientStoreTransactionCompleted)(nil), // 61: dota.CMsgGCToClientStoreTransactionCompleted - (*CMsgClientToGCEquipItems)(nil), // 62: dota.CMsgClientToGCEquipItems - (*CMsgClientToGCEquipItemsResponse)(nil), // 63: dota.CMsgClientToGCEquipItemsResponse - (*CMsgClientToGCSetItemStyle)(nil), // 64: dota.CMsgClientToGCSetItemStyle - (*CMsgClientToGCSetItemStyleResponse)(nil), // 65: dota.CMsgClientToGCSetItemStyleResponse - (*CMsgClientToGCUnlockItemStyle)(nil), // 66: dota.CMsgClientToGCUnlockItemStyle - (*CMsgClientToGCUnlockItemStyleResponse)(nil), // 67: dota.CMsgClientToGCUnlockItemStyleResponse - (*CMsgClientToGCSetItemInventoryCategory)(nil), // 68: dota.CMsgClientToGCSetItemInventoryCategory - (*CMsgClientToGCUnlockCrate)(nil), // 69: dota.CMsgClientToGCUnlockCrate - (*CMsgClientToGCUnlockCrateResponse)(nil), // 70: dota.CMsgClientToGCUnlockCrateResponse - (*CMsgClientToGCRemoveItemAttribute)(nil), // 71: dota.CMsgClientToGCRemoveItemAttribute - (*CMsgClientToGCRemoveItemAttributeResponse)(nil), // 72: dota.CMsgClientToGCRemoveItemAttributeResponse - (*CMsgClientToGCNameItem)(nil), // 73: dota.CMsgClientToGCNameItem - (*CMsgClientToGCNameItemResponse)(nil), // 74: dota.CMsgClientToGCNameItemResponse - (*CMsgGCSetItemPosition)(nil), // 75: dota.CMsgGCSetItemPosition - (*CAttribute_ItemDynamicRecipeComponent)(nil), // 76: dota.CAttribute_ItemDynamicRecipeComponent - (*CProtoItemSocket)(nil), // 77: dota.CProtoItemSocket - (*CProtoItemSocket_Empty)(nil), // 78: dota.CProtoItemSocket_Empty - (*CProtoItemSocket_Effect)(nil), // 79: dota.CProtoItemSocket_Effect - (*CProtoItemSocket_Color)(nil), // 80: dota.CProtoItemSocket_Color - (*CProtoItemSocket_Strange)(nil), // 81: dota.CProtoItemSocket_Strange - (*CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY)(nil), // 82: dota.CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY - (*CProtoItemSocket_Spectator)(nil), // 83: dota.CProtoItemSocket_Spectator - (*CProtoItemSocket_AssetModifier)(nil), // 84: dota.CProtoItemSocket_AssetModifier - (*CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY)(nil), // 85: dota.CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY - (*CProtoItemSocket_Autograph)(nil), // 86: dota.CProtoItemSocket_Autograph - (*CProtoItemSocket_StaticVisuals)(nil), // 87: dota.CProtoItemSocket_StaticVisuals - (*CAttribute_String)(nil), // 88: dota.CAttribute_String - (*CWorkshop_GetItemDailyRevenue_Request)(nil), // 89: dota.CWorkshop_GetItemDailyRevenue_Request - (*CWorkshop_GetItemDailyRevenue_Response)(nil), // 90: dota.CWorkshop_GetItemDailyRevenue_Response - (*CWorkshop_GetPackageDailyRevenue_Request)(nil), // 91: dota.CWorkshop_GetPackageDailyRevenue_Request - (*CWorkshop_GetPackageDailyRevenue_Response)(nil), // 92: dota.CWorkshop_GetPackageDailyRevenue_Response - (*CMsgSQLGCToGCGrantBackpackSlots)(nil), // 93: dota.CMsgSQLGCToGCGrantBackpackSlots - (*CMsgClientToGCLookupAccountName)(nil), // 94: dota.CMsgClientToGCLookupAccountName - (*CMsgClientToGCLookupAccountNameResponse)(nil), // 95: dota.CMsgClientToGCLookupAccountNameResponse - (*CMsgClientToGCCreateStaticRecipe)(nil), // 96: dota.CMsgClientToGCCreateStaticRecipe - (*CMsgClientToGCCreateStaticRecipeResponse)(nil), // 97: dota.CMsgClientToGCCreateStaticRecipeResponse - (*CMsgProcessTransactionOrder)(nil), // 98: dota.CMsgProcessTransactionOrder - (*CMsgGCToGCStoreProcessCDKeyTransaction)(nil), // 99: dota.CMsgGCToGCStoreProcessCDKeyTransaction - (*CMsgGCToGCStoreProcessCDKeyTransactionResponse)(nil), // 100: dota.CMsgGCToGCStoreProcessCDKeyTransactionResponse - (*CMsgGCToGCStoreProcessSettlement)(nil), // 101: dota.CMsgGCToGCStoreProcessSettlement - (*CMsgGCToGCStoreProcessSettlementResponse)(nil), // 102: dota.CMsgGCToGCStoreProcessSettlementResponse - (*CMsgGCToGCBroadcastConsoleCommand)(nil), // 103: dota.CMsgGCToGCBroadcastConsoleCommand - (*CMsgGCToGCConsoleOutput)(nil), // 104: dota.CMsgGCToGCConsoleOutput - (*CMsgItemAges)(nil), // 105: dota.CMsgItemAges - (*CMsgGCToGCInternalTestMsg)(nil), // 106: dota.CMsgGCToGCInternalTestMsg - (*CMsgGCToGCClientServerVersionsUpdated)(nil), // 107: dota.CMsgGCToGCClientServerVersionsUpdated - (*CMsgGCToGCBroadcastMessageFromSub)(nil), // 108: dota.CMsgGCToGCBroadcastMessageFromSub - (*CMsgGCToClientCurrencyPricePoints)(nil), // 109: dota.CMsgGCToClientCurrencyPricePoints - (*CMsgBannedWordList)(nil), // 110: dota.CMsgBannedWordList - (*CMsgGCToGCFlushSteamInventoryCache)(nil), // 111: dota.CMsgGCToGCFlushSteamInventoryCache - (*CMsgGCToGCUpdateSubscriptionItems)(nil), // 112: dota.CMsgGCToGCUpdateSubscriptionItems - (*CMsgGCToGCSelfPing)(nil), // 113: dota.CMsgGCToGCSelfPing - (*CMsgGCToGCGetInfuxIntervalStats)(nil), // 114: dota.CMsgGCToGCGetInfuxIntervalStats - (*CMsgGCToGCGetInfuxIntervalStatsResponse)(nil), // 115: dota.CMsgGCToGCGetInfuxIntervalStatsResponse - (*CMsgGCToGCPurchaseSucceeded)(nil), // 116: dota.CMsgGCToGCPurchaseSucceeded - (*CMsgClientToGCGetLimitedItemPurchaseQuantity)(nil), // 117: dota.CMsgClientToGCGetLimitedItemPurchaseQuantity - (*CMsgClientToGCGetLimitedItemPurchaseQuantityResponse)(nil), // 118: dota.CMsgClientToGCGetLimitedItemPurchaseQuantityResponse - (*CMsgGCToGCUpdateWelcomeMsg)(nil), // 119: dota.CMsgGCToGCUpdateWelcomeMsg - (*CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment)(nil), // 120: dota.CMsgEconPlayerStrangeCountAdjustment.CStrangeCountAdjustment - (*CMsgGCRequestStoreSalesDataResponse_Price)(nil), // 121: dota.CMsgGCRequestStoreSalesDataResponse.Price - (*CMsgLookupMultipleAccountNamesResponse_Account)(nil), // 122: dota.CMsgLookupMultipleAccountNamesResponse.Account - (*CMsgGCToGCGrantAccountRolledItems_Item)(nil), // 123: dota.CMsgGCToGCGrantAccountRolledItems.Item - (*CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute)(nil), // 124: dota.CMsgGCToGCGrantAccountRolledItems.Item.DynamicAttribute - (*CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry)(nil), // 125: dota.CMsgGCToGCGrantAccountRolledItems.Item.AdditionalAuditEntry - (*CMsgClientToGCGetGiftPermissionsResponse_FriendPermission)(nil), // 126: dota.CMsgClientToGCGetGiftPermissionsResponse.FriendPermission - (*CMsgClientToGCUnlockCrateResponse_Item)(nil), // 127: dota.CMsgClientToGCUnlockCrateResponse.Item - (*CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue)(nil), // 128: dota.CWorkshop_GetItemDailyRevenue_Response.CountryDailyRevenue - (*CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue)(nil), // 129: dota.CWorkshop_GetPackageDailyRevenue_Response.CountryDailyRevenue - (*CMsgClientToGCCreateStaticRecipe_Item)(nil), // 130: dota.CMsgClientToGCCreateStaticRecipe.Item - (*CMsgClientToGCCreateStaticRecipeResponse_OutputItem)(nil), // 131: dota.CMsgClientToGCCreateStaticRecipeResponse.OutputItem - (*CMsgClientToGCCreateStaticRecipeResponse_InputError)(nil), // 132: dota.CMsgClientToGCCreateStaticRecipeResponse.InputError - (*CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput)(nil), // 133: dota.CMsgClientToGCCreateStaticRecipeResponse.AdditionalOutput - (*CMsgProcessTransactionOrder_Item)(nil), // 134: dota.CMsgProcessTransactionOrder.Item - (*CMsgGCToGCConsoleOutput_OutputLine)(nil), // 135: dota.CMsgGCToGCConsoleOutput.OutputLine - (*CMsgItemAges_MaxItemIDTimestamp)(nil), // 136: dota.CMsgItemAges.MaxItemIDTimestamp - (*CMsgGCToClientCurrencyPricePoints_Currency)(nil), // 137: dota.CMsgGCToClientCurrencyPricePoints.Currency - (*CMsgGCToGCFlushSteamInventoryCache_Key)(nil), // 138: dota.CMsgGCToGCFlushSteamInventoryCache.Key - (EGCMsgResponse)(0), // 139: dota.EGCMsgResponse - (*CExtraMsgBlock)(nil), // 140: dota.CExtraMsgBlock + (CMsgClientToGCPackBundleResponse_EPackBundle)(0), // 6: dota.CMsgClientToGCPackBundleResponse.EPackBundle + (CMsgClientToGCSetItemStyleResponse_ESetStyle)(0), // 7: dota.CMsgClientToGCSetItemStyleResponse.ESetStyle + (CMsgClientToGCUnlockItemStyleResponse_EUnlockStyle)(0), // 8: dota.CMsgClientToGCUnlockItemStyleResponse.EUnlockStyle + (CMsgClientToGCRemoveItemAttributeResponse_ERemoveItemAttribute)(0), // 9: dota.CMsgClientToGCRemoveItemAttributeResponse.ERemoveItemAttribute + (CMsgClientToGCNameItemResponse_ENameItem)(0), // 10: dota.CMsgClientToGCNameItemResponse.ENameItem + (CMsgClientToGCCreateStaticRecipeResponse_EResponse)(0), // 11: dota.CMsgClientToGCCreateStaticRecipeResponse.EResponse + (CMsgClientToGCGetLimitedItemPurchaseQuantityResponse_EResponse)(0), // 12: dota.CMsgClientToGCGetLimitedItemPurchaseQuantityResponse.EResponse + (*CMsgApplyAutograph)(nil), // 13: dota.CMsgApplyAutograph + (*CMsgAdjustItemEquippedState)(nil), // 14: dota.CMsgAdjustItemEquippedState + (*CMsgEconPlayerStrangeCountAdjustment)(nil), // 15: dota.CMsgEconPlayerStrangeCountAdjustment + (*CMsgCraftingResponse)(nil), // 16: dota.CMsgCraftingResponse + (*CMsgGCRequestStoreSalesData)(nil), // 17: dota.CMsgGCRequestStoreSalesData + (*CMsgGCRequestStoreSalesDataResponse)(nil), // 18: dota.CMsgGCRequestStoreSalesDataResponse + (*CMsgGCRequestStoreSalesDataUpToDateResponse)(nil), // 19: dota.CMsgGCRequestStoreSalesDataUpToDateResponse + (*CMsgGCToGCPingRequest)(nil), // 20: dota.CMsgGCToGCPingRequest + (*CMsgGCToGCPingResponse)(nil), // 21: dota.CMsgGCToGCPingResponse + (*CMsgGCToGCGetUserSessionServer)(nil), // 22: dota.CMsgGCToGCGetUserSessionServer + (*CMsgGCToGCGetUserSessionServerResponse)(nil), // 23: dota.CMsgGCToGCGetUserSessionServerResponse + (*CMsgGCToGCGetUserServerMembers)(nil), // 24: dota.CMsgGCToGCGetUserServerMembers + (*CMsgGCToGCGetUserServerMembersResponse)(nil), // 25: dota.CMsgGCToGCGetUserServerMembersResponse + (*CMsgLookupMultipleAccountNames)(nil), // 26: dota.CMsgLookupMultipleAccountNames + (*CMsgLookupMultipleAccountNamesResponse)(nil), // 27: dota.CMsgLookupMultipleAccountNamesResponse + (*CMsgRequestCrateItems)(nil), // 28: dota.CMsgRequestCrateItems + (*CMsgRequestCrateItemsResponse)(nil), // 29: dota.CMsgRequestCrateItemsResponse + (*CMsgRequestCrateEscalationLevel)(nil), // 30: dota.CMsgRequestCrateEscalationLevel + (*CMsgRequestCrateEscalationLevelResponse)(nil), // 31: dota.CMsgRequestCrateEscalationLevelResponse + (*CMsgGCToGCCanUseDropRateBonus)(nil), // 32: dota.CMsgGCToGCCanUseDropRateBonus + (*CMsgSQLAddDropRateBonus)(nil), // 33: dota.CMsgSQLAddDropRateBonus + (*CMsgSQLUpgradeBattleBooster)(nil), // 34: dota.CMsgSQLUpgradeBattleBooster + (*CMsgGCToGCRefreshSOCache)(nil), // 35: dota.CMsgGCToGCRefreshSOCache + (*CMsgGCToGCAddSubscriptionTime)(nil), // 36: dota.CMsgGCToGCAddSubscriptionTime + (*CMsgGCToGCGrantAccountRolledItems)(nil), // 37: dota.CMsgGCToGCGrantAccountRolledItems + (*CMsgGCToGCBetaDeleteItems)(nil), // 38: dota.CMsgGCToGCBetaDeleteItems + (*CMsgGCToGCGrantSelfMadeItemToAccount)(nil), // 39: dota.CMsgGCToGCGrantSelfMadeItemToAccount + (*CMsgUseItem)(nil), // 40: dota.CMsgUseItem + (*CMsgServerUseItem)(nil), // 41: dota.CMsgServerUseItem + (*CMsgUseMultipleItems)(nil), // 42: dota.CMsgUseMultipleItems + (*CGCStoreRechargeRedirect_LineItem)(nil), // 43: dota.CGCStoreRechargeRedirect_LineItem + (*CMsgGCEconSQLWorkItemEmbeddedRollbackData)(nil), // 44: dota.CMsgGCEconSQLWorkItemEmbeddedRollbackData + (*CMsgCraftStatue)(nil), // 45: dota.CMsgCraftStatue + (*CMsgRedeemCode)(nil), // 46: dota.CMsgRedeemCode + (*CMsgRedeemCodeResponse)(nil), // 47: dota.CMsgRedeemCodeResponse + (*CMsgDevNewItemRequest)(nil), // 48: dota.CMsgDevNewItemRequest + (*CMsgDevNewItemRequestResponse)(nil), // 49: dota.CMsgDevNewItemRequestResponse + (*CMsgDevUnlockAllItemStyles)(nil), // 50: dota.CMsgDevUnlockAllItemStyles + (*CMsgDevUnlockAllItemStylesResponse)(nil), // 51: dota.CMsgDevUnlockAllItemStylesResponse + (*CMsgGCGetAccountSubscriptionItem)(nil), // 52: dota.CMsgGCGetAccountSubscriptionItem + (*CMsgGCGetAccountSubscriptionItemResponse)(nil), // 53: dota.CMsgGCGetAccountSubscriptionItemResponse + (*CMsgGCAddGiftItem)(nil), // 54: dota.CMsgGCAddGiftItem + (*CMsgClientToGCWrapAndDeliverGift)(nil), // 55: dota.CMsgClientToGCWrapAndDeliverGift + (*CMsgSQLGCToGCRevokeUntrustedGift)(nil), // 56: dota.CMsgSQLGCToGCRevokeUntrustedGift + (*CMsgClientToGCWrapAndDeliverGiftResponse)(nil), // 57: dota.CMsgClientToGCWrapAndDeliverGiftResponse + (*CMsgClientToGCUnwrapGift)(nil), // 58: dota.CMsgClientToGCUnwrapGift + (*CMsgClientToGCGetGiftPermissions)(nil), // 59: dota.CMsgClientToGCGetGiftPermissions + (*CMsgClientToGCGetGiftPermissionsResponse)(nil), // 60: dota.CMsgClientToGCGetGiftPermissionsResponse + (*CMsgClientToGCUnpackBundle)(nil), // 61: dota.CMsgClientToGCUnpackBundle + (*CMsgClientToGCUnpackBundleResponse)(nil), // 62: dota.CMsgClientToGCUnpackBundleResponse + (*CMsgClientToGCPackBundle)(nil), // 63: dota.CMsgClientToGCPackBundle + (*CMsgClientToGCPackBundleResponse)(nil), // 64: dota.CMsgClientToGCPackBundleResponse + (*CMsgGCToClientStoreTransactionCompleted)(nil), // 65: dota.CMsgGCToClientStoreTransactionCompleted + (*CMsgClientToGCEquipItems)(nil), // 66: dota.CMsgClientToGCEquipItems + (*CMsgClientToGCEquipItemsResponse)(nil), // 67: dota.CMsgClientToGCEquipItemsResponse + (*CMsgClientToGCSetItemStyle)(nil), // 68: dota.CMsgClientToGCSetItemStyle + (*CMsgClientToGCSetItemStyleResponse)(nil), // 69: dota.CMsgClientToGCSetItemStyleResponse + (*CMsgClientToGCUnlockItemStyle)(nil), // 70: dota.CMsgClientToGCUnlockItemStyle + (*CMsgClientToGCUnlockItemStyleResponse)(nil), // 71: dota.CMsgClientToGCUnlockItemStyleResponse + (*CMsgClientToGCSetItemInventoryCategory)(nil), // 72: dota.CMsgClientToGCSetItemInventoryCategory + (*CMsgClientToGCUnlockCrate)(nil), // 73: dota.CMsgClientToGCUnlockCrate + (*CMsgClientToGCUnlockCrateResponse)(nil), // 74: dota.CMsgClientToGCUnlockCrateResponse + (*CMsgClientToGCRemoveItemAttribute)(nil), // 75: dota.CMsgClientToGCRemoveItemAttribute + (*CMsgClientToGCRemoveItemAttributeResponse)(nil), // 76: dota.CMsgClientToGCRemoveItemAttributeResponse + (*CMsgClientToGCNameItem)(nil), // 77: dota.CMsgClientToGCNameItem + (*CMsgClientToGCNameItemResponse)(nil), // 78: dota.CMsgClientToGCNameItemResponse + (*CMsgGCSetItemPosition)(nil), // 79: dota.CMsgGCSetItemPosition + (*CAttribute_ItemDynamicRecipeComponent)(nil), // 80: dota.CAttribute_ItemDynamicRecipeComponent + (*CProtoItemSocket)(nil), // 81: dota.CProtoItemSocket + (*CProtoItemSocket_Empty)(nil), // 82: dota.CProtoItemSocket_Empty + (*CProtoItemSocket_Effect)(nil), // 83: dota.CProtoItemSocket_Effect + (*CProtoItemSocket_Color)(nil), // 84: dota.CProtoItemSocket_Color + (*CProtoItemSocket_Strange)(nil), // 85: dota.CProtoItemSocket_Strange + (*CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY)(nil), // 86: dota.CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY + (*CProtoItemSocket_Spectator)(nil), // 87: dota.CProtoItemSocket_Spectator + (*CProtoItemSocket_AssetModifier)(nil), // 88: dota.CProtoItemSocket_AssetModifier + (*CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY)(nil), // 89: dota.CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY + (*CProtoItemSocket_Autograph)(nil), // 90: dota.CProtoItemSocket_Autograph + (*CProtoItemSocket_StaticVisuals)(nil), // 91: dota.CProtoItemSocket_StaticVisuals + (*CAttribute_String)(nil), // 92: dota.CAttribute_String + (*CWorkshop_GetItemDailyRevenue_Request)(nil), // 93: dota.CWorkshop_GetItemDailyRevenue_Request + (*CWorkshop_GetItemDailyRevenue_Response)(nil), // 94: dota.CWorkshop_GetItemDailyRevenue_Response + (*CWorkshop_GetPackageDailyRevenue_Request)(nil), // 95: dota.CWorkshop_GetPackageDailyRevenue_Request + (*CWorkshop_GetPackageDailyRevenue_Response)(nil), // 96: dota.CWorkshop_GetPackageDailyRevenue_Response + (*CMsgSQLGCToGCGrantBackpackSlots)(nil), // 97: dota.CMsgSQLGCToGCGrantBackpackSlots + (*CMsgClientToGCLookupAccountName)(nil), // 98: dota.CMsgClientToGCLookupAccountName + (*CMsgClientToGCLookupAccountNameResponse)(nil), // 99: dota.CMsgClientToGCLookupAccountNameResponse + (*CMsgClientToGCCreateStaticRecipe)(nil), // 100: dota.CMsgClientToGCCreateStaticRecipe + (*CMsgClientToGCCreateStaticRecipeResponse)(nil), // 101: dota.CMsgClientToGCCreateStaticRecipeResponse + (*CMsgProcessTransactionOrder)(nil), // 102: dota.CMsgProcessTransactionOrder + (*CMsgGCToGCStoreProcessCDKeyTransaction)(nil), // 103: dota.CMsgGCToGCStoreProcessCDKeyTransaction + (*CMsgGCToGCStoreProcessCDKeyTransactionResponse)(nil), // 104: dota.CMsgGCToGCStoreProcessCDKeyTransactionResponse + (*CMsgGCToGCStoreProcessSettlement)(nil), // 105: dota.CMsgGCToGCStoreProcessSettlement + (*CMsgGCToGCStoreProcessSettlementResponse)(nil), // 106: dota.CMsgGCToGCStoreProcessSettlementResponse + (*CMsgGCToGCBroadcastConsoleCommand)(nil), // 107: dota.CMsgGCToGCBroadcastConsoleCommand + (*CMsgGCToGCConsoleOutput)(nil), // 108: dota.CMsgGCToGCConsoleOutput + (*CMsgItemAges)(nil), // 109: dota.CMsgItemAges + (*CMsgGCToGCInternalTestMsg)(nil), // 110: dota.CMsgGCToGCInternalTestMsg + (*CMsgGCToGCClientServerVersionsUpdated)(nil), // 111: dota.CMsgGCToGCClientServerVersionsUpdated + (*CMsgGCToGCBroadcastMessageFromSub)(nil), // 112: dota.CMsgGCToGCBroadcastMessageFromSub + (*CMsgGCToClientCurrencyPricePoints)(nil), // 113: dota.CMsgGCToClientCurrencyPricePoints + (*CMsgBannedWordList)(nil), // 114: dota.CMsgBannedWordList + (*CMsgGCToGCFlushSteamInventoryCache)(nil), // 115: dota.CMsgGCToGCFlushSteamInventoryCache + (*CMsgGCToGCUpdateSubscriptionItems)(nil), // 116: dota.CMsgGCToGCUpdateSubscriptionItems + (*CMsgGCToGCSelfPing)(nil), // 117: dota.CMsgGCToGCSelfPing + (*CMsgGCToGCGetInfuxIntervalStats)(nil), // 118: dota.CMsgGCToGCGetInfuxIntervalStats + (*CMsgGCToGCGetInfuxIntervalStatsResponse)(nil), // 119: dota.CMsgGCToGCGetInfuxIntervalStatsResponse + (*CMsgGCToGCPurchaseSucceeded)(nil), // 120: dota.CMsgGCToGCPurchaseSucceeded + (*CMsgClientToGCGetLimitedItemPurchaseQuantity)(nil), // 121: dota.CMsgClientToGCGetLimitedItemPurchaseQuantity + (*CMsgClientToGCGetLimitedItemPurchaseQuantityResponse)(nil), // 122: dota.CMsgClientToGCGetLimitedItemPurchaseQuantityResponse + (*CMsgGCToGCUpdateWelcomeMsg)(nil), // 123: dota.CMsgGCToGCUpdateWelcomeMsg + (*CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment)(nil), // 124: dota.CMsgEconPlayerStrangeCountAdjustment.CStrangeCountAdjustment + (*CMsgGCRequestStoreSalesDataResponse_Price)(nil), // 125: dota.CMsgGCRequestStoreSalesDataResponse.Price + (*CMsgLookupMultipleAccountNamesResponse_Account)(nil), // 126: dota.CMsgLookupMultipleAccountNamesResponse.Account + (*CMsgGCToGCGrantAccountRolledItems_Item)(nil), // 127: dota.CMsgGCToGCGrantAccountRolledItems.Item + (*CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute)(nil), // 128: dota.CMsgGCToGCGrantAccountRolledItems.Item.DynamicAttribute + (*CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry)(nil), // 129: dota.CMsgGCToGCGrantAccountRolledItems.Item.AdditionalAuditEntry + (*CMsgClientToGCGetGiftPermissionsResponse_FriendPermission)(nil), // 130: dota.CMsgClientToGCGetGiftPermissionsResponse.FriendPermission + (*CMsgClientToGCUnlockCrateResponse_Item)(nil), // 131: dota.CMsgClientToGCUnlockCrateResponse.Item + (*CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue)(nil), // 132: dota.CWorkshop_GetItemDailyRevenue_Response.CountryDailyRevenue + (*CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue)(nil), // 133: dota.CWorkshop_GetPackageDailyRevenue_Response.CountryDailyRevenue + (*CMsgClientToGCCreateStaticRecipe_Item)(nil), // 134: dota.CMsgClientToGCCreateStaticRecipe.Item + (*CMsgClientToGCCreateStaticRecipeResponse_OutputItem)(nil), // 135: dota.CMsgClientToGCCreateStaticRecipeResponse.OutputItem + (*CMsgClientToGCCreateStaticRecipeResponse_InputError)(nil), // 136: dota.CMsgClientToGCCreateStaticRecipeResponse.InputError + (*CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput)(nil), // 137: dota.CMsgClientToGCCreateStaticRecipeResponse.AdditionalOutput + (*CMsgProcessTransactionOrder_Item)(nil), // 138: dota.CMsgProcessTransactionOrder.Item + (*CMsgGCToGCConsoleOutput_OutputLine)(nil), // 139: dota.CMsgGCToGCConsoleOutput.OutputLine + (*CMsgItemAges_MaxItemIDTimestamp)(nil), // 140: dota.CMsgItemAges.MaxItemIDTimestamp + (*CMsgGCToClientCurrencyPricePoints_Currency)(nil), // 141: dota.CMsgGCToClientCurrencyPricePoints.Currency + (*CMsgGCToGCFlushSteamInventoryCache_Key)(nil), // 142: dota.CMsgGCToGCFlushSteamInventoryCache.Key + (*CSOEconItem)(nil), // 143: dota.CSOEconItem + (EGCMsgResponse)(0), // 144: dota.EGCMsgResponse + (*CExtraMsgBlock)(nil), // 145: dota.CExtraMsgBlock } var file_econ_gcmessages_proto_depIdxs = []int32{ - 120, // 0: dota.CMsgEconPlayerStrangeCountAdjustment.strange_count_adjustments:type_name -> dota.CMsgEconPlayerStrangeCountAdjustment.CStrangeCountAdjustment - 121, // 1: dota.CMsgGCRequestStoreSalesDataResponse.sale_price:type_name -> dota.CMsgGCRequestStoreSalesDataResponse.Price - 122, // 2: dota.CMsgLookupMultipleAccountNamesResponse.accounts:type_name -> dota.CMsgLookupMultipleAccountNamesResponse.Account - 123, // 3: dota.CMsgGCToGCGrantAccountRolledItems.items:type_name -> dota.CMsgGCToGCGrantAccountRolledItems.Item - 39, // 4: dota.CMsgServerUseItem.use_item_msg:type_name -> dota.CMsgUseItem - 139, // 5: dota.CMsgClientToGCWrapAndDeliverGiftResponse.response:type_name -> dota.EGCMsgResponse - 1, // 6: dota.CMsgClientToGCWrapAndDeliverGiftResponse.trade_restriction:type_name -> dota.EGCMsgInitiateTradeResponse - 1, // 7: dota.CMsgClientToGCGetGiftPermissionsResponse.sender_permission:type_name -> dota.EGCMsgInitiateTradeResponse - 126, // 8: dota.CMsgClientToGCGetGiftPermissionsResponse.friend_permissions:type_name -> dota.CMsgClientToGCGetGiftPermissionsResponse.FriendPermission - 5, // 9: dota.CMsgClientToGCUnpackBundleResponse.response:type_name -> dota.CMsgClientToGCUnpackBundleResponse.EUnpackBundle - 13, // 10: dota.CMsgClientToGCEquipItems.equips:type_name -> dota.CMsgAdjustItemEquippedState - 6, // 11: dota.CMsgClientToGCSetItemStyleResponse.response:type_name -> dota.CMsgClientToGCSetItemStyleResponse.ESetStyle - 7, // 12: dota.CMsgClientToGCUnlockItemStyleResponse.response:type_name -> dota.CMsgClientToGCUnlockItemStyleResponse.EUnlockStyle - 139, // 13: dota.CMsgClientToGCUnlockCrateResponse.result:type_name -> dota.EGCMsgResponse - 127, // 14: dota.CMsgClientToGCUnlockCrateResponse.granted_items:type_name -> dota.CMsgClientToGCUnlockCrateResponse.Item - 8, // 15: dota.CMsgClientToGCRemoveItemAttributeResponse.response:type_name -> dota.CMsgClientToGCRemoveItemAttributeResponse.ERemoveItemAttribute - 9, // 16: dota.CMsgClientToGCNameItemResponse.response:type_name -> dota.CMsgClientToGCNameItemResponse.ENameItem - 77, // 17: dota.CProtoItemSocket_Empty.socket:type_name -> dota.CProtoItemSocket - 77, // 18: dota.CProtoItemSocket_Effect.socket:type_name -> dota.CProtoItemSocket - 77, // 19: dota.CProtoItemSocket_Color.socket:type_name -> dota.CProtoItemSocket - 77, // 20: dota.CProtoItemSocket_Strange.socket:type_name -> dota.CProtoItemSocket - 77, // 21: dota.CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY.socket:type_name -> dota.CProtoItemSocket - 77, // 22: dota.CProtoItemSocket_Spectator.socket:type_name -> dota.CProtoItemSocket - 77, // 23: dota.CProtoItemSocket_AssetModifier.socket:type_name -> dota.CProtoItemSocket - 77, // 24: dota.CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY.socket:type_name -> dota.CProtoItemSocket - 77, // 25: dota.CProtoItemSocket_Autograph.socket:type_name -> dota.CProtoItemSocket - 77, // 26: dota.CProtoItemSocket_StaticVisuals.socket:type_name -> dota.CProtoItemSocket - 128, // 27: dota.CWorkshop_GetItemDailyRevenue_Response.country_revenue:type_name -> dota.CWorkshop_GetItemDailyRevenue_Response.CountryDailyRevenue - 129, // 28: dota.CWorkshop_GetPackageDailyRevenue_Response.country_revenue:type_name -> dota.CWorkshop_GetPackageDailyRevenue_Response.CountryDailyRevenue - 130, // 29: dota.CMsgClientToGCCreateStaticRecipe.items:type_name -> dota.CMsgClientToGCCreateStaticRecipe.Item - 10, // 30: dota.CMsgClientToGCCreateStaticRecipeResponse.response:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.EResponse - 131, // 31: dota.CMsgClientToGCCreateStaticRecipeResponse.output_items:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.OutputItem - 132, // 32: dota.CMsgClientToGCCreateStaticRecipeResponse.input_errors:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.InputError - 133, // 33: dota.CMsgClientToGCCreateStaticRecipeResponse.additional_outputs:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.AdditionalOutput - 134, // 34: dota.CMsgProcessTransactionOrder.items:type_name -> dota.CMsgProcessTransactionOrder.Item - 98, // 35: dota.CMsgGCToGCStoreProcessCDKeyTransaction.order:type_name -> dota.CMsgProcessTransactionOrder - 98, // 36: dota.CMsgGCToGCStoreProcessSettlement.order:type_name -> dota.CMsgProcessTransactionOrder - 135, // 37: dota.CMsgGCToGCConsoleOutput.msgs:type_name -> dota.CMsgGCToGCConsoleOutput.OutputLine - 136, // 38: dota.CMsgItemAges.max_item_id_timestamps:type_name -> dota.CMsgItemAges.MaxItemIDTimestamp - 137, // 39: dota.CMsgGCToClientCurrencyPricePoints.currencies:type_name -> dota.CMsgGCToClientCurrencyPricePoints.Currency - 138, // 40: dota.CMsgGCToGCFlushSteamInventoryCache.keys:type_name -> dota.CMsgGCToGCFlushSteamInventoryCache.Key - 11, // 41: dota.CMsgClientToGCGetLimitedItemPurchaseQuantityResponse.result:type_name -> dota.CMsgClientToGCGetLimitedItemPurchaseQuantityResponse.EResponse - 140, // 42: dota.CMsgGCToGCUpdateWelcomeMsg.new_msg:type_name -> dota.CExtraMsgBlock - 124, // 43: dota.CMsgGCToGCGrantAccountRolledItems.Item.dynamic_attributes:type_name -> dota.CMsgGCToGCGrantAccountRolledItems.Item.DynamicAttribute - 125, // 44: dota.CMsgGCToGCGrantAccountRolledItems.Item.additional_audit_entries:type_name -> dota.CMsgGCToGCGrantAccountRolledItems.Item.AdditionalAuditEntry - 1, // 45: dota.CMsgClientToGCGetGiftPermissionsResponse.FriendPermission.permission:type_name -> dota.EGCMsgInitiateTradeResponse - 10, // 46: dota.CMsgClientToGCCreateStaticRecipeResponse.InputError.error:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.EResponse - 47, // [47:47] is the sub-list for method output_type - 47, // [47:47] is the sub-list for method input_type - 47, // [47:47] is the sub-list for extension type_name - 47, // [47:47] is the sub-list for extension extendee - 0, // [0:47] is the sub-list for field type_name + 124, // 0: dota.CMsgEconPlayerStrangeCountAdjustment.strange_count_adjustments:type_name -> dota.CMsgEconPlayerStrangeCountAdjustment.CStrangeCountAdjustment + 125, // 1: dota.CMsgGCRequestStoreSalesDataResponse.sale_price:type_name -> dota.CMsgGCRequestStoreSalesDataResponse.Price + 126, // 2: dota.CMsgLookupMultipleAccountNamesResponse.accounts:type_name -> dota.CMsgLookupMultipleAccountNamesResponse.Account + 143, // 3: dota.CMsgRequestCrateItemsResponse.peek_items:type_name -> dota.CSOEconItem + 127, // 4: dota.CMsgGCToGCGrantAccountRolledItems.items:type_name -> dota.CMsgGCToGCGrantAccountRolledItems.Item + 40, // 5: dota.CMsgServerUseItem.use_item_msg:type_name -> dota.CMsgUseItem + 143, // 6: dota.CMsgGCAddGiftItem.wrapped_item:type_name -> dota.CSOEconItem + 144, // 7: dota.CMsgClientToGCWrapAndDeliverGiftResponse.response:type_name -> dota.EGCMsgResponse + 1, // 8: dota.CMsgClientToGCWrapAndDeliverGiftResponse.trade_restriction:type_name -> dota.EGCMsgInitiateTradeResponse + 1, // 9: dota.CMsgClientToGCGetGiftPermissionsResponse.sender_permission:type_name -> dota.EGCMsgInitiateTradeResponse + 130, // 10: dota.CMsgClientToGCGetGiftPermissionsResponse.friend_permissions:type_name -> dota.CMsgClientToGCGetGiftPermissionsResponse.FriendPermission + 5, // 11: dota.CMsgClientToGCUnpackBundleResponse.response:type_name -> dota.CMsgClientToGCUnpackBundleResponse.EUnpackBundle + 6, // 12: dota.CMsgClientToGCPackBundleResponse.response:type_name -> dota.CMsgClientToGCPackBundleResponse.EPackBundle + 14, // 13: dota.CMsgClientToGCEquipItems.equips:type_name -> dota.CMsgAdjustItemEquippedState + 7, // 14: dota.CMsgClientToGCSetItemStyleResponse.response:type_name -> dota.CMsgClientToGCSetItemStyleResponse.ESetStyle + 8, // 15: dota.CMsgClientToGCUnlockItemStyleResponse.response:type_name -> dota.CMsgClientToGCUnlockItemStyleResponse.EUnlockStyle + 144, // 16: dota.CMsgClientToGCUnlockCrateResponse.result:type_name -> dota.EGCMsgResponse + 131, // 17: dota.CMsgClientToGCUnlockCrateResponse.granted_items:type_name -> dota.CMsgClientToGCUnlockCrateResponse.Item + 9, // 18: dota.CMsgClientToGCRemoveItemAttributeResponse.response:type_name -> dota.CMsgClientToGCRemoveItemAttributeResponse.ERemoveItemAttribute + 10, // 19: dota.CMsgClientToGCNameItemResponse.response:type_name -> dota.CMsgClientToGCNameItemResponse.ENameItem + 81, // 20: dota.CProtoItemSocket_Empty.socket:type_name -> dota.CProtoItemSocket + 81, // 21: dota.CProtoItemSocket_Effect.socket:type_name -> dota.CProtoItemSocket + 81, // 22: dota.CProtoItemSocket_Color.socket:type_name -> dota.CProtoItemSocket + 81, // 23: dota.CProtoItemSocket_Strange.socket:type_name -> dota.CProtoItemSocket + 81, // 24: dota.CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY.socket:type_name -> dota.CProtoItemSocket + 81, // 25: dota.CProtoItemSocket_Spectator.socket:type_name -> dota.CProtoItemSocket + 81, // 26: dota.CProtoItemSocket_AssetModifier.socket:type_name -> dota.CProtoItemSocket + 81, // 27: dota.CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY.socket:type_name -> dota.CProtoItemSocket + 81, // 28: dota.CProtoItemSocket_Autograph.socket:type_name -> dota.CProtoItemSocket + 81, // 29: dota.CProtoItemSocket_StaticVisuals.socket:type_name -> dota.CProtoItemSocket + 132, // 30: dota.CWorkshop_GetItemDailyRevenue_Response.country_revenue:type_name -> dota.CWorkshop_GetItemDailyRevenue_Response.CountryDailyRevenue + 133, // 31: dota.CWorkshop_GetPackageDailyRevenue_Response.country_revenue:type_name -> dota.CWorkshop_GetPackageDailyRevenue_Response.CountryDailyRevenue + 134, // 32: dota.CMsgClientToGCCreateStaticRecipe.items:type_name -> dota.CMsgClientToGCCreateStaticRecipe.Item + 11, // 33: dota.CMsgClientToGCCreateStaticRecipeResponse.response:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.EResponse + 135, // 34: dota.CMsgClientToGCCreateStaticRecipeResponse.output_items:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.OutputItem + 136, // 35: dota.CMsgClientToGCCreateStaticRecipeResponse.input_errors:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.InputError + 137, // 36: dota.CMsgClientToGCCreateStaticRecipeResponse.additional_outputs:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.AdditionalOutput + 138, // 37: dota.CMsgProcessTransactionOrder.items:type_name -> dota.CMsgProcessTransactionOrder.Item + 102, // 38: dota.CMsgGCToGCStoreProcessCDKeyTransaction.order:type_name -> dota.CMsgProcessTransactionOrder + 102, // 39: dota.CMsgGCToGCStoreProcessSettlement.order:type_name -> dota.CMsgProcessTransactionOrder + 139, // 40: dota.CMsgGCToGCConsoleOutput.msgs:type_name -> dota.CMsgGCToGCConsoleOutput.OutputLine + 140, // 41: dota.CMsgItemAges.max_item_id_timestamps:type_name -> dota.CMsgItemAges.MaxItemIDTimestamp + 141, // 42: dota.CMsgGCToClientCurrencyPricePoints.currencies:type_name -> dota.CMsgGCToClientCurrencyPricePoints.Currency + 142, // 43: dota.CMsgGCToGCFlushSteamInventoryCache.keys:type_name -> dota.CMsgGCToGCFlushSteamInventoryCache.Key + 12, // 44: dota.CMsgClientToGCGetLimitedItemPurchaseQuantityResponse.result:type_name -> dota.CMsgClientToGCGetLimitedItemPurchaseQuantityResponse.EResponse + 145, // 45: dota.CMsgGCToGCUpdateWelcomeMsg.new_msg:type_name -> dota.CExtraMsgBlock + 128, // 46: dota.CMsgGCToGCGrantAccountRolledItems.Item.dynamic_attributes:type_name -> dota.CMsgGCToGCGrantAccountRolledItems.Item.DynamicAttribute + 129, // 47: dota.CMsgGCToGCGrantAccountRolledItems.Item.additional_audit_entries:type_name -> dota.CMsgGCToGCGrantAccountRolledItems.Item.AdditionalAuditEntry + 1, // 48: dota.CMsgClientToGCGetGiftPermissionsResponse.FriendPermission.permission:type_name -> dota.EGCMsgInitiateTradeResponse + 11, // 49: dota.CMsgClientToGCCreateStaticRecipeResponse.InputError.error:type_name -> dota.CMsgClientToGCCreateStaticRecipeResponse.EResponse + 50, // [50:50] is the sub-list for method output_type + 50, // [50:50] is the sub-list for method input_type + 50, // [50:50] is the sub-list for extension type_name + 50, // [50:50] is the sub-list for extension extendee + 0, // [0:50] is the sub-list for field type_name } func init() { file_econ_gcmessages_proto_init() } @@ -10713,6 +11115,7 @@ func file_econ_gcmessages_proto_init() { file_steammessages_proto_init() file_econ_shared_enums_proto_init() file_gcsdk_gcmessages_proto_init() + file_base_gcmessages_proto_init() if !protoimpl.UnsafeEnabled { file_econ_gcmessages_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgApplyAutograph); i { @@ -11231,7 +11634,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCWrapAndDeliverGiftResponse); i { + switch v := v.(*CMsgSQLGCToGCRevokeUntrustedGift); i { case 0: return &v.state case 1: @@ -11243,7 +11646,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnwrapGift); i { + switch v := v.(*CMsgClientToGCWrapAndDeliverGiftResponse); i { case 0: return &v.state case 1: @@ -11255,7 +11658,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetGiftPermissions); i { + switch v := v.(*CMsgClientToGCUnwrapGift); i { case 0: return &v.state case 1: @@ -11267,7 +11670,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetGiftPermissionsResponse); i { + switch v := v.(*CMsgClientToGCGetGiftPermissions); i { case 0: return &v.state case 1: @@ -11279,7 +11682,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnpackBundle); i { + switch v := v.(*CMsgClientToGCGetGiftPermissionsResponse); i { case 0: return &v.state case 1: @@ -11291,7 +11694,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnpackBundleResponse); i { + switch v := v.(*CMsgClientToGCUnpackBundle); i { case 0: return &v.state case 1: @@ -11303,7 +11706,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientStoreTransactionCompleted); i { + switch v := v.(*CMsgClientToGCUnpackBundleResponse); i { case 0: return &v.state case 1: @@ -11315,7 +11718,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCEquipItems); i { + switch v := v.(*CMsgClientToGCPackBundle); i { case 0: return &v.state case 1: @@ -11327,7 +11730,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCEquipItemsResponse); i { + switch v := v.(*CMsgClientToGCPackBundleResponse); i { case 0: return &v.state case 1: @@ -11339,7 +11742,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetItemStyle); i { + switch v := v.(*CMsgGCToClientStoreTransactionCompleted); i { case 0: return &v.state case 1: @@ -11351,7 +11754,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetItemStyleResponse); i { + switch v := v.(*CMsgClientToGCEquipItems); i { case 0: return &v.state case 1: @@ -11363,7 +11766,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnlockItemStyle); i { + switch v := v.(*CMsgClientToGCEquipItemsResponse); i { case 0: return &v.state case 1: @@ -11375,7 +11778,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnlockItemStyleResponse); i { + switch v := v.(*CMsgClientToGCSetItemStyle); i { case 0: return &v.state case 1: @@ -11387,7 +11790,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCSetItemInventoryCategory); i { + switch v := v.(*CMsgClientToGCSetItemStyleResponse); i { case 0: return &v.state case 1: @@ -11399,7 +11802,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnlockCrate); i { + switch v := v.(*CMsgClientToGCUnlockItemStyle); i { case 0: return &v.state case 1: @@ -11411,7 +11814,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnlockCrateResponse); i { + switch v := v.(*CMsgClientToGCUnlockItemStyleResponse); i { case 0: return &v.state case 1: @@ -11423,7 +11826,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRemoveItemAttribute); i { + switch v := v.(*CMsgClientToGCSetItemInventoryCategory); i { case 0: return &v.state case 1: @@ -11435,7 +11838,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCRemoveItemAttributeResponse); i { + switch v := v.(*CMsgClientToGCUnlockCrate); i { case 0: return &v.state case 1: @@ -11447,7 +11850,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCNameItem); i { + switch v := v.(*CMsgClientToGCUnlockCrateResponse); i { case 0: return &v.state case 1: @@ -11459,7 +11862,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCNameItemResponse); i { + switch v := v.(*CMsgClientToGCRemoveItemAttribute); i { case 0: return &v.state case 1: @@ -11471,7 +11874,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCSetItemPosition); i { + switch v := v.(*CMsgClientToGCRemoveItemAttributeResponse); i { case 0: return &v.state case 1: @@ -11483,7 +11886,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CAttribute_ItemDynamicRecipeComponent); i { + switch v := v.(*CMsgClientToGCNameItem); i { case 0: return &v.state case 1: @@ -11495,7 +11898,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket); i { + switch v := v.(*CMsgClientToGCNameItemResponse); i { case 0: return &v.state case 1: @@ -11507,7 +11910,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_Empty); i { + switch v := v.(*CMsgGCSetItemPosition); i { case 0: return &v.state case 1: @@ -11519,7 +11922,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_Effect); i { + switch v := v.(*CAttribute_ItemDynamicRecipeComponent); i { case 0: return &v.state case 1: @@ -11531,7 +11934,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_Color); i { + switch v := v.(*CProtoItemSocket); i { case 0: return &v.state case 1: @@ -11543,7 +11946,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_Strange); i { + switch v := v.(*CProtoItemSocket_Empty); i { case 0: return &v.state case 1: @@ -11555,7 +11958,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY); i { + switch v := v.(*CProtoItemSocket_Effect); i { case 0: return &v.state case 1: @@ -11567,7 +11970,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_Spectator); i { + switch v := v.(*CProtoItemSocket_Color); i { case 0: return &v.state case 1: @@ -11579,7 +11982,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_AssetModifier); i { + switch v := v.(*CProtoItemSocket_Strange); i { case 0: return &v.state case 1: @@ -11591,7 +11994,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY); i { + switch v := v.(*CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY); i { case 0: return &v.state case 1: @@ -11603,7 +12006,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_Autograph); i { + switch v := v.(*CProtoItemSocket_Spectator); i { case 0: return &v.state case 1: @@ -11615,7 +12018,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CProtoItemSocket_StaticVisuals); i { + switch v := v.(*CProtoItemSocket_AssetModifier); i { case 0: return &v.state case 1: @@ -11627,7 +12030,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CAttribute_String); i { + switch v := v.(*CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY); i { case 0: return &v.state case 1: @@ -11639,7 +12042,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_GetItemDailyRevenue_Request); i { + switch v := v.(*CProtoItemSocket_Autograph); i { case 0: return &v.state case 1: @@ -11651,7 +12054,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_GetItemDailyRevenue_Response); i { + switch v := v.(*CProtoItemSocket_StaticVisuals); i { case 0: return &v.state case 1: @@ -11663,7 +12066,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_GetPackageDailyRevenue_Request); i { + switch v := v.(*CAttribute_String); i { case 0: return &v.state case 1: @@ -11675,7 +12078,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_GetPackageDailyRevenue_Response); i { + switch v := v.(*CWorkshop_GetItemDailyRevenue_Request); i { case 0: return &v.state case 1: @@ -11687,7 +12090,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSQLGCToGCGrantBackpackSlots); i { + switch v := v.(*CWorkshop_GetItemDailyRevenue_Response); i { case 0: return &v.state case 1: @@ -11699,7 +12102,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCLookupAccountName); i { + switch v := v.(*CWorkshop_GetPackageDailyRevenue_Request); i { case 0: return &v.state case 1: @@ -11711,7 +12114,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCLookupAccountNameResponse); i { + switch v := v.(*CWorkshop_GetPackageDailyRevenue_Response); i { case 0: return &v.state case 1: @@ -11723,7 +12126,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateStaticRecipe); i { + switch v := v.(*CMsgSQLGCToGCGrantBackpackSlots); i { case 0: return &v.state case 1: @@ -11735,7 +12138,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateStaticRecipeResponse); i { + switch v := v.(*CMsgClientToGCLookupAccountName); i { case 0: return &v.state case 1: @@ -11747,7 +12150,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgProcessTransactionOrder); i { + switch v := v.(*CMsgClientToGCLookupAccountNameResponse); i { case 0: return &v.state case 1: @@ -11759,7 +12162,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCStoreProcessCDKeyTransaction); i { + switch v := v.(*CMsgClientToGCCreateStaticRecipe); i { case 0: return &v.state case 1: @@ -11771,7 +12174,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCStoreProcessCDKeyTransactionResponse); i { + switch v := v.(*CMsgClientToGCCreateStaticRecipeResponse); i { case 0: return &v.state case 1: @@ -11783,7 +12186,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCStoreProcessSettlement); i { + switch v := v.(*CMsgProcessTransactionOrder); i { case 0: return &v.state case 1: @@ -11795,7 +12198,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCStoreProcessSettlementResponse); i { + switch v := v.(*CMsgGCToGCStoreProcessCDKeyTransaction); i { case 0: return &v.state case 1: @@ -11807,7 +12210,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCBroadcastConsoleCommand); i { + switch v := v.(*CMsgGCToGCStoreProcessCDKeyTransactionResponse); i { case 0: return &v.state case 1: @@ -11819,7 +12222,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCConsoleOutput); i { + switch v := v.(*CMsgGCToGCStoreProcessSettlement); i { case 0: return &v.state case 1: @@ -11831,7 +12234,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgItemAges); i { + switch v := v.(*CMsgGCToGCStoreProcessSettlementResponse); i { case 0: return &v.state case 1: @@ -11843,7 +12246,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCInternalTestMsg); i { + switch v := v.(*CMsgGCToGCBroadcastConsoleCommand); i { case 0: return &v.state case 1: @@ -11855,7 +12258,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCClientServerVersionsUpdated); i { + switch v := v.(*CMsgGCToGCConsoleOutput); i { case 0: return &v.state case 1: @@ -11867,7 +12270,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCBroadcastMessageFromSub); i { + switch v := v.(*CMsgItemAges); i { case 0: return &v.state case 1: @@ -11879,7 +12282,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientCurrencyPricePoints); i { + switch v := v.(*CMsgGCToGCInternalTestMsg); i { case 0: return &v.state case 1: @@ -11891,7 +12294,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgBannedWordList); i { + switch v := v.(*CMsgGCToGCClientServerVersionsUpdated); i { case 0: return &v.state case 1: @@ -11903,7 +12306,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCFlushSteamInventoryCache); i { + switch v := v.(*CMsgGCToGCBroadcastMessageFromSub); i { case 0: return &v.state case 1: @@ -11915,7 +12318,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCUpdateSubscriptionItems); i { + switch v := v.(*CMsgGCToClientCurrencyPricePoints); i { case 0: return &v.state case 1: @@ -11927,7 +12330,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCSelfPing); i { + switch v := v.(*CMsgBannedWordList); i { case 0: return &v.state case 1: @@ -11939,7 +12342,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCGetInfuxIntervalStats); i { + switch v := v.(*CMsgGCToGCFlushSteamInventoryCache); i { case 0: return &v.state case 1: @@ -11951,7 +12354,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCGetInfuxIntervalStatsResponse); i { + switch v := v.(*CMsgGCToGCUpdateSubscriptionItems); i { case 0: return &v.state case 1: @@ -11963,7 +12366,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCPurchaseSucceeded); i { + switch v := v.(*CMsgGCToGCSelfPing); i { case 0: return &v.state case 1: @@ -11975,7 +12378,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetLimitedItemPurchaseQuantity); i { + switch v := v.(*CMsgGCToGCGetInfuxIntervalStats); i { case 0: return &v.state case 1: @@ -11987,7 +12390,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetLimitedItemPurchaseQuantityResponse); i { + switch v := v.(*CMsgGCToGCGetInfuxIntervalStatsResponse); i { case 0: return &v.state case 1: @@ -11999,7 +12402,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCUpdateWelcomeMsg); i { + switch v := v.(*CMsgGCToGCPurchaseSucceeded); i { case 0: return &v.state case 1: @@ -12011,7 +12414,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment); i { + switch v := v.(*CMsgClientToGCGetLimitedItemPurchaseQuantity); i { case 0: return &v.state case 1: @@ -12023,7 +12426,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCRequestStoreSalesDataResponse_Price); i { + switch v := v.(*CMsgClientToGCGetLimitedItemPurchaseQuantityResponse); i { case 0: return &v.state case 1: @@ -12035,7 +12438,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgLookupMultipleAccountNamesResponse_Account); i { + switch v := v.(*CMsgGCToGCUpdateWelcomeMsg); i { case 0: return &v.state case 1: @@ -12047,7 +12450,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCGrantAccountRolledItems_Item); i { + switch v := v.(*CMsgEconPlayerStrangeCountAdjustment_CStrangeCountAdjustment); i { case 0: return &v.state case 1: @@ -12059,7 +12462,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute); i { + switch v := v.(*CMsgGCRequestStoreSalesDataResponse_Price); i { case 0: return &v.state case 1: @@ -12071,7 +12474,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry); i { + switch v := v.(*CMsgLookupMultipleAccountNamesResponse_Account); i { case 0: return &v.state case 1: @@ -12083,7 +12486,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCGetGiftPermissionsResponse_FriendPermission); i { + switch v := v.(*CMsgGCToGCGrantAccountRolledItems_Item); i { case 0: return &v.state case 1: @@ -12095,7 +12498,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCUnlockCrateResponse_Item); i { + switch v := v.(*CMsgGCToGCGrantAccountRolledItems_Item_DynamicAttribute); i { case 0: return &v.state case 1: @@ -12107,7 +12510,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue); i { + switch v := v.(*CMsgGCToGCGrantAccountRolledItems_Item_AdditionalAuditEntry); i { case 0: return &v.state case 1: @@ -12119,7 +12522,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue); i { + switch v := v.(*CMsgClientToGCGetGiftPermissionsResponse_FriendPermission); i { case 0: return &v.state case 1: @@ -12131,7 +12534,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateStaticRecipe_Item); i { + switch v := v.(*CMsgClientToGCUnlockCrateResponse_Item); i { case 0: return &v.state case 1: @@ -12143,7 +12546,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateStaticRecipeResponse_OutputItem); i { + switch v := v.(*CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue); i { case 0: return &v.state case 1: @@ -12155,7 +12558,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateStaticRecipeResponse_InputError); i { + switch v := v.(*CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue); i { case 0: return &v.state case 1: @@ -12167,7 +12570,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput); i { + switch v := v.(*CMsgClientToGCCreateStaticRecipe_Item); i { case 0: return &v.state case 1: @@ -12179,7 +12582,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgProcessTransactionOrder_Item); i { + switch v := v.(*CMsgClientToGCCreateStaticRecipeResponse_OutputItem); i { case 0: return &v.state case 1: @@ -12191,7 +12594,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCConsoleOutput_OutputLine); i { + switch v := v.(*CMsgClientToGCCreateStaticRecipeResponse_InputError); i { case 0: return &v.state case 1: @@ -12203,7 +12606,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgItemAges_MaxItemIDTimestamp); i { + switch v := v.(*CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput); i { case 0: return &v.state case 1: @@ -12215,7 +12618,7 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientCurrencyPricePoints_Currency); i { + switch v := v.(*CMsgProcessTransactionOrder_Item); i { case 0: return &v.state case 1: @@ -12227,6 +12630,42 @@ func file_econ_gcmessages_proto_init() { } } file_econ_gcmessages_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToGCConsoleOutput_OutputLine); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_econ_gcmessages_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgItemAges_MaxItemIDTimestamp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_econ_gcmessages_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgGCToClientCurrencyPricePoints_Currency); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_econ_gcmessages_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgGCToGCFlushSteamInventoryCache_Key); i { case 0: return &v.state @@ -12244,8 +12683,8 @@ func file_econ_gcmessages_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_econ_gcmessages_proto_rawDesc, - NumEnums: 12, - NumMessages: 127, + NumEnums: 13, + NumMessages: 130, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/econ_gcmessages.proto b/dota/econ_gcmessages.proto index e1a78f57..46f83ab0 100644 --- a/dota/econ_gcmessages.proto +++ b/dota/econ_gcmessages.proto @@ -6,10 +6,13 @@ option go_package = "github.com/dotabuff/manta/dota;dota"; import "steammessages.proto"; import "econ_shared_enums.proto"; import "gcsdk_gcmessages.proto"; +import "base_gcmessages.proto"; enum EGCItemMsg { k_EMsgGCBase = 1000; k_EMsgGCSetItemPosition = 1001; + k_EMsgClientToGCPackBundle = 1002; + k_EMsgClientToGCPackBundleResponse = 1003; k_EMsgGCDelete = 1004; k_EMsgGCVerifyCacheSubscription = 1005; k_EMsgClientToGCNameItem = 1006; @@ -44,6 +47,7 @@ enum EGCItemMsg { k_EMsgGCResetStrangeGemCountResponse = 1095; k_EMsgGCServerUseItemRequest = 1103; k_EMsgGCAddGiftItem = 1104; + k_EMsgSQLGCToGCRevokeUntrustedGift = 1105; k_EMsgClientToGCRemoveItemGifterAttributes = 1109; k_EMsgClientToGCRemoveItemName = 1110; k_EMsgClientToGCRemoveItemDescription = 1111; @@ -259,6 +263,7 @@ message CMsgRequestCrateItemsResponse { optional uint32 response = 1; repeated uint32 item_defs = 2; repeated uint32 peek_item_defs = 3; + repeated CSOEconItem peek_items = 4; } message CMsgRequestCrateEscalationLevel { @@ -336,6 +341,7 @@ message CMsgGCToGCGrantAccountRolledItems { repeated CMsgGCToGCGrantAccountRolledItems.Item.DynamicAttribute dynamic_attributes = 5; repeated CMsgGCToGCGrantAccountRolledItems.Item.AdditionalAuditEntry additional_audit_entries = 6; optional uint32 inventory_token = 7; + optional int32 quality = 8; } optional uint32 account_id = 1; @@ -440,8 +446,11 @@ message CMsgGCGetAccountSubscriptionItemResponse { } message CMsgGCAddGiftItem { - optional uint32 account_id = 1; - optional uint64 item_id = 2; + optional uint32 gifter_account_id = 1; + optional uint32 receiver_account_id = 2; + optional CSOEconItem wrapped_item = 3; + optional string gift_message = 4; + optional bool is_wallet_cash_trusted = 5; } message CMsgClientToGCWrapAndDeliverGift { @@ -450,6 +459,11 @@ message CMsgClientToGCWrapAndDeliverGift { optional string gift_message = 3; } +message CMsgSQLGCToGCRevokeUntrustedGift { + optional uint32 account_id = 1; + optional uint64 sent_item_id = 4; +} + message CMsgClientToGCWrapAndDeliverGiftResponse { optional EGCMsgResponse response = 1; optional uint32 gifting_charge_uses = 2; @@ -501,6 +515,34 @@ message CMsgClientToGCUnpackBundleResponse { repeated uint32 unpacked_item_def_indexes = 3; } +message CMsgClientToGCPackBundle { + repeated uint64 item_ids = 1; + optional uint32 bundle_item_def_index = 2; +} + +message CMsgClientToGCPackBundleResponse { + enum EPackBundle { + k_PackBundle_Succeeded = 0; + k_PackBundle_Failed_InternalError = 1; + k_PackBundle_Failed_ItemIsNotBundle = 2; + k_PackBundle_Failed_SOCacheError = 3; + k_PackBundle_Failed_ItemIsInvalid = 4; + k_PackBundle_Failed_BadItemQuantity = 5; + k_PackBundle_Failed_UnableToDeleteItem = 6; + k_PackBundle_Failed_BundleCannotBePacked = 7; + k_PackBundle_Failed_ItemIsUntradeable = 8; + k_PackBundle_Failed_ItemIsEquipped = 9; + k_PackBundle_Failed_ItemHasGems = 10; + k_PackBundle_Failed_ItemMixedQuality = 11; + k_PackBundle_Failed_ItemInvalidQuality = 12; + k_PackBundle_Failed_ItemIsNonEconomy = 13; + k_PackBundle_Failed_Disabled = 14; + } + + optional uint64 item_id = 1; + optional CMsgClientToGCPackBundleResponse.EPackBundle response = 2; +} + message CMsgGCToClientStoreTransactionCompleted { optional uint64 txn_id = 1; repeated uint64 item_ids = 2; diff --git a/dota/econ_shared_enums.pb.go b/dota/econ_shared_enums.pb.go index 2a6c8c14..0b29e12e 100644 --- a/dota/econ_shared_enums.pb.go +++ b/dota/econ_shared_enums.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: econ_shared_enums.proto diff --git a/dota/engine_gcmessages.pb.go b/dota/engine_gcmessages.pb.go index 2a9d0b8e..6dd1dcb7 100644 --- a/dota/engine_gcmessages.pb.go +++ b/dota/engine_gcmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: engine_gcmessages.proto diff --git a/dota/enums_clientserver.pb.go b/dota/enums_clientserver.pb.go index cbd82407..c1febf48 100644 --- a/dota/enums_clientserver.pb.go +++ b/dota/enums_clientserver.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: enums_clientserver.proto @@ -97,7 +97,6 @@ const ( EMsg_k_EMsgLicenseProcessingComplete EMsg = 316 EMsg_k_EMsgSetTestFlag EMsg = 317 EMsg_k_EMsgQueuedEmailsComplete EMsg = 318 - EMsg_k_EMsgGMReportPHPError EMsg = 319 EMsg_k_EMsgGMDRMSync EMsg = 320 EMsg_k_EMsgPhysicalBoxInventory EMsg = 321 EMsg_k_EMsgUpdateConfigFile EMsg = 322 @@ -115,6 +114,8 @@ const ( EMsg_k_EMsgExpectShellRestart EMsg = 336 EMsg_k_EMsgHotFixProgress EMsg = 337 EMsg_k_EMsgGMStatsForwardToAdminConnections EMsg = 338 + EMsg_k_EMsgGMGetModifiedConVars EMsg = 339 + EMsg_k_EMsgGMGetModifiedConVarsResponse EMsg = 340 EMsg_k_EMsgBaseAIS EMsg = 400 EMsg_k_EMsgAISRequestContentDescription EMsg = 402 EMsg_k_EMsgAISUpdateAppInfo EMsg = 403 @@ -523,11 +524,8 @@ const ( EMsg_k_EMsgClientDPSendSpecialSurveyResponse EMsg = 1622 EMsg_k_EMsgClientDPSendSpecialSurveyResponseReply EMsg = 1623 EMsg_k_EMsgDPStoreSaleStatistics EMsg = 1624 - EMsg_k_EMsgClientDPUpdateAppJobReport EMsg = 1625 - EMsg_k_EMsgClientDPUnsignedInstallScript EMsg = 1627 EMsg_k_EMsgDPPartnerMicroTxns EMsg = 1628 EMsg_k_EMsgDPPartnerMicroTxnsResponse EMsg = 1629 - EMsg_k_EMsgClientDPContentStatsReport EMsg = 1630 EMsg_k_EMsgDPVRUniquePlayersStat EMsg = 1631 EMsg_k_EMsgBaseCM EMsg = 1700 EMsg_k_EMsgCMSetAllowState EMsg = 1701 @@ -573,6 +571,9 @@ const ( EMsg_k_EMsgGCHAppCheersReceived EMsg = 2242 EMsg_k_EMsgGCHAppCheersGetAllowedTypes EMsg = 2243 EMsg_k_EMsgGCHAppCheersGetAllowedTypesResponse EMsg = 2244 + EMsg_k_EMsgGCHRoutingRulesFromGCHtoGM EMsg = 2245 + EMsg_k_EMsgGCHRoutingRulesToGCHfromGM EMsg = 2246 + EMsg_k_EMsgUpdateCMMessageRateRules EMsg = 2247 EMsg_k_EMsgBaseP2P EMsg = 2500 EMsg_k_EMsgP2PIntroducerMessage EMsg = 2502 EMsg_k_EMsgBaseSM EMsg = 2900 @@ -719,8 +720,6 @@ const ( EMsg_k_EMsgAMSendQueuedEmails EMsg = 4152 EMsg_k_EMsgAMSetLicenseFlags EMsg = 4153 EMsg_k_EMsgCommunityDeleteUserNews EMsg = 4155 - EMsg_k_EMsgAMAllowUserFilesRequest EMsg = 4156 - EMsg_k_EMsgAMAllowUserFilesResponse EMsg = 4157 EMsg_k_EMsgAMGetAccountStatus EMsg = 4158 EMsg_k_EMsgAMGetAccountStatusResponse EMsg = 4159 EMsg_k_EMsgAMEditBanReason EMsg = 4160 @@ -748,7 +747,6 @@ const ( EMsg_k_EMsgAMSupportIsAccountEnabledResponse EMsg = 4210 EMsg_k_EMsgUGSGetUserStats EMsg = 4211 EMsg_k_EMsgAMGSSearch EMsg = 4213 - EMsg_k_EMsgMarketingMessageUpdate EMsg = 4216 EMsg_k_EMsgChatServerRouteFriendMsg EMsg = 4219 EMsg_k_EMsgAMTicketAuthRequestOrResponse EMsg = 4220 EMsg_k_EMsgAMAddFreeLicense EMsg = 4224 @@ -775,7 +773,6 @@ const ( EMsg_k_EMsgAMCreateFinancialAdjustment EMsg = 4265 EMsg_k_EMsgAMPlayerNicknameList EMsg = 4266 EMsg_k_EMsgAMPlayerNicknameListResponse EMsg = 4267 - EMsg_k_EMsgAMSetDRMTestConfig EMsg = 4268 EMsg_k_EMsgAMGetUserCurrentGameInfo EMsg = 4269 EMsg_k_EMsgAMGetUserCurrentGameInfoResponse EMsg = 4270 EMsg_k_EMsgAMGetGSPlayerList EMsg = 4271 @@ -906,6 +903,7 @@ const ( EMsg_k_EMsgAMPerfectWorldPaymentResponse EMsg = 4422 EMsg_k_EMsgAMECommPayPayment EMsg = 4423 EMsg_k_EMsgAMECommPayPaymentResponse EMsg = 4424 + EMsg_k_EMsgAMSetRemoteClientID EMsg = 4425 EMsg_k_EMsgBasePSRange EMsg = 5000 EMsg_k_EMsgPSCreateShoppingCart EMsg = 5001 EMsg_k_EMsgPSCreateShoppingCartResponse EMsg = 5002 @@ -995,7 +993,6 @@ const ( EMsg_k_EMsgClientP2PConnectionFailInfo EMsg = 5435 EMsg_k_EMsgClientGetDepotDecryptionKey EMsg = 5438 EMsg_k_EMsgClientGetDepotDecryptionKeyResponse EMsg = 5439 - EMsg_k_EMsgGSPerformHardwareSurvey EMsg = 5440 EMsg_k_EMsgClientEnableTestLicense EMsg = 5443 EMsg_k_EMsgClientEnableTestLicenseResponse EMsg = 5444 EMsg_k_EMsgClientDisableTestLicense EMsg = 5445 @@ -1035,8 +1032,10 @@ const ( EMsg_k_EMsgClientOGSEndSession EMsg = 5492 EMsg_k_EMsgClientOGSEndSessionResponse EMsg = 5493 EMsg_k_EMsgClientOGSWriteRow EMsg = 5494 - EMsg_k_EMsgClientDRMTest EMsg = 5495 - EMsg_k_EMsgClientDRMTestResult EMsg = 5496 + EMsg_k_EMsgClientGetPeerContentInfo EMsg = 5495 + EMsg_k_EMsgClientGetPeerContentInfoResponse EMsg = 5496 + EMsg_k_EMsgClientStartPeerContentServer EMsg = 5497 + EMsg_k_EMsgClientStartPeerContentServerResponse EMsg = 5498 EMsg_k_EMsgClientServerUnavailable EMsg = 5500 EMsg_k_EMsgClientServersAvailable EMsg = 5501 EMsg_k_EMsgClientRegisterAuthTicketWithCM EMsg = 5502 @@ -1046,7 +1045,6 @@ const ( EMsg_k_EMsgClientMicroTxnAuthorizeResponse EMsg = 5506 EMsg_k_EMsgClientGetMicroTxnInfo EMsg = 5508 EMsg_k_EMsgClientGetMicroTxnInfoResponse EMsg = 5509 - EMsg_k_EMsgClientMarketingMessageUpdate2 EMsg = 5510 EMsg_k_EMsgClientDeregisterWithServer EMsg = 5511 EMsg_k_EMsgClientSubscribeToPersonaFeed EMsg = 5512 EMsg_k_EMsgClientLogon EMsg = 5514 @@ -1261,8 +1259,6 @@ const ( EMsg_k_EMsgClientUCMUpdatePublishedFileResponse EMsg = 7326 EMsg_k_EMsgUCMUpdatePublishedFile EMsg = 7327 EMsg_k_EMsgUCMUpdatePublishedFileResponse EMsg = 7328 - EMsg_k_EMsgUCMDeletePublishedFile EMsg = 7329 - EMsg_k_EMsgUCMDeletePublishedFileResponse EMsg = 7330 EMsg_k_EMsgUCMUpdatePublishedFileStat EMsg = 7331 EMsg_k_EMsgUCMReloadPublishedFile EMsg = 7337 EMsg_k_EMsgUCMReloadUserFileListCaches EMsg = 7338 @@ -1291,8 +1287,6 @@ const ( EMsg_k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse EMsg = 7379 EMsg_k_EMsgUCMPublishedFileContentUpdated EMsg = 7380 EMsg_k_EMsgClientUCMPublishedFileUpdated EMsg = 7381 - EMsg_k_EMsgClientWorkshopItemChangesRequest EMsg = 7382 - EMsg_k_EMsgClientWorkshopItemChangesResponse EMsg = 7383 EMsg_k_EMsgFSBase EMsg = 7500 EMsg_k_EMsgClientRichPresenceUpload EMsg = 7501 EMsg_k_EMsgClientRichPresenceRequest EMsg = 7502 @@ -1463,14 +1457,14 @@ const ( EMsg_k_EMsgRemoteClientStartStreamResponse EMsg = 9504 EMsg_k_EMsgRemoteClientPing EMsg = 9505 EMsg_k_EMsgRemoteClientPingResponse EMsg = 9506 - EMsg_k_EMsgClientUnlockStreaming EMsg = 9507 - EMsg_k_EMsgClientUnlockStreamingResponse EMsg = 9508 + EMsg_k_EMsgClientUnlockH264 EMsg = 9507 + EMsg_k_EMsgClientUnlockH264Response EMsg = 9508 EMsg_k_EMsgRemoteClientAcceptEULA EMsg = 9509 EMsg_k_EMsgRemoteClientGetControllerConfig EMsg = 9510 EMsg_k_EMsgRemoteClientGetControllerConfigResponse EMsg = 9511 EMsg_k_EMsgRemoteClientStreamingEnabled EMsg = 9512 - EMsg_k_EMsgClientUnlockHEVC EMsg = 9513 - EMsg_k_EMsgClientUnlockHEVCResponse EMsg = 9514 + EMsg_k_EMsgClientUnlockHEVC_OBSOLETE EMsg = 9513 + EMsg_k_EMsgClientUnlockHEVCResponse_OBSOLETE EMsg = 9514 EMsg_k_EMsgRemoteClientStatusRequest EMsg = 9515 EMsg_k_EMsgRemoteClientStatusResponse EMsg = 9516 EMsg_k_EMsgClientConcurrentSessionsBase EMsg = 9600 @@ -1480,7 +1474,6 @@ const ( EMsg_k_EMsgClientBroadcastInit EMsg = 9700 EMsg_k_EMsgClientBroadcastFrames EMsg = 9701 EMsg_k_EMsgClientBroadcastDisconnect EMsg = 9702 - EMsg_k_EMsgClientBroadcastScreenshot EMsg = 9703 EMsg_k_EMsgClientBroadcastUploadConfig EMsg = 9704 EMsg_k_EMsgBaseClient3 EMsg = 9800 EMsg_k_EMsgClientVoiceCallPreAuthorize EMsg = 9800 @@ -1489,9 +1482,13 @@ const ( EMsg_k_EMsgClientServerTimestampResponse EMsg = 9803 EMsg_k_EMsgServiceMethodCallFromClientNonAuthed EMsg = 9804 EMsg_k_EMsgClientHello EMsg = 9805 + EMsg_k_EMsgClientEnableOrDisableDownloads EMsg = 9806 + EMsg_k_EMsgClientEnableOrDisableDownloadsResponse EMsg = 9807 EMsg_k_EMsgClientLANP2PBase EMsg = 9900 EMsg_k_EMsgClientLANP2PRequestChunk EMsg = 9900 EMsg_k_EMsgClientLANP2PRequestChunkResponse EMsg = 9901 + EMsg_k_EMsgClientPeerChunkRequest EMsg = 9902 + EMsg_k_EMsgClientPeerChunkResponse EMsg = 9903 EMsg_k_EMsgClientLANP2PMax EMsg = 9999 EMsg_k_EMsgBaseWatchdogServer EMsg = 10000 EMsg_k_EMsgNotifyWatchdog EMsg = 10000 @@ -1508,6 +1505,12 @@ const ( EMsg_k_EMsgChatServerGetPendingNotificationCountResponse EMsg = 12001 EMsg_k_EMsgBaseSecretServer EMsg = 12100 EMsg_k_EMsgServerSecretChanged EMsg = 12100 + EMsg_k_EMsgBaseWG EMsg = 12200 + EMsg_k_EMsgWGConnectionProtocolError EMsg = 12200 + EMsg_k_EMsgWGConnectionValidateUserToken EMsg = 12201 + EMsg_k_EMsgWGConnectionValidateUserTokenResponse EMsg = 12202 + EMsg_k_EMsgWGConnectionLegacyWGRequest EMsg = 12203 + EMsg_k_EMsgWGConnectionLegacyWGResponse EMsg = 12204 ) // Enum value maps for EMsg. @@ -1587,7 +1590,6 @@ var ( 316: "k_EMsgLicenseProcessingComplete", 317: "k_EMsgSetTestFlag", 318: "k_EMsgQueuedEmailsComplete", - 319: "k_EMsgGMReportPHPError", 320: "k_EMsgGMDRMSync", 321: "k_EMsgPhysicalBoxInventory", 322: "k_EMsgUpdateConfigFile", @@ -1605,6 +1607,8 @@ var ( 336: "k_EMsgExpectShellRestart", 337: "k_EMsgHotFixProgress", 338: "k_EMsgGMStatsForwardToAdminConnections", + 339: "k_EMsgGMGetModifiedConVars", + 340: "k_EMsgGMGetModifiedConVarsResponse", 400: "k_EMsgBaseAIS", 402: "k_EMsgAISRequestContentDescription", 403: "k_EMsgAISUpdateAppInfo", @@ -2013,11 +2017,8 @@ var ( 1622: "k_EMsgClientDPSendSpecialSurveyResponse", 1623: "k_EMsgClientDPSendSpecialSurveyResponseReply", 1624: "k_EMsgDPStoreSaleStatistics", - 1625: "k_EMsgClientDPUpdateAppJobReport", - 1627: "k_EMsgClientDPUnsignedInstallScript", 1628: "k_EMsgDPPartnerMicroTxns", 1629: "k_EMsgDPPartnerMicroTxnsResponse", - 1630: "k_EMsgClientDPContentStatsReport", 1631: "k_EMsgDPVRUniquePlayersStat", 1700: "k_EMsgBaseCM", 1701: "k_EMsgCMSetAllowState", @@ -2063,6 +2064,9 @@ var ( 2242: "k_EMsgGCHAppCheersReceived", 2243: "k_EMsgGCHAppCheersGetAllowedTypes", 2244: "k_EMsgGCHAppCheersGetAllowedTypesResponse", + 2245: "k_EMsgGCHRoutingRulesFromGCHtoGM", + 2246: "k_EMsgGCHRoutingRulesToGCHfromGM", + 2247: "k_EMsgUpdateCMMessageRateRules", 2500: "k_EMsgBaseP2P", 2502: "k_EMsgP2PIntroducerMessage", 2900: "k_EMsgBaseSM", @@ -2209,8 +2213,6 @@ var ( 4152: "k_EMsgAMSendQueuedEmails", 4153: "k_EMsgAMSetLicenseFlags", 4155: "k_EMsgCommunityDeleteUserNews", - 4156: "k_EMsgAMAllowUserFilesRequest", - 4157: "k_EMsgAMAllowUserFilesResponse", 4158: "k_EMsgAMGetAccountStatus", 4159: "k_EMsgAMGetAccountStatusResponse", 4160: "k_EMsgAMEditBanReason", @@ -2238,7 +2240,6 @@ var ( 4210: "k_EMsgAMSupportIsAccountEnabledResponse", 4211: "k_EMsgUGSGetUserStats", 4213: "k_EMsgAMGSSearch", - 4216: "k_EMsgMarketingMessageUpdate", 4219: "k_EMsgChatServerRouteFriendMsg", 4220: "k_EMsgAMTicketAuthRequestOrResponse", 4224: "k_EMsgAMAddFreeLicense", @@ -2265,7 +2266,6 @@ var ( 4265: "k_EMsgAMCreateFinancialAdjustment", 4266: "k_EMsgAMPlayerNicknameList", 4267: "k_EMsgAMPlayerNicknameListResponse", - 4268: "k_EMsgAMSetDRMTestConfig", 4269: "k_EMsgAMGetUserCurrentGameInfo", 4270: "k_EMsgAMGetUserCurrentGameInfoResponse", 4271: "k_EMsgAMGetGSPlayerList", @@ -2396,6 +2396,7 @@ var ( 4422: "k_EMsgAMPerfectWorldPaymentResponse", 4423: "k_EMsgAMECommPayPayment", 4424: "k_EMsgAMECommPayPaymentResponse", + 4425: "k_EMsgAMSetRemoteClientID", 5000: "k_EMsgBasePSRange", 5001: "k_EMsgPSCreateShoppingCart", 5002: "k_EMsgPSCreateShoppingCartResponse", @@ -2485,7 +2486,6 @@ var ( 5435: "k_EMsgClientP2PConnectionFailInfo", 5438: "k_EMsgClientGetDepotDecryptionKey", 5439: "k_EMsgClientGetDepotDecryptionKeyResponse", - 5440: "k_EMsgGSPerformHardwareSurvey", 5443: "k_EMsgClientEnableTestLicense", 5444: "k_EMsgClientEnableTestLicenseResponse", 5445: "k_EMsgClientDisableTestLicense", @@ -2525,8 +2525,10 @@ var ( 5492: "k_EMsgClientOGSEndSession", 5493: "k_EMsgClientOGSEndSessionResponse", 5494: "k_EMsgClientOGSWriteRow", - 5495: "k_EMsgClientDRMTest", - 5496: "k_EMsgClientDRMTestResult", + 5495: "k_EMsgClientGetPeerContentInfo", + 5496: "k_EMsgClientGetPeerContentInfoResponse", + 5497: "k_EMsgClientStartPeerContentServer", + 5498: "k_EMsgClientStartPeerContentServerResponse", 5500: "k_EMsgClientServerUnavailable", 5501: "k_EMsgClientServersAvailable", 5502: "k_EMsgClientRegisterAuthTicketWithCM", @@ -2536,7 +2538,6 @@ var ( 5506: "k_EMsgClientMicroTxnAuthorizeResponse", 5508: "k_EMsgClientGetMicroTxnInfo", 5509: "k_EMsgClientGetMicroTxnInfoResponse", - 5510: "k_EMsgClientMarketingMessageUpdate2", 5511: "k_EMsgClientDeregisterWithServer", 5512: "k_EMsgClientSubscribeToPersonaFeed", 5514: "k_EMsgClientLogon", @@ -2751,8 +2752,6 @@ var ( 7326: "k_EMsgClientUCMUpdatePublishedFileResponse", 7327: "k_EMsgUCMUpdatePublishedFile", 7328: "k_EMsgUCMUpdatePublishedFileResponse", - 7329: "k_EMsgUCMDeletePublishedFile", - 7330: "k_EMsgUCMDeletePublishedFileResponse", 7331: "k_EMsgUCMUpdatePublishedFileStat", 7337: "k_EMsgUCMReloadPublishedFile", 7338: "k_EMsgUCMReloadUserFileListCaches", @@ -2781,8 +2780,6 @@ var ( 7379: "k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse", 7380: "k_EMsgUCMPublishedFileContentUpdated", 7381: "k_EMsgClientUCMPublishedFileUpdated", - 7382: "k_EMsgClientWorkshopItemChangesRequest", - 7383: "k_EMsgClientWorkshopItemChangesResponse", 7500: "k_EMsgFSBase", 7501: "k_EMsgClientRichPresenceUpload", 7502: "k_EMsgClientRichPresenceRequest", @@ -2953,14 +2950,14 @@ var ( 9504: "k_EMsgRemoteClientStartStreamResponse", 9505: "k_EMsgRemoteClientPing", 9506: "k_EMsgRemoteClientPingResponse", - 9507: "k_EMsgClientUnlockStreaming", - 9508: "k_EMsgClientUnlockStreamingResponse", + 9507: "k_EMsgClientUnlockH264", + 9508: "k_EMsgClientUnlockH264Response", 9509: "k_EMsgRemoteClientAcceptEULA", 9510: "k_EMsgRemoteClientGetControllerConfig", 9511: "k_EMsgRemoteClientGetControllerConfigResponse", 9512: "k_EMsgRemoteClientStreamingEnabled", - 9513: "k_EMsgClientUnlockHEVC", - 9514: "k_EMsgClientUnlockHEVCResponse", + 9513: "k_EMsgClientUnlockHEVC_OBSOLETE", + 9514: "k_EMsgClientUnlockHEVCResponse_OBSOLETE", 9515: "k_EMsgRemoteClientStatusRequest", 9516: "k_EMsgRemoteClientStatusResponse", 9600: "k_EMsgClientConcurrentSessionsBase", @@ -2970,7 +2967,6 @@ var ( // Duplicate value: 9700: "k_EMsgClientBroadcastInit", 9701: "k_EMsgClientBroadcastFrames", 9702: "k_EMsgClientBroadcastDisconnect", - 9703: "k_EMsgClientBroadcastScreenshot", 9704: "k_EMsgClientBroadcastUploadConfig", 9800: "k_EMsgBaseClient3", // Duplicate value: 9800: "k_EMsgClientVoiceCallPreAuthorize", @@ -2979,9 +2975,13 @@ var ( 9803: "k_EMsgClientServerTimestampResponse", 9804: "k_EMsgServiceMethodCallFromClientNonAuthed", 9805: "k_EMsgClientHello", + 9806: "k_EMsgClientEnableOrDisableDownloads", + 9807: "k_EMsgClientEnableOrDisableDownloadsResponse", 9900: "k_EMsgClientLANP2PBase", // Duplicate value: 9900: "k_EMsgClientLANP2PRequestChunk", 9901: "k_EMsgClientLANP2PRequestChunkResponse", + 9902: "k_EMsgClientPeerChunkRequest", + 9903: "k_EMsgClientPeerChunkResponse", 9999: "k_EMsgClientLANP2PMax", 10000: "k_EMsgBaseWatchdogServer", // Duplicate value: 10000: "k_EMsgNotifyWatchdog", @@ -2998,6 +2998,12 @@ var ( 12001: "k_EMsgChatServerGetPendingNotificationCountResponse", 12100: "k_EMsgBaseSecretServer", // Duplicate value: 12100: "k_EMsgServerSecretChanged", + 12200: "k_EMsgBaseWG", + // Duplicate value: 12200: "k_EMsgWGConnectionProtocolError", + 12201: "k_EMsgWGConnectionValidateUserToken", + 12202: "k_EMsgWGConnectionValidateUserTokenResponse", + 12203: "k_EMsgWGConnectionLegacyWGRequest", + 12204: "k_EMsgWGConnectionLegacyWGResponse", } EMsg_value = map[string]int32{ "k_EMsgInvalid": 0, @@ -3074,7 +3080,6 @@ var ( "k_EMsgLicenseProcessingComplete": 316, "k_EMsgSetTestFlag": 317, "k_EMsgQueuedEmailsComplete": 318, - "k_EMsgGMReportPHPError": 319, "k_EMsgGMDRMSync": 320, "k_EMsgPhysicalBoxInventory": 321, "k_EMsgUpdateConfigFile": 322, @@ -3092,6 +3097,8 @@ var ( "k_EMsgExpectShellRestart": 336, "k_EMsgHotFixProgress": 337, "k_EMsgGMStatsForwardToAdminConnections": 338, + "k_EMsgGMGetModifiedConVars": 339, + "k_EMsgGMGetModifiedConVarsResponse": 340, "k_EMsgBaseAIS": 400, "k_EMsgAISRequestContentDescription": 402, "k_EMsgAISUpdateAppInfo": 403, @@ -3500,11 +3507,8 @@ var ( "k_EMsgClientDPSendSpecialSurveyResponse": 1622, "k_EMsgClientDPSendSpecialSurveyResponseReply": 1623, "k_EMsgDPStoreSaleStatistics": 1624, - "k_EMsgClientDPUpdateAppJobReport": 1625, - "k_EMsgClientDPUnsignedInstallScript": 1627, "k_EMsgDPPartnerMicroTxns": 1628, "k_EMsgDPPartnerMicroTxnsResponse": 1629, - "k_EMsgClientDPContentStatsReport": 1630, "k_EMsgDPVRUniquePlayersStat": 1631, "k_EMsgBaseCM": 1700, "k_EMsgCMSetAllowState": 1701, @@ -3550,6 +3554,9 @@ var ( "k_EMsgGCHAppCheersReceived": 2242, "k_EMsgGCHAppCheersGetAllowedTypes": 2243, "k_EMsgGCHAppCheersGetAllowedTypesResponse": 2244, + "k_EMsgGCHRoutingRulesFromGCHtoGM": 2245, + "k_EMsgGCHRoutingRulesToGCHfromGM": 2246, + "k_EMsgUpdateCMMessageRateRules": 2247, "k_EMsgBaseP2P": 2500, "k_EMsgP2PIntroducerMessage": 2502, "k_EMsgBaseSM": 2900, @@ -3696,8 +3703,6 @@ var ( "k_EMsgAMSendQueuedEmails": 4152, "k_EMsgAMSetLicenseFlags": 4153, "k_EMsgCommunityDeleteUserNews": 4155, - "k_EMsgAMAllowUserFilesRequest": 4156, - "k_EMsgAMAllowUserFilesResponse": 4157, "k_EMsgAMGetAccountStatus": 4158, "k_EMsgAMGetAccountStatusResponse": 4159, "k_EMsgAMEditBanReason": 4160, @@ -3725,7 +3730,6 @@ var ( "k_EMsgAMSupportIsAccountEnabledResponse": 4210, "k_EMsgUGSGetUserStats": 4211, "k_EMsgAMGSSearch": 4213, - "k_EMsgMarketingMessageUpdate": 4216, "k_EMsgChatServerRouteFriendMsg": 4219, "k_EMsgAMTicketAuthRequestOrResponse": 4220, "k_EMsgAMAddFreeLicense": 4224, @@ -3752,7 +3756,6 @@ var ( "k_EMsgAMCreateFinancialAdjustment": 4265, "k_EMsgAMPlayerNicknameList": 4266, "k_EMsgAMPlayerNicknameListResponse": 4267, - "k_EMsgAMSetDRMTestConfig": 4268, "k_EMsgAMGetUserCurrentGameInfo": 4269, "k_EMsgAMGetUserCurrentGameInfoResponse": 4270, "k_EMsgAMGetGSPlayerList": 4271, @@ -3883,6 +3886,7 @@ var ( "k_EMsgAMPerfectWorldPaymentResponse": 4422, "k_EMsgAMECommPayPayment": 4423, "k_EMsgAMECommPayPaymentResponse": 4424, + "k_EMsgAMSetRemoteClientID": 4425, "k_EMsgBasePSRange": 5000, "k_EMsgPSCreateShoppingCart": 5001, "k_EMsgPSCreateShoppingCartResponse": 5002, @@ -3972,7 +3976,6 @@ var ( "k_EMsgClientP2PConnectionFailInfo": 5435, "k_EMsgClientGetDepotDecryptionKey": 5438, "k_EMsgClientGetDepotDecryptionKeyResponse": 5439, - "k_EMsgGSPerformHardwareSurvey": 5440, "k_EMsgClientEnableTestLicense": 5443, "k_EMsgClientEnableTestLicenseResponse": 5444, "k_EMsgClientDisableTestLicense": 5445, @@ -4012,8 +4015,10 @@ var ( "k_EMsgClientOGSEndSession": 5492, "k_EMsgClientOGSEndSessionResponse": 5493, "k_EMsgClientOGSWriteRow": 5494, - "k_EMsgClientDRMTest": 5495, - "k_EMsgClientDRMTestResult": 5496, + "k_EMsgClientGetPeerContentInfo": 5495, + "k_EMsgClientGetPeerContentInfoResponse": 5496, + "k_EMsgClientStartPeerContentServer": 5497, + "k_EMsgClientStartPeerContentServerResponse": 5498, "k_EMsgClientServerUnavailable": 5500, "k_EMsgClientServersAvailable": 5501, "k_EMsgClientRegisterAuthTicketWithCM": 5502, @@ -4023,7 +4028,6 @@ var ( "k_EMsgClientMicroTxnAuthorizeResponse": 5506, "k_EMsgClientGetMicroTxnInfo": 5508, "k_EMsgClientGetMicroTxnInfoResponse": 5509, - "k_EMsgClientMarketingMessageUpdate2": 5510, "k_EMsgClientDeregisterWithServer": 5511, "k_EMsgClientSubscribeToPersonaFeed": 5512, "k_EMsgClientLogon": 5514, @@ -4238,8 +4242,6 @@ var ( "k_EMsgClientUCMUpdatePublishedFileResponse": 7326, "k_EMsgUCMUpdatePublishedFile": 7327, "k_EMsgUCMUpdatePublishedFileResponse": 7328, - "k_EMsgUCMDeletePublishedFile": 7329, - "k_EMsgUCMDeletePublishedFileResponse": 7330, "k_EMsgUCMUpdatePublishedFileStat": 7331, "k_EMsgUCMReloadPublishedFile": 7337, "k_EMsgUCMReloadUserFileListCaches": 7338, @@ -4268,8 +4270,6 @@ var ( "k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse": 7379, "k_EMsgUCMPublishedFileContentUpdated": 7380, "k_EMsgClientUCMPublishedFileUpdated": 7381, - "k_EMsgClientWorkshopItemChangesRequest": 7382, - "k_EMsgClientWorkshopItemChangesResponse": 7383, "k_EMsgFSBase": 7500, "k_EMsgClientRichPresenceUpload": 7501, "k_EMsgClientRichPresenceRequest": 7502, @@ -4440,14 +4440,14 @@ var ( "k_EMsgRemoteClientStartStreamResponse": 9504, "k_EMsgRemoteClientPing": 9505, "k_EMsgRemoteClientPingResponse": 9506, - "k_EMsgClientUnlockStreaming": 9507, - "k_EMsgClientUnlockStreamingResponse": 9508, + "k_EMsgClientUnlockH264": 9507, + "k_EMsgClientUnlockH264Response": 9508, "k_EMsgRemoteClientAcceptEULA": 9509, "k_EMsgRemoteClientGetControllerConfig": 9510, "k_EMsgRemoteClientGetControllerConfigResponse": 9511, "k_EMsgRemoteClientStreamingEnabled": 9512, - "k_EMsgClientUnlockHEVC": 9513, - "k_EMsgClientUnlockHEVCResponse": 9514, + "k_EMsgClientUnlockHEVC_OBSOLETE": 9513, + "k_EMsgClientUnlockHEVCResponse_OBSOLETE": 9514, "k_EMsgRemoteClientStatusRequest": 9515, "k_EMsgRemoteClientStatusResponse": 9516, "k_EMsgClientConcurrentSessionsBase": 9600, @@ -4457,7 +4457,6 @@ var ( "k_EMsgClientBroadcastInit": 9700, "k_EMsgClientBroadcastFrames": 9701, "k_EMsgClientBroadcastDisconnect": 9702, - "k_EMsgClientBroadcastScreenshot": 9703, "k_EMsgClientBroadcastUploadConfig": 9704, "k_EMsgBaseClient3": 9800, "k_EMsgClientVoiceCallPreAuthorize": 9800, @@ -4466,9 +4465,13 @@ var ( "k_EMsgClientServerTimestampResponse": 9803, "k_EMsgServiceMethodCallFromClientNonAuthed": 9804, "k_EMsgClientHello": 9805, + "k_EMsgClientEnableOrDisableDownloads": 9806, + "k_EMsgClientEnableOrDisableDownloadsResponse": 9807, "k_EMsgClientLANP2PBase": 9900, "k_EMsgClientLANP2PRequestChunk": 9900, "k_EMsgClientLANP2PRequestChunkResponse": 9901, + "k_EMsgClientPeerChunkRequest": 9902, + "k_EMsgClientPeerChunkResponse": 9903, "k_EMsgClientLANP2PMax": 9999, "k_EMsgBaseWatchdogServer": 10000, "k_EMsgNotifyWatchdog": 10000, @@ -4485,6 +4488,12 @@ var ( "k_EMsgChatServerGetPendingNotificationCountResponse": 12001, "k_EMsgBaseSecretServer": 12100, "k_EMsgServerSecretChanged": 12100, + "k_EMsgBaseWG": 12200, + "k_EMsgWGConnectionProtocolError": 12200, + "k_EMsgWGConnectionValidateUserToken": 12201, + "k_EMsgWGConnectionValidateUserTokenResponse": 12202, + "k_EMsgWGConnectionLegacyWGRequest": 12203, + "k_EMsgWGConnectionLegacyWGResponse": 12204, } ) @@ -4762,12 +4771,139 @@ func (ESteamReviewScore) EnumDescriptor() ([]byte, []int) { return file_enums_clientserver_proto_rawDescGZIP(), []int{3} } +type ECodecUsagePlatform int32 + +const ( + ECodecUsagePlatform_k_ECodecUsagePlatformUnknown ECodecUsagePlatform = 0 + ECodecUsagePlatform_k_ECodecUsagePlatformWindows ECodecUsagePlatform = 1 + ECodecUsagePlatform_k_ECodecUsagePlatformMacOS ECodecUsagePlatform = 2 + ECodecUsagePlatform_k_ECodecUsagePlatformLinux ECodecUsagePlatform = 3 + ECodecUsagePlatform_k_ECodecUsagePlatformSteamDeck ECodecUsagePlatform = 4 +) + +// Enum value maps for ECodecUsagePlatform. +var ( + ECodecUsagePlatform_name = map[int32]string{ + 0: "k_ECodecUsagePlatformUnknown", + 1: "k_ECodecUsagePlatformWindows", + 2: "k_ECodecUsagePlatformMacOS", + 3: "k_ECodecUsagePlatformLinux", + 4: "k_ECodecUsagePlatformSteamDeck", + } + ECodecUsagePlatform_value = map[string]int32{ + "k_ECodecUsagePlatformUnknown": 0, + "k_ECodecUsagePlatformWindows": 1, + "k_ECodecUsagePlatformMacOS": 2, + "k_ECodecUsagePlatformLinux": 3, + "k_ECodecUsagePlatformSteamDeck": 4, + } +) + +func (x ECodecUsagePlatform) Enum() *ECodecUsagePlatform { + p := new(ECodecUsagePlatform) + *p = x + return p +} + +func (x ECodecUsagePlatform) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ECodecUsagePlatform) Descriptor() protoreflect.EnumDescriptor { + return file_enums_clientserver_proto_enumTypes[4].Descriptor() +} + +func (ECodecUsagePlatform) Type() protoreflect.EnumType { + return &file_enums_clientserver_proto_enumTypes[4] +} + +func (x ECodecUsagePlatform) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *ECodecUsagePlatform) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = ECodecUsagePlatform(num) + return nil +} + +// Deprecated: Use ECodecUsagePlatform.Descriptor instead. +func (ECodecUsagePlatform) EnumDescriptor() ([]byte, []int) { + return file_enums_clientserver_proto_rawDescGZIP(), []int{4} +} + +type ECodecUsageReason int32 + +const ( + ECodecUsageReason_k_ECodecUsageReasonUnknown ECodecUsageReason = 0 + ECodecUsageReason_k_ECodecUsageReasonRemotePlay ECodecUsageReason = 1 + ECodecUsageReason_k_ECodecUsageReasonBroadcasting ECodecUsageReason = 2 + ECodecUsageReason_k_ECodecUsageReasonGameVideo ECodecUsageReason = 3 +) + +// Enum value maps for ECodecUsageReason. +var ( + ECodecUsageReason_name = map[int32]string{ + 0: "k_ECodecUsageReasonUnknown", + 1: "k_ECodecUsageReasonRemotePlay", + 2: "k_ECodecUsageReasonBroadcasting", + 3: "k_ECodecUsageReasonGameVideo", + } + ECodecUsageReason_value = map[string]int32{ + "k_ECodecUsageReasonUnknown": 0, + "k_ECodecUsageReasonRemotePlay": 1, + "k_ECodecUsageReasonBroadcasting": 2, + "k_ECodecUsageReasonGameVideo": 3, + } +) + +func (x ECodecUsageReason) Enum() *ECodecUsageReason { + p := new(ECodecUsageReason) + *p = x + return p +} + +func (x ECodecUsageReason) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ECodecUsageReason) Descriptor() protoreflect.EnumDescriptor { + return file_enums_clientserver_proto_enumTypes[5].Descriptor() +} + +func (ECodecUsageReason) Type() protoreflect.EnumType { + return &file_enums_clientserver_proto_enumTypes[5] +} + +func (x ECodecUsageReason) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *ECodecUsageReason) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = ECodecUsageReason(num) + return nil +} + +// Deprecated: Use ECodecUsageReason.Descriptor instead. +func (ECodecUsageReason) EnumDescriptor() ([]byte, []int) { + return file_enums_clientserver_proto_rawDescGZIP(), []int{5} +} + var File_enums_clientserver_proto protoreflect.FileDescriptor var file_enums_clientserver_proto_rawDesc = []byte{ 0x0a, 0x18, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, - 0x2a, 0xf6, 0x9d, 0x03, 0x0a, 0x04, 0x45, 0x4d, 0x73, 0x67, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, + 0x2a, 0x9b, 0x9f, 0x03, 0x0a, 0x04, 0x45, 0x4d, 0x73, 0x67, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, @@ -4904,3090 +5040,3078 @@ var file_enums_clientserver_proto_rawDesc = []byte{ 0x74, 0x65, 0x10, 0xbc, 0x02, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x54, 0x65, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x10, 0xbd, 0x02, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x51, 0x75, 0x65, 0x75, 0x65, 0x64, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xbe, 0x02, 0x12, 0x1b, - 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x50, 0x48, 0x50, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xbf, 0x02, 0x12, 0x14, 0x0a, 0x0f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x44, 0x52, 0x4d, 0x53, 0x79, 0x6e, 0x63, 0x10, 0xc0, - 0x02, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, - 0x63, 0x61, 0x6c, 0x42, 0x6f, 0x78, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x10, - 0xc1, 0x02, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xc2, 0x02, 0x12, - 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x69, - 0x74, 0x44, 0x42, 0x10, 0xc3, 0x02, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x4d, 0x57, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x6f, 0x53, - 0x51, 0x4c, 0x10, 0xc4, 0x02, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x4d, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, - 0x6f, 0x64, 0x65, 0x73, 0x10, 0xc5, 0x02, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x4d, 0x51, 0x75, 0x65, 0x75, 0x65, 0x46, 0x6f, 0x72, 0x46, 0x42, 0x53, 0x10, 0xc6, - 0x02, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x73, 0x10, 0xc7, 0x02, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x4d, 0x57, 0x72, 0x69, 0x74, 0x65, 0x53, 0x68, 0x65, 0x6c, 0x6c, 0x46, 0x61, 0x69, - 0x6c, 0x75, 0x72, 0x65, 0x54, 0x6f, 0x53, 0x51, 0x4c, 0x10, 0xc9, 0x02, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x57, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x54, 0x6f, 0x53, 0x4f, 0x53, 0x10, 0xca, 0x02, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xcb, 0x02, - 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x47, 0x65, 0x74, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x6f, 0x75, 0x74, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x02, 0x12, 0x2a, - 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x4e, 0x65, - 0x78, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xce, 0x02, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x75, - 0x69, 0x6c, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcf, 0x02, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x53, 0x68, - 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x10, 0xd0, 0x02, 0x12, 0x19, 0x0a, - 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x48, 0x6f, 0x74, 0x46, 0x69, 0x78, 0x50, 0x72, 0x6f, - 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xd1, 0x02, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x4d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, - 0x54, 0x6f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x10, 0xd2, 0x02, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, - 0x61, 0x73, 0x65, 0x41, 0x49, 0x53, 0x10, 0x90, 0x03, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, - 0x92, 0x03, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x93, 0x03, 0x12, - 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x47, 0x65, 0x74, 0x50, - 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x10, 0x95, 0x03, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x49, 0x53, 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x96, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x47, - 0x65, 0x74, 0x41, 0x70, 0x70, 0x47, 0x43, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0xa7, 0x03, 0x12, - 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x47, 0x65, 0x74, 0x41, 0x70, - 0x70, 0x47, 0x43, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xa8, 0x03, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x47, - 0x65, 0x74, 0x41, 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xa9, 0x03, 0x12, 0x1f, 0x0a, 0x1a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaa, 0x03, 0x12, 0x21, 0x0a, - 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x75, - 0x70, 0x6f, 0x6e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xad, 0x03, - 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x47, 0x65, 0x74, - 0x43, 0x6f, 0x75, 0x70, 0x6f, 0x6e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x03, 0x12, 0x31, 0x0a, 0x2c, 0x6b, + 0x69, 0x6c, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xbe, 0x02, 0x12, 0x14, + 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x44, 0x52, 0x4d, 0x53, 0x79, 0x6e, + 0x63, 0x10, 0xc0, 0x02, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x68, + 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, 0x6f, 0x78, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x10, 0xc1, 0x02, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x10, + 0xc2, 0x02, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, + 0x49, 0x6e, 0x69, 0x74, 0x44, 0x42, 0x10, 0xc3, 0x02, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x57, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x54, 0x6f, 0x53, 0x51, 0x4c, 0x10, 0xc4, 0x02, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x4d, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x10, 0xc5, 0x02, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x51, 0x75, 0x65, 0x75, 0x65, 0x46, 0x6f, 0x72, 0x46, 0x42, + 0x53, 0x10, 0xc6, 0x02, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, 0xc7, 0x02, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x57, 0x72, 0x69, 0x74, 0x65, 0x53, 0x68, 0x65, 0x6c, 0x6c, + 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x54, 0x6f, 0x53, 0x51, 0x4c, 0x10, 0xc9, 0x02, 0x12, + 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x57, 0x72, 0x69, 0x74, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x54, 0x6f, 0x53, 0x4f, 0x53, 0x10, 0xca, 0x02, 0x12, 0x24, 0x0a, + 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, + 0x10, 0xcb, 0x02, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x47, + 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, + 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, + 0x02, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x54, 0x65, 0x73, + 0x74, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xce, 0x02, 0x12, 0x32, 0x0a, + 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x78, + 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcf, + 0x02, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x78, 0x70, 0x65, 0x63, + 0x74, 0x53, 0x68, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x10, 0xd0, 0x02, + 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x48, 0x6f, 0x74, 0x46, 0x69, 0x78, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xd1, 0x02, 0x12, 0x2b, 0x0a, 0x26, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x46, 0x6f, 0x72, 0x77, + 0x61, 0x72, 0x64, 0x54, 0x6f, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xd2, 0x02, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x4d, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x43, + 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x10, 0xd3, 0x02, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xd4, 0x02, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, + 0x41, 0x49, 0x53, 0x10, 0x90, 0x03, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x49, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x92, 0x03, 0x12, + 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x41, 0x70, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x93, 0x03, 0x12, 0x24, 0x0a, 0x1f, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, + 0x61, 0x67, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x10, + 0x95, 0x03, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x47, + 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x96, 0x03, + 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x47, 0x65, 0x74, 0x41, + 0x70, 0x70, 0x47, 0x43, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0xa7, 0x03, 0x12, 0x22, 0x0a, 0x1d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x47, 0x43, + 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa8, 0x03, + 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x47, 0x65, 0x74, 0x41, + 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xa9, 0x03, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x49, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaa, 0x03, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x70, 0x6f, 0x6e, + 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xad, 0x03, 0x12, 0x29, 0x0a, + 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x75, + 0x70, 0x6f, 0x6e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x03, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x49, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6f, 0x72, + 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xaf, 0x03, 0x12, 0x39, 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xaf, 0x03, 0x12, 0x39, - 0x0a, 0x34, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x53, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x49, 0x53, 0x54, 0x65, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x47, 0x43, 0x10, 0xb1, 0x03, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, - 0x61, 0x73, 0x65, 0x41, 0x4d, 0x10, 0xf4, 0x03, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x42, 0x61, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf8, 0x03, 0x12, 0x17, 0x0a, 0x12, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, - 0x65, 0x10, 0xf9, 0x03, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x53, 0x65, 0x6e, 0x64, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x4d, 0x54, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x10, 0xfc, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xfd, - 0x03, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, - 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x54, 0x6f, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, - 0x10, 0xfe, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x03, 0x12, - 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x6e, 0x69, 0x74, 0x50, - 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0x80, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x69, - 0x63, 0x65, 0x10, 0x82, 0x04, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x83, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, - 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x10, 0x84, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, - 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x85, 0x04, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x64, 0x48, - 0x75, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, - 0x86, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, - 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x87, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, - 0x61, 0x73, 0x65, 0x10, 0x8a, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x4e, 0x65, 0x77, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0x8b, - 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x6f, 0x61, - 0x64, 0x4f, 0x45, 0x4d, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x10, 0x8c, 0x04, 0x12, 0x1f, - 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x78, 0x50, 0x65, 0x6e, - 0x64, 0x69, 0x6e, 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0x8d, 0x04, 0x12, - 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x78, 0x50, 0x65, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x55, 0x73, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, - 0x10, 0x8f, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, - 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x10, 0x90, 0x04, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x10, 0x91, 0x04, 0x12, - 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x6f, 0x61, 0x64, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x93, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x10, 0x94, - 0x04, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, - 0x74, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x10, 0x95, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x43, 0x6c, 0x65, 0x61, 0x6e, - 0x75, 0x70, 0x10, 0x96, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x46, 0x69, 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x66, 0x75, 0x6e, - 0x64, 0x10, 0x97, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x52, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x62, 0x61, 0x63, - 0x6b, 0x10, 0x98, 0x04, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x52, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x62, 0x61, 0x63, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x04, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x43, 0x6c, 0x65, 0x61, - 0x6e, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x9a, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, - 0x73, 0x10, 0x9b, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x47, 0x65, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x75, 0x72, 0x63, - 0x68, 0x61, 0x73, 0x65, 0x10, 0x9d, 0x04, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x75, 0x72, - 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x04, - 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x55, - 0x73, 0x65, 0x72, 0x54, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0xa6, - 0x04, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x77, - 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xa7, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x56, 0x65, 0x72, 0x66, 0x69, 0x79, 0x55, 0x73, 0x65, 0x72, 0x10, 0xa8, 0x04, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4e, 0x6f, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x10, 0xa9, 0x04, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x68, 0x69, 0x70, - 0x10, 0xaa, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, - 0x65, 0x6c, 0x61, 0x79, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x10, 0xab, 0x04, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x49, 0x6e, 0x69, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x04, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb1, 0x04, 0x12, 0x1f, 0x0a, 0x1a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x47, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x65, 0x73, 0x10, 0xb3, 0x04, 0x12, 0x1d, 0x0a, - 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x47, 0x75, - 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x65, 0x73, 0x10, 0xb6, 0x04, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x61, 0x74, 0x61, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xb7, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x10, 0xb8, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x73, 0x67, 0x52, - 0x65, 0x6c, 0x61, 0x79, 0x10, 0xb9, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x10, 0xba, 0x04, 0x12, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x49, 0x53, 0x54, 0x65, 0x73, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x43, 0x10, + 0xb1, 0x03, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, + 0x41, 0x4d, 0x10, 0xf4, 0x03, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf8, 0x03, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xf9, + 0x03, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x6e, + 0x64, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x4d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x10, + 0xfc, 0x03, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x45, 0x78, + 0x74, 0x65, 0x6e, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xfd, 0x03, 0x12, 0x20, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x4d, 0x69, 0x6e, + 0x75, 0x74, 0x65, 0x73, 0x54, 0x6f, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xfe, 0x03, + 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x61, 0x6e, 0x63, + 0x65, 0x6c, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x03, 0x12, 0x19, 0x0a, 0x14, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x6e, 0x69, 0x74, 0x50, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x10, 0x80, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x81, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x63, 0x65, 0x10, + 0x82, 0x04, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, + 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x83, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x4b, + 0x65, 0x79, 0x10, 0x84, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x85, 0x04, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x64, 0x48, 0x75, 0x6e, 0x67, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0x86, 0x04, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0x87, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, + 0x10, 0x8a, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, + 0x65, 0x77, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0x8b, 0x04, 0x12, 0x1b, + 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x6f, 0x61, 0x64, 0x4f, 0x45, + 0x4d, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x10, 0x8c, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, + 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0x8d, 0x04, 0x12, 0x27, 0x0a, 0x22, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x8e, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x49, 0x73, 0x55, 0x73, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x10, 0x8f, 0x04, + 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x67, 0x69, + 0x73, 0x74, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x10, 0x90, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x10, 0x91, 0x04, 0x12, 0x28, 0x0a, 0x23, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x92, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x93, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x10, 0x94, 0x04, 0x12, 0x18, + 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6c, + 0x65, 0x61, 0x6e, 0x75, 0x70, 0x10, 0x95, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x10, + 0x96, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, + 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x10, 0x97, + 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x76, + 0x65, 0x72, 0x73, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x10, 0x98, + 0x04, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x76, + 0x65, 0x72, 0x73, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, + 0x4c, 0x69, 0x73, 0x74, 0x10, 0x9a, 0x04, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x10, 0x9b, + 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, + 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x9c, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, + 0x65, 0x6e, 0x64, 0x43, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, + 0x65, 0x10, 0x9d, 0x04, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x53, 0x65, 0x6e, 0x64, 0x43, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x04, 0x12, 0x1f, 0x0a, + 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x55, 0x73, 0x65, 0x72, + 0x54, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0xa6, 0x04, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x55, 0x73, 0x65, + 0x72, 0x54, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xa7, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x65, + 0x72, 0x66, 0x69, 0x79, 0x55, 0x73, 0x65, 0x72, 0x10, 0xa8, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, + 0x50, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x10, 0xa9, 0x04, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x68, 0x69, 0x70, 0x10, 0xaa, 0x04, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6c, 0x61, + 0x79, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xab, + 0x04, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x6e, 0x69, + 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xb0, 0x04, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb1, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x47, 0x75, 0x65, 0x73, + 0x74, 0x50, 0x61, 0x73, 0x73, 0x65, 0x73, 0x10, 0xb3, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x47, 0x75, 0x65, 0x73, 0x74, + 0x50, 0x61, 0x73, 0x73, 0x65, 0x73, 0x10, 0xb6, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x10, 0xb7, 0x04, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x10, 0xb8, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6c, 0x61, + 0x79, 0x10, 0xb9, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x43, 0x68, 0x61, 0x74, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x10, 0xba, 0x04, 0x12, 0x22, 0x0a, 0x1d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, + 0x61, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x10, 0xbb, 0x04, + 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x74, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xbc, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x43, + 0x68, 0x61, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x10, 0xbd, 0x04, 0x12, 0x26, 0x0a, 0x21, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, + 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, + 0x10, 0xbe, 0x04, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xbf, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xc0, 0x04, 0x12, 0x16, + 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x74, 0x45, 0x6e, + 0x74, 0x65, 0x72, 0x10, 0xc1, 0x04, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, + 0x65, 0x6d, 0x6f, 0x76, 0x61, 0x6c, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x10, 0xc2, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, + 0x68, 0x61, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, + 0xc3, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, + 0x6e, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x10, 0xc4, 0x04, 0x12, 0x21, 0x0a, + 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x04, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x55, 0x73, 0x65, 0x10, 0xc6, + 0x04, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x55, 0x73, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x04, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0xc8, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0xca, + 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xcb, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, + 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xcc, 0x04, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, + 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xcd, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x53, 0x65, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0xce, + 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, + 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x10, 0xcf, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, + 0x65, 0x55, 0x73, 0x65, 0x72, 0x10, 0xd0, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, + 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x04, 0x12, + 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x32, 0x50, 0x49, 0x6e, + 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, + 0xd4, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd5, 0x04, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x43, 0x68, 0x61, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x79, - 0x10, 0xbb, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, - 0x68, 0x61, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xbc, 0x04, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4a, 0x6f, - 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x10, 0xbd, 0x04, 0x12, 0x26, - 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, - 0x6c, 0x61, 0x79, 0x10, 0xbe, 0x04, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xbf, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x65, - 0x70, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0xc0, - 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, - 0x74, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xc1, 0x04, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, - 0x73, 0x68, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x61, 0x6c, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x10, 0xc2, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x43, 0x68, 0x61, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x10, 0xc3, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x10, 0xc4, 0x04, - 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x64, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xc5, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, - 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x55, 0x73, - 0x65, 0x10, 0xc6, 0x04, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x49, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x55, - 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x04, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0xc8, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, - 0x6e, 0x10, 0xca, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xcb, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, - 0xcc, 0x04, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, - 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcd, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, - 0x65, 0x10, 0xce, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x53, 0x65, 0x74, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x10, 0xcf, 0x04, 0x12, 0x1d, 0x0a, 0x18, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, - 0x63, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x10, 0xd0, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, - 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xd1, 0x04, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x32, - 0x50, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x10, 0xd4, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, - 0xd5, 0x04, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x6c, 0x61, 0x79, 0x10, 0xd6, 0x04, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x61, 0x73, 0x65, 0x56, 0x53, 0x10, 0xd8, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, - 0xd8, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x41, 0x43, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x54, 0x65, 0x73, 0x74, 0x10, 0xda, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x56, 0x53, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x68, 0x65, 0x61, 0x74, 0x10, 0xdc, 0x04, 0x12, - 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, 0x41, 0x64, 0x64, 0x43, 0x68, - 0x65, 0x61, 0x74, 0x10, 0xdd, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x56, 0x53, 0x50, 0x75, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x4d, 0x6f, 0x64, 0x44, 0x42, - 0x10, 0xde, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, 0x47, - 0x65, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x73, 0x10, 0xdf, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, - 0x53, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x54, 0x65, 0x78, 0x74, 0x10, 0xe0, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x56, 0x53, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4c, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x65, - 0x72, 0x10, 0xe1, 0x04, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xe2, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, 0x4c, 0x6f, 0x61, 0x64, 0x44, 0x42, 0x46, 0x69, 0x6e, 0x69, - 0x73, 0x68, 0x65, 0x64, 0x10, 0xe3, 0x04, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x42, 0x61, 0x73, 0x65, 0x44, 0x52, 0x4d, 0x53, 0x10, 0xf1, 0x04, 0x12, 0x1e, 0x0a, 0x19, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x6c, - 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf4, 0x04, 0x12, 0x1f, 0x0a, 0x1a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x6c, - 0x6f, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf5, 0x04, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, - 0x65, 0x47, 0x75, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf6, 0x04, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x52, 0x65, 0x73, 0x6f, - 0x6c, 0x76, 0x65, 0x47, 0x75, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xf7, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x56, - 0x61, 0x72, 0x69, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x10, 0xf9, 0x04, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, - 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x04, 0x12, 0x1d, 0x0a, 0x18, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xfb, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, - 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xfc, 0x04, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x10, 0xfd, 0x04, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x44, 0x52, 0x4d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfe, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x46, - 0x69, 0x6c, 0x65, 0x10, 0xff, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x44, 0x52, 0x4d, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0x80, - 0x05, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x41, 0x64, - 0x6d, 0x69, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x81, 0x05, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, - 0x4d, 0x53, 0x79, 0x6e, 0x63, 0x10, 0x82, 0x05, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x44, 0x52, 0x4d, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x83, 0x05, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, - 0x4d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x44, 0x52, 0x4d, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x47, 0x75, 0x69, 0x64, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x10, 0x85, 0x05, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x52, 0x4d, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x47, 0x75, 0x69, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x53, 0x10, 0x8a, 0x05, 0x12, 0x15, - 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x10, 0xbc, 0x05, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, - 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xbd, 0x05, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x4f, - 0x6e, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xbe, 0x05, 0x12, - 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, - 0x65, 0x61, 0x72, 0x74, 0x42, 0x65, 0x61, 0x74, 0x10, 0xbf, 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x41, 0x43, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc0, 0x05, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x64, 0x5f, 0x6f, 0x62, 0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xc1, 0x05, - 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x10, 0xc2, 0x05, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x55, 0x44, 0x50, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x10, 0xc3, 0x05, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc6, 0x05, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x05, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0xca, 0x05, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, - 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x42, 0x6c, - 0x6f, 0x62, 0x10, 0xcb, 0x05, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x10, 0xcc, 0x05, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x56, 0x61, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcd, 0x05, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x73, - 0x67, 0x10, 0xce, 0x05, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, - 0x6f, 0x62, 0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xcf, 0x05, 0x12, 0x26, 0x0a, 0x21, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x32, 0x5f, 0x6f, 0x62, 0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, - 0x10, 0xd0, 0x05, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6f, 0x62, 0x73, - 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xd1, 0x05, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x4d, - 0x10, 0xd6, 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x4d, 0x41, 0x63, 0x6b, 0x10, 0xd7, - 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x10, 0xd8, 0x05, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, - 0x65, 0x74, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x10, - 0xda, 0x05, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, - 0x6f, 0x67, 0x4f, 0x6e, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, - 0xdb, 0x05, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x41, 0x63, 0x6b, 0x56, 0x41, 0x43, 0x42, 0x61, 0x6e, 0x32, 0x10, 0xdc, 0x05, 0x12, - 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, - 0x65, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x70, - 0x74, 0x73, 0x10, 0xe0, 0x05, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, - 0x33, 0x5f, 0x6f, 0x62, 0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xe2, 0x05, 0x12, 0x1d, 0x0a, - 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x6b, - 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x10, 0xe4, 0x05, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x64, 0x65, - 0x65, 0x6d, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x10, 0xe5, 0x05, 0x12, 0x1c, - 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, - 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x10, 0xe6, 0x05, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x67, 0x69, - 0x73, 0x74, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x10, 0xe7, 0x05, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0xe8, 0x05, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x6b, - 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x10, 0xe9, 0x05, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x57, 0x69, 0x74, - 0x68, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x49, 0x44, 0x10, 0xea, 0x05, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, - 0x55, 0x73, 0x61, 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xeb, 0x05, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, - 0x4f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x05, 0x12, 0x21, 0x0a, - 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, - 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x61, 0x74, 0x65, 0x10, 0xf3, 0x05, - 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4e, 0x6f, 0x74, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x4f, 0x6e, 0x44, 0x65, 0x70, 0x72, 0x65, - 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xf4, 0x05, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x4f, 0x66, - 0x66, 0x10, 0xf5, 0x05, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, - 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x10, 0xf6, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x44, 0x65, 0x6e, 0x79, 0x10, 0xf7, 0x05, 0x12, 0x11, 0x0a, - 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x4b, 0x69, 0x63, 0x6b, 0x10, 0xf8, 0x05, - 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xfb, 0x05, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x10, 0xfc, 0x05, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x4f, 0x50, 0x10, 0xfd, 0x05, - 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xfe, 0x05, 0x12, - 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xff, 0x05, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x80, 0x06, 0x12, 0x1b, 0x0a, 0x16, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x77, 0x73, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0x83, 0x06, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x44, 0x65, 0x6e, 0x79, 0x10, 0x85, 0x06, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x70, 0x6c, - 0x79, 0x10, 0x86, 0x06, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x10, 0x8b, 0x06, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x4c, - 0x69, 0x73, 0x74, 0x10, 0x8c, 0x06, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x41, 0x43, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x10, 0x8e, 0x06, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x4d, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8f, 0x06, 0x12, 0x1b, - 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x50, 0x63, 0x74, 0x10, 0x90, 0x06, 0x12, 0x29, 0x0a, 0x24, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x91, 0x06, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, - 0x97, 0x06, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x98, 0x06, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x6b, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x06, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x64, - 0x65, 0x65, 0x6d, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x06, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x9e, 0x06, 0x12, - 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, - 0x68, 0x61, 0x74, 0x4d, 0x73, 0x67, 0x10, 0x9f, 0x06, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x49, 0x6e, 0x76, - 0x69, 0x74, 0x65, 0x10, 0xa0, 0x06, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x10, 0xa1, - 0x06, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, - 0xa2, 0x06, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x72, 0x65, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, - 0x64, 0x10, 0xa3, 0x06, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x06, 0x12, 0x1a, 0x0a, - 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, - 0x74, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xa7, 0x06, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x10, 0xa8, 0x06, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x10, 0xa9, 0x06, + 0x74, 0x43, 0x68, 0x61, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x61, 0x79, + 0x10, 0xd6, 0x04, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, + 0x65, 0x56, 0x53, 0x10, 0xd8, 0x04, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x52, 0x65, 0x71, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0xd8, 0x04, 0x12, + 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x41, 0x43, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x52, 0x65, 0x71, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x65, 0x73, + 0x74, 0x10, 0xda, 0x04, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, + 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x68, 0x65, 0x61, 0x74, 0x10, 0xdc, 0x04, 0x12, 0x15, 0x0a, 0x10, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, 0x41, 0x64, 0x64, 0x43, 0x68, 0x65, 0x61, 0x74, + 0x10, 0xdd, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, 0x50, + 0x75, 0x72, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x4d, 0x6f, 0x64, 0x44, 0x42, 0x10, 0xde, 0x04, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, 0x47, 0x65, 0x74, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, + 0xdf, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54, 0x65, 0x78, + 0x74, 0x10, 0xe0, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4c, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x65, 0x72, 0x10, 0xe1, + 0x04, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x56, 0x53, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, + 0x65, 0x6e, 0x67, 0x65, 0x10, 0xe2, 0x04, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x56, 0x53, 0x4c, 0x6f, 0x61, 0x64, 0x44, 0x42, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, + 0x64, 0x10, 0xe3, 0x04, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, + 0x73, 0x65, 0x44, 0x52, 0x4d, 0x53, 0x10, 0xf1, 0x04, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x6c, 0x6f, 0x62, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf4, 0x04, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x6c, 0x6f, 0x62, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf5, 0x04, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x47, 0x75, + 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf6, 0x04, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, + 0x47, 0x75, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x04, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x56, 0x61, 0x72, 0x69, + 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xf9, 0x04, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x56, 0x61, 0x72, + 0x69, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x04, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xfb, 0x04, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x44, 0x52, 0x4d, 0x53, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, 0x04, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x10, 0xfd, 0x04, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfe, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x44, 0x52, 0x4d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x46, 0x69, 0x6c, 0x65, + 0x10, 0xff, 0x04, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, + 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0x80, 0x05, 0x12, 0x21, + 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x41, 0x64, 0x6d, 0x69, 0x6e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, + 0x05, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x53, 0x79, + 0x6e, 0x63, 0x10, 0x82, 0x05, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, + 0x52, 0x4d, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x83, + 0x05, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0x84, 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, + 0x4d, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x47, 0x75, 0x69, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, + 0x85, 0x05, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x47, 0x75, 0x69, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x53, 0x10, 0x8a, 0x05, 0x12, 0x15, 0x0a, 0x10, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x10, + 0xbc, 0x05, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, + 0x65, 0x64, 0x10, 0xbd, 0x05, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x5f, 0x44, + 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xbe, 0x05, 0x12, 0x1a, 0x0a, 0x15, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x61, 0x72, + 0x74, 0x42, 0x65, 0x61, 0x74, 0x10, 0xbf, 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x41, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xc0, 0x05, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x64, 0x5f, 0x6f, 0x62, 0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xc1, 0x05, 0x12, 0x17, 0x0a, + 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, + 0x4f, 0x66, 0x66, 0x10, 0xc2, 0x05, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x55, 0x44, 0x50, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x10, 0xc3, 0x05, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc6, 0x05, 0x12, 0x1d, 0x0a, 0x18, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x05, 0x12, 0x1d, 0x0a, 0x18, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0xca, 0x05, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x64, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x42, 0x6c, 0x6f, 0x62, 0x10, + 0xcb, 0x05, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xcc, + 0x05, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x56, 0x61, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xcd, 0x05, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x10, 0xce, + 0x05, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x6f, 0x62, 0x73, + 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xcf, 0x05, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x64, 0x32, 0x5f, 0x6f, 0x62, 0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xd0, 0x05, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xaa, 0x06, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x32, 0x50, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, - 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xad, 0x06, 0x12, 0x21, 0x0a, 0x1c, + 0x47, 0x61, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6f, 0x62, 0x73, 0x6f, 0x6c, 0x65, + 0x74, 0x65, 0x10, 0xd1, 0x05, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x4d, 0x10, 0xd6, 0x05, + 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x4d, 0x41, 0x63, 0x6b, 0x10, 0xd7, 0x05, 0x12, 0x1c, + 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, + 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x10, 0xd8, 0x05, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4c, + 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x10, 0xda, 0x05, 0x12, + 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x4f, + 0x6e, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xdb, 0x05, 0x12, + 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, + 0x63, 0x6b, 0x56, 0x41, 0x43, 0x42, 0x61, 0x6e, 0x32, 0x10, 0xdc, 0x05, 0x12, 0x24, 0x0a, 0x1f, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x50, + 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x70, 0x74, 0x73, 0x10, + 0xe0, 0x05, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x33, 0x5f, 0x6f, + 0x62, 0x73, 0x6f, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xe2, 0x05, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x6b, 0x47, 0x75, 0x65, + 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x10, 0xe4, 0x05, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x47, + 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x10, 0xe5, 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x10, 0xe6, 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, + 0x72, 0x4b, 0x65, 0x79, 0x10, 0xe7, 0x05, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, 0x65, + 0x72, 0x54, 0x6f, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0xe8, 0x05, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, + 0xe9, 0x05, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x57, 0x69, 0x74, 0x68, 0x4d, 0x61, + 0x63, 0x68, 0x69, 0x6e, 0x65, 0x49, 0x44, 0x10, 0xea, 0x05, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x55, 0x73, 0x61, + 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xeb, 0x05, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x05, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x48, 0x65, 0x61, + 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x61, 0x74, 0x65, 0x10, 0xf3, 0x05, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, + 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x4f, 0x6e, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, + 0x65, 0x64, 0x10, 0xf4, 0x05, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x4f, 0x66, 0x66, 0x10, 0xf5, + 0x05, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x41, 0x70, 0x70, + 0x72, 0x6f, 0x76, 0x65, 0x10, 0xf6, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x53, 0x44, 0x65, 0x6e, 0x79, 0x10, 0xf7, 0x05, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x4b, 0x69, 0x63, 0x6b, 0x10, 0xf8, 0x05, 0x12, 0x21, 0x0a, + 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x05, + 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x50, 0x69, 0x6e, 0x67, 0x10, 0xfc, 0x05, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x4f, 0x50, 0x10, 0xfd, 0x05, 0x12, 0x1d, 0x0a, + 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, + 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xfe, 0x05, 0x12, 0x1c, 0x0a, 0x17, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xff, 0x05, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x80, 0x06, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x77, 0x73, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x10, 0x83, 0x06, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x44, 0x65, 0x6e, 0x79, 0x10, 0x85, 0x06, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x53, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0x86, + 0x06, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x47, 0x61, 0x6d, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x73, 0x10, 0x8b, 0x06, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x4c, 0x69, 0x73, 0x74, + 0x10, 0x8c, 0x06, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x56, 0x41, 0x43, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, + 0x8e, 0x06, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x4d, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8f, 0x06, 0x12, 0x1b, 0x0a, 0x16, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x63, 0x72, 0x79, + 0x70, 0x74, 0x50, 0x63, 0x74, 0x10, 0x90, 0x06, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4c, 0x65, 0x67, 0x61, 0x63, + 0x79, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x91, 0x06, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x97, 0x06, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, + 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x98, 0x06, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x41, 0x63, 0x6b, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x06, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, + 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0x9d, 0x06, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, + 0x61, 0x73, 0x73, 0x65, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x9e, 0x06, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xae, 0x06, 0x12, - 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x61, - 0x10, 0xaf, 0x06, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, - 0xb2, 0x06, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x06, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xb4, 0x06, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, - 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xb5, 0x06, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xb6, 0x06, 0x12, - 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x10, 0xbe, 0x06, 0x12, - 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x10, 0xbf, 0x06, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xc0, 0x06, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x74, 0x54, 0x72, 0x61, 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x53, - 0x74, 0x61, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xc7, 0x06, 0x12, 0x20, 0x0a, 0x1b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x55, 0x73, 0x61, 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xca, 0x06, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x65, - 0x63, 0x6b, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0xcd, 0x06, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x65, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0xce, 0x06, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x65, - 0x63, 0x6b, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xd0, 0x06, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x06, 0x12, 0x1d, 0x0a, - 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x10, 0xd2, 0x06, 0x12, 0x21, 0x0a, 0x1c, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x50, - 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xd3, 0x06, 0x12, - 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, - 0x65, 0x74, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0xd7, - 0x06, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x53, 0x65, 0x74, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x06, 0x12, 0x26, 0x0a, 0x21, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x41, 0x70, - 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, - 0x10, 0xd9, 0x06, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, - 0x69, 0x70, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xda, 0x06, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x06, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x4c, 0x69, 0x73, 0x74, 0x10, 0xf0, 0x06, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x80, 0x07, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x42, 0x6c, 0x6f, 0x62, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x07, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x10, 0x84, 0x07, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x53, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x63, - 0x65, 0x10, 0x85, 0x07, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x87, 0x07, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x53, 0x55, 0x73, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, - 0x10, 0x89, 0x07, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x32, 0x10, 0x8a, 0x07, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x53, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x5f, 0x55, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x10, 0x8b, 0x07, 0x12, 0x17, 0x0a, 0x12, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, - 0x65, 0x10, 0x8c, 0x07, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8d, 0x07, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x10, 0x8e, 0x07, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x8f, 0x07, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, - 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x96, 0x07, 0x12, 0x21, - 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x97, - 0x07, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, - 0x98, 0x07, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x10, 0x99, 0x07, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x07, 0x12, 0x27, 0x0a, 0x22, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0x9b, 0x07, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x53, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xa8, - 0x07, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, - 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xa9, 0x07, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x53, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, - 0x61, 0x6e, 0x10, 0xaa, 0x07, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x53, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, - 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x07, 0x12, 0x2a, 0x0a, - 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, - 0x4e, 0x65, 0x77, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x10, 0xac, 0x07, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x07, 0x12, 0x14, 0x0a, - 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, - 0x10, 0xe8, 0x07, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, - 0x69, 0x6e, 0x43, 0x6d, 0x64, 0x10, 0xe8, 0x07, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xec, 0x07, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xed, 0x07, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xee, - 0x07, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x69, 0x76, 0x65, - 0x72, 0x73, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0xf2, 0x07, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x70, 0x65, 0x77, 0x10, 0xfb, 0x07, - 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x10, 0xfc, 0x07, 0x12, 0x16, - 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x43, 0x53, - 0x70, 0x65, 0x77, 0x10, 0xff, 0x07, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x10, 0x80, - 0x08, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, - 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x73, 0x74, - 0x10, 0x81, 0x08, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, - 0x69, 0x6e, 0x47, 0x43, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x08, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x10, 0x83, 0x08, 0x12, 0x17, 0x0a, 0x12, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, - 0x77, 0x10, 0x84, 0x08, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, - 0x73, 0x65, 0x46, 0x42, 0x53, 0x10, 0xcc, 0x08, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x46, 0x42, 0x53, 0x52, 0x65, 0x71, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x10, - 0xcc, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xcd, 0x08, 0x12, 0x1a, 0x0a, - 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x52, - 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x10, 0xce, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x42, 0x6f, 0x75, 0x6e, 0x63, - 0x65, 0x10, 0xcf, 0x08, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, - 0x53, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x10, 0xd0, - 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x65, - 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x08, 0x12, - 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x10, 0xd2, - 0x08, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x53, 0x65, - 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xd3, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4f, 0x53, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x73, 0x10, 0xd4, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x46, 0x42, 0x53, 0x52, 0x75, 0x6e, 0x43, 0x4d, 0x44, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x10, 0xd5, 0x08, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, - 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x42, 0x6f, 0x78, 0x10, 0xd6, 0x08, 0x12, 0x1f, 0x0a, 0x1a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x53, 0x65, 0x74, 0x42, 0x69, 0x67, 0x42, - 0x72, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x10, 0xd7, 0x08, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x4d, 0x69, 0x6e, 0x69, 0x64, 0x75, - 0x6d, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xd8, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x6b, + 0x4d, 0x73, 0x67, 0x10, 0x9f, 0x06, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, + 0x10, 0xa0, 0x06, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x74, 0x10, 0xa1, 0x06, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, + 0x61, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xa2, 0x06, 0x12, + 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, + 0x6f, 0x67, 0x4f, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x61, 0x6c, 0x73, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xa3, + 0x06, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x06, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x45, 0x6e, + 0x74, 0x65, 0x72, 0x10, 0xa7, 0x06, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x10, 0xa8, 0x06, + 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x10, 0xa9, 0x06, 0x12, 0x23, 0x0a, + 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xaa, 0x06, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x50, 0x32, 0x50, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xad, 0x06, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xae, 0x06, 0x12, 0x22, 0x0a, 0x1d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x61, 0x10, 0xaf, 0x06, + 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xb2, 0x06, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, + 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x06, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x10, 0xb4, 0x06, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb5, 0x06, + 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x43, 0x6c, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xb6, 0x06, 0x12, 0x1e, 0x0a, 0x19, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x10, 0xbe, 0x06, 0x12, 0x1c, 0x0a, 0x17, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x10, 0xbf, 0x06, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc0, 0x06, + 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4e, 0x61, 0x74, 0x54, 0x72, 0x61, 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xc7, 0x06, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x55, 0x73, 0x61, + 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xca, 0x06, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0xcd, 0x06, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0xce, 0x06, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xd0, 0x06, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x06, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x10, 0xd2, 0x06, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x50, 0x72, 0x6f, 0x62, + 0x6c, 0x65, 0x6d, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xd3, 0x06, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x49, + 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0xd7, 0x06, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, + 0x74, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x06, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x4f, 0x77, + 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x10, 0xd9, 0x06, + 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x54, + 0x69, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, 0x06, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x06, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4c, 0x69, 0x73, + 0x74, 0x10, 0xf0, 0x06, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0x80, 0x07, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x07, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x42, 0x61, 0x73, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, + 0x84, 0x07, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x44, 0x69, + 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x10, 0x85, + 0x07, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x10, 0x87, 0x07, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x53, 0x55, 0x73, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x10, 0x89, 0x07, + 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x32, 0x10, 0x8a, 0x07, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x53, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x55, + 0x6e, 0x75, 0x73, 0x65, 0x64, 0x10, 0x8b, 0x07, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x53, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x10, 0x8c, + 0x07, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8d, 0x07, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x68, + 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x8e, + 0x07, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, + 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x07, + 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x50, + 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x96, 0x07, 0x12, 0x21, 0x0a, 0x1c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x97, 0x07, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x98, 0x07, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, + 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x99, 0x07, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, + 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x07, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x9b, 0x07, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, + 0x74, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xa8, 0x07, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, + 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xa9, 0x07, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x41, 0x73, + 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x6e, 0x10, + 0xaa, 0x07, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x41, 0x73, + 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6c, 0x61, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x07, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x4e, 0x65, 0x77, + 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x10, 0xac, 0x07, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x07, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x10, 0xe8, 0x07, + 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, + 0x6d, 0x64, 0x10, 0xe8, 0x07, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xec, 0x07, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, + 0x6e, 0x4c, 0x6f, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xed, 0x07, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, + 0x6d, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0xee, 0x07, 0x12, 0x17, + 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x10, 0xf2, 0x07, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x70, 0x65, 0x77, 0x10, 0xfb, 0x07, 0x12, 0x1c, 0x0a, + 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x73, + 0x6f, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x10, 0xfc, 0x07, 0x12, 0x16, 0x0a, 0x11, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x43, 0x53, 0x70, 0x65, 0x77, + 0x10, 0xff, 0x07, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, + 0x69, 0x6e, 0x47, 0x43, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x10, 0x80, 0x08, 0x12, 0x20, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x81, 0x08, + 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x47, + 0x43, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x44, 0x61, 0x74, 0x61, 0x10, 0x83, 0x08, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x73, 0x67, 0x53, 0x70, 0x65, 0x77, 0x10, 0x84, + 0x08, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x46, + 0x42, 0x53, 0x10, 0xcc, 0x08, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, + 0x42, 0x53, 0x52, 0x65, 0x71, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xcc, 0x08, 0x12, + 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xcd, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x52, 0x65, 0x66, 0x72, + 0x65, 0x73, 0x68, 0x10, 0xce, 0x08, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x46, 0x42, 0x53, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x42, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x10, 0xcf, + 0x08, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x65, + 0x70, 0x6c, 0x6f, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x10, 0xd0, 0x08, 0x12, 0x1c, + 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x65, 0x70, 0x6c, 0x6f, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x08, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, + 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x10, 0xd2, 0x08, 0x12, 0x16, + 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x53, 0x65, 0x74, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x10, 0xd3, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x46, 0x42, 0x53, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4f, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x73, 0x10, 0xd4, 0x08, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, + 0x53, 0x52, 0x75, 0x6e, 0x43, 0x4d, 0x44, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x10, 0xd5, 0x08, + 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x52, 0x65, 0x62, + 0x6f, 0x6f, 0x74, 0x42, 0x6f, 0x78, 0x10, 0xd6, 0x08, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x53, 0x65, 0x74, 0x42, 0x69, 0x67, 0x42, 0x72, 0x6f, 0x74, + 0x68, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x10, 0xd7, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x4d, 0x69, 0x6e, 0x69, 0x64, 0x75, 0x6d, 0x70, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xd8, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x48, 0x6f, 0x74, 0x46, 0x69, + 0x78, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x10, 0xda, 0x08, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x48, 0x6f, - 0x74, 0x46, 0x69, 0x78, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x10, 0xda, 0x08, 0x12, 0x22, - 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x65, 0x70, 0x6c, 0x6f, - 0x79, 0x48, 0x6f, 0x74, 0x46, 0x69, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xdb, 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, - 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x48, 0x6f, 0x74, 0x46, 0x69, 0x78, 0x10, 0xdc, 0x08, - 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x6f, 0x77, - 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x48, 0x6f, 0x74, 0x46, 0x69, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xdd, 0x08, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x46, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xde, 0x08, 0x12, 0x1e, 0x0a, 0x19, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x10, 0xdf, 0x08, 0x12, 0x26, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xe0, 0x08, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, - 0x53, 0x53, 0x65, 0x74, 0x53, 0x68, 0x65, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe1, - 0x08, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x54, 0x65, - 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x53, 0x68, 0x65, 0x6c, 0x6c, 0x10, 0xe2, 0x08, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x47, 0x4d, 0x46, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe3, 0x08, - 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x47, 0x4d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, 0x08, 0x12, - 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x54, 0x65, 0x72, 0x6d, - 0x69, 0x6e, 0x61, 0x74, 0x65, 0x5a, 0x6f, 0x6d, 0x62, 0x69, 0x65, 0x73, 0x10, 0xe5, 0x08, 0x12, - 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x49, 0x6e, 0x66, 0x6f, - 0x46, 0x72, 0x6f, 0x6d, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, - 0x10, 0xe6, 0x08, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, - 0x52, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x42, 0x6f, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xe7, 0x08, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, + 0x74, 0x46, 0x69, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdb, 0x08, 0x12, + 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x6f, 0x77, 0x6e, + 0x6c, 0x6f, 0x61, 0x64, 0x48, 0x6f, 0x74, 0x46, 0x69, 0x78, 0x10, 0xdc, 0x08, 0x12, 0x24, 0x0a, + 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, + 0x61, 0x64, 0x48, 0x6f, 0x74, 0x46, 0x69, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xdd, 0x08, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xde, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x10, 0xdf, 0x08, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe0, + 0x08, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x53, 0x65, + 0x74, 0x53, 0x68, 0x65, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe1, 0x08, 0x12, 0x1c, + 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x54, 0x65, 0x72, 0x6d, 0x69, + 0x6e, 0x61, 0x74, 0x65, 0x53, 0x68, 0x65, 0x6c, 0x6c, 0x10, 0xe2, 0x08, 0x12, 0x1f, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, 0x4d, + 0x46, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe3, 0x08, 0x12, 0x1d, 0x0a, + 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x47, + 0x4d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, 0x08, 0x12, 0x1e, 0x0a, 0x19, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, + 0x74, 0x65, 0x5a, 0x6f, 0x6d, 0x62, 0x69, 0x65, 0x73, 0x10, 0xe5, 0x08, 0x12, 0x22, 0x0a, 0x1d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x49, 0x6e, 0x66, 0x6f, 0x46, 0x72, 0x6f, + 0x6d, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x10, 0xe6, 0x08, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x52, 0x65, 0x62, + 0x6f, 0x6f, 0x74, 0x42, 0x6f, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe7, + 0x08, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x42, 0x6f, + 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe8, 0x08, 0x12, 0x29, 0x0a, 0x24, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, + 0x70, 0x70, 0x65, 0x72, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xe9, 0x08, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x46, 0x42, 0x53, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x47, + 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xea, + 0x08, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x42, 0x6f, + 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, + 0x6b, 0x61, 0x67, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xeb, 0x08, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x50, 0x61, 0x63, - 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe8, 0x08, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x42, 0x6f, 0x6f, 0x74, 0x73, - 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe9, 0x08, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, - 0x65, 0x72, 0x47, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x43, 0x68, 0x75, 0x6e, - 0x6b, 0x10, 0xea, 0x08, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, - 0x53, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x47, 0x65, 0x74, - 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x08, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x46, 0x42, 0x53, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, - 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x50, - 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0xec, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x6f, - 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x10, 0xed, 0x08, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x50, 0x61, 0x75, 0x73, 0x65, 0x46, - 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x44, 0x75, 0x6d, 0x70, 0x73, 0x10, 0xee, 0x08, 0x12, 0x17, 0x0a, - 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x58, - 0x66, 0x65, 0x72, 0x10, 0xb0, 0x09, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x46, 0x69, 0x6c, 0x65, 0x58, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xb0, 0x09, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6c, 0x65, - 0x58, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb1, 0x09, 0x12, - 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x58, 0x66, 0x65, - 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xb2, 0x09, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x58, 0x66, 0x65, 0x72, 0x45, 0x6e, 0x64, 0x10, 0xb3, 0x09, - 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x58, 0x66, - 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x41, 0x63, 0x6b, 0x10, 0xb4, 0x09, 0x12, 0x1a, 0x0a, 0x15, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x41, 0x75, 0x74, 0x68, 0x10, 0x94, 0x0a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x10, 0x94, 0x0a, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x95, 0x0a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x10, 0x96, 0x0a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x97, 0x0a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, + 0x6b, 0x61, 0x67, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x10, 0xec, 0x08, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x46, 0x42, 0x53, 0x52, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x6f, 0x6f, 0x74, 0x73, + 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x10, 0xed, 0x08, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x46, 0x42, 0x53, 0x50, 0x61, 0x75, 0x73, 0x65, 0x46, 0x72, 0x6f, 0x7a, + 0x65, 0x6e, 0x44, 0x75, 0x6d, 0x70, 0x73, 0x10, 0xee, 0x08, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x58, 0x66, 0x65, 0x72, + 0x10, 0xb0, 0x09, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6c, + 0x65, 0x58, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb0, 0x09, 0x12, + 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x58, 0x66, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb1, 0x09, 0x12, 0x17, 0x0a, 0x12, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x58, 0x66, 0x65, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x10, 0xb2, 0x09, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, + 0x69, 0x6c, 0x65, 0x58, 0x66, 0x65, 0x72, 0x45, 0x6e, 0x64, 0x10, 0xb3, 0x09, 0x12, 0x1a, 0x0a, + 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x58, 0x66, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x41, 0x63, 0x6b, 0x10, 0xb4, 0x09, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x75, + 0x74, 0x68, 0x10, 0x94, 0x0a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, + 0x6e, 0x67, 0x65, 0x10, 0x94, 0x0a, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x95, 0x0a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x10, 0x96, 0x0a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0x97, 0x0a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x98, 0x0a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x98, 0x0a, 0x12, 0x1f, 0x0a, 0x1a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x6e, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0x99, 0x0a, 0x12, 0x11, 0x0a, - 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x42, 0x53, 0x10, 0xf8, 0x0a, - 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x75, 0x72, 0x63, - 0x68, 0x61, 0x73, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x10, 0xf9, 0x0a, 0x12, 0x1d, 0x0a, 0x18, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x0a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, - 0x61, 0x74, 0x65, 0x43, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x10, 0xfb, 0x0a, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, - 0x69, 0x63, 0x61, 0x74, 0x65, 0x43, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, 0x0a, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x42, 0x53, 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x10, 0xfe, 0x0a, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, - 0x49, 0x6e, 0x69, 0x74, 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x54, 0x78, 0x6e, 0x10, 0x80, 0x0b, - 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, 0x74, - 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x54, 0x78, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x81, 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, - 0x47, 0x65, 0x74, 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, - 0x6f, 0x10, 0x82, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, - 0x47, 0x65, 0x74, 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x83, 0x0b, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x6e, 0x73, 0x74, 0x72, 0x42, 0x61, 0x6e, 0x10, 0x89, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73, - 0x74, 0x72, 0x42, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x0b, - 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, 0x74, - 0x47, 0x43, 0x42, 0x61, 0x6e, 0x6b, 0x58, 0x66, 0x65, 0x72, 0x54, 0x78, 0x6e, 0x10, 0x8d, 0x0b, - 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, 0x74, - 0x47, 0x43, 0x42, 0x61, 0x6e, 0x6b, 0x58, 0x66, 0x65, 0x72, 0x54, 0x78, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x0b, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x53, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x47, 0x43, 0x54, 0x78, 0x6e, 0x10, - 0x91, 0x0b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x10, 0x92, 0x0b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x93, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, + 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0x99, 0x0a, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x42, 0x53, 0x10, 0xf8, 0x0a, 0x12, 0x1a, 0x0a, + 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, + 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x10, 0xf9, 0x0a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x0a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x53, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, + 0x43, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x10, 0xfb, 0x0a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, + 0x74, 0x65, 0x43, 0x43, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xfc, 0x0a, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, + 0x53, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xfe, + 0x0a, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, + 0x74, 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x54, 0x78, 0x6e, 0x10, 0x80, 0x0b, 0x12, 0x22, 0x0a, + 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, 0x74, 0x50, 0x61, 0x79, + 0x50, 0x61, 0x6c, 0x54, 0x78, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, + 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, + 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x82, + 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, + 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x83, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73, 0x74, + 0x72, 0x42, 0x61, 0x6e, 0x10, 0x89, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x42, 0x53, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x42, + 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x0b, 0x12, 0x1e, 0x0a, + 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, 0x74, 0x47, 0x43, 0x42, + 0x61, 0x6e, 0x6b, 0x58, 0x66, 0x65, 0x72, 0x54, 0x78, 0x6e, 0x10, 0x8d, 0x0b, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, 0x74, 0x47, 0x43, 0x42, + 0x61, 0x6e, 0x6b, 0x58, 0x66, 0x65, 0x72, 0x54, 0x78, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x8e, 0x0b, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x53, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x47, 0x43, 0x54, 0x78, 0x6e, 0x10, 0x91, 0x0b, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x10, 0x92, 0x0b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x93, + 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x54, 0x78, 0x6e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x49, 0x6e, 0x66, + 0x6f, 0x10, 0x99, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x6e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, - 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x99, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x78, 0x6e, 0x45, 0x78, 0x74, 0x65, 0x6e, - 0x64, 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x9a, 0x0b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, - 0x74, 0x65, 0x73, 0x10, 0x9b, 0x0b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x53, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x46, 0x72, 0x61, - 0x75, 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x10, 0x9d, 0x0b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, - 0x75, 0x6e, 0x46, 0x72, 0x61, 0x75, 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x0b, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x73, + 0x10, 0x9b, 0x0b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, + 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x46, 0x72, 0x61, 0x75, 0x64, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x73, 0x10, 0x9d, 0x0b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x53, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x75, 0x6e, 0x46, + 0x72, 0x61, 0x75, 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x9e, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xa0, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6e, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xa0, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x6e, 0x6b, - 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x53, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x58, 0x73, 0x6f, 0x6c, 0x6c, 0x61, - 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x10, 0xa5, 0x0b, 0x12, 0x2c, 0x0a, 0x27, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x58, 0x73, 0x6f, 0x6c, 0x6c, 0x61, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa6, 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x69, 0x77, 0x69, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x10, 0xa8, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x69, 0x77, 0x69, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xa9, 0x0b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, - 0x6d, 0x50, 0x72, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x10, 0xaa, 0x0b, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x72, 0x6f, 0x50, 0x61, 0x63, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x0b, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x68, 0x69, 0x70, - 0x70, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xac, 0x0b, 0x12, 0x28, - 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x68, - 0x69, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x0b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xae, 0x0b, 0x12, 0x2a, 0x0a, 0x25, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x50, 0x61, - 0x63, 0x6b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x53, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4a, 0x6f, 0x62, 0x52, 0x75, 0x6e, 0x6e, - 0x69, 0x6e, 0x67, 0x10, 0xb0, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x53, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4a, 0x6f, 0x62, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, - 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb1, 0x0b, 0x12, 0x2a, 0x0a, 0x25, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x63, - 0x6b, 0x61, 0x67, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x61, 0x74, 0x65, - 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xb2, 0x0b, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x53, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, - 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x0b, 0x12, 0x1e, 0x0a, 0x19, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xb4, 0x0b, 0x12, 0x26, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xb5, 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, - 0x47, 0x65, 0x74, 0x42, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x10, 0xb6, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, - 0x47, 0x65, 0x74, 0x42, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x0b, 0x12, 0x1e, 0x0a, 0x19, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, - 0x74, 0x43, 0x61, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xb8, 0x0b, 0x12, 0x26, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, - 0x74, 0x43, 0x61, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xb9, 0x0b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, - 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xbc, 0x0b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x45, 0x78, 0x70, - 0x69, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbd, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xa1, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x58, 0x73, 0x6f, 0x6c, 0x6c, 0x61, 0x53, 0x69, 0x67, + 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x10, 0xa5, 0x0b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x58, 0x73, 0x6f, + 0x6c, 0x6c, 0x61, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa6, 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x42, 0x53, 0x51, 0x69, 0x77, 0x69, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x6e, 0x76, + 0x6f, 0x69, 0x63, 0x65, 0x10, 0xa8, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x42, 0x53, 0x51, 0x69, 0x77, 0x69, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x6e, 0x76, + 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa9, 0x0b, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x72, + 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x10, 0xaa, 0x0b, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x72, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x68, 0x69, 0x70, 0x70, 0x69, 0x6e, + 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xac, 0x0b, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x68, 0x69, 0x70, 0x70, + 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xad, 0x0b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x53, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xae, 0x0b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x4f, + 0x72, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xaf, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x53, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4a, 0x6f, 0x62, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, + 0x10, 0xb0, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x4a, 0x6f, 0x62, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb1, 0x0b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, + 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x10, 0xb2, 0x0b, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x53, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x75, 0x72, + 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x79, 0x6d, 0x65, + 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xb4, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x79, 0x6d, 0x65, + 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb5, + 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, + 0x42, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x10, 0xb6, + 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, + 0x42, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x0b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x43, 0x61, + 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xb8, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x43, 0x61, + 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb9, + 0x0b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xbc, 0x0b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x53, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, + 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbd, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x42, 0x53, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x54, 0x6f, 0x43, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x10, 0xbe, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x54, 0x6f, 0x43, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x10, 0xbe, 0x0b, 0x12, 0x29, 0x0a, - 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, - 0x54, 0x6f, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, 0x0b, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x10, 0xc0, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, - 0x6e, 0x69, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xc1, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, - 0x73, 0x65, 0x10, 0xc2, 0x0b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, - 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x0b, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x43, 0x61, 0x72, - 0x64, 0x55, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc4, 0x0b, 0x12, 0x28, - 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x43, - 0x61, 0x72, 0x64, 0x55, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xbf, 0x0b, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x53, 0x49, 0x6e, 0x69, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0xc0, 0x0b, + 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x49, 0x6e, 0x69, 0x74, + 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xc1, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x43, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, + 0xc2, 0x0b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x43, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x43, 0x61, 0x72, 0x64, 0x55, 0x73, + 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc4, 0x0b, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x50, 0x72, 0x75, 0x6e, 0x65, 0x43, 0x61, 0x72, 0x64, + 0x55, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xc5, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x53, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xc6, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x6e, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xc6, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x6e, 0x6b, - 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x53, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x50, 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x10, - 0xc8, 0x0b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x56, 0x65, - 0x72, 0x69, 0x66, 0x79, 0x50, 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xc9, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xc7, 0x0b, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x56, + 0x65, 0x72, 0x69, 0x66, 0x79, 0x50, 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x10, 0xc8, 0x0b, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x56, 0x65, 0x72, 0x69, 0x66, + 0x79, 0x50, 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xc9, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x52, + 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x50, 0x4f, 0x53, 0x41, + 0x4b, 0x65, 0x79, 0x10, 0xca, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x52, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x50, - 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x10, 0xca, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x42, 0x53, 0x52, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x52, 0x65, 0x64, 0x65, - 0x65, 0x6d, 0x50, 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xcb, 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x43, - 0x61, 0x72, 0x64, 0x10, 0xcc, 0x0b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x53, 0x51, 0x75, 0x65, 0x72, 0x79, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x72, 0x65, 0x64, 0x69, - 0x74, 0x43, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcd, 0x0b, - 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x74, 0x61, 0x74, + 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcb, + 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x43, 0x61, 0x72, 0x64, + 0x10, 0xcc, 0x0b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x43, 0x61, + 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcd, 0x0b, 0x12, 0x21, 0x0a, + 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x49, + 0x6e, 0x71, 0x75, 0x69, 0x72, 0x79, 0x50, 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, 0x10, 0xce, 0x0b, + 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x49, 0x6e, 0x71, 0x75, 0x69, 0x72, 0x79, 0x50, 0x4f, 0x53, 0x41, 0x4b, 0x65, 0x79, - 0x10, 0xce, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x49, 0x6e, 0x71, 0x75, 0x69, 0x72, 0x79, 0x50, 0x4f, 0x53, 0x41, - 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcf, 0x0b, 0x12, 0x2c, - 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x42, 0x6f, 0x61, 0x43, 0x6f, 0x6d, - 0x70, 0x72, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, - 0x74, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x10, 0xd6, 0x0b, 0x12, 0x34, 0x0a, 0x2f, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x42, 0x6f, 0x61, 0x43, 0x6f, 0x6d, 0x70, 0x72, - 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, - 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xd7, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcf, 0x0b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x42, 0x6f, 0x61, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x61, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, + 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x10, 0xd6, 0x0b, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x42, 0x53, 0x42, 0x6f, 0x61, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x61, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x6c, 0x69, + 0x76, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd7, 0x0b, 0x12, + 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x65, 0x42, 0x6f, 0x61, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x61, 0x4d, 0x44, 0x35, 0x10, + 0xd8, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x61, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x61, 0x4d, - 0x44, 0x35, 0x10, 0xd8, 0x0b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, - 0x53, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x6f, 0x61, 0x43, 0x6f, 0x6d, 0x70, - 0x72, 0x61, 0x4d, 0x44, 0x35, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x0b, - 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x43, 0x6f, 0x6d, 0x6d, - 0x69, 0x74, 0x57, 0x50, 0x54, 0x78, 0x6e, 0x10, 0xda, 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x41, 0x64, 0x79, 0x65, - 0x6e, 0x54, 0x78, 0x6e, 0x10, 0xdb, 0x0b, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x42, 0x61, 0x73, 0x65, 0x41, 0x54, 0x53, 0x10, 0xdc, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x74, 0x72, - 0x65, 0x73, 0x73, 0x54, 0x65, 0x73, 0x74, 0x10, 0xdd, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x74, 0x72, 0x65, 0x73, - 0x73, 0x54, 0x65, 0x73, 0x74, 0x10, 0xde, 0x0b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x54, 0x53, 0x52, 0x75, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x54, 0x65, 0x73, 0x74, 0x10, 0xdf, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x55, 0x46, 0x53, 0x50, 0x65, 0x72, 0x66, 0x54, 0x65, 0x73, - 0x74, 0x54, 0x61, 0x73, 0x6b, 0x10, 0xe0, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x54, 0x53, 0x55, 0x46, 0x53, 0x50, 0x65, 0x72, 0x66, 0x54, 0x65, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe1, 0x0b, 0x12, 0x16, 0x0a, 0x11, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x54, 0x43, 0x4d, - 0x10, 0xe2, 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, - 0x49, 0x6e, 0x69, 0x74, 0x44, 0x52, 0x4d, 0x53, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x54, 0x65, - 0x73, 0x74, 0x10, 0xe3, 0x0b, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x54, 0x53, 0x43, 0x61, 0x6c, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x10, 0xe4, 0x0b, 0x12, 0x1b, 0x0a, - 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x43, 0x61, 0x6c, 0x6c, 0x54, 0x65, - 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0xe5, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x10, 0xe6, 0x0b, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x10, 0xe7, 0x0b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, - 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x4a, 0x6f, - 0x62, 0x51, 0x75, 0x65, 0x75, 0x65, 0x64, 0x10, 0xe8, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, - 0x74, 0x72, 0x65, 0x73, 0x73, 0x4a, 0x6f, 0x62, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x10, - 0xe9, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x45, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x4a, 0x6f, 0x62, - 0x53, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x10, 0xea, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x44, 0x35, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x0b, 0x12, 0x18, 0x0a, + 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x53, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x57, + 0x50, 0x54, 0x78, 0x6e, 0x10, 0xda, 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x42, 0x53, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x41, 0x64, 0x79, 0x65, 0x6e, 0x54, 0x78, + 0x6e, 0x10, 0xdb, 0x0b, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, + 0x73, 0x65, 0x41, 0x54, 0x53, 0x10, 0xdc, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x54, 0x53, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, + 0x54, 0x65, 0x73, 0x74, 0x10, 0xdd, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x54, 0x53, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x54, 0x65, + 0x73, 0x74, 0x10, 0xde, 0x0b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x54, 0x53, 0x52, 0x75, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, + 0x65, 0x73, 0x74, 0x10, 0xdf, 0x0b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x54, 0x53, 0x55, 0x46, 0x53, 0x50, 0x65, 0x72, 0x66, 0x54, 0x65, 0x73, 0x74, 0x54, 0x61, + 0x73, 0x6b, 0x10, 0xe0, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x54, 0x53, 0x55, 0x46, 0x53, 0x50, 0x65, 0x72, 0x66, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe1, 0x0b, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x54, 0x53, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x54, 0x43, 0x4d, 0x10, 0xe2, 0x0b, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x49, 0x6e, 0x69, + 0x74, 0x44, 0x52, 0x4d, 0x53, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x54, 0x65, 0x73, 0x74, 0x10, + 0xe3, 0x0b, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x43, + 0x61, 0x6c, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x10, 0xe4, 0x0b, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x43, 0x61, 0x6c, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x10, 0xe5, 0x0b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x54, 0x53, 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x10, 0xe6, 0x0b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, - 0x74, 0x72, 0x65, 0x73, 0x73, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x6c, 0x6c, 0x10, - 0xeb, 0x0b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x45, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xec, 0x0b, 0x12, 0x15, 0x0a, 0x10, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, - 0x10, 0xed, 0x0b, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, - 0x43, 0x53, 0x50, 0x65, 0x72, 0x66, 0x54, 0x65, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x10, 0xee, - 0x0b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x43, 0x53, - 0x50, 0x65, 0x72, 0x66, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xef, 0x0b, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, - 0x65, 0x44, 0x50, 0x10, 0xc0, 0x0c, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x44, 0x50, 0x53, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x10, 0xc1, 0x0c, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x44, 0x50, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x53, 0x74, 0x61, 0x74, 0x10, 0xc3, 0x0c, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x44, 0x50, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x55, 0x6e, 0x69, 0x71, - 0x75, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x10, 0xc4, 0x0c, - 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x42, 0x6c, 0x6f, 0x63, - 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc7, 0x0c, 0x12, 0x1e, 0x0a, 0x19, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x4e, 0x61, 0x74, 0x54, 0x72, 0x61, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc8, 0x0c, 0x12, 0x17, 0x0a, 0x12, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x10, 0xcc, 0x0c, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x50, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, - 0xcf, 0x0c, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x47, 0x65, - 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x0c, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x44, 0x50, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xd1, 0x0c, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x50, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x72, 0x76, 0x65, - 0x79, 0x10, 0xd4, 0x0c, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x44, 0x50, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x70, 0x65, 0x63, 0x69, - 0x61, 0x6c, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xd5, 0x0c, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x44, 0x50, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, - 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd6, - 0x0c, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x44, 0x50, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, - 0x72, 0x76, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6c, - 0x79, 0x10, 0xd7, 0x0c, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, - 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, - 0x69, 0x63, 0x73, 0x10, 0xd8, 0x0c, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x50, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, - 0x70, 0x4a, 0x6f, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xd9, 0x0c, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x50, 0x55, - 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x10, 0xdb, 0x0c, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x44, 0x50, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, - 0x78, 0x6e, 0x73, 0x10, 0xdc, 0x0c, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x44, 0x50, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, - 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdd, 0x0c, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x50, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x10, 0xde, 0x0c, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, - 0x56, 0x52, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x53, - 0x74, 0x61, 0x74, 0x10, 0xdf, 0x0c, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x61, 0x73, 0x65, 0x43, 0x4d, 0x10, 0xa4, 0x0d, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x4d, 0x53, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x10, 0xa5, 0x0d, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x4d, 0x53, 0x70, 0x65, 0x77, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, - 0xa6, 0x0d, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x4d, 0x53, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0xa7, 0x0d, - 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x4d, 0x53, 0x65, 0x74, 0x53, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x10, 0xa8, 0x0d, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x4d, 0x47, 0x65, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x10, - 0xa9, 0x0d, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, - 0x47, 0x43, 0x10, 0x98, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x76, 0x69, 0x76, 0x65, 0x10, 0x9b, 0x11, 0x12, 0x14, 0x0a, - 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, 0x64, 0x44, 0x6f, 0x77, 0x6e, - 0x10, 0x9e, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, - 0x6d, 0x64, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x10, 0x9f, 0x11, 0x12, 0x1e, 0x0a, 0x19, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, 0x64, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, 0x64, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, - 0x10, 0xa1, 0x11, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, - 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xa2, - 0x11, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x63, 0x68, - 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x10, - 0xa4, 0x11, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x53, 0x79, - 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xa5, 0x11, 0x12, 0x16, - 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, 0x64, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x10, 0xa8, 0x11, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x57, 0x65, 0x62, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, - 0x65, 0x64, 0x10, 0xa9, 0x11, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x5f, 0x44, 0x45, 0x50, 0x52, 0x45, 0x43, 0x41, 0x54, 0x45, 0x44, 0x10, 0xaa, 0x11, - 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x41, 0x70, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xab, 0x11, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x10, 0xac, 0x11, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x61, 0x69, - 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xad, 0x11, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x48, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x10, 0xae, 0x11, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x54, 0x6f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x10, 0xaf, 0x11, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x48, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x10, 0xb0, 0x11, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xb1, 0x11, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x48, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x10, 0xb2, 0x11, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x48, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x11, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x61, 0x63, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xb4, 0x11, 0x12, - 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x53, 0x70, 0x61, 0x77, - 0x6e, 0x47, 0x43, 0x10, 0xb5, 0x11, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x48, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xb6, 0x11, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x48, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x43, 0x10, 0xb7, 0x11, 0x12, 0x1c, 0x0a, 0x17, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x43, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb8, 0x11, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x72, 0x61, - 0x64, 0x65, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x10, 0xb9, 0x11, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xba, 0x11, 0x12, 0x23, 0x0a, 0x1e, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x56, 0x61, 0x63, 0x56, 0x65, 0x72, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xbb, 0x11, - 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xbc, 0x11, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x77, 0x6f, 0x46, - 0x61, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xbd, 0x11, 0x12, 0x1f, - 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xbe, 0x11, 0x12, - 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x10, 0xbf, 0x11, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x48, 0x4d, 0x61, 0x72, 0x6b, 0x41, 0x70, 0x70, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x61, 0x74, 0x69, 0x76, 0x65, 0x10, 0xc0, - 0x11, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x52, 0x65, - 0x63, 0x75, 0x72, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, - 0xc1, 0x11, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, - 0x70, 0x70, 0x43, 0x68, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, - 0x10, 0xc2, 0x11, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, - 0x41, 0x70, 0x70, 0x43, 0x68, 0x65, 0x65, 0x72, 0x73, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x6f, - 0x77, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x73, 0x10, 0xc3, 0x11, 0x12, 0x2e, 0x0a, 0x29, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x70, 0x70, 0x43, 0x68, 0x65, 0x65, 0x72, - 0x73, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc4, 0x11, 0x12, 0x12, 0x0a, 0x0d, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x50, 0x32, 0x50, 0x10, 0xc4, 0x13, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x32, 0x50, 0x49, 0x6e, 0x74, 0x72, - 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xc6, 0x13, - 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x53, 0x4d, - 0x10, 0xd4, 0x16, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x45, - 0x78, 0x70, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xd6, - 0x16, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x48, 0x6f, 0x75, - 0x72, 0x6c, 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xd7, 0x16, 0x12, 0x1d, 0x0a, 0x18, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x10, 0xd9, 0x16, 0x12, 0x19, 0x0a, 0x14, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x53, 0x70, - 0x61, 0x63, 0x65, 0x10, 0xda, 0x16, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x53, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x10, - 0xdb, 0x16, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x54, 0x65, - 0x73, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x16, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x61, 0x73, 0x65, 0x54, 0x65, 0x73, 0x74, 0x10, 0xb8, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, - 0xb8, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x62, 0x48, - 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x54, 0x65, 0x73, 0x74, 0x10, 0xb9, 0x17, 0x12, - 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x62, 0x48, 0x65, 0x61, 0x72, - 0x74, 0x62, 0x65, 0x61, 0x74, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xba, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, - 0x73, 0x65, 0x46, 0x54, 0x53, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x9c, 0x18, 0x12, 0x17, 0x0a, - 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x43, 0x53, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x10, 0xce, 0x18, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x43, 0x53, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x42, 0x79, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x10, 0xd9, 0x18, 0x12, - 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x43, 0x53, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x79, 0x41, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, 0x18, - 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x4c, 0x42, - 0x53, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x80, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x10, 0x81, - 0x19, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x53, 0x65, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, - 0x19, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x46, 0x69, - 0x6e, 0x64, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x42, 0x10, 0x83, 0x19, 0x12, - 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x46, 0x69, 0x6e, 0x64, - 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x42, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0x84, 0x19, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, - 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x10, 0x85, - 0x19, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x47, 0x65, - 0x74, 0x4c, 0x42, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0x86, 0x19, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, - 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x87, 0x19, 0x12, 0x1f, - 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x88, 0x19, 0x12, - 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x4c, - 0x42, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x89, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x6b, + 0x74, 0x72, 0x65, 0x73, 0x73, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x61, 0x72, 0x74, 0x10, 0xe7, 0x0b, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x45, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x4a, 0x6f, 0x62, 0x51, 0x75, + 0x65, 0x75, 0x65, 0x64, 0x10, 0xe8, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x54, 0x53, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, + 0x73, 0x73, 0x4a, 0x6f, 0x62, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x10, 0xe9, 0x0b, 0x12, + 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x45, 0x78, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x6f, + 0x70, 0x70, 0x65, 0x64, 0x10, 0xea, 0x0b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x54, 0x53, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, + 0x73, 0x73, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x6c, 0x6c, 0x10, 0xeb, 0x0b, 0x12, + 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x45, 0x78, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x73, 0x73, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xec, 0x0b, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0xed, 0x0b, + 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x43, 0x53, 0x50, + 0x65, 0x72, 0x66, 0x54, 0x65, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x10, 0xee, 0x0b, 0x12, 0x20, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x54, 0x53, 0x43, 0x53, 0x50, 0x65, 0x72, + 0x66, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xef, 0x0b, + 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x44, 0x50, + 0x10, 0xc0, 0x0c, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x53, + 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x10, 0xc1, 0x0c, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, + 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, + 0x74, 0x10, 0xc3, 0x0c, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, + 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x10, 0xc4, 0x0c, 0x12, 0x1a, 0x0a, + 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, + 0x67, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc7, 0x0c, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x50, 0x4e, 0x61, 0x74, 0x54, 0x72, 0x61, 0x76, 0x65, 0x72, 0x73, 0x61, + 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xc8, 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x50, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, + 0xcc, 0x0c, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x47, 0x65, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xcf, 0x0c, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x47, 0x65, 0x74, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xd0, 0x0c, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, + 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xd1, 0x0c, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x50, 0x43, 0x68, 0x65, 0x63, + 0x6b, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x72, 0x76, 0x65, 0x79, 0x10, 0xd4, + 0x0c, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x44, 0x50, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, + 0x75, 0x72, 0x76, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, 0x0c, + 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x44, 0x50, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x72, + 0x76, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd6, 0x0c, 0x12, 0x31, + 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x50, + 0x53, 0x65, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x72, 0x76, 0x65, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0xd7, + 0x0c, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x53, 0x74, 0x6f, + 0x72, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, + 0x10, 0xd8, 0x0c, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x50, + 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x73, 0x10, + 0xdc, 0x0c, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x50, 0x50, 0x61, + 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdd, 0x0c, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x50, 0x56, 0x52, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x73, 0x53, 0x74, 0x61, 0x74, 0x10, 0xdf, 0x0c, 0x12, 0x11, 0x0a, 0x0c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x4d, 0x10, 0xa4, 0x0d, 0x12, 0x1a, + 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x4d, 0x53, 0x65, 0x74, 0x41, 0x6c, 0x6c, + 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0xa5, 0x0d, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x4d, 0x53, 0x70, 0x65, 0x77, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x10, 0xa6, 0x0d, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x4d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x10, 0xa7, 0x0d, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x4d, 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x10, 0xa8, 0x0d, 0x12, 0x17, + 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x4d, 0x47, 0x65, 0x74, 0x53, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x73, 0x10, 0xa9, 0x0d, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x42, 0x61, 0x73, 0x65, 0x47, 0x43, 0x10, 0x98, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, 0x64, 0x52, 0x65, 0x76, 0x69, 0x76, 0x65, 0x10, + 0x9b, 0x11, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, + 0x64, 0x44, 0x6f, 0x77, 0x6e, 0x10, 0x9e, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, 0x64, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x10, 0x9f, 0x11, + 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, 0x64, 0x44, + 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x11, + 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6d, 0x64, 0x53, + 0x77, 0x69, 0x74, 0x63, 0x68, 0x10, 0xa1, 0x11, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x10, 0xa2, 0x11, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x77, 0x61, + 0x72, 0x64, 0x65, 0x64, 0x10, 0xa4, 0x11, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x10, 0xa5, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, + 0x6d, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xa8, 0x11, 0x12, 0x2d, 0x0a, 0x28, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x57, + 0x65, 0x62, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x5f, 0x44, 0x65, 0x70, + 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xa9, 0x11, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x5f, 0x44, 0x45, 0x50, 0x52, 0x45, 0x43, 0x41, 0x54, + 0x45, 0x44, 0x10, 0xaa, 0x11, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x41, 0x70, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x10, 0xab, 0x11, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, + 0x65, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x10, + 0xac, 0x11, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x47, 0x65, + 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x11, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x10, 0xae, 0x11, 0x12, 0x1b, + 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x52, 0x65, 0x6c, 0x61, 0x79, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x10, 0xaf, 0x11, 0x12, 0x1b, 0x0a, 0x16, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xb0, 0x11, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x48, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xb1, 0x11, 0x12, 0x1b, 0x0a, 0x16, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xb2, 0x11, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x11, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x56, 0x61, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x10, 0xb4, 0x11, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x48, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x43, 0x10, 0xb5, 0x11, 0x12, 0x1d, 0x0a, 0x18, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x43, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb6, 0x11, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x4b, 0x69, 0x6c, 0x6c, 0x47, 0x43, 0x10, 0xb7, 0x11, + 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x4b, 0x69, 0x6c, + 0x6c, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb8, 0x11, 0x12, 0x29, + 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x54, 0x72, 0x61, 0x64, 0x65, 0x42, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xb9, 0x11, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x6f, 0x63, + 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xba, 0x11, + 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x56, 0x61, 0x63, + 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x10, 0xbb, 0x11, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xbc, 0x11, 0x12, 0x24, 0x0a, + 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x54, 0x77, 0x6f, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x10, 0xbd, 0x11, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x10, 0xbe, 0x11, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x48, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xbf, 0x11, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x4d, 0x61, 0x72, 0x6b, 0x41, 0x70, 0x70, 0x53, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x61, 0x74, + 0x69, 0x76, 0x65, 0x10, 0xc0, 0x11, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x48, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x10, 0xc1, 0x11, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x48, 0x41, 0x70, 0x70, 0x43, 0x68, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xc2, 0x11, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x70, 0x70, 0x43, 0x68, 0x65, 0x65, 0x72, 0x73, 0x47, 0x65, + 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x73, 0x10, 0xc3, 0x11, + 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x41, 0x70, 0x70, + 0x43, 0x68, 0x65, 0x65, 0x72, 0x73, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc4, 0x11, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x48, 0x52, 0x6f, 0x75, + 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x46, 0x72, 0x6f, 0x6d, 0x47, 0x43, 0x48, + 0x74, 0x6f, 0x47, 0x4d, 0x10, 0xc5, 0x11, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x48, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, + 0x54, 0x6f, 0x47, 0x43, 0x48, 0x66, 0x72, 0x6f, 0x6d, 0x47, 0x4d, 0x10, 0xc6, 0x11, 0x12, 0x23, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x4d, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x61, 0x74, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x73, + 0x10, 0xc7, 0x11, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, + 0x65, 0x50, 0x32, 0x50, 0x10, 0xc4, 0x13, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x50, 0x32, 0x50, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xc6, 0x13, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x53, 0x4d, 0x10, 0xd4, 0x16, 0x12, 0x1c, 0x0a, 0x17, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x45, 0x78, 0x70, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xd6, 0x16, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x48, 0x6f, 0x75, 0x72, 0x6c, 0x79, 0x52, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x10, 0xd7, 0x16, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x73, + 0x10, 0xd9, 0x16, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x4d, + 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x53, 0x70, 0x61, 0x63, 0x65, 0x10, 0xda, 0x16, 0x12, 0x2a, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x4e, 0x65, + 0x78, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xdb, 0x16, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x42, 0x75, + 0x69, 0x6c, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x16, 0x12, 0x13, + 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x54, 0x65, 0x73, 0x74, + 0x10, 0xb8, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x61, 0x69, + 0x6c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xb8, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x4a, 0x6f, 0x62, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, + 0x54, 0x65, 0x73, 0x74, 0x10, 0xb9, 0x17, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x4a, 0x6f, 0x62, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x54, 0x65, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xba, 0x17, 0x12, 0x17, 0x0a, 0x12, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x46, 0x54, 0x53, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x10, 0x9c, 0x18, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x61, 0x73, 0x65, 0x43, 0x43, 0x53, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xce, 0x18, 0x12, 0x27, + 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x43, 0x53, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x79, 0x41, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x10, 0xd9, 0x18, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x43, 0x53, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x79, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, 0x18, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x4c, 0x42, 0x53, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x80, + 0x19, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x53, 0x65, + 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x10, 0x81, 0x19, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x19, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x4c, 0x42, 0x10, 0x83, 0x19, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x4c, 0x42, 0x53, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x4c, 0x42, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x19, 0x12, 0x1a, 0x0a, + 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x45, + 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x10, 0x85, 0x19, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x45, 0x6e, 0x74, 0x72, 0x69, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x19, 0x12, 0x17, 0x0a, + 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x4c, + 0x69, 0x73, 0x74, 0x10, 0x87, 0x19, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x4c, 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x88, 0x19, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x4c, 0x42, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x10, 0x89, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4c, 0x42, 0x10, 0x8a, 0x19, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4c, 0x42, - 0x10, 0x8a, 0x19, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4c, 0x42, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x10, 0x8b, 0x19, - 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x52, 0x65, 0x73, - 0x65, 0x74, 0x4c, 0x42, 0x10, 0x8c, 0x19, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x4c, 0x42, 0x53, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4c, 0x42, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x8d, 0x19, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x4c, 0x42, 0x53, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4c, 0x42, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x19, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x42, 0x61, 0x73, 0x65, 0x4f, 0x47, 0x53, 0x10, 0xc8, 0x1a, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x4f, 0x47, 0x53, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x10, 0xc9, 0x1a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x4f, 0x47, 0x53, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x1a, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x4f, 0x47, 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x10, 0xcb, 0x1a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4f, 0x47, - 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x1a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x4f, 0x47, 0x53, 0x57, 0x72, 0x69, 0x74, 0x65, 0x41, 0x70, 0x70, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x52, 0x6f, 0x77, 0x10, 0xce, 0x1a, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x42, 0x52, 0x50, 0x10, 0x90, 0x1c, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x52, 0x50, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x78, 0x10, 0xad, 0x1c, 0x12, 0x28, - 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x52, 0x50, 0x50, 0x6f, 0x73, 0x74, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x78, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x41, 0x4d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x32, 0x10, 0xa0, - 0x1f, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x10, 0xa1, 0x1f, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x1f, 0x12, 0x1a, 0x0a, 0x15, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x55, 0x52, 0x4c, 0x10, 0xa5, 0x1f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x10, 0xa6, 0x1f, 0x12, 0x2b, 0x0a, 0x26, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x1f, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6c, 0x61, 0x6e, - 0x44, 0x61, 0x74, 0x61, 0x10, 0xa8, 0x1f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x73, 0x10, 0xa9, 0x1f, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0xaa, 0x1f, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xab, 0x1f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xac, 0x1f, - 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x6d, 0x6d, 0x79, - 0x46, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x10, - 0xad, 0x1f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x6d, - 0x6d, 0x79, 0x46, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x6e, - 0x67, 0x10, 0xaf, 0x1f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x10, 0xb5, 0x1f, 0x12, 0x2e, 0x0a, 0x29, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x10, 0x8b, 0x19, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x4c, 0x42, 0x53, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4c, 0x42, 0x10, 0x8c, 0x19, 0x12, + 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x52, 0x65, 0x73, 0x65, + 0x74, 0x4c, 0x42, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8d, 0x19, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x42, 0x53, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x4c, 0x42, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x19, 0x12, 0x12, + 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x4f, 0x47, 0x53, 0x10, + 0xc8, 0x1a, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4f, 0x47, 0x53, 0x42, + 0x65, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xc9, 0x1a, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4f, 0x47, 0x53, 0x42, 0x65, 0x67, 0x69, 0x6e, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xca, 0x1a, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4f, 0x47, 0x53, 0x45, + 0x6e, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xcb, 0x1a, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4f, 0x47, 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x1a, 0x12, 0x20, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4f, 0x47, 0x53, 0x57, 0x72, 0x69, 0x74, 0x65, + 0x41, 0x70, 0x70, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x77, 0x10, 0xce, 0x1a, + 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x42, 0x52, + 0x50, 0x10, 0x90, 0x1c, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x52, + 0x50, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x54, 0x61, 0x78, 0x10, 0xad, 0x1c, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x42, 0x52, 0x50, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x61, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x1c, + 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x41, 0x4d, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x32, 0x10, 0xa0, 0x1f, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x10, + 0xa1, 0x1f, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xa2, 0x1f, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, + 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x52, 0x4c, 0x10, 0xa5, 0x1f, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x10, 0xa6, 0x1f, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, + 0x1f, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x10, 0xa8, 0x1f, 0x12, + 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x6f, 0x75, 0x74, 0x65, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xa9, 0x1f, 0x12, 0x16, 0x0a, 0x11, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x61, + 0x6e, 0x10, 0xaa, 0x1f, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, + 0xab, 0x1f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, + 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xac, 0x1f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x44, 0x75, 0x6d, 0x6d, 0x79, 0x46, 0x6f, 0x72, 0x52, 0x61, 0x74, 0x65, 0x4c, + 0x69, 0x6d, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xad, 0x1f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x6e, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x6d, 0x6d, 0x79, 0x46, 0x6f, 0x72, 0x52, 0x61, 0x74, + 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xaf, 0x1f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb6, 0x1f, 0x12, 0x26, 0x0a, 0x21, + 0x73, 0x10, 0xb5, 0x1f, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xb6, 0x1f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x10, 0xb7, 0x1f, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, - 0x73, 0x10, 0xb7, 0x1f, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xb8, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x68, 0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x49, - 0x6e, 0x66, 0x6f, 0x10, 0xb9, 0x1f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, - 0x66, 0x6f, 0x10, 0xba, 0x1f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, - 0xc7, 0x1f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, - 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x1f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x69, 0x74, 0x73, 0x10, 0xc9, 0x1f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x1f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x69, 0x74, 0x73, 0x10, 0xcb, 0x1f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x1f, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xcd, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xce, 0x1f, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x57, 0x47, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x10, 0xcf, 0x1f, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x10, - 0xd2, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, - 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xd3, 0x1f, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x10, 0xd4, 0x1f, 0x12, 0x20, - 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, - 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, 0x1f, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb8, 0x1f, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x68, 0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xb9, 0x1f, 0x12, 0x1d, + 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, + 0x61, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xba, 0x1f, 0x12, 0x1b, 0x0a, + 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xc7, 0x1f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x1f, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, + 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x69, 0x74, 0x73, + 0x10, 0xc9, 0x1f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, + 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x42, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x1f, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, + 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x69, 0x74, 0x73, + 0x10, 0xcb, 0x1f, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, + 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x42, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x1f, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xcd, 0x1f, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xce, 0x1f, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x57, 0x47, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x10, 0xcf, 0x1f, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, - 0x6c, 0x61, 0x6e, 0x50, 0x4f, 0x54, 0x57, 0x10, 0xd6, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x4f, 0x54, - 0x57, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd7, 0x1f, 0x12, 0x18, 0x0a, 0x13, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, - 0x4f, 0x54, 0x57, 0x10, 0xd8, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x4f, 0x54, 0x57, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x1f, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x44, 0x75, 0x6d, 0x70, 0x55, 0x73, 0x65, 0x72, 0x10, 0xdb, 0x1f, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4b, 0x69, 0x63, 0x6b, 0x55, - 0x73, 0x65, 0x72, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0xdc, 0x1f, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x65, 0x72, 0x54, 0x6f, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0xdd, 0x1f, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x57, 0x47, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xde, 0x1f, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, - 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x10, 0xe0, 0x1f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x43, 0x68, 0x61, 0x74, 0x42, 0x61, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xe1, 0x1f, - 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, - 0x68, 0x61, 0x74, 0x42, 0x61, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xe2, 0x1f, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x55, 0x6e, 0x42, 0x61, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x68, 0x61, 0x74, 0x10, 0xe3, - 0x1f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, - 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xe4, 0x1f, 0x12, 0x1e, - 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xe9, 0x1f, 0x12, 0x26, - 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xea, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x68, 0x69, 0x70, 0x10, 0xeb, 0x1f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x10, 0xec, 0x1f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xed, 0x1f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x43, 0x68, 0x61, 0x74, - 0x4f, 0x66, 0x43, 0x6c, 0x61, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xef, 0x1f, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x75, 0x62, - 0x6d, 0x69, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0xf0, 0x1f, 0x12, 0x16, - 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x10, 0xf1, 0x1f, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xf2, 0x1f, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0xf3, - 0x1f, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x75, 0x6d, - 0x70, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0xf4, 0x1f, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x77, - 0x6e, 0x65, 0x72, 0x10, 0xf5, 0x1f, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x45, 0x61, 0x73, 0x79, 0x43, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x10, 0xf6, 0x1f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x45, 0x61, 0x73, 0x79, 0x43, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x1f, 0x12, 0x1a, - 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x49, - 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x10, 0xfa, 0x1f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x1f, 0x12, 0x1d, - 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x56, 0x61, 0x6c, 0x69, - 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x44, 0x10, 0xfc, 0x1f, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x57, 0x69, 0x70, 0x65, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xff, 0x1f, 0x12, 0x17, 0x0a, 0x12, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, - 0x64, 0x10, 0x80, 0x20, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x20, 0x12, 0x18, 0x0a, - 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, - 0x4c, 0x69, 0x73, 0x74, 0x10, 0x82, 0x20, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x83, 0x20, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x49, 0x6e, 0x43, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x10, 0x84, 0x20, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x85, 0x20, 0x12, 0x29, 0x0a, - 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, - 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x20, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x87, 0x20, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x56, 0x65, - 0x72, 0x64, 0x69, 0x63, 0x74, 0x10, 0x88, 0x20, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x74, - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x89, 0x20, 0x12, 0x17, 0x0a, 0x12, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x64, 0x47, 0x53, 0x42, 0x79, - 0x49, 0x50, 0x10, 0x8a, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x47, 0x53, 0x42, 0x79, 0x49, 0x50, 0x10, 0x8b, 0x20, 0x12, - 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x69, 0x66, 0x74, 0x52, - 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x10, 0x8c, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x6e, 0x4c, 0x69, 0x73, - 0x74, 0x10, 0x8e, 0x20, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x20, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x73, 0x32, 0x10, 0x90, 0x20, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x10, 0x91, - 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, - 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x10, 0x92, 0x20, 0x12, 0x30, 0x0a, 0x2b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, - 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, - 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x93, 0x20, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, - 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x10, 0x94, 0x20, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x69, 0x76, - 0x61, 0x63, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x95, 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x61, - 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x10, 0x96, 0x20, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x10, 0x97, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x10, 0x98, 0x20, 0x12, 0x1f, - 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x49, 0x67, 0x6e, - 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x20, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x49, 0x67, - 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x20, - 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x46, + 0x6c, 0x61, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x10, 0xd2, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x61, 0x6e, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd3, 0x1f, 0x12, 0x18, 0x0a, 0x13, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x52, + 0x61, 0x6e, 0x6b, 0x10, 0xd4, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, 0x1f, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x4f, 0x54, 0x57, 0x10, + 0xd6, 0x1f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, + 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x4f, 0x54, 0x57, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xd7, 0x1f, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x50, 0x4f, 0x54, 0x57, 0x10, 0xd8, 0x1f, 0x12, 0x20, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, + 0x6e, 0x50, 0x4f, 0x54, 0x57, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x1f, + 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x75, 0x6d, 0x70, + 0x55, 0x73, 0x65, 0x72, 0x10, 0xdb, 0x1f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x46, 0x72, 0x6f, 0x6d, 0x43, + 0x6c, 0x61, 0x6e, 0x10, 0xdc, 0x1f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x54, 0x6f, 0x43, 0x6c, + 0x61, 0x6e, 0x10, 0xdd, 0x1f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x57, 0x47, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x1f, 0x12, 0x1e, 0x0a, 0x19, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xe0, 0x1f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x74, 0x42, 0x61, + 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xe1, 0x1f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x74, 0x42, 0x61, 0x6e, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x1f, 0x12, 0x1a, 0x0a, + 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, 0x6e, 0x42, 0x61, 0x6e, 0x46, 0x72, + 0x6f, 0x6d, 0x43, 0x68, 0x61, 0x74, 0x10, 0xe3, 0x1f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x10, 0xe4, 0x1f, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x10, 0xe9, 0x1f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xea, 0x1f, 0x12, 0x20, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, + 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x10, 0xeb, 0x1f, + 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, + 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x10, 0xec, 0x1f, 0x12, 0x23, 0x0a, + 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xed, 0x1f, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x6f, + 0x74, 0x69, 0x66, 0x79, 0x43, 0x68, 0x61, 0x74, 0x4f, 0x66, 0x43, 0x6c, 0x61, 0x6e, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x10, 0xef, 0x1f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, + 0x61, 0x73, 0x65, 0x10, 0xf0, 0x1f, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0xf1, 0x1f, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf2, 0x1f, 0x12, 0x19, + 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0xf3, 0x1f, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x75, 0x6d, 0x70, 0x43, 0x6c, 0x61, 0x6e, 0x10, 0xf4, 0x1f, + 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x10, 0xf5, 0x1f, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, + 0x45, 0x61, 0x73, 0x79, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x10, 0xf6, 0x1f, 0x12, 0x26, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, + 0x45, 0x61, 0x73, 0x79, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x1f, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x10, + 0xfa, 0x1f, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, + 0x61, 0x6e, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x1f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x49, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x44, 0x10, 0xfc, 0x1f, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x57, 0x69, 0x70, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x69, 0x73, 0x74, + 0x10, 0xff, 0x1f, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, + 0x65, 0x74, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x10, 0x80, 0x20, 0x12, 0x27, 0x0a, 0x22, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x49, 0x6e, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x81, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x82, 0x20, 0x12, + 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x83, + 0x20, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x10, 0x84, 0x20, 0x12, + 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x85, 0x20, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x20, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x6e, + 0x73, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x87, + 0x20, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x56, 0x65, 0x72, 0x64, 0x69, 0x63, 0x74, 0x10, 0x88, 0x20, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x61, 0x6c, + 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x10, 0x89, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x46, 0x69, 0x6e, 0x64, 0x47, 0x53, 0x42, 0x79, 0x49, 0x50, 0x10, 0x8a, 0x20, 0x12, 0x18, 0x0a, + 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x47, 0x53, + 0x42, 0x79, 0x49, 0x50, 0x10, 0x8b, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x10, 0x8c, + 0x20, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, 0x73, 0x65, + 0x72, 0x43, 0x6c, 0x61, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8e, 0x20, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x6e, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x20, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x32, 0x10, 0x90, 0x20, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x10, 0x91, 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, + 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, + 0x10, 0x92, 0x20, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, + 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x93, 0x20, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x69, + 0x76, 0x61, 0x63, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x94, 0x20, 0x12, 0x2d, 0x0a, 0x28, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, + 0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x95, 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6c, 0x61, 0x6e, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x69, + 0x6e, 0x67, 0x10, 0x96, 0x20, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, + 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x97, 0x20, 0x12, 0x17, 0x0a, + 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x49, 0x67, 0x6e, 0x6f, + 0x72, 0x65, 0x64, 0x10, 0x98, 0x20, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x47, 0x65, 0x74, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x20, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x20, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x9b, 0x20, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, - 0x70, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x9b, 0x20, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x10, 0x9c, 0x20, 0x12, 0x2a, 0x0a, 0x25, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x20, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, - 0x65, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0x9e, 0x20, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, - 0x75, 0x6c, 0x65, 0x73, 0x43, 0x61, 0x6c, 0x6c, 0x10, 0x9f, 0x20, 0x12, 0x27, 0x0a, 0x22, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, - 0x64, 0x75, 0x6c, 0x65, 0x73, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xa0, 0x20, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6f, - 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x4e, 0x65, 0x77, 0x73, 0x10, 0xac, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x6c, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x10, - 0xaf, 0x20, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, - 0x6e, 0x64, 0x43, 0x6c, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xb0, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x42, 0x61, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x68, 0x61, 0x74, 0x10, 0xb1, 0x20, 0x12, - 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x4e, 0x65, 0x77, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x10, 0xb3, 0x20, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x65, 0x77, 0x73, 0x53, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xb4, 0x20, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x65, 0x77, 0x73, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xb5, 0x20, 0x12, 0x1d, 0x0a, 0x18, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, - 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xb8, 0x20, 0x12, 0x1c, 0x0a, 0x17, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, - 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0xb9, 0x20, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x65, 0x77, 0x73, 0x10, 0xbb, 0x20, 0x12, 0x22, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x55, 0x73, - 0x65, 0x72, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xbc, - 0x20, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x6c, 0x6c, - 0x6f, 0x77, 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xbd, 0x20, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x10, 0xbe, 0x20, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x70, 0x10, 0x9c, 0x20, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x20, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, + 0x9e, 0x20, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x43, 0x61, 0x6c, 0x6c, + 0x10, 0x9f, 0x20, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x43, 0x61, 0x6c, + 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x20, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x41, + 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4e, 0x65, 0x77, 0x73, 0x10, 0xac, 0x20, 0x12, + 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x64, 0x43, + 0x6c, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x10, 0xaf, 0x20, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x64, 0x43, 0x6c, 0x61, 0x6e, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x20, 0x12, 0x18, 0x0a, + 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x42, 0x61, 0x6e, 0x46, 0x72, 0x6f, 0x6d, + 0x43, 0x68, 0x61, 0x74, 0x10, 0xb1, 0x20, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x65, 0x77, 0x73, 0x53, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xb3, 0x20, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x4e, 0x65, 0x77, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb4, 0x20, 0x12, 0x25, 0x0a, + 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x4e, 0x65, 0x77, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x10, 0xb5, 0x20, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x53, 0x65, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x73, + 0x10, 0xb8, 0x20, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, + 0x65, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0xb9, + 0x20, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x75, + 0x6e, 0x69, 0x74, 0x79, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x65, + 0x77, 0x73, 0x10, 0xbb, 0x20, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, 0x20, 0x12, 0x1a, 0x0a, 0x15, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x45, 0x64, 0x69, 0x74, 0x42, 0x61, 0x6e, 0x52, - 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x10, 0xc0, 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xc1, 0x20, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x72, - 0x6f, 0x62, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, - 0x70, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xc2, 0x20, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x20, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xc4, 0x20, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x6f, 0x62, 0x62, - 0x69, 0x65, 0x73, 0x10, 0xc5, 0x20, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x6f, 0x62, 0x62, - 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x20, 0x12, 0x26, - 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4e, 0x65, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x20, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4e, 0x65, 0x77, 0x73, 0x10, 0xcd, 0x20, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x4e, 0x65, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xce, 0x20, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x4e, 0x65, 0x77, 0x73, - 0x10, 0xcf, 0x20, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x43, 0x42, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x10, 0xd8, 0x20, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x43, 0x42, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, - 0x20, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x10, 0xde, 0x20, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdf, - 0x20, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x75, 0x70, - 0x70, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x10, 0xe2, 0x20, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x6d, - 0x61, 0x69, 0x6c, 0x10, 0xe3, 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x52, 0x65, 0x73, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x53, 0x42, 0x79, 0x49, 0x50, 0x10, 0xe5, 0x20, - 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x47, 0x53, 0x50, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xe6, 0x20, - 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x75, 0x70, 0x70, - 0x6f, 0x72, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x72, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x10, 0xe7, 0x20, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x10, 0xee, 0x20, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0xf1, 0x20, 0x12, 0x2c, 0x0a, 0x27, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x73, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf2, 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x10, 0xf3, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x53, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x10, 0xf5, 0x20, 0x12, 0x21, 0x0a, 0x1c, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xf8, 0x20, 0x12, - 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x73, - 0x67, 0x10, 0xfb, 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x4f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, 0x20, 0x12, 0x1b, - 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x65, - 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0x80, 0x21, 0x12, 0x1e, 0x0a, 0x19, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x45, - 0x6d, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x6e, 0x6b, 0x10, 0x87, 0x21, 0x12, 0x26, 0x0a, 0x21, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x45, - 0x6d, 0x61, 0x69, 0x6c, 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x88, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, - 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x8c, - 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x10, 0x91, 0x21, - 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x76, 0x6f, - 0x6b, 0x65, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x73, - 0x10, 0x92, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, - 0x94, 0x21, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, - 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x95, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, - 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x96, 0x21, 0x12, - 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x53, 0x74, - 0x6f, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, - 0x72, 0x79, 0x10, 0x97, 0x21, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x98, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x10, 0x99, 0x21, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x21, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x10, 0x9b, 0x21, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x21, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x50, 0x72, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, - 0x6c, 0x10, 0x9f, 0x21, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x53, 0x65, 0x74, 0x50, 0x72, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x21, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x66, 0x75, 0x6e, - 0x64, 0x10, 0xa2, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x62, 0x61, 0x63, 0x6b, - 0x10, 0xa4, 0x21, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x69, 0x73, 0x70, 0x75, 0x74, 0x65, 0x10, 0xa6, 0x21, 0x12, - 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x65, 0x61, 0x72, - 0x44, 0x69, 0x73, 0x70, 0x75, 0x74, 0x65, 0x10, 0xa8, 0x21, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6e, 0x61, - 0x6e, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x10, - 0xa9, 0x21, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, - 0x10, 0xaa, 0x21, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x21, 0x12, 0x1d, 0x0a, 0x18, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x44, 0x52, 0x4d, 0x54, 0x65, - 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xac, 0x21, 0x12, 0x23, 0x0a, 0x1e, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x43, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xad, 0x21, - 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, - 0x73, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x21, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x47, 0x53, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xaf, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x47, 0x53, 0x50, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, - 0x21, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x44, 0x46, 0x6f, 0x72, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, - 0x78, 0x6e, 0x10, 0xb6, 0x21, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x44, 0x46, 0x6f, 0x72, 0x4d, 0x69, - 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, - 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, - 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0xb8, 0x21, - 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x10, - 0xb9, 0x21, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x4c, 0x69, 0x73, 0x74, - 0x10, 0xba, 0x21, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbb, 0x21, 0x12, 0x22, 0x0a, 0x1d, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x47, 0x61, - 0x6d, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x10, 0xbc, 0x21, - 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, - 0x72, 0x65, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xbd, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x56, 0x41, 0x43, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x10, 0xbe, 0x21, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x10, 0xbf, 0x21, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc0, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x4c, 0x69, 0x6e, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xc1, 0x21, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x4c, 0x69, 0x6e, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc2, 0x21, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, - 0x6c, 0x61, 0x67, 0x73, 0x46, 0x6f, 0x72, 0x57, 0x47, 0x53, 0x70, 0x6f, 0x6f, 0x66, 0x69, 0x6e, - 0x67, 0x10, 0xc6, 0x21, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x46, - 0x6f, 0x72, 0x57, 0x47, 0x53, 0x70, 0x6f, 0x6f, 0x66, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x65, - 0x72, 0x73, 0x10, 0xca, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcb, 0x21, 0x12, 0x17, 0x0a, 0x12, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x61, 0x6d, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x10, 0xcc, 0x21, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xcd, - 0x21, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, - 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xce, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xd1, 0x21, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, - 0x79, 0x10, 0xd3, 0x21, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x49, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x43, 0x61, 0x70, 0x74, 0x63, - 0x68, 0x61, 0x47, 0x72, 0x61, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x10, 0xd4, 0x21, - 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x43, 0x61, 0x70, 0x74, 0x63, 0x68, 0x61, 0x47, 0x72, - 0x61, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xd5, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x53, 0x33, 0x55, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, - 0x10, 0xd6, 0x21, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x53, 0x33, 0x55, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd7, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x21, + 0x73, 0x10, 0xbe, 0x20, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x45, 0x64, 0x69, 0x74, 0x42, 0x61, 0x6e, 0x52, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x10, 0xc0, 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, + 0x20, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x72, 0x6f, + 0x62, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, + 0x4c, 0x69, 0x73, 0x74, 0x10, 0xc2, 0x20, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x43, 0x6c, 0x61, 0x6e, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xc3, 0x20, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, + 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xc4, 0x20, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x6f, 0x62, 0x62, 0x69, + 0x65, 0x73, 0x10, 0xc5, 0x20, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x4c, 0x6f, 0x62, 0x62, 0x69, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x20, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4e, 0x65, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xcc, 0x20, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4e, 0x65, 0x77, 0x73, 0x10, 0xcd, 0x20, 0x12, 0x25, 0x0a, 0x20, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x43, + 0x6c, 0x61, 0x6e, 0x73, 0x4e, 0x65, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xce, 0x20, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, + 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x6e, 0x73, 0x4e, 0x65, 0x77, 0x73, 0x10, + 0xcf, 0x20, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, + 0x74, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x43, 0x42, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x10, 0xd8, 0x20, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x47, 0x65, 0x74, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x43, 0x42, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x20, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, + 0x73, 0x65, 0x72, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x10, 0xde, 0x20, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x48, 0x69, + 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdf, 0x20, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x10, 0xe2, 0x20, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x6d, 0x61, + 0x69, 0x6c, 0x10, 0xe3, 0x20, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x52, 0x65, 0x73, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x53, 0x42, 0x79, 0x49, 0x50, 0x10, 0xe5, 0x20, 0x12, + 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x47, 0x53, 0x50, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xe6, 0x20, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x75, 0x70, 0x70, 0x6f, + 0x72, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x72, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x10, 0xe7, 0x20, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x47, 0x65, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x10, 0xee, 0x20, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0xf1, 0x20, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x73, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf2, 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x10, 0xf3, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x47, 0x53, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x10, 0xf5, 0x20, 0x12, 0x23, 0x0a, 0x1e, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, + 0x6f, 0x75, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x10, 0xfb, 0x20, + 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x54, 0x69, 0x63, 0x6b, + 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4f, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfc, 0x20, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x65, 0x65, 0x4c, 0x69, 0x63, + 0x65, 0x6e, 0x73, 0x65, 0x10, 0x80, 0x21, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6d, 0x61, 0x69, 0x6c, + 0x4c, 0x69, 0x6e, 0x6b, 0x10, 0x87, 0x21, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6d, 0x61, 0x69, 0x6c, + 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x88, 0x21, 0x12, + 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, 0x53, 0x74, 0x6f, 0x72, + 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x8c, 0x21, 0x12, 0x1d, 0x0a, + 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x10, 0x91, 0x21, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4c, 0x65, + 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x10, 0x92, 0x21, 0x12, + 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x57, 0x61, + 0x6c, 0x6c, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x94, 0x21, 0x12, 0x25, + 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x57, 0x61, 0x6c, + 0x6c, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x95, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, + 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x96, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x64, + 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0x97, + 0x21, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, + 0x53, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x6d, + 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x98, 0x21, 0x12, + 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x57, 0x61, + 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, + 0x74, 0x65, 0x10, 0x99, 0x21, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x47, 0x65, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x9a, 0x21, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x10, 0x9b, 0x21, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6f, 0x6e, 0x76, 0x65, + 0x72, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x9c, 0x21, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, + 0x65, 0x74, 0x50, 0x72, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x10, 0x9f, 0x21, + 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x50, + 0x72, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xa0, 0x21, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x10, 0xa2, 0x21, + 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x10, 0xa4, 0x21, 0x12, + 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x44, 0x69, 0x73, 0x70, 0x75, 0x74, 0x65, 0x10, 0xa6, 0x21, 0x12, 0x19, 0x0a, 0x14, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x44, 0x69, 0x73, 0x70, + 0x75, 0x74, 0x65, 0x10, 0xa8, 0x21, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6e, 0x61, 0x6e, 0x63, 0x69, 0x61, + 0x6c, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xa9, 0x21, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xaa, 0x21, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x21, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, 0x65, + 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xad, 0x21, 0x12, 0x2b, 0x0a, + 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x47, 0x53, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xaf, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x47, 0x53, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb0, 0x21, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x49, 0x44, 0x46, 0x6f, 0x72, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x10, + 0xb6, 0x21, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, + 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x44, 0x46, 0x6f, 0x72, 0x4d, 0x69, 0x63, 0x72, 0x6f, + 0x54, 0x78, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x21, 0x12, 0x1d, + 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, + 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0xb8, 0x21, 0x12, 0x20, 0x0a, + 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x10, 0xb9, 0x21, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, + 0x65, 0x72, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xba, 0x21, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, + 0x73, 0x65, 0x72, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbb, 0x21, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x47, 0x61, 0x6d, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x10, 0xbc, 0x21, 0x12, 0x23, 0x0a, + 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x65, 0x65, + 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xbd, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x41, + 0x43, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xbe, 0x21, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x53, 0x4e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xd9, 0x21, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xbf, 0x21, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x53, 0x4e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xda, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, - 0x64, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xdb, 0x21, 0x12, 0x19, - 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x47, 0x69, 0x66, 0x74, 0x73, 0x10, 0xdc, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdd, 0x21, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, - 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x47, 0x69, 0x66, 0x74, 0x73, 0x10, 0xe0, 0x21, 0x12, 0x28, - 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x47, 0x69, 0x66, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe1, 0x21, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x6f, 0x73, 0x74, 0x65, 0x64, - 0x4f, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xe2, 0x21, 0x12, - 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xe3, 0x21, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x6e, 0x45, 0x6e, 0x66, 0x6f, - 0x72, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xe5, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc0, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x69, 0x6e, + 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xc1, 0x21, 0x12, 0x29, 0x0a, 0x24, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x4c, 0x69, 0x6e, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xc2, 0x21, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x46, 0x6f, 0x72, 0x57, 0x47, 0x53, 0x70, 0x6f, 0x6f, 0x66, 0x69, 0x6e, 0x67, 0x10, 0xc6, + 0x21, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x46, 0x6f, 0x72, 0x57, + 0x47, 0x53, 0x70, 0x6f, 0x6f, 0x66, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xc7, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x72, 0x73, 0x10, + 0xca, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, + 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcb, 0x21, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x61, 0x6d, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xcc, + 0x21, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xcd, 0x21, 0x12, 0x23, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xce, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x10, 0xd1, 0x21, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x10, 0xd3, + 0x21, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x43, 0x61, 0x70, 0x74, 0x63, 0x68, 0x61, 0x47, + 0x72, 0x61, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x10, 0xd4, 0x21, 0x12, 0x32, 0x0a, + 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x49, 0x6e, 0x43, 0x61, 0x70, 0x74, 0x63, 0x68, 0x61, 0x47, 0x72, 0x61, 0x63, 0x65, + 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, + 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x53, 0x33, 0x55, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x10, 0xd6, 0x21, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x50, 0x53, 0x33, 0x55, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd7, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x55, 0x47, 0x53, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x21, 0x12, 0x1e, 0x0a, + 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x50, 0x53, 0x4e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xd9, 0x21, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x50, 0x53, 0x4e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xda, 0x21, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xdb, 0x21, 0x12, 0x19, 0x0a, 0x14, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, + 0x66, 0x74, 0x73, 0x10, 0xdc, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdd, 0x21, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x4c, 0x6f, 0x63, + 0x6b, 0x65, 0x64, 0x47, 0x69, 0x66, 0x74, 0x73, 0x10, 0xe0, 0x21, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x4c, + 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x47, 0x69, 0x66, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xe1, 0x21, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x4f, 0x6e, 0x47, + 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xe2, 0x21, 0x12, 0x1e, 0x0a, 0x19, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x42, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xe3, 0x21, 0x12, 0x26, 0x0a, 0x21, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x42, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xe4, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x6e, 0x45, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xe5, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x47, 0x69, 0x66, 0x74, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x10, 0xe6, 0x21, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x47, 0x69, - 0x66, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x10, 0xe6, 0x21, 0x12, 0x29, 0x0a, - 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, - 0x6b, 0x47, 0x69, 0x66, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe7, 0x21, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xe8, 0x21, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xe9, 0x21, - 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x41, 0x67, - 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xea, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xeb, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x10, 0xec, 0x21, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x41, 0x67, 0x72, - 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xed, 0x21, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x41, - 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xee, 0x21, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x68, 0x65, - 0x63, 0x6b, 0x10, 0xef, 0x21, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf0, 0x21, 0x12, 0x19, - 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x4c, - 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x21, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, - 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x42, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, - 0xf2, 0x21, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, - 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, - 0x79, 0x42, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xf3, 0x21, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0xf4, - 0x21, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x61, 0x6d, - 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf5, 0x21, 0x12, 0x1b, - 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x41, - 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xf6, 0x21, 0x12, 0x1a, 0x0a, 0x15, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x58, 0x73, 0x6f, 0x6c, 0x6c, 0x61, 0x50, 0x61, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xf8, 0x21, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x58, 0x73, 0x6f, 0x6c, 0x6c, 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf9, 0x21, 0x12, 0x22, 0x0a, 0x1d, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x63, 0x63, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, - 0x65, 0x64, 0x54, 0x6f, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0xfa, 0x21, 0x12, - 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x63, 0x63, 0x74, 0x41, - 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x54, 0x6f, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x77, 0x61, 0x70, 0x4b, 0x69, 0x6f, 0x73, 0x6b, - 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x10, 0xfc, 0x21, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x77, 0x61, 0x70, 0x4b, 0x69, 0x6f, 0x73, 0x6b, 0x44, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfd, - 0x21, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x55, 0x6e, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x10, - 0xfe, 0x21, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x55, 0x6e, 0x6f, 0x77, 0x6e, 0x65, 0x64, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, + 0x66, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xe7, 0x21, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xe8, 0x21, 0x12, 0x1f, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, + 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xe9, 0x21, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x64, 0x50, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x41, 0x67, 0x72, 0x65, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xea, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x10, 0xeb, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x10, 0xec, 0x21, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x47, 0x65, 0x74, 0x50, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x10, 0xed, 0x21, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x61, 0x79, 0x70, 0x61, 0x6c, 0x41, 0x67, 0x72, 0x65, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xee, + 0x21, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x61, 0x6d, + 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x10, + 0xef, 0x21, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x61, + 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, + 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf0, 0x21, 0x12, 0x19, 0x0a, 0x14, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x4c, 0x69, 0x63, 0x65, + 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x21, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, + 0x75, 0x6e, 0x69, 0x74, 0x79, 0x42, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xf2, 0x21, 0x12, + 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x42, 0x61, + 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x21, + 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x61, 0x6d, 0x65, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0xf4, 0x21, 0x12, 0x2b, + 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf5, 0x21, 0x12, 0x1b, 0x0a, 0x16, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x41, 0x67, 0x72, 0x65, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xf6, 0x21, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x58, 0x73, 0x6f, 0x6c, 0x6c, 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x10, 0xf8, 0x21, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x58, 0x73, 0x6f, 0x6c, 0x6c, 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf9, 0x21, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x41, 0x63, 0x63, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x54, + 0x6f, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0xfa, 0x21, 0x12, 0x2a, 0x0a, 0x25, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x41, 0x63, 0x63, 0x74, 0x41, 0x6c, 0x6c, 0x6f, + 0x77, 0x65, 0x64, 0x54, 0x6f, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x21, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x53, 0x77, 0x61, 0x70, 0x4b, 0x69, 0x6f, 0x73, 0x6b, 0x44, 0x65, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x10, 0xfc, 0x21, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x53, 0x77, 0x61, 0x70, 0x4b, 0x69, 0x6f, 0x73, 0x6b, 0x44, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfd, 0x21, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x47, 0x69, 0x66, 0x74, 0x55, 0x6e, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x10, 0xfe, 0x21, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x55, 0x73, + 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x55, 0x6e, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x21, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x55, 0x6e, 0x6f, 0x77, 0x6e, 0x65, 0x64, + 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x10, 0x80, 0x22, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x55, 0x6e, 0x6f, 0x77, - 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x10, 0x80, 0x22, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x55, - 0x6e, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x22, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4e, 0x61, 0x6d, 0x65, - 0x10, 0x82, 0x22, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, - 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0x83, 0x22, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x70, 0x6f, 0x6e, 0x10, 0x84, 0x22, 0x12, - 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x72, 0x61, 0x6e, 0x74, - 0x43, 0x6f, 0x75, 0x70, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x85, - 0x22, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x50, - 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, - 0x49, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x10, 0x86, 0x22, - 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x50, 0x61, - 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x49, - 0x6e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x87, 0x22, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x88, 0x22, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, - 0x65, 0x73, 0x32, 0x10, 0x89, 0x22, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, - 0x65, 0x73, 0x32, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x22, 0x12, 0x20, - 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x8d, 0x22, - 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x22, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x50, 0x75, - 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0x8f, 0x22, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x50, 0x75, 0x72, - 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x90, 0x22, - 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x65, 0x72, 0x73, - 0x6f, 0x6e, 0x61, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x94, 0x22, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x46, 0x6f, - 0x72, 0x46, 0x6f, 0x72, 0x75, 0x6d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x95, - 0x22, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, + 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x47, 0x69, 0x66, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x81, 0x22, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x82, 0x22, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x43, + 0x6c, 0x61, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x83, 0x22, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x72, + 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x70, 0x6f, 0x6e, 0x10, 0x84, 0x22, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x75, + 0x70, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x85, 0x22, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x50, 0x61, 0x63, 0x6b, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x55, + 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x10, 0x86, 0x22, 0x12, 0x35, 0x0a, + 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x49, 0x73, 0x50, 0x61, 0x63, 0x6b, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x55, 0x73, + 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0x87, 0x22, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x88, 0x22, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x65, 0x73, 0x32, + 0x10, 0x89, 0x22, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x47, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x73, 0x73, 0x65, 0x73, 0x32, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x22, 0x12, 0x20, 0x0a, 0x1b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x8d, 0x22, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x42, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x22, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, + 0x61, 0x73, 0x65, 0x10, 0x8f, 0x22, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x90, 0x22, 0x12, 0x22, 0x0a, + 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x94, + 0x22, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x46, 0x6f, 0x72, 0x46, 0x6f, - 0x72, 0x75, 0x6d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x96, 0x22, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x97, 0x22, - 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, - 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x98, 0x22, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x48, 0x61, 0x73, 0x68, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, - 0x65, 0x10, 0x99, 0x22, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x42, 0x6f, 0x61, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, - 0x10, 0x9c, 0x22, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x42, - 0x6f, 0x61, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x22, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x78, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0x9f, - 0x22, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6f, 0x6d, - 0x70, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x75, 0x72, - 0x63, 0x68, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x22, - 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x6f, - 0x6c, 0x76, 0x65, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, - 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x10, 0xa1, 0x22, 0x12, 0x31, 0x0a, 0x2c, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x4e, 0x65, - 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, - 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x22, 0x12, 0x26, - 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x42, 0x61, 0x73, 0x69, 0x63, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x10, 0xa5, 0x22, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x42, - 0x61, 0x73, 0x69, 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xa6, 0x22, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x4d, 0x4f, 0x4c, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xa7, 0x22, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4d, 0x4f, 0x4c, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa8, 0x22, - 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x50, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x10, 0xa9, 0x22, 0x12, 0x23, 0x0a, - 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x50, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xaa, 0x22, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x66, 0x53, 0x75, 0x73, 0x70, 0x69, 0x63, - 0x69, 0x6f, 0x75, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x10, 0xab, 0x22, 0x12, - 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x67, 0x69, 0x63, - 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xac, 0x22, 0x12, 0x22, 0x0a, 0x1d, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x67, 0x69, 0x63, 0x61, 0x50, 0x61, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x22, 0x12, - 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x45, 0x43, 0x6c, 0x75, 0x62, - 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xae, 0x22, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x45, 0x43, 0x6c, 0x75, 0x62, 0x50, 0x61, 0x79, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x22, 0x12, 0x25, 0x0a, - 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x50, - 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x48, 0x75, 0x62, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x10, 0xb0, 0x22, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, - 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x48, 0x75, - 0x62, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xb1, 0x22, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x54, + 0x72, 0x75, 0x6d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x95, 0x22, 0x12, 0x33, + 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, + 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x46, 0x6f, 0x72, 0x46, 0x6f, 0x72, 0x75, 0x6d, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x96, 0x22, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, + 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x97, 0x22, 0x12, 0x30, 0x0a, + 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x98, 0x22, 0x12, + 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x48, 0x61, 0x73, 0x68, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x10, 0x99, + 0x22, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x42, 0x6f, 0x61, + 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0x9c, 0x22, + 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x42, 0x6f, 0x61, 0x43, + 0x6f, 0x6d, 0x70, 0x72, 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x22, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x10, 0x9f, 0x22, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x22, 0x12, 0x29, 0x0a, + 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, + 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x72, + 0x65, 0x64, 0x69, 0x74, 0x73, 0x10, 0xa1, 0x22, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x4e, 0x65, 0x67, 0x61, 0x74, + 0x69, 0x76, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x22, 0x12, 0x26, 0x0a, 0x21, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x65, 0x74, + 0x43, 0x6c, 0x61, 0x6e, 0x42, 0x61, 0x73, 0x69, 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x10, 0xa5, 0x22, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x42, 0x61, 0x73, 0x69, + 0x63, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xa6, 0x22, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4d, + 0x4f, 0x4c, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xa7, 0x22, 0x12, 0x1f, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4d, 0x4f, 0x4c, 0x50, 0x61, 0x79, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa8, 0x22, 0x12, 0x1b, 0x0a, + 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x50, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x10, 0xa9, 0x22, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x50, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaa, 0x22, 0x12, + 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x66, 0x53, 0x75, 0x73, 0x70, 0x69, 0x63, 0x69, 0x6f, 0x75, + 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x10, 0xab, 0x22, 0x12, 0x1a, 0x0a, 0x15, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x67, 0x69, 0x63, 0x61, 0x50, 0x61, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xac, 0x22, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x44, 0x65, 0x67, 0x69, 0x63, 0x61, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x22, 0x12, 0x19, 0x0a, 0x14, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x45, 0x43, 0x6c, 0x75, 0x62, 0x50, 0x61, 0x79, + 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xae, 0x22, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x45, 0x43, 0x6c, 0x75, 0x62, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaf, 0x22, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x61, 0x79, 0x50, 0x61, 0x6c, 0x50, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x48, 0x75, 0x62, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xb0, + 0x22, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x61, 0x79, + 0x50, 0x61, 0x6c, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x48, 0x75, 0x62, 0x50, 0x61, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb1, 0x22, + 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x54, 0x77, 0x6f, 0x46, + 0x61, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, + 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x10, 0xb2, 0x22, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x54, 0x77, 0x6f, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x41, - 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x10, 0xb2, 0x22, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x41, 0x4d, 0x54, 0x77, 0x6f, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x22, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x32, 0x50, 0x61, 0x79, 0x50, - 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xb4, 0x22, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x32, 0x50, 0x61, 0x79, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb5, 0x22, - 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x65, - 0x74, 0x43, 0x6f, 0x64, 0x65, 0x41, 0x6e, 0x64, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x6d, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb6, 0x22, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x41, 0x6e, - 0x64, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xb7, 0x22, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, - 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb8, 0x22, 0x12, - 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb9, 0x22, 0x12, 0x1a, 0x0a, 0x15, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x42, 0x69, 0x74, 0x50, 0x61, 0x79, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xba, 0x22, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x42, 0x69, 0x74, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbb, 0x22, 0x12, 0x22, 0x0a, 0x1d, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xbc, 0x22, - 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x6e, 0x64, - 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x47, 0x69, 0x66, 0x74, 0x10, 0xbd, 0x22, - 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x6f, 0x64, 0x77, - 0x69, 0x6e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xbe, 0x22, 0x12, 0x22, 0x0a, 0x1d, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x6f, 0x64, 0x77, 0x69, 0x6e, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, 0x22, - 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x6f, - 0x6c, 0x76, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x10, - 0xc0, 0x22, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, - 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x76, 0x65, 0x72, - 0x73, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x10, 0xc1, 0x22, 0x12, 0x1a, 0x0a, 0x15, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x50, 0x61, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xc2, 0x22, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x22, 0x12, 0x2e, 0x0a, 0x29, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x65, - 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x43, 0x68, - 0x61, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xc4, 0x22, 0x12, 0x20, 0x0a, 0x1b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x57, 0x6f, - 0x72, 0x6c, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xc5, 0x22, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, - 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x22, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x41, 0x4d, 0x45, 0x43, 0x6f, 0x6d, 0x6d, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, - 0x6e, 0x74, 0x10, 0xc7, 0x22, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x45, 0x43, 0x6f, 0x6d, 0x6d, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x22, 0x12, 0x16, 0x0a, 0x11, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x50, 0x53, 0x52, 0x61, 0x6e, 0x67, 0x65, - 0x10, 0x88, 0x27, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, - 0x74, 0x10, 0x89, 0x27, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, - 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x27, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x49, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, - 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x10, 0x8b, 0x27, 0x12, - 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x49, 0x73, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x27, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x50, 0x53, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x49, - 0x74, 0x65, 0x6d, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, - 0x61, 0x72, 0x74, 0x10, 0x8f, 0x27, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x22, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x41, 0x4d, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x32, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x10, 0xb4, 0x22, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x32, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb5, 0x22, 0x12, 0x37, 0x0a, + 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, + 0x64, 0x65, 0x41, 0x6e, 0x64, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0xb6, 0x22, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, + 0x72, 0x64, 0x52, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x41, 0x6e, 0x64, 0x53, 0x65, + 0x6e, 0x64, 0x53, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x22, + 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb8, 0x22, 0x12, 0x2b, 0x0a, 0x26, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb9, 0x22, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x42, 0x69, 0x74, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, + 0x6e, 0x74, 0x10, 0xba, 0x22, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, + 0x4d, 0x42, 0x69, 0x74, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbb, 0x22, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0xbc, 0x22, 0x12, 0x1e, 0x0a, + 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x6e, 0x64, 0x53, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x47, 0x69, 0x66, 0x74, 0x10, 0xbd, 0x22, 0x12, 0x1a, 0x0a, + 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x6f, 0x64, 0x77, 0x69, 0x6e, 0x50, + 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xbe, 0x22, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x6f, 0x64, 0x77, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, 0x22, 0x12, 0x20, 0x0a, + 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, + 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x10, 0xc0, 0x22, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x73, 0x6f, 0x6c, + 0x76, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x52, + 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x10, 0xc1, 0x22, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x10, 0xc2, 0x22, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x46, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x22, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, + 0x6e, 0x61, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x74, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xc4, 0x22, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x50, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x57, 0x6f, 0x72, 0x6c, 0x64, + 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, 0xc5, 0x22, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x50, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x57, 0x6f, 0x72, + 0x6c, 0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xc6, 0x22, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x45, 0x43, 0x6f, 0x6d, 0x6d, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x10, + 0xc7, 0x22, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x45, 0x43, + 0x6f, 0x6d, 0x6d, 0x50, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x22, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x41, 0x4d, 0x53, 0x65, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x49, 0x44, 0x10, 0xc9, 0x22, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x50, 0x53, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x10, 0x88, 0x27, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x10, 0x89, + 0x27, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8a, 0x27, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x49, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x68, 0x6f, + 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x10, 0x8b, 0x27, 0x12, 0x28, 0x0a, 0x23, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x49, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, + 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x27, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x90, 0x27, 0x12, 0x24, 0x0a, 0x1f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x47, 0x65, 0x74, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, - 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x91, - 0x27, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x47, 0x65, 0x74, - 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x27, 0x12, - 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x41, 0x64, 0x64, 0x57, 0x61, - 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f, 0x70, - 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x10, 0x93, 0x27, 0x12, 0x32, 0x0a, 0x2d, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x41, 0x64, 0x64, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, - 0x43, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x94, 0x27, 0x12, - 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x55, 0x46, 0x53, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xd0, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, 0x61, - 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd2, 0x28, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, - 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd3, 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, - 0x46, 0x69, 0x6c, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xd4, 0x28, 0x12, 0x26, 0x0a, 0x21, + 0x10, 0x8f, 0x27, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x52, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4c, 0x69, 0x6e, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x46, 0x72, 0x6f, + 0x6d, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x90, 0x27, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x50, 0x53, 0x47, 0x65, 0x74, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, + 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x91, 0x27, 0x12, 0x2c, + 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x47, 0x65, 0x74, 0x53, 0x68, 0x6f, + 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x92, 0x27, 0x12, 0x2a, 0x0a, 0x25, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x53, 0x41, 0x64, 0x64, 0x57, 0x61, 0x6c, 0x6c, 0x65, + 0x74, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, + 0x67, 0x43, 0x61, 0x72, 0x74, 0x10, 0x93, 0x27, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x50, 0x53, 0x41, 0x64, 0x64, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x72, 0x65, + 0x64, 0x69, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x72, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x94, 0x27, 0x12, 0x17, 0x0a, 0x12, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x55, 0x46, 0x53, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x10, 0xd0, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd2, 0x28, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, - 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, - 0x64, 0x10, 0xd5, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x4c, 0x69, - 0x73, 0x74, 0x46, 0x6f, 0x72, 0x41, 0x70, 0x70, 0x10, 0xd6, 0x28, 0x12, 0x2d, 0x0a, 0x28, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x47, 0x65, - 0x74, 0x46, 0x69, 0x6c, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x41, 0x70, 0x70, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd7, 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, - 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xda, 0x28, 0x12, - 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, - 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xdb, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, - 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xdc, 0x28, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x4c, 0x6f, 0x67, 0x69, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xdd, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x4c, 0x6f, 0x67, - 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x28, 0x12, 0x21, 0x0a, - 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xdf, 0x28, - 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x55, 0x46, 0x53, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x48, 0x65, 0x61, 0x72, 0x74, - 0x62, 0x65, 0x61, 0x74, 0x10, 0xe0, 0x28, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x55, 0x46, 0x53, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x46, - 0x69, 0x6c, 0x65, 0x10, 0xe1, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x55, 0x46, 0x53, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x46, 0x69, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x28, 0x12, 0x25, 0x0a, + 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xd3, 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, + 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xd4, 0x28, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, + 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xd5, + 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x46, + 0x6f, 0x72, 0x41, 0x70, 0x70, 0x10, 0xd6, 0x28, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x69, + 0x6c, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x41, 0x70, 0x70, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd7, 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, + 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xda, 0x28, 0x12, 0x24, 0x0a, 0x1f, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x44, + 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xdb, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x68, 0x75, + 0x6e, 0x6b, 0x10, 0xdc, 0x28, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x10, 0xdd, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xdf, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xe3, 0x28, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, 0x28, 0x12, 0x21, 0x0a, 0x1c, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, + 0x74, 0x10, 0xe0, 0x28, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, + 0x53, 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x46, 0x69, 0x6c, 0x65, + 0x10, 0xe1, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, + 0x53, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x7a, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe3, + 0x28, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x55, 0x46, 0x53, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe4, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x55, + 0x47, 0x43, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xea, 0x28, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x47, - 0x65, 0x74, 0x55, 0x47, 0x43, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xea, 0x28, 0x12, - 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, - 0x46, 0x53, 0x47, 0x65, 0x74, 0x55, 0x47, 0x43, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x28, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, - 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x10, 0xec, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, - 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xed, 0x28, - 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, - 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xee, 0x28, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x53, 0x69, 0x6e, - 0x67, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xef, 0x28, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x53, 0x68, 0x61, 0x72, 0x65, 0x46, 0x69, - 0x6c, 0x65, 0x10, 0xf0, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x53, 0x68, 0x61, 0x72, 0x65, 0x46, 0x69, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x28, 0x12, 0x1b, 0x0a, 0x16, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf2, 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x65, 0x74, 0x55, 0x47, 0x43, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x28, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x55, 0x46, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x6c, + 0x61, 0x67, 0x73, 0x10, 0xec, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x55, 0x46, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x6c, 0x61, + 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xed, 0x28, 0x12, 0x25, 0x0a, + 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, + 0x47, 0x65, 0x74, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x10, 0xee, 0x28, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, + 0x46, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xef, 0x28, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x53, 0x68, 0x61, 0x72, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x10, + 0xf0, 0x28, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x55, 0x46, 0x53, 0x53, 0x68, 0x61, 0x72, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x28, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x28, 0x12, 0x21, - 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x10, 0xf4, - 0x28, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, - 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf5, 0x28, 0x12, 0x19, 0x0a, 0x14, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, - 0x46, 0x69, 0x6c, 0x65, 0x10, 0xf6, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x55, 0x46, 0x53, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x28, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x55, 0x47, 0x43, 0x55, 0x52, 0x4c, - 0x73, 0x10, 0xf8, 0x28, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, - 0x53, 0x47, 0x65, 0x74, 0x55, 0x47, 0x43, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xf9, 0x28, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x55, 0x46, 0x53, 0x48, 0x74, 0x74, 0x70, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, - 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfa, - 0x28, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x48, 0x74, - 0x74, 0x70, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, - 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x28, 0x12, 0x22, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, - 0x61, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfc, - 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, - 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xfd, 0x28, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x68, 0x75, 0x6e, 0x6b, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfe, 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, - 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x28, 0x12, - 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, - 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0x80, 0x29, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, - 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x29, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x55, 0x52, 0x4c, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x10, 0x82, 0x29, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, - 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x10, 0x83, 0x29, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, - 0x61, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x84, 0x29, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, - 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x70, 0x70, 0x49, 0x44, - 0x10, 0x85, 0x29, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, - 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x70, 0x70, 0x49, 0x44, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x29, 0x12, 0x16, 0x0a, 0x11, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x32, - 0x10, 0x98, 0x2a, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, - 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x10, 0x99, 0x2a, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, - 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x9b, 0x2a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, - 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0x9c, 0x2a, 0x12, 0x2f, 0x0a, 0x2a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, - 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x2a, 0x12, 0x2f, 0x0a, - 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, - 0x6f, 0x72, 0x6d, 0x4f, 0x66, 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, - 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0x9f, 0x2a, 0x12, 0x37, - 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, - 0x66, 0x6f, 0x72, 0x6d, 0x4f, 0x66, 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, - 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x2a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x4c, - 0x6f, 0x67, 0x4f, 0x6e, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, - 0xa1, 0x2a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x57, 0x69, 0x74, - 0x68, 0x44, 0x61, 0x74, 0x61, 0x42, 0x6c, 0x6f, 0x62, 0x10, 0xa2, 0x2a, 0x12, 0x23, 0x0a, 0x1e, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xa3, - 0x2a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x46, 0x69, 0x6c, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x10, - 0xa4, 0x2a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x2a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, 0x53, 0x53, 0x65, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x10, 0xa6, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x2a, 0x12, - 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, - 0x42, 0x53, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x42, - 0x10, 0xa8, 0x2a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4c, 0x42, 0x53, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x4c, 0x42, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa9, 0x2a, 0x12, - 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, - 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x10, 0xaa, - 0x2a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4c, 0x42, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x44, - 0x65, 0x63, 0x6c, 0x69, 0x6e, 0x65, 0x64, 0x10, 0xb2, 0x2a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x10, 0xb3, 0x2a, 0x12, 0x24, - 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, - 0x74, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, - 0x64, 0x10, 0xb4, 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xb5, 0x2a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, - 0x65, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xb6, 0x2a, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xb7, 0x2a, 0x12, 0x19, - 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, - 0x74, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xb8, 0x2a, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x10, 0xb9, 0x2a, - 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x50, 0x32, 0x50, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, - 0x6f, 0x10, 0xba, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x50, 0x32, 0x50, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xbb, 0x2a, 0x12, 0x26, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x44, - 0x65, 0x70, 0x6f, 0x74, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, - 0x79, 0x10, 0xbe, 0x2a, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x44, 0x65, 0x63, 0x72, - 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xbf, 0x2a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x53, - 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x53, - 0x75, 0x72, 0x76, 0x65, 0x79, 0x10, 0xc0, 0x2a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x65, - 0x73, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x2a, 0x12, 0x2a, 0x0a, 0x25, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x54, 0x65, 0x73, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc4, 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, - 0x65, 0x73, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x2a, 0x12, 0x2b, 0x0a, - 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x69, 0x73, - 0x61, 0x62, 0x6c, 0x65, 0x54, 0x65, 0x73, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x69, 0x6c, 0x10, - 0xc8, 0x2a, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xc9, 0x2a, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x70, 0x70, 0x42, 0x65, 0x74, 0x61, 0x50, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0xca, 0x2a, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x70, - 0x70, 0x42, 0x65, 0x74, 0x61, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcb, 0x2a, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x47, 0x43, 0x10, 0xcc, 0x2a, 0x12, - 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, - 0x72, 0x6f, 0x6d, 0x47, 0x43, 0x10, 0xcd, 0x2a, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, - 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xd0, 0x2a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x33, 0x10, 0xd1, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x33, 0x10, 0xd2, 0x2a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, - 0x6c, 0x51, 0x41, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x33, 0x10, 0xd3, 0x2a, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x65, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x33, 0x10, 0xd4, 0x2a, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x6f, - 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x45, - 0x6d, 0x61, 0x69, 0x6c, 0x33, 0x10, 0xd5, 0x2a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x77, 0x4c, 0x6f, 0x67, 0x69, 0x6e, - 0x4b, 0x65, 0x79, 0x10, 0xd7, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x77, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x4b, 0x65, - 0x79, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x10, 0xd8, 0x2a, 0x12, 0x29, 0x0a, 0x24, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x4f, - 0x6e, 0x57, 0x69, 0x74, 0x68, 0x48, 0x61, 0x73, 0x68, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, - 0x61, 0x74, 0x65, 0x64, 0x10, 0xd9, 0x2a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x32, 0x10, 0xda, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xdb, 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, - 0x4f, 0x45, 0x4d, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x2a, 0x12, 0x23, 0x0a, - 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x65, 0x72, 0x4f, 0x45, 0x4d, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x10, - 0xdd, 0x2a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x4f, 0x45, 0x4d, 0x4d, 0x61, 0x63, - 0x68, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x2a, 0x12, - 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x10, 0xe8, 0x2a, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x32, 0x49, 0x6e, 0x74, 0x33, 0x32, - 0x10, 0xe9, 0x2a, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x32, 0x10, 0xea, 0x2a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, - 0x79, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0xeb, 0x2a, 0x12, 0x27, 0x0a, 0x22, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, - 0x66, 0x79, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xec, 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xed, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x44, 0x6f, 0x77, - 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xee, 0x2a, - 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x44, 0x52, 0x4d, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xef, + 0x75, 0x6e, 0x74, 0x10, 0xf2, 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x55, 0x46, 0x53, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x10, 0xf4, 0x28, 0x12, 0x29, + 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf5, 0x28, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, + 0x65, 0x10, 0xf6, 0x28, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, + 0x53, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf7, 0x28, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x55, 0x46, 0x53, 0x47, 0x65, 0x74, 0x55, 0x47, 0x43, 0x55, 0x52, 0x4c, 0x73, 0x10, 0xf8, + 0x28, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x47, 0x65, + 0x74, 0x55, 0x47, 0x43, 0x55, 0x52, 0x4c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xf9, 0x28, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, + 0x48, 0x74, 0x74, 0x70, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x69, + 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfa, 0x28, 0x12, 0x2a, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x48, 0x74, 0x74, 0x70, 0x55, + 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfb, 0x28, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfc, 0x28, 0x12, 0x23, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, + 0x6f, 0x61, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xfd, 0x28, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, + 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x10, 0xfe, 0x28, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x68, 0x75, 0x6e, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xff, 0x28, 0x12, 0x23, 0x0a, 0x1e, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, + 0x64, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x80, + 0x29, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x44, 0x6f, + 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x81, 0x29, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x55, 0x46, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x55, 0x52, 0x4c, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x10, 0x82, 0x29, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x6d, + 0x6d, 0x69, 0x74, 0x10, 0x83, 0x29, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x46, 0x53, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, + 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x29, + 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x4d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x70, 0x70, 0x49, 0x44, 0x10, 0x85, 0x29, + 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x46, 0x53, 0x4d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x70, 0x70, 0x49, 0x44, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x29, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x32, 0x10, 0x98, 0x2a, + 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, + 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x10, 0x99, 0x2a, + 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, + 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x2a, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0x9c, 0x2a, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x6f, + 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x2a, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x4f, 0x66, 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, + 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, 0x9f, 0x2a, 0x12, 0x37, 0x0a, 0x32, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x4f, 0x66, 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, + 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xa0, 0x2a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x4f, + 0x6e, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xa1, 0x2a, 0x12, + 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, + 0x61, 0x6d, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x57, 0x69, 0x74, 0x68, 0x44, 0x61, + 0x74, 0x61, 0x42, 0x6c, 0x6f, 0x62, 0x10, 0xa2, 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, + 0x73, 0x65, 0x72, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xa3, 0x2a, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x69, + 0x6c, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x10, 0xa4, 0x2a, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, + 0x69, 0x6c, 0x65, 0x54, 0x6f, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x2a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x10, 0xa6, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x2a, 0x12, 0x22, 0x0a, 0x1d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, 0x53, 0x46, + 0x69, 0x6e, 0x64, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x42, 0x10, 0xa8, 0x2a, + 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4c, 0x42, 0x53, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, + 0x42, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa9, 0x2a, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, 0x53, 0x47, + 0x65, 0x74, 0x4c, 0x42, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x10, 0xaa, 0x2a, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, + 0x53, 0x47, 0x65, 0x74, 0x4c, 0x42, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x44, 0x65, 0x63, 0x6c, + 0x69, 0x6e, 0x65, 0x64, 0x10, 0xb2, 0x2a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, + 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x10, 0xb3, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4c, + 0x69, 0x73, 0x74, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xb4, + 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x10, 0xb5, 0x2a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xb6, 0x2a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x41, 0x75, 0x74, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xb7, 0x2a, 0x12, 0x19, 0x0a, 0x14, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4c, + 0x69, 0x73, 0x74, 0x10, 0xb8, 0x2a, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x10, 0xb9, 0x2a, 0x12, 0x22, 0x0a, + 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x32, 0x50, + 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xba, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x57, 0x68, 0x6f, 0x50, 0x6c, - 0x61, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x10, 0xf0, 0x2a, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x73, 0x57, 0x68, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x2a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, 0x53, 0x42, 0x65, 0x67, 0x69, - 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xf2, 0x2a, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, 0x53, 0x42, 0x65, - 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xf3, 0x2a, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x10, 0xf4, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf5, 0x2a, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, 0x53, - 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x6f, 0x77, 0x10, 0xf6, 0x2a, 0x12, 0x18, 0x0a, 0x13, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x54, 0x65, - 0x73, 0x74, 0x10, 0xf7, 0x2a, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x10, 0xf8, 0x2a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x6e, 0x61, 0x76, 0x61, - 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xfc, 0x2a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, - 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xfd, 0x2a, 0x12, 0x29, 0x0a, 0x24, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x67, 0x69, - 0x73, 0x74, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x57, 0x69, - 0x74, 0x68, 0x43, 0x4d, 0x10, 0xfe, 0x2a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x61, 0x69, 0x6c, - 0x65, 0x64, 0x10, 0xff, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x41, 0x75, 0x74, - 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x80, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x69, 0x63, 0x72, 0x6f, - 0x54, 0x78, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x10, 0x81, 0x2b, 0x12, - 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x82, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4d, 0x69, - 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x84, 0x2b, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, - 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x85, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x32, 0x10, 0x86, - 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x44, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x57, 0x69, 0x74, 0x68, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x87, 0x2b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, - 0x65, 0x54, 0x6f, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x46, 0x65, 0x65, 0x64, 0x10, 0x88, - 0x2b, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4c, 0x6f, 0x67, 0x6f, 0x6e, 0x10, 0x8a, 0x2b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x8b, 0x2b, 0x12, 0x29, 0x0a, 0x24, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x76, 0x65, - 0x72, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x74, 0x6f, 0x75, 0x72, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, - 0x65, 0x10, 0x8d, 0x2b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, - 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8e, 0x2b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x41, 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x8f, 0x2b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, - 0x70, 0x70, 0x10, 0x90, 0x2b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x41, 0x70, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x91, 0x2b, + 0x74, 0x50, 0x32, 0x50, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, + 0x69, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xbb, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, + 0x74, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x10, 0xbe, + 0x2a, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, + 0x2a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x65, 0x73, 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, + 0x73, 0x65, 0x10, 0xc3, 0x2a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x65, 0x73, 0x74, 0x4c, + 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc4, + 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x65, 0x73, 0x74, 0x4c, 0x69, 0x63, 0x65, + 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x2a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x65, 0x73, + 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xc6, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x69, 0x6c, 0x10, 0xc8, 0x2a, 0x12, 0x2e, 0x0a, 0x29, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x69, 0x6c, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc9, 0x2a, 0x12, 0x25, 0x0a, 0x20, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x41, 0x70, 0x70, 0x42, 0x65, 0x74, 0x61, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x10, + 0xca, 0x2a, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x41, 0x70, 0x70, 0x42, 0x65, 0x74, 0x61, 0x50, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcb, + 0x2a, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x54, 0x6f, 0x47, 0x43, 0x10, 0xcc, 0x2a, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x6f, 0x6d, 0x47, 0x43, 0x10, 0xcd, + 0x2a, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xd0, + 0x2a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x33, + 0x10, 0xd1, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x33, 0x10, + 0xd2, 0x2a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x51, 0x41, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x33, 0x10, 0xd3, 0x2a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, + 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x33, 0x10, 0xd4, 0x2a, + 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, + 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x33, 0x10, 0xd5, + 0x2a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x4e, 0x65, 0x77, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x4b, 0x65, 0x79, 0x10, 0xd7, 0x2a, 0x12, + 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, + 0x65, 0x77, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x4b, 0x65, 0x79, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, + 0x65, 0x64, 0x10, 0xd8, 0x2a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x48, 0x61, + 0x73, 0x68, 0x5f, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd9, 0x2a, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x74, 0x6f, 0x72, 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x32, 0x10, + 0xda, 0x2a, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xdb, + 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4f, 0x45, 0x4d, 0x4c, 0x69, 0x63, 0x65, + 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x4f, 0x45, + 0x4d, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x10, 0xdd, 0x2a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x65, 0x72, 0x4f, 0x45, 0x4d, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x2a, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, + 0x64, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xe8, 0x2a, 0x12, + 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, + 0x74, 0x61, 0x74, 0x32, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x10, 0xe9, 0x2a, 0x12, 0x16, 0x0a, 0x11, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, + 0x32, 0x10, 0xea, 0x2a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, + 0x72, 0x64, 0x10, 0xeb, 0x2a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x50, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xec, 0x2a, 0x12, 0x23, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, + 0x4d, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x10, 0xed, 0x2a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xee, 0x2a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x46, 0x69, 0x6e, 0x61, + 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0xef, 0x2a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x73, 0x57, 0x68, 0x6f, 0x50, 0x6c, 0x61, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x10, + 0xf0, 0x2a, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x57, 0x68, 0x6f, 0x50, + 0x6c, 0x61, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xf1, 0x2a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4f, 0x47, 0x53, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x10, 0xf2, 0x2a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, 0x53, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x2a, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, + 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xf4, 0x2a, 0x12, 0x26, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, + 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xf5, 0x2a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, 0x53, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x6f, + 0x77, 0x10, 0xf6, 0x2a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xf7, 0x2a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xf8, 0x2a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x65, 0x65, 0x72, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xf9, 0x2a, 0x12, + 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, 0x2a, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, + 0x65, 0x10, 0xfc, 0x2a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x41, 0x76, 0x61, 0x69, 0x6c, + 0x61, 0x62, 0x6c, 0x65, 0x10, 0xfd, 0x2a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x41, + 0x75, 0x74, 0x68, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x57, 0x69, 0x74, 0x68, 0x43, 0x4d, 0x10, + 0xfe, 0x2a, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xff, 0x2a, + 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0x80, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, 0x6e, 0x41, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x10, 0x81, 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, + 0x78, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x82, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x54, 0x78, + 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x84, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4d, 0x69, 0x63, 0x72, 0x6f, + 0x54, 0x78, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x85, 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x44, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x57, 0x69, 0x74, 0x68, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x87, 0x2b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x65, 0x54, 0x6f, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x46, 0x65, 0x65, 0x64, 0x10, + 0x88, 0x2b, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x6f, 0x6e, 0x10, 0x8a, 0x2b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x8b, 0x2b, 0x12, 0x29, 0x0a, + 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x76, + 0x65, 0x72, 0x6c, 0x61, 0x79, 0x44, 0x65, 0x74, 0x6f, 0x75, 0x72, 0x46, 0x61, 0x69, 0x6c, 0x75, + 0x72, 0x65, 0x10, 0x8d, 0x2b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, + 0x70, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x8e, 0x2b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x41, 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x8f, 0x2b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x41, 0x70, 0x70, 0x10, 0x90, 0x2b, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x91, + 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x41, 0x70, 0x70, 0x10, 0x92, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x93, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x94, 0x2b, 0x12, 0x30, 0x0a, + 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x95, 0x2b, 0x12, + 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x41, + 0x70, 0x70, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x96, 0x2b, 0x12, 0x32, 0x0a, 0x2d, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x54, 0x69, + 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x97, 0x2b, 0x12, + 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, + 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, + 0x98, 0x2b, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x55, 0x47, 0x43, 0x10, 0x99, 0x2b, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, + 0x53, 0x53, 0x65, 0x74, 0x55, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x9a, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x66, 0x66, 0x69, 0x63, + 0x65, 0x72, 0x73, 0x10, 0x9b, 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4f, + 0x66, 0x66, 0x69, 0x63, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x9c, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, + 0x6e, 0x66, 0x6f, 0x10, 0x9f, 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xa0, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x41, + 0x75, 0x74, 0x68, 0x10, 0xa1, 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x63, 0x68, + 0x69, 0x6e, 0x65, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xa2, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x41, 0x75, 0x74, + 0x68, 0x10, 0xa3, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x41, + 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, 0x2b, 0x12, 0x23, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x41, 0x75, 0x74, 0x68, + 0x10, 0xa5, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, + 0x65, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa6, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, - 0x70, 0x70, 0x10, 0x92, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x93, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x53, 0x65, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x94, 0x2b, 0x12, 0x30, 0x0a, 0x2b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x95, 0x2b, 0x12, 0x2a, - 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x41, 0x70, - 0x70, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x96, 0x2b, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, + 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x64, 0x10, 0xa7, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x44, 0x4e, 0x41, 0x75, 0x74, 0x68, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x10, 0xaa, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x44, 0x4e, 0x41, 0x75, 0x74, + 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, + 0x2b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x10, 0xac, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x54, 0x69, 0x63, - 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x97, 0x2b, 0x12, 0x21, - 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x61, - 0x6c, 0x6c, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0x98, - 0x2b, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4c, 0x42, 0x53, 0x53, 0x65, 0x74, 0x55, 0x47, 0x43, 0x10, 0x99, 0x2b, 0x12, 0x22, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x42, 0x53, - 0x53, 0x65, 0x74, 0x55, 0x47, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9a, - 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x65, - 0x72, 0x73, 0x10, 0x9b, 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x4f, 0x66, - 0x66, 0x69, 0x63, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, - 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x10, 0x9f, 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, - 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x41, 0x75, - 0x74, 0x68, 0x10, 0xa1, 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x63, 0x68, 0x69, - 0x6e, 0x65, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, - 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x41, 0x75, 0x74, 0x68, - 0x10, 0xa3, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x41, 0x75, - 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa4, 0x2b, 0x12, 0x23, 0x0a, - 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x41, 0x75, 0x74, 0x68, 0x10, - 0xa5, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, - 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa6, 0x2b, 0x12, - 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, - 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x64, 0x10, 0xa7, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x44, 0x4e, 0x41, 0x75, 0x74, 0x68, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x10, 0xaa, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x44, 0x4e, 0x41, 0x75, 0x74, 0x68, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x2b, - 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x10, 0xac, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xad, 0x2b, 0x12, + 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x2b, 0x12, 0x28, 0x0a, 0x23, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, + 0x74, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, + 0x72, 0x64, 0x34, 0x10, 0xaf, 0x2b, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x64, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x10, 0xb0, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, + 0x4c, 0x69, 0x73, 0x74, 0x10, 0xb1, 0x2b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x10, 0xb2, 0x2b, 0x12, + 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, + 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x2b, 0x12, + 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, + 0x47, 0x53, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x10, 0xb4, + 0x2b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x4f, 0x47, 0x53, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x10, 0xb5, 0x2b, + 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x10, 0xb6, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x6f, 0x6e, + 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xb7, 0x2b, 0x12, 0x25, 0x0a, + 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x10, 0xb8, 0x2b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xb9, 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x10, 0xba, 0x2b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbb, 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x10, 0xbc, 0x2b, + 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbd, 0x2b, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x10, 0xbe, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, + 0x6f, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, + 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x46, + 0x72, 0x6f, 0x6d, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x10, 0xc0, 0x2b, 0x12, 0x30, 0x0a, 0x2b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, 0x2b, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x4d, 0x47, + 0x65, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x72, 0x79, 0x10, 0xc2, 0x2b, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x73, + 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x10, 0xad, 0x2b, 0x12, 0x2b, + 0x46, 0x72, 0x65, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xc4, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x2b, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, - 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x74, 0x65, 0x6e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, - 0x64, 0x34, 0x10, 0xaf, 0x2b, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x64, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, - 0xb0, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x4c, - 0x69, 0x73, 0x74, 0x10, 0xb1, 0x2b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x10, 0xb2, 0x2b, 0x12, 0x2e, - 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, - 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x2b, 0x12, 0x20, - 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x47, - 0x53, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x10, 0xb4, 0x2b, - 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4f, 0x47, 0x53, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x75, 0x67, 0x10, 0xb5, 0x2b, 0x12, - 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, - 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x10, 0xb6, 0x2b, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x6f, 0x6e, 0x47, - 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xb7, 0x2b, 0x12, 0x25, 0x0a, 0x20, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x10, 0xb8, 0x2b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xb9, 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x10, 0xba, 0x2b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbb, 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x10, 0xbc, 0x2b, 0x12, - 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbd, 0x2b, 0x12, 0x23, - 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x10, 0xbe, 0x2b, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x6f, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbf, 0x2b, - 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x46, 0x72, - 0x6f, 0x6d, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x10, 0xc0, 0x2b, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc1, 0x2b, 0x12, 0x28, 0x0a, 0x23, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x4d, 0x47, 0x65, - 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x10, 0xc2, 0x2b, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x4d, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, - 0x6e, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc3, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, - 0x72, 0x65, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x10, 0xc4, 0x2b, 0x12, 0x2b, 0x0a, - 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x46, 0x72, 0x65, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x2b, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x44, 0x6f, 0x77, - 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, - 0x43, 0x72, 0x61, 0x73, 0x68, 0x44, 0x61, 0x74, 0x61, 0x10, 0xc6, 0x2b, 0x12, 0x1c, 0x0a, 0x17, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, - 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x6b, 0x10, 0xc7, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6e, - 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xc8, 0x2b, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xc9, 0x2b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, - 0x73, 0x67, 0x45, 0x63, 0x68, 0x6f, 0x54, 0x6f, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x10, 0xca, - 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xce, 0x2b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x10, 0xcf, 0x2b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x2b, 0x12, 0x33, - 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x41, 0x75, 0x74, 0x68, 0x65, - 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x63, 0x65, - 0x10, 0xd1, 0x2b, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, - 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x2b, - 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x4c, 0x69, - 0x73, 0x74, 0x10, 0xd3, 0x2b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, - 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x10, 0xd4, 0x2b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, 0x2b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x4f, 0x66, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x44, 0x50, 0x10, 0xd8, 0x2b, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x4f, 0x66, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, - 0x44, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x2b, 0x12, 0x24, 0x0a, - 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, - 0x10, 0xda, 0x2b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, - 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdb, - 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xdc, 0x2b, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x74, 0x55, 0x49, 0x4d, 0x6f, 0x64, 0x65, 0x10, 0xdd, 0x2b, 0x12, 0x2d, 0x0a, - 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x61, 0x6e, - 0x69, 0x74, 0x79, 0x55, 0x52, 0x4c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x4e, 0x6f, 0x74, - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xde, 0x2b, 0x12, 0x22, 0x0a, 0x1d, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xdf, 0x2b, - 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x44, 0x46, - 0x53, 0x10, 0xe0, 0x2b, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, - 0x53, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xe1, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x4c, - 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xe2, 0x2b, 0x12, 0x18, 0x0a, 0x13, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x10, 0xe3, 0x2b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x46, 0x53, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x70, 0x6c, - 0x79, 0x10, 0xe4, 0x2b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x44, 0x46, 0x53, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, - 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe5, 0x2b, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x46, 0x53, - 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x46, 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xe7, 0x2b, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x44, 0x46, 0x53, 0x50, 0x75, 0x72, 0x67, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xe8, 0x2b, - 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x6f, 0x75, - 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xe9, 0x2b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x72, 0x6f, - 0x6d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xea, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x2b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x72, 0x65, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x2b, 0x12, 0x30, 0x0a, 0x2b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x52, 0x4d, 0x44, 0x6f, + 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, + 0x68, 0x43, 0x72, 0x61, 0x73, 0x68, 0x44, 0x61, 0x74, 0x61, 0x10, 0xc6, 0x2b, 0x12, 0x1c, 0x0a, + 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, + 0x68, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x6b, 0x10, 0xc7, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x41, + 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xc8, 0x2b, 0x12, + 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, + 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x10, 0xc9, 0x2b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x4d, 0x73, 0x67, 0x45, 0x63, 0x68, 0x6f, 0x54, 0x6f, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x10, + 0xca, 0x2b, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xce, 0x2b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xcf, 0x2b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x2b, 0x12, + 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x41, 0x75, 0x74, 0x68, + 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x63, + 0x65, 0x10, 0xd1, 0x2b, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x65, 0x62, 0x41, 0x50, + 0x49, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, + 0x72, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, + 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x4c, + 0x69, 0x73, 0x74, 0x10, 0xd3, 0x2b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x10, 0xd4, 0x2b, 0x12, 0x2c, 0x0a, 0x27, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd5, 0x2b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x4f, 0x66, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x73, 0x44, 0x50, 0x10, 0xd8, 0x2b, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x4f, 0x66, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x73, 0x44, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd9, 0x2b, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4c, 0x65, 0x67, 0x61, 0x63, + 0x79, 0x10, 0xda, 0x2b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, + 0x64, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xdb, 0x2b, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xdc, 0x2b, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x55, 0x49, 0x4d, 0x6f, 0x64, 0x65, 0x10, 0xdd, 0x2b, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x61, + 0x6e, 0x69, 0x74, 0x79, 0x55, 0x52, 0x4c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x4e, 0x6f, + 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xde, 0x2b, 0x12, 0x22, 0x0a, + 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xdf, + 0x2b, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x44, + 0x46, 0x53, 0x10, 0xe0, 0x2b, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, + 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xe1, 0x2b, 0x12, 0x1e, 0x0a, 0x19, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, + 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xe2, 0x2b, 0x12, 0x18, 0x0a, 0x13, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x10, 0xe3, 0x2b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x44, 0x46, 0x53, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x70, + 0x6c, 0x79, 0x10, 0xe4, 0x2b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x46, 0x53, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, + 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe5, 0x2b, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x46, + 0x53, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x46, 0x53, 0x45, 0x6e, 0x64, 0x53, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xe7, 0x2b, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x44, 0x46, 0x53, 0x50, 0x75, 0x72, 0x67, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xe8, + 0x2b, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x6f, + 0x75, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xe9, 0x2b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x72, + 0x6f, 0x6d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xea, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xeb, 0x2b, 0x12, 0x1d, 0x0a, 0x18, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, + 0x69, 0x6e, 0x67, 0x62, 0x61, 0x63, 0x6b, 0x10, 0xec, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x65, 0x63, 0x76, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x6d, 0x69, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xed, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x6d, 0x69, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xee, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x69, - 0x6e, 0x67, 0x62, 0x61, 0x63, 0x6b, 0x10, 0xec, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x65, 0x63, 0x76, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, - 0x69, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xed, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, - 0x69, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xee, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x69, 0x6e, - 0x67, 0x62, 0x61, 0x63, 0x6b, 0x32, 0x10, 0xef, 0x2b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x69, - 0x6e, 0x67, 0x62, 0x61, 0x63, 0x6b, 0x32, 0x10, 0xf0, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x46, 0x53, 0x44, 0x6f, 0x77, - 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xf1, 0x2b, 0x12, 0x1b, - 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x10, 0xf2, 0x2b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, - 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xf3, 0x2b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x46, 0x69, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf4, 0x2b, 0x12, 0x26, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, - 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xf5, 0x2b, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x65, - 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xf6, 0x2b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xf7, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf8, 0x2b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x64, 0x67, 0x65, 0x43, 0x72, 0x61, 0x66, 0x74, 0x65, - 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf9, 0x2b, - 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, - 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfa, 0x2b, 0x12, 0x34, - 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x43, 0x65, - 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xfb, 0x2b, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, - 0x73, 0x65, 0x4d, 0x44, 0x53, 0x10, 0xa8, 0x2d, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x44, 0x65, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x10, 0xb4, 0x2d, 0x12, 0x2b, 0x0a, - 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, - 0x6f, 0x74, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb5, 0x2d, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xc3, 0x2d, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, - 0x53, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x10, 0xc4, 0x2d, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x4d, 0x61, 0x6e, 0x69, - 0x66, 0x65, 0x73, 0x74, 0x10, 0xc5, 0x2d, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x4d, 0x61, 0x6e, 0x69, - 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x2d, 0x12, - 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, - 0x65, 0x70, 0x6f, 0x74, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x43, 0x68, 0x75, 0x6e, - 0x6b, 0x10, 0xc7, 0x2d, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, - 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xc8, - 0x2d, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, - 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xc9, 0x2d, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, - 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xca, 0x2d, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x4d, 0x44, 0x53, 0x54, 0x6f, 0x43, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x68, - 0x75, 0x6e, 0x6b, 0x10, 0xd4, 0x2d, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x4d, 0x44, 0x53, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, - 0xd7, 0x2d, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x4d, - 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x2d, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x4d, 0x44, 0x53, 0x54, 0x6f, 0x43, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x4d, 0x61, 0x6e, 0x69, - 0x66, 0x65, 0x73, 0x74, 0x10, 0xd9, 0x2d, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0xb8, 0x30, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x53, 0x50, 0x69, 0x6e, 0x67, 0x10, 0xb9, 0x30, 0x12, 0x19, 0x0a, - 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x53, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xba, 0x30, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x47, 0x4d, 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0x80, 0x32, 0x12, 0x21, 0x0a, 0x1c, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x53, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x10, 0x81, 0x32, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, - 0x4d, 0x53, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x83, 0x32, - 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x53, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x32, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x4d, 0x53, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0x85, 0x32, 0x12, 0x20, 0x0a, 0x1b, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x4d, 0x53, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x10, 0x86, 0x32, 0x12, 0x1e, 0x0a, - 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x61, 0x74, 0x65, 0x10, 0x87, 0x32, 0x12, 0x22, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, - 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x10, 0xe4, - 0x32, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, - 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe5, 0x32, 0x12, - 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, + 0x6e, 0x67, 0x62, 0x61, 0x63, 0x6b, 0x32, 0x10, 0xef, 0x2b, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, + 0x69, 0x6e, 0x67, 0x62, 0x61, 0x63, 0x6b, 0x32, 0x10, 0xf0, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x46, 0x53, 0x44, 0x6f, + 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xf1, 0x2b, 0x12, + 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x10, 0xf2, 0x2b, 0x12, 0x1e, 0x0a, 0x19, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, + 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xf3, 0x2b, 0x12, 0x1f, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x46, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf4, 0x2b, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0xf5, 0x2b, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x43, + 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xf6, 0x2b, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf7, 0x2b, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf8, 0x2b, 0x12, 0x23, 0x0a, 0x1e, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x64, 0x67, 0x65, 0x43, 0x72, 0x61, 0x66, 0x74, + 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf9, + 0x2b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x62, 0x69, 0x6c, + 0x65, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfa, 0x2b, 0x12, + 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x43, + 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xfb, 0x2b, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x61, 0x73, 0x65, 0x4d, 0x44, 0x53, 0x10, 0xa8, 0x2d, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x44, 0x65, + 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x10, 0xb4, 0x2d, 0x12, 0x2b, + 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, + 0x70, 0x6f, 0x74, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb5, 0x2d, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0xc3, 0x2d, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, + 0x44, 0x53, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xc4, 0x2d, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x4d, 0x61, 0x6e, + 0x69, 0x66, 0x65, 0x73, 0x74, 0x10, 0xc5, 0x2d, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x4d, 0x61, 0x6e, + 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x2d, + 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, + 0x44, 0x65, 0x70, 0x6f, 0x74, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x43, 0x68, 0x75, + 0x6e, 0x6b, 0x10, 0xc7, 0x2d, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, + 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, + 0xc8, 0x2d, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x47, + 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc9, 0x2d, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x4d, 0x44, 0x53, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6f, 0x74, 0x43, 0x68, 0x75, 0x6e, + 0x6b, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xca, 0x2d, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, 0x54, 0x6f, 0x43, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, + 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xd4, 0x2d, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x4d, 0x44, 0x53, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, + 0x10, 0xd7, 0x2d, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x44, 0x53, + 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x2d, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x4d, 0x44, 0x53, 0x54, 0x6f, 0x43, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x4d, 0x61, 0x6e, + 0x69, 0x66, 0x65, 0x73, 0x74, 0x10, 0xd9, 0x2d, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0xb8, 0x30, 0x12, 0x11, 0x0a, 0x0c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x53, 0x50, 0x69, 0x6e, 0x67, 0x10, 0xb9, 0x30, 0x12, 0x19, + 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x53, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xba, 0x30, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0x80, 0x32, 0x12, 0x21, 0x0a, + 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x53, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x10, 0x81, 0x32, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x47, 0x4d, 0x53, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x51, 0x75, 0x65, 0x72, 0x79, 0x10, 0x83, + 0x32, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x4d, 0x53, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x84, 0x32, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x4d, 0x53, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0x85, 0x32, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x47, 0x4d, 0x53, 0x47, 0x61, 0x6d, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x10, 0x86, 0x32, 0x12, 0x1e, + 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x61, 0x74, 0x65, 0x10, 0x87, 0x32, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x10, + 0xe4, 0x32, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, + 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe5, 0x32, + 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, + 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x32, 0x12, + 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, + 0x65, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe7, 0x32, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x61, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x10, 0xe8, 0x32, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x73, + 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xe9, 0x32, 0x12, 0x25, 0x0a, + 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, + 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, + 0x73, 0x10, 0xea, 0x32, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, + 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xeb, 0x32, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, + 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, + 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x10, 0xec, 0x32, 0x12, + 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x76, - 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x32, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, - 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xe7, 0x32, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x61, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x7a, 0x65, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x10, 0xe8, 0x32, 0x12, 0x2d, 0x0a, - 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, - 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xe9, 0x32, 0x12, 0x25, 0x0a, 0x20, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x41, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, - 0x10, 0xea, 0x32, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, - 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xeb, 0x32, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x4e, 0x6f, - 0x74, 0x69, 0x66, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x10, 0xec, 0x32, 0x12, 0x31, - 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, - 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x76, 0x69, - 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xed, - 0x32, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x4d, 0x53, 0x42, 0x61, - 0x73, 0x65, 0x10, 0xc8, 0x33, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x6f, - 0x62, 0x62, 0x79, 0x10, 0xc9, 0x33, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, + 0xed, 0x32, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x4d, 0x53, 0x42, + 0x61, 0x73, 0x65, 0x10, 0xc8, 0x33, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x33, 0x12, - 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x4d, 0x53, 0x4a, 0x6f, 0x69, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xcb, 0x33, 0x12, 0x25, - 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, - 0x53, 0x4a, 0x6f, 0x69, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xcc, 0x33, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x10, 0xcd, 0x33, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xce, 0x33, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, - 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xcf, 0x33, 0x12, - 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x33, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x74, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x44, 0x61, 0x74, 0x61, 0x10, 0xd1, 0x33, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, - 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xd2, 0x33, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x44, 0x61, 0x74, 0x61, 0x10, 0xd3, 0x33, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, - 0x61, 0x74, 0x61, 0x10, 0xd4, 0x33, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x4c, 0x6f, 0x62, - 0x62, 0x79, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x73, 0x67, 0x10, 0xd5, 0x33, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x73, 0x67, 0x10, 0xd6, 0x33, 0x12, 0x21, - 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, - 0x53, 0x53, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x10, 0xd7, - 0x33, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4f, 0x77, 0x6e, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x33, 0x12, 0x26, 0x0a, 0x21, + 0x6f, 0x62, 0x62, 0x79, 0x10, 0xc9, 0x33, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x33, + 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x4d, 0x53, 0x4a, 0x6f, 0x69, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xcb, 0x33, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, + 0x4d, 0x53, 0x4a, 0x6f, 0x69, 0x6e, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xcc, 0x33, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x10, 0xcd, 0x33, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xce, 0x33, 0x12, 0x20, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, + 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xcf, 0x33, + 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x4d, 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd0, 0x33, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x74, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x61, 0x74, 0x61, 0x10, 0xd1, 0x33, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, - 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x10, 0xd9, 0x33, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x74, 0x10, 0xda, 0x33, 0x12, 0x23, 0x0a, 0x1e, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x55, - 0x73, 0x65, 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xdb, - 0x33, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x4d, 0x53, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x65, 0x66, 0x74, 0x4c, 0x6f, 0x62, 0x62, - 0x79, 0x10, 0xdc, 0x33, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x10, 0xdd, 0x33, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x46, - 0x72, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, - 0xde, 0x33, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x46, 0x72, 0x65, 0x6e, 0x65, 0x6d, - 0x79, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xdf, 0x33, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, - 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x10, 0xe0, 0x33, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x74, 0x52, - 0x61, 0x74, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4f, 0x6e, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x10, 0xe1, 0x33, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, - 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xe2, 0x33, 0x12, 0x2a, 0x0a, - 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, - 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe3, 0x33, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x4d, 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, - 0x73, 0x74, 0x10, 0xe4, 0x33, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, - 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe5, 0x33, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, - 0x10, 0x90, 0x35, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, - 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x4d, 0x65, 0x6d, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x10, - 0x91, 0x35, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, - 0x74, 0x64, 0x4d, 0x73, 0x67, 0x48, 0x54, 0x54, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, - 0x92, 0x35, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, - 0x74, 0x64, 0x4d, 0x73, 0x67, 0x48, 0x54, 0x54, 0x50, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x10, - 0x93, 0x35, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, - 0x74, 0x64, 0x4d, 0x73, 0x67, 0x57, 0x47, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x94, 0x35, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, - 0x74, 0x64, 0x4d, 0x73, 0x67, 0x50, 0x48, 0x50, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x6f, - 0x72, 0x10, 0x95, 0x35, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, - 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x73, 0x65, 0x10, 0x96, 0x35, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, - 0x73, 0x67, 0x44, 0x46, 0x53, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x10, 0x97, 0x35, - 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, - 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x73, 0x10, 0x98, 0x35, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x55, 0x4d, - 0x51, 0x70, 0x69, 0x70, 0x65, 0x41, 0x41, 0x50, 0x4c, 0x10, 0x99, 0x35, 0x12, 0x1a, 0x0a, 0x15, - 0x6b, 0x5f, 0x45, 0x4d, 0x53, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x53, - 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x10, 0x9a, 0x35, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x67, 0x73, 0x69, - 0x6e, 0x6b, 0x10, 0x9b, 0x35, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, - 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x32, 0x45, 0x6d, - 0x75, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x9c, 0x35, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x54, 0x4d, 0x50, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x9d, 0x35, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x53, - 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x9e, 0x35, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x64, 0x69, 0x73, - 0x10, 0x9f, 0x35, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x44, 0x53, - 0x42, 0x61, 0x73, 0x65, 0x10, 0xd8, 0x36, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x44, 0x53, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0xd9, 0x36, 0x12, 0x23, - 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x44, - 0x53, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x65, 0x64, - 0x10, 0xda, 0x36, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x44, 0x53, - 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x10, 0xdb, - 0x36, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x44, 0x53, 0x52, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x36, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x47, - 0x61, 0x6d, 0x65, 0x10, 0xdd, 0x36, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x55, 0x44, 0x53, 0x48, 0x61, 0x73, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xde, 0x36, - 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x44, 0x53, 0x48, 0x61, 0x73, - 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xdf, 0x36, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x50, 0x41, 0x53, - 0x42, 0x61, 0x73, 0x65, 0x10, 0xbc, 0x37, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x4d, 0x50, 0x41, 0x53, 0x56, 0x61, 0x63, 0x42, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x74, - 0x10, 0xbd, 0x37, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4b, 0x47, 0x53, - 0x42, 0x61, 0x73, 0x65, 0x10, 0xa0, 0x38, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x55, 0x43, 0x4d, 0x42, 0x61, 0x73, 0x65, 0x10, 0x84, 0x39, 0x12, 0x21, 0x0a, 0x1c, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x41, 0x64, - 0x64, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x10, 0x85, 0x39, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, - 0x4d, 0x41, 0x64, 0x64, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x39, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x52, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, - 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x10, 0x8b, 0x39, 0x12, 0x2b, - 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x52, 0x65, 0x73, 0x65, 0x74, - 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x39, 0x12, 0x24, 0x0a, 0x1f, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x10, 0x8d, - 0x39, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x55, 0x43, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, - 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x39, 0x12, - 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, - 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x10, 0x8f, 0x39, - 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x90, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x10, - 0x93, 0x39, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, - 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0x94, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x10, 0x9d, 0x39, 0x12, 0x2f, 0x0a, 0x2a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x39, 0x12, 0x21, 0x0a, - 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x10, 0x9f, 0x39, - 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x39, 0x12, 0x21, 0x0a, 0x1c, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xa1, 0x39, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x39, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x10, 0xa3, 0x39, - 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x52, 0x65, 0x6c, - 0x6f, 0x61, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, - 0x10, 0xa9, 0x39, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, - 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x6c, 0x65, 0x4c, 0x69, - 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x10, 0xaa, 0x39, 0x12, 0x23, 0x0a, 0x1e, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, - 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x10, 0xab, 0x39, - 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, - 0x77, 0x41, 0x64, 0x64, 0x10, 0xad, 0x39, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, - 0x65, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x41, 0x64, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xae, 0x39, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, - 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x10, 0xaf, 0x39, - 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, - 0x77, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xb0, 0x39, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x10, 0xb5, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, + 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x33, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x44, 0x61, 0x74, 0x61, 0x10, 0xd3, 0x33, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, 0x6f, 0x62, 0x62, 0x79, + 0x44, 0x61, 0x74, 0x61, 0x10, 0xd4, 0x33, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x6e, 0x64, 0x4c, 0x6f, + 0x62, 0x62, 0x79, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x73, 0x67, 0x10, 0xd5, 0x33, 0x12, 0x20, 0x0a, + 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x73, 0x67, 0x10, 0xd6, 0x33, 0x12, + 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, + 0x4d, 0x53, 0x53, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x10, + 0xd7, 0x33, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4f, 0x77, 0x6e, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd8, 0x33, 0x12, 0x26, 0x0a, + 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, + 0x53, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x10, 0xd9, 0x33, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x47, 0x61, 0x6d, + 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x74, 0x10, 0xda, 0x33, 0x12, 0x23, 0x0a, + 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, + 0x55, 0x73, 0x65, 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, + 0xdb, 0x33, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x65, 0x66, 0x74, 0x4c, 0x6f, 0x62, + 0x62, 0x79, 0x10, 0xdc, 0x33, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x10, 0xdd, 0x33, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, + 0x46, 0x72, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, + 0x10, 0xde, 0x33, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x46, 0x72, 0x65, 0x6e, 0x65, + 0x6d, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xdf, 0x33, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, + 0x79, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x10, 0xe0, 0x33, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x53, 0x65, 0x74, + 0x52, 0x61, 0x74, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4f, + 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x10, 0xe1, 0x33, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, 0x53, 0x47, 0x65, 0x74, + 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xe2, 0x33, 0x12, 0x2a, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x4d, + 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe3, 0x33, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, + 0x69, 0x73, 0x74, 0x10, 0xe4, 0x33, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x4d, 0x4d, 0x53, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x62, 0x62, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe5, 0x33, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, + 0x65, 0x10, 0x90, 0x35, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, + 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x4d, 0x65, 0x6d, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, + 0x10, 0x91, 0x35, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, + 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x48, 0x54, 0x54, 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x10, 0x92, 0x35, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, + 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x48, 0x54, 0x54, 0x50, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x10, 0x93, 0x35, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, + 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x57, 0x47, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0x94, 0x35, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, + 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x50, 0x48, 0x50, 0x53, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, + 0x6f, 0x72, 0x10, 0x95, 0x35, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, + 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x73, 0x65, 0x10, 0x96, 0x35, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, + 0x4d, 0x73, 0x67, 0x44, 0x46, 0x53, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x10, 0x97, + 0x35, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, + 0x64, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x73, 0x10, 0x98, 0x35, 0x12, 0x1f, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x55, + 0x4d, 0x51, 0x70, 0x69, 0x70, 0x65, 0x41, 0x41, 0x50, 0x4c, 0x10, 0x99, 0x35, 0x12, 0x1a, 0x0a, + 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x53, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, + 0x53, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x10, 0x9a, 0x35, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x67, 0x73, + 0x69, 0x6e, 0x6b, 0x10, 0x9b, 0x35, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x32, 0x45, + 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x9c, 0x35, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x54, 0x4d, + 0x50, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x9d, 0x35, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, + 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x9e, 0x35, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x6e, 0x53, 0x74, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x64, 0x69, + 0x73, 0x10, 0x9f, 0x35, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x44, + 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0xd8, 0x36, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x44, 0x53, 0x50, 0x32, 0x50, 0x53, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x10, 0xd9, 0x36, 0x12, + 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, + 0x44, 0x53, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x65, + 0x64, 0x10, 0xda, 0x36, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x44, + 0x53, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x10, + 0xdb, 0x36, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x44, 0x53, 0x52, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x36, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x6f, + 0x47, 0x61, 0x6d, 0x65, 0x10, 0xdd, 0x36, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x55, 0x44, 0x53, 0x48, 0x61, 0x73, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0xde, + 0x36, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x44, 0x53, 0x48, 0x61, + 0x73, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xdf, 0x36, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4d, 0x50, 0x41, + 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0xbc, 0x37, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x4d, 0x50, 0x41, 0x53, 0x56, 0x61, 0x63, 0x42, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x65, + 0x74, 0x10, 0xbd, 0x37, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4b, 0x47, + 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0xa0, 0x38, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x55, 0x43, 0x4d, 0x42, 0x61, 0x73, 0x65, 0x10, 0x84, 0x39, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x41, + 0x64, 0x64, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x10, 0x85, 0x39, 0x12, + 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, + 0x43, 0x4d, 0x41, 0x64, 0x64, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x86, 0x39, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x52, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, + 0x75, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x10, 0x8b, 0x39, 0x12, + 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x52, 0x65, 0x73, 0x65, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8c, 0x39, 0x12, 0x24, 0x0a, 0x1f, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x10, + 0x8d, 0x39, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x63, 0x72, 0x65, 0x65, + 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8e, 0x39, + 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x10, 0x8f, + 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x90, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, + 0x10, 0x93, 0x39, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0x94, 0x39, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x10, 0x9d, 0x39, 0x12, 0x2f, 0x0a, + 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, + 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x39, 0x12, 0x21, + 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x10, 0x9f, + 0x39, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x39, 0x12, 0x25, 0x0a, 0x20, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x10, 0xa3, 0x39, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, + 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, + 0x69, 0x6c, 0x65, 0x10, 0xa9, 0x39, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x55, 0x43, 0x4d, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x6c, + 0x65, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x10, 0xaa, 0x39, 0x12, 0x23, + 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, + 0x10, 0xab, 0x39, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x65, + 0x76, 0x69, 0x65, 0x77, 0x41, 0x64, 0x64, 0x10, 0xad, 0x39, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, + 0x46, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x41, 0x64, 0x64, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xae, 0x39, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, - 0x69, 0x6c, 0x65, 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x10, - 0xb6, 0x39, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xb7, 0x39, 0x12, 0x21, 0x0a, - 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb8, 0x39, - 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x41, - 0x64, 0x64, 0x10, 0xb9, 0x39, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, + 0x69, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x10, 0xaf, 0x39, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x65, + 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xb0, 0x39, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, + 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x53, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x10, 0xb5, 0x39, 0x12, 0x27, 0x0a, 0x22, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, + 0x65, 0x64, 0x10, 0xb6, 0x39, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, + 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xb7, 0x39, + 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xb8, 0x39, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x68, 0x69, + 0x6c, 0x64, 0x41, 0x64, 0x64, 0x10, 0xb9, 0x39, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, + 0x6c, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x41, 0x64, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xba, 0x39, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x43, - 0x68, 0x69, 0x6c, 0x64, 0x41, 0x64, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xba, 0x39, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x68, 0x69, 0x6c, - 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x10, 0xbb, 0x39, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, - 0x46, 0x69, 0x6c, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbc, 0x39, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, - 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x64, 0x10, 0xbf, 0x39, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x10, 0xc4, 0x39, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x39, 0x12, 0x37, 0x0a, 0x32, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x45, - 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, - 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x10, 0xc6, 0x39, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x45, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, - 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, - 0x79, 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x39, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x55, 0x43, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x10, 0xc9, 0x39, 0x12, 0x2c, 0x0a, 0x27, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x39, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x46, 0x69, 0x78, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x10, 0xcb, 0x39, 0x12, - 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, + 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x10, 0xbb, 0x39, 0x12, 0x2e, 0x0a, + 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbc, 0x39, 0x12, 0x28, 0x0a, + 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x64, 0x10, 0xbf, 0x39, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xc4, 0x39, 0x12, 0x36, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x53, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc5, 0x39, 0x12, + 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, + 0x43, 0x4d, 0x45, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x42, 0x79, 0x55, 0x73, 0x65, 0x72, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xc6, 0x39, 0x12, 0x3f, 0x0a, 0x3a, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x45, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, + 0x65, 0x73, 0x42, 0x79, 0x55, 0x73, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc7, 0x39, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x10, 0xc9, 0x39, 0x12, + 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x47, 0x65, 0x74, 0x55, + 0x73, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x46, 0x69, 0x6c, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x39, 0x12, 0x23, 0x0a, + 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x46, 0x69, 0x78, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x10, + 0xcb, 0x39, 0x12, 0x3b, 0x0a, 0x36, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x45, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x55, 0x73, + 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, + 0x73, 0x57, 0x69, 0x74, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x10, 0xd2, 0x39, 0x12, + 0x43, 0x0a, 0x3e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x45, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x57, 0x69, - 0x74, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x10, 0xd2, 0x39, 0x12, 0x43, 0x0a, 0x3e, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x45, - 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x57, 0x69, 0x74, 0x68, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd3, - 0x39, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, 0x4d, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd4, 0x39, 0x12, 0x28, 0x0a, 0x23, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x43, 0x4d, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x10, 0xd5, 0x39, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x49, 0x74, - 0x65, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x10, 0xd6, 0x39, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd7, - 0x39, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x42, 0x61, 0x73, - 0x65, 0x10, 0xcc, 0x3a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, - 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x10, 0xcd, 0x3a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, - 0x73, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xce, 0x3a, 0x12, - 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, - 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, - 0xcf, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x52, 0x69, - 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xd0, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, - 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x3a, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x46, 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x46, 0x72, 0x65, 0x6e, 0x65, 0x6d, - 0x61, 0x74, 0x72, 0x69, 0x78, 0x10, 0xd2, 0x3a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x46, 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x46, 0x72, 0x65, 0x6e, 0x65, - 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd3, - 0x3a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x50, 0x6c, 0x61, - 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x10, 0xd4, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x46, 0x53, 0x41, 0x64, 0x64, 0x4f, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x6f, 0x6c, - 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x10, 0xd6, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x46, 0x53, 0x41, 0x64, 0x64, 0x4f, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, - 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xd7, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, - 0x74, 0x10, 0xd8, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, - 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x10, 0xd9, 0x3a, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x46, 0x53, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x69, 0x65, 0x77, 0x65, 0x64, 0x10, 0xda, 0x3a, 0x12, 0x23, - 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, - 0x47, 0x65, 0x74, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x10, 0xdb, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x3a, - 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x46, 0x53, 0x47, 0x65, 0x74, 0x49, 0x73, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, - 0x10, 0xdd, 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x46, 0x53, 0x47, 0x65, 0x74, 0x49, 0x73, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x3a, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, - 0x45, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, - 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xdf, 0x3a, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, 0x45, 0x6e, 0x75, 0x6d, 0x65, - 0x72, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe0, 0x3a, 0x12, 0x28, 0x0a, 0x23, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x10, 0xe1, 0x3a, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x46, 0x53, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x3a, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x4f, 0x66, 0x66, 0x6c, - 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xe3, 0x3a, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe4, 0x3a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, - 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xe5, 0x3a, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x3a, 0x12, 0x3e, - 0x0a, 0x39, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, - 0x61, 0x74, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x4f, 0x66, 0x66, 0x6c, - 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x10, 0xe7, 0x3a, 0x12, 0x28, - 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, - 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x73, 0x10, 0xe8, 0x3a, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe9, 0x3a, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x61, 0x10, 0xea, 0x3a, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x32, 0x10, 0xb0, 0x3b, - 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x45, 0x47, 0x56, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x69, 0x73, - 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb0, 0x3b, 0x12, 0x2d, - 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x45, 0x47, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb1, 0x3b, 0x12, 0x23, 0x0a, - 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x45, 0x47, 0x50, 0x72, 0x6f, 0x70, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x44, 0x52, 0x4d, 0x53, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xb2, 0x3b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x45, 0x47, 0x50, - 0x72, 0x6f, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x44, 0x52, 0x4d, 0x53, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x3b, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x45, 0x47, 0x57, 0x68, 0x61, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, - 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb4, - 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x45, 0x47, 0x57, 0x68, - 0x61, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb5, 0x3b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x53, 0x46, 0x65, 0x74, 0x63, 0x68, 0x56, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x10, 0xb6, 0x3b, 0x12, 0x26, 0x0a, 0x21, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x53, 0x46, 0x65, 0x74, 0x63, 0x68, 0x56, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xb7, 0x3b, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, - 0x6e, 0x42, 0x61, 0x73, 0x65, 0x10, 0x94, 0x3c, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x49, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0x95, 0x3c, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, - 0x63, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, - 0x10, 0x96, 0x3c, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, - 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, - 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x97, - 0x3c, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x54, - 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, - 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0x98, 0x3c, 0x12, 0x23, 0x0a, - 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, - 0x6e, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, - 0x99, 0x3c, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, - 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x54, 0x72, - 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9a, 0x3c, 0x12, 0x22, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x46, 0x6c, 0x75, 0x73, 0x68, - 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0x9b, - 0x3c, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x46, - 0x6c, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9c, 0x3c, 0x12, 0x26, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x43, 0x44, 0x4b, 0x65, 0x79, - 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x10, 0x9f, 0x3c, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, + 0x74, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xd3, 0x39, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x43, + 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd4, 0x39, 0x12, + 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, + 0x43, 0x4d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x10, 0xd5, 0x39, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x46, 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0xcc, 0x3a, 0x12, 0x23, 0x0a, 0x1e, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x69, 0x63, 0x68, + 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x10, 0xcd, + 0x3a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x10, 0xce, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, + 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xcf, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xd0, 0x3a, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, + 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd1, 0x3a, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x43, 0x6f, 0x6d, 0x70, 0x75, + 0x74, 0x65, 0x46, 0x72, 0x65, 0x6e, 0x65, 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x10, 0xd2, 0x3a, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x43, 0x6f, 0x6d, 0x70, + 0x75, 0x74, 0x65, 0x46, 0x72, 0x65, 0x6e, 0x65, 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd3, 0x3a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x46, 0x53, 0x50, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, + 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd4, 0x3a, 0x12, 0x20, + 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x41, 0x64, 0x64, 0x4f, 0x72, 0x52, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x10, 0xd6, 0x3a, + 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x41, 0x64, 0x64, 0x4f, + 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd7, 0x3a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x6c, 0x6c, + 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xd8, 0x3a, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e, + 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd9, 0x3a, 0x12, 0x26, + 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x69, 0x65, + 0x77, 0x65, 0x64, 0x10, 0xda, 0x3a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, + 0x77, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xdb, 0x3a, 0x12, 0x2b, 0x0a, 0x26, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, 0x47, 0x65, 0x74, + 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xdc, 0x3a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, 0x47, 0x65, 0x74, 0x49, 0x73, 0x46, + 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x10, 0xdd, 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, 0x47, 0x65, 0x74, + 0x49, 0x73, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xde, 0x3a, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, 0x45, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, + 0x65, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xdf, + 0x3a, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x46, 0x53, 0x45, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x6c, 0x6c, + 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xe0, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, + 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe1, 0x3a, 0x12, 0x30, + 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x46, 0x53, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe2, 0x3a, + 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x43, 0x68, 0x61, 0x74, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xe3, + 0x3a, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x43, 0x68, 0x61, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4f, 0x66, 0x66, 0x6c, + 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, + 0xe4, 0x3a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xe5, 0x3a, + 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xe6, 0x3a, 0x12, 0x3e, 0x0a, 0x39, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x74, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x46, 0x6f, 0x72, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x10, 0xe7, 0x3a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x10, 0xe8, 0x3a, + 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x46, 0x53, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xe9, 0x3a, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x41, 0x4d, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x61, 0x10, + 0xea, 0x3a, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x52, + 0x61, 0x6e, 0x67, 0x65, 0x32, 0x10, 0xb0, 0x3b, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x43, 0x45, 0x47, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x45, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0xb0, 0x3b, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x45, 0x47, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x45, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xb1, 0x3b, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x45, 0x47, 0x50, 0x72, 0x6f, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x44, 0x52, 0x4d, 0x53, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb2, 0x3b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x45, 0x47, 0x50, 0x72, 0x6f, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x44, 0x52, 0x4d, 0x53, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb3, 0x3b, + 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x45, 0x47, 0x57, 0x68, 0x61, + 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xb4, 0x3b, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x45, 0x47, 0x57, 0x68, 0x61, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, + 0x72, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xb5, 0x3b, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, + 0x53, 0x46, 0x65, 0x74, 0x63, 0x68, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, + 0x10, 0xb6, 0x3b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, + 0x53, 0x46, 0x65, 0x74, 0x63, 0x68, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb7, 0x3b, 0x12, 0x13, 0x0a, 0x0e, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x10, 0x94, 0x3c, + 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x54, 0x72, + 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, + 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x95, 0x3c, 0x12, 0x2c, 0x0a, + 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, + 0x6e, 0x67, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, + 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x10, 0x96, 0x3c, 0x12, 0x2c, 0x0a, 0x27, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x97, 0x3c, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x49, + 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x10, 0x98, 0x3c, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, + 0x63, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x99, 0x3c, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, + 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x54, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0x9a, 0x3c, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, + 0x63, 0x6f, 0x6e, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0x9b, 0x3c, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x9c, 0x3c, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x43, 0x44, 0x4b, 0x65, 0x79, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xa0, 0x3c, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, - 0x63, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x10, - 0xa1, 0x3c, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, - 0x47, 0x65, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x3c, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x52, 0x4d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x10, 0xf8, 0x3c, 0x12, 0x1c, 0x0a, 0x17, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x69, 0x73, - 0x69, 0x67, 0x6e, 0x4f, 0x54, 0x50, 0x10, 0xf8, 0x3c, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x54, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x69, 0x73, 0x69, 0x67, - 0x6e, 0x4f, 0x54, 0x50, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf9, 0x3c, 0x12, - 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x4d, 0x65, 0x6d, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x10, 0xfb, - 0x3c, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x10, 0xfc, 0x3c, 0x12, 0x19, 0x0a, 0x14, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x64, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x49, 0x50, - 0x4c, 0x69, 0x73, 0x74, 0x10, 0xfd, 0x3c, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x52, 0x4d, 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x65, 0x41, 0x64, 0x64, 0x54, 0x72, - 0x69, 0x67, 0x67, 0x65, 0x72, 0x10, 0xfe, 0x3c, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x52, 0x4d, 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x65, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x10, 0xff, 0x3c, 0x12, 0x1a, 0x0a, 0x15, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x65, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x80, 0x3d, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x55, 0x47, 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0xdc, 0x3d, 0x12, 0x1f, 0x0a, 0x1a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, - 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xdc, 0x3d, 0x12, 0x22, 0x0a, - 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x47, 0x53, - 0x47, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xdd, - 0x3d, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xde, 0x3d, 0x12, 0x14, 0x0a, - 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x73, 0x65, - 0x10, 0xc0, 0x3e, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, - 0x42, 0x61, 0x73, 0x65, 0x10, 0xa4, 0x3f, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x55, 0x4d, 0x51, 0x4c, 0x6f, 0x67, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x10, 0xa4, 0x3f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, - 0x4c, 0x6f, 0x67, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x3f, - 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x4c, 0x6f, 0x67, - 0x6f, 0x66, 0x66, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa6, 0x3f, 0x12, 0x1c, 0x0a, - 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x4c, 0x6f, 0x67, 0x6f, 0x66, 0x66, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x3f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x74, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xa8, 0x3f, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x43, - 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, 0xa9, 0x3f, 0x12, 0x12, 0x0a, - 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x50, 0x6f, 0x6c, 0x6c, 0x10, 0xaa, - 0x3f, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x50, 0x6f, - 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x10, 0xab, 0x3f, 0x12, 0x20, 0x0a, 0x1b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x32, 0x41, 0x4d, 0x5f, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x74, 0x63, 0x68, 0x10, 0xac, 0x3f, 0x12, 0x17, - 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, - 0x42, 0x61, 0x73, 0x65, 0x10, 0x88, 0x40, 0x12, 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x42, 0x61, 0x73, 0x65, 0x10, 0xec, 0x40, 0x12, 0x24, - 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x56, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x10, 0xec, 0x40, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, - 0x62, 0x41, 0x50, 0x49, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, - 0x68, 0x32, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xed, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, - 0x50, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x10, 0xef, 0x40, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x10, 0xf0, 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x4f, 0x41, 0x75, 0x74, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, - 0xf1, 0x40, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, - 0x50, 0x49, 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x10, 0xf2, 0x40, 0x12, - 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, - 0x6b, 0x42, 0x61, 0x73, 0x65, 0x10, 0xd0, 0x41, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x54, 0x6f, 0x43, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x10, 0xd1, 0x41, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x54, - 0x6f, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xd2, 0x41, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, - 0x45, 0x42, 0x61, 0x73, 0x65, 0x10, 0xb4, 0x42, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x52, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, 0x65, 0x53, 0x75, 0x6d, - 0x6d, 0x61, 0x72, 0x79, 0x10, 0xb7, 0x42, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x52, 0x45, 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, 0x65, 0x53, 0x75, 0x6d, 0x6d, - 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xb8, 0x42, 0x12, 0x29, - 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x49, 0x74, - 0x65, 0x6d, 0x56, 0x6f, 0x74, 0x65, 0x10, 0xbb, 0x42, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbc, 0x42, 0x12, 0x2d, 0x0a, 0x28, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, - 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0xbd, 0x42, 0x12, 0x35, 0x0a, 0x30, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, 0x65, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xbe, 0x42, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x73, 0x42, 0x61, 0x73, 0x65, 0x10, 0x98, 0x43, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x61, 0x69, 0x72, - 0x10, 0x98, 0x43, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x73, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x61, - 0x69, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x43, 0x12, 0x19, 0x0a, - 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x78, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, - 0x72, 0x42, 0x61, 0x73, 0x65, 0x10, 0xfc, 0x43, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x42, 0x6f, 0x78, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xfc, 0x43, 0x12, 0x23, 0x0a, 0x1e, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x78, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfd, - 0x43, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x67, 0x73, 0x69, - 0x6e, 0x6b, 0x42, 0x61, 0x73, 0x65, 0x10, 0xe0, 0x44, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x67, 0x73, 0x69, 0x6e, 0x6b, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xe0, 0x44, 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x50, 0x49, 0x43, 0x53, 0x42, 0x61, 0x73, 0x65, 0x10, 0xc4, 0x45, 0x12, 0x28, 0x0a, - 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, - 0x53, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xc5, 0x45, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, 0x53, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xc6, 0x45, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x50, 0x49, 0x43, 0x53, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc7, 0x45, 0x12, 0x28, 0x0a, 0x23, 0x6b, - 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, 0x53, 0x50, - 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xc8, 0x45, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, 0x53, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc9, 0x45, 0x12, 0x28, - 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, - 0x43, 0x53, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x45, 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, - 0xa8, 0x46, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x6f, 0x72, 0x6b, - 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xa8, 0x46, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x50, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa9, 0x46, 0x12, 0x20, 0x0a, - 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, - 0x63, 0x65, 0x73, 0x73, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x10, 0xaa, 0x46, 0x12, - 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, - 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, 0x8c, 0x47, 0x12, 0x25, 0x0a, 0x20, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, - 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x44, 0x52, 0x4d, 0x41, 0x6e, 0x64, 0x53, 0x69, 0x67, 0x6e, - 0x10, 0x8c, 0x47, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, - 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x44, 0x52, 0x4d, - 0x41, 0x6e, 0x64, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x8d, 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, - 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0x8e, 0x47, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, - 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x47, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x9f, 0x3c, 0x12, 0x2e, 0x0a, + 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x43, 0x44, 0x4b, 0x65, 0x79, + 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x3c, 0x12, 0x1b, 0x0a, + 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x45, 0x72, + 0x72, 0x6f, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x10, 0xa1, 0x3c, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x45, 0x63, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x3c, 0x12, + 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x10, 0xf8, 0x3c, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x54, + 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x69, 0x73, 0x69, 0x67, 0x6e, 0x4f, 0x54, 0x50, 0x10, 0xf8, + 0x3c, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x54, 0x65, 0x73, + 0x74, 0x56, 0x65, 0x72, 0x69, 0x73, 0x69, 0x67, 0x6e, 0x4f, 0x54, 0x50, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf9, 0x3c, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x52, 0x4d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x6d, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x10, 0xfb, 0x3c, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x6b, + 0x65, 0x10, 0xfc, 0x3c, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, + 0x64, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x49, 0x50, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xfd, 0x3c, 0x12, + 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x4d, 0x73, 0x67, 0x54, 0x72, + 0x61, 0x63, 0x65, 0x41, 0x64, 0x64, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x10, 0xfe, 0x3c, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, 0x4d, 0x73, 0x67, 0x54, + 0x72, 0x61, 0x63, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, + 0x72, 0x10, 0xff, 0x3c, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x4d, + 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x80, 0x3d, + 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, 0x53, 0x42, 0x61, 0x73, + 0x65, 0x10, 0xdc, 0x3d, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x47, + 0x53, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x10, 0xdc, 0x3d, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, + 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0xdd, 0x3d, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x47, 0x53, 0x47, 0x65, 0x74, 0x47, + 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xde, 0x3d, 0x12, 0x14, 0x0a, 0x0f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x73, 0x65, 0x10, 0xc0, 0x3e, 0x12, 0x12, 0x0a, 0x0d, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x42, 0x61, 0x73, 0x65, 0x10, 0xa4, 0x3f, 0x12, + 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x4c, 0x6f, 0x67, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa4, 0x3f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x4c, 0x6f, 0x67, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x3f, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x55, 0x4d, 0x51, 0x4c, 0x6f, 0x67, 0x6f, 0x66, 0x66, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x10, 0xa6, 0x3f, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, + 0x4d, 0x51, 0x4c, 0x6f, 0x67, 0x6f, 0x66, 0x66, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xa7, 0x3f, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, + 0x53, 0x65, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x10, + 0xa8, 0x3f, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x49, + 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x10, 0xa9, 0x3f, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, + 0x4d, 0x51, 0x50, 0x6f, 0x6c, 0x6c, 0x10, 0xaa, 0x3f, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x55, 0x4d, 0x51, 0x50, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x73, 0x10, 0xab, 0x3f, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x55, 0x4d, + 0x51, 0x32, 0x41, 0x4d, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x10, 0xac, 0x3f, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x42, 0x61, 0x73, 0x65, 0x10, 0x88, 0x40, 0x12, + 0x15, 0x0a, 0x10, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x42, + 0x61, 0x73, 0x65, 0x10, 0xec, 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, + 0x75, 0x74, 0x68, 0x32, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x10, 0xec, 0x40, 0x12, 0x2c, 0x0a, 0x27, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x56, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xed, 0x40, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, + 0x65, 0x72, 0x47, 0x43, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x10, 0xef, + 0x40, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, + 0x49, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0xf0, 0x40, 0x12, 0x2a, + 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x49, 0x6e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x10, 0xf1, 0x40, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x57, 0x65, 0x62, 0x41, 0x50, 0x49, 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x73, 0x10, 0xf2, 0x40, 0x12, 0x17, 0x0a, 0x12, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x42, 0x61, 0x63, 0x6b, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x61, 0x73, 0x65, 0x10, 0xd0, 0x41, + 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x63, 0x6b, 0x70, 0x61, + 0x63, 0x6b, 0x41, 0x64, 0x64, 0x54, 0x6f, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x10, + 0xd1, 0x41, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x63, 0x6b, + 0x70, 0x61, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x54, 0x6f, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xd2, 0x41, 0x12, 0x12, 0x0a, 0x0d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, 0x42, 0x61, 0x73, 0x65, 0x10, 0xb4, 0x42, + 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, 0x49, 0x74, 0x65, + 0x6d, 0x56, 0x6f, 0x74, 0x65, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x10, 0xb7, 0x42, 0x12, + 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, 0x49, 0x74, 0x65, 0x6d, + 0x56, 0x6f, 0x74, 0x65, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xb8, 0x42, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x52, 0x45, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, 0x65, 0x10, 0xbb, + 0x42, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, + 0x64, 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xbc, 0x42, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, + 0x45, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, + 0x64, 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x10, 0xbd, 0x42, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x52, 0x45, + 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, + 0x49, 0x74, 0x65, 0x6d, 0x56, 0x6f, 0x74, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xbe, 0x42, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x42, 0x61, 0x73, 0x65, 0x10, + 0x98, 0x43, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x63, 0x72, + 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x61, 0x6c, 0x50, 0x61, 0x69, 0x72, 0x10, 0x98, 0x43, 0x12, 0x28, 0x0a, 0x23, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x43, 0x72, 0x65, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x61, 0x69, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0x99, 0x43, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x6f, 0x78, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x73, 0x65, 0x10, 0xfc, 0x43, + 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x78, 0x4d, 0x6f, 0x6e, + 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0xfc, 0x43, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x6f, + 0x78, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfd, 0x43, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x67, 0x73, 0x69, 0x6e, 0x6b, 0x42, 0x61, 0x73, 0x65, 0x10, 0xe0, + 0x44, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4c, 0x6f, 0x67, 0x73, 0x69, + 0x6e, 0x6b, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x10, 0xe0, 0x44, + 0x12, 0x13, 0x0a, 0x0e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x50, 0x49, 0x43, 0x53, 0x42, 0x61, + 0x73, 0x65, 0x10, 0xc4, 0x45, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, 0x53, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, + 0x53, 0x69, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xc5, 0x45, 0x12, + 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, + 0x49, 0x43, 0x53, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc6, 0x45, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, 0x53, 0x50, 0x72, + 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x10, 0xc7, 0x45, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, 0x53, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc8, 0x45, 0x12, 0x27, 0x0a, + 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, + 0x53, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0xc9, 0x45, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x49, 0x43, 0x53, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xca, 0x45, + 0x12, 0x18, 0x0a, 0x13, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, + 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, 0xa8, 0x46, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa8, 0x46, 0x12, + 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xa9, 0x46, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, + 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x68, 0x75, 0x74, + 0x64, 0x6f, 0x77, 0x6e, 0x10, 0xaa, 0x46, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, - 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x52, 0x4d, 0x44, 0x4c, 0x4c, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x90, 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x52, 0x4d, 0x44, 0x4c, 0x4c, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x91, 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, + 0x73, 0x10, 0x8c, 0x47, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, + 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x44, 0x52, + 0x4d, 0x41, 0x6e, 0x64, 0x53, 0x69, 0x67, 0x6e, 0x10, 0x8c, 0x47, 0x12, 0x2d, 0x0a, 0x28, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x44, 0x52, 0x4d, 0x41, 0x6e, 0x64, 0x53, 0x69, 0x67, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8d, 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, - 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x92, 0x47, 0x12, 0x31, 0x0a, 0x2c, + 0x63, 0x65, 0x73, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x8e, 0x47, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, - 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x93, 0x47, 0x12, - 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x77, 0x6f, 0x72, 0x6b, 0x73, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x8f, 0x47, 0x12, + 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, - 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x96, 0x47, 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0x97, 0x47, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, - 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x61, 0x6d, - 0x69, 0x6e, 0x65, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x98, - 0x47, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, - 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x61, 0x6d, 0x69, - 0x6e, 0x65, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, - 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, - 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x44, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x10, 0x9a, 0x47, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, - 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x44, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x47, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x42, 0x61, 0x63, 0x6b, 0x66, 0x69, 0x6c, 0x6c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9c, 0x47, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, - 0x63, 0x65, 0x73, 0x73, 0x42, 0x61, 0x63, 0x6b, 0x66, 0x69, 0x6c, 0x6c, 0x4f, 0x72, 0x69, 0x67, - 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x47, 0x12, - 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, - 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x44, 0x52, 0x4d, 0x44, 0x4c, 0x4c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9e, - 0x47, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, - 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x44, 0x52, 0x4d, 0x44, 0x4c, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0x9f, 0x47, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, - 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x56, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xa0, 0x47, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, - 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x56, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xa1, 0x47, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, - 0x70, 0x6c, 0x69, 0x74, 0x41, 0x6e, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa2, 0x47, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x41, 0x6e, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, - 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa3, 0x47, 0x12, 0x29, 0x0a, 0x24, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, - 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0xa4, 0x47, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x44, 0x52, 0x4d, 0x44, 0x4c, 0x4c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x90, 0x47, + 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, + 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, + 0x6c, 0x44, 0x52, 0x4d, 0x44, 0x4c, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x91, 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, + 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x63, 0x72, + 0x65, 0x74, 0x49, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x10, 0x92, 0x47, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, + 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x49, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x93, 0x47, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, - 0x73, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x10, 0xa5, 0x47, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, - 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x76, 0x61, - 0x6c, 0x75, 0x61, 0x74, 0x65, 0x43, 0x72, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x10, 0xa6, 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, - 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x76, - 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x43, 0x72, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x47, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0xa8, 0x47, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xa9, 0x47, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, - 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x55, - 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x10, 0xaa, 0x47, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, - 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x55, 0x6e, 0x70, - 0x61, 0x63, 0x6b, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xab, 0x47, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, - 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xac, 0x47, - 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, + 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, + 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x96, 0x47, + 0x12, 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, - 0x6c, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x47, 0x12, - 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, - 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, 0xf0, 0x47, 0x12, 0x33, 0x0a, - 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, - 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x55, 0x6e, 0x6c, 0x6f, - 0x61, 0x64, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xf0, 0x47, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, - 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4c, 0x6f, 0x61, - 0x64, 0x55, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x47, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, - 0x65, 0x73, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, - 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf2, 0x47, 0x12, 0x35, - 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, - 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x10, 0xf3, 0x47, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x51, - 0x75, 0x65, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x10, 0xd4, - 0x48, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, - 0x10, 0xf2, 0x48, 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, - 0xf3, 0x48, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4c, 0x43, 0x42, - 0x61, 0x73, 0x65, 0x10, 0xb8, 0x49, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x53, 0x4c, 0x43, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x10, 0xb8, 0x49, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x53, 0x4c, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xb9, 0x49, 0x12, - 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4c, 0x43, 0x53, 0x68, 0x61, 0x72, - 0x65, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x10, 0xba, 0x49, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4c, 0x69, 0x62, - 0x72, 0x61, 0x72, 0x79, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xbd, - 0x49, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x53, 0x74, - 0x6f, 0x70, 0x50, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x10, 0xbe, 0x49, 0x12, 0x21, 0x0a, 0x1c, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4c, 0x43, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x4c, 0x69, - 0x62, 0x72, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0xbf, 0x49, 0x12, - 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4c, 0x43, 0x53, 0x68, 0x61, 0x72, - 0x65, 0x64, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, - 0x10, 0xc0, 0x49, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x73, 0x65, 0x10, 0x9c, 0x4a, - 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, - 0x45, 0x54, 0x45, 0x10, 0x9c, 0x4a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, - 0x45, 0x10, 0x9d, 0x4a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x70, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x10, 0x9e, 0x4a, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x10, 0x9f, 0x4a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x4a, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, - 0x10, 0xa1, 0x4a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x4a, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, - 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x10, 0xa3, 0x4a, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xa4, 0x4a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, - 0x45, 0x55, 0x4c, 0x41, 0x10, 0xa5, 0x4a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x10, 0xa6, 0x4a, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x4a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, - 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0xa8, 0x4a, + 0x6c, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x97, 0x47, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x42, 0x6c, 0x6f, 0x62, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x98, 0x47, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x45, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x99, 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9a, 0x47, 0x12, 0x31, 0x0a, 0x2c, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x53, 0x65, 0x63, + 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9b, 0x47, 0x12, 0x32, + 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, + 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x42, 0x61, 0x63, 0x6b, 0x66, 0x69, 0x6c, 0x6c, + 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, + 0x9c, 0x47, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, + 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x42, 0x61, 0x63, 0x6b, + 0x66, 0x69, 0x6c, 0x6c, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9d, 0x47, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x44, 0x52, 0x4d, 0x44, 0x4c, 0x4c, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x9e, 0x47, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x44, 0x52, 0x4d, 0x44, 0x4c, + 0x4c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9f, 0x47, 0x12, 0x2e, 0x0a, 0x29, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa0, 0x47, 0x12, 0x2f, 0x0a, 0x2a, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x47, 0x12, 0x31, 0x0a, + 0x2c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, + 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x41, 0x6e, 0x64, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa2, 0x47, + 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, + 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x41, + 0x6e, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x10, 0xa3, 0x47, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, + 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x47, 0x65, + 0x74, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa4, 0x47, 0x12, + 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, + 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x62, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa5, 0x47, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x43, 0x72, 0x61, + 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa6, 0x47, 0x12, 0x30, 0x0a, 0x2b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x43, 0x72, + 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa7, 0x47, 0x12, 0x2d, + 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, + 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x46, + 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xa8, 0x47, 0x12, 0x2e, 0x0a, + 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, + 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x46, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa9, 0x47, 0x12, 0x2c, 0x0a, + 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, + 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x6c, 0x6f, + 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xaa, 0x47, 0x12, 0x2d, 0x0a, 0x28, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x55, 0x6e, 0x70, 0x61, 0x63, 0x6b, 0x42, 0x6c, 0x6f, 0x62, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xab, 0x47, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x6c, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xac, 0x47, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x44, 0x52, 0x4d, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, + 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x47, 0x12, 0x1c, 0x0a, 0x17, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x54, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, + 0x73, 0x73, 0x10, 0xf0, 0x47, 0x12, 0x33, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x54, + 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x4c, 0x6f, 0x61, 0x64, 0x55, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xf0, 0x47, 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x55, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf1, 0x47, + 0x12, 0x34, 0x0a, 0x2f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x54, 0x65, 0x73, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0xf2, 0x47, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x54, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x61, + 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf3, 0x47, 0x12, 0x1a, 0x0a, + 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x51, 0x75, 0x65, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x42, 0x61, 0x73, 0x65, 0x10, 0xd4, 0x48, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f, 0x74, + 0x69, 0x63, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xf2, 0x48, 0x12, 0x1d, 0x0a, 0x18, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x69, + 0x63, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x10, 0xf3, 0x48, 0x12, 0x12, 0x0a, 0x0d, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4c, 0x43, 0x42, 0x61, 0x73, 0x65, 0x10, 0xb8, 0x49, 0x12, 0x1f, + 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4c, 0x43, 0x55, 0x73, 0x65, 0x72, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xb8, 0x49, 0x12, + 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4c, 0x43, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x10, 0xb9, 0x49, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x53, 0x4c, 0x43, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, + 0x65, 0x73, 0x4c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xba, 0x49, 0x12, + 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, + 0x68, 0x61, 0x72, 0x65, 0x64, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4c, 0x6f, 0x63, 0x6b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0xbd, 0x49, 0x12, 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4c, + 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x53, 0x74, 0x6f, 0x70, 0x50, 0x6c, 0x61, 0x79, 0x69, 0x6e, + 0x67, 0x10, 0xbe, 0x49, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x4c, + 0x43, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x64, 0x10, 0xbf, 0x49, 0x12, 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x53, 0x4c, 0x43, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, + 0x79, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x10, 0xc0, 0x49, 0x12, 0x1b, 0x0a, 0x16, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x42, 0x61, 0x73, 0x65, 0x10, 0x9c, 0x4a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, + 0x74, 0x68, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x9c, 0x4a, 0x12, 0x2c, + 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x9d, 0x4a, 0x12, 0x20, 0x0a, 0x1b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x41, 0x70, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x9e, 0x4a, 0x12, 0x22, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x10, + 0x9f, 0x4a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x74, 0x72, + 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa0, 0x4a, 0x12, 0x1b, + 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x10, 0xa1, 0x4a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa2, 0x4a, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x45, 0x56, 0x43, 0x10, 0xa9, 0x4a, 0x12, 0x23, 0x0a, + 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x32, 0x36, 0x34, 0x10, 0xa3, 0x4a, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x6c, - 0x6f, 0x63, 0x6b, 0x48, 0x45, 0x56, 0x43, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0x6f, 0x63, 0x6b, 0x48, 0x32, 0x36, 0x34, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xa4, 0x4a, 0x12, 0x21, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x45, 0x55, + 0x4c, 0x41, 0x10, 0xa5, 0x4a, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, + 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xa6, + 0x4a, 0x12, 0x32, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, + 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x6c, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x10, 0xa7, 0x4a, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, + 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, + 0x6d, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0xa8, 0x4a, 0x12, 0x24, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, + 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x45, 0x56, 0x43, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, + 0x45, 0x10, 0xa9, 0x4a, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x45, 0x56, 0x43, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x10, 0xaa, 0x4a, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xab, 0x4a, 0x12, 0x25, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x4d, @@ -8008,154 +8132,198 @@ var file_enums_clientserver_proto_rawDesc = []byte{ 0x65, 0x6e, 0x74, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x10, 0xe5, 0x4b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x44, 0x69, - 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0xe6, 0x4b, 0x12, 0x24, 0x0a, 0x1f, 0x6b, + 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0xe6, 0x4b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x72, 0x6f, 0x61, 0x64, - 0x63, 0x61, 0x73, 0x74, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x73, 0x68, 0x6f, 0x74, 0x10, 0xe7, - 0x4b, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x10, 0xe8, 0x4b, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x33, 0x10, 0xc8, - 0x4c, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x50, 0x72, 0x65, 0x41, 0x75, 0x74, - 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x10, 0xc8, 0x4c, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x61, - 0x6c, 0x6c, 0x50, 0x72, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xc9, 0x4c, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, - 0xca, 0x4c, 0x12, 0x28, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcb, 0x4c, 0x12, 0x2f, 0x0a, 0x2a, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, - 0x68, 0x6f, 0x64, 0x43, 0x61, 0x6c, 0x6c, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4e, 0x6f, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x64, 0x10, 0xcc, 0x4c, 0x12, 0x16, 0x0a, - 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x6c, - 0x6c, 0x6f, 0x10, 0xcd, 0x4c, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x41, 0x4e, 0x50, 0x32, 0x50, 0x42, 0x61, 0x73, 0x65, 0x10, - 0xac, 0x4d, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4c, 0x41, 0x4e, 0x50, 0x32, 0x50, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, - 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xac, 0x4d, 0x12, 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x41, 0x4e, 0x50, 0x32, 0x50, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x10, 0xad, 0x4d, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x41, 0x4e, 0x50, 0x32, 0x50, 0x4d, 0x61, 0x78, 0x10, 0x8f, 0x4e, - 0x12, 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x57, 0x61, - 0x74, 0x63, 0x68, 0x64, 0x6f, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x90, 0x4e, 0x12, - 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x57, - 0x61, 0x74, 0x63, 0x68, 0x64, 0x6f, 0x67, 0x10, 0x90, 0x4e, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, - 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, - 0x63, 0x65, 0x6e, 0x73, 0x65, 0x42, 0x61, 0x73, 0x65, 0x10, 0xf4, 0x4e, 0x12, 0x30, 0x0a, 0x2b, - 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, - 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x53, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x4e, - 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf4, 0x4e, 0x12, 0x24, - 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, - 0x74, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, - 0x74, 0x10, 0xf5, 0x4e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xf6, 0x4e, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x47, 0x65, 0x74, - 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x61, 0x74, 0x73, 0x10, 0xf7, - 0x4e, 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x63, 0x61, 0x73, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x10, 0xe8, 0x4b, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, + 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x33, 0x10, 0xc8, 0x4c, 0x12, 0x26, 0x0a, 0x21, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x56, 0x6f, 0x69, 0x63, 0x65, + 0x43, 0x61, 0x6c, 0x6c, 0x50, 0x72, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, + 0x10, 0xc8, 0x4c, 0x12, 0x2e, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x50, 0x72, 0x65, 0x41, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xc9, 0x4c, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xca, 0x4c, 0x12, 0x28, 0x0a, 0x23, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0xcb, 0x4c, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x43, 0x61, 0x6c, + 0x6c, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x41, 0x75, + 0x74, 0x68, 0x65, 0x64, 0x10, 0xcc, 0x4c, 0x12, 0x16, 0x0a, 0x11, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x10, 0xcd, 0x4c, 0x12, + 0x29, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x72, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x6f, + 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x10, 0xce, 0x4c, 0x12, 0x31, 0x0a, 0x2c, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x4f, 0x72, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, + 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xcf, 0x4c, 0x12, 0x1b, 0x0a, + 0x16, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x41, 0x4e, + 0x50, 0x32, 0x50, 0x42, 0x61, 0x73, 0x65, 0x10, 0xac, 0x4d, 0x12, 0x23, 0x0a, 0x1e, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x41, 0x4e, 0x50, 0x32, 0x50, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x10, 0xac, 0x4d, 0x12, + 0x2b, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, + 0x41, 0x4e, 0x50, 0x32, 0x50, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x75, 0x6e, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xad, 0x4d, 0x12, 0x21, 0x0a, 0x1c, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x65, 0x72, + 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0xae, 0x4d, 0x12, + 0x22, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, + 0x65, 0x65, 0x72, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x10, 0xaf, 0x4d, 0x12, 0x1a, 0x0a, 0x15, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4c, 0x41, 0x4e, 0x50, 0x32, 0x50, 0x4d, 0x61, 0x78, 0x10, 0x8f, 0x4e, 0x12, + 0x1d, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x57, 0x61, 0x74, + 0x63, 0x68, 0x64, 0x6f, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x90, 0x4e, 0x12, 0x19, + 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x57, 0x61, + 0x74, 0x63, 0x68, 0x64, 0x6f, 0x67, 0x10, 0x90, 0x4e, 0x12, 0x20, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, + 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, + 0x65, 0x6e, 0x73, 0x65, 0x42, 0x61, 0x73, 0x65, 0x10, 0xf4, 0x4e, 0x12, 0x30, 0x0a, 0x2b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, + 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x53, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x4e, 0x6f, + 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf4, 0x4e, 0x12, 0x24, 0x0a, + 0x1f, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, + 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, 0x74, + 0x10, 0xf5, 0x4e, 0x12, 0x2c, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf6, + 0x4e, 0x12, 0x2d, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x47, 0x65, 0x74, 0x41, - 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf8, 0x4e, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, + 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x61, 0x74, 0x73, 0x10, 0xf7, 0x4e, + 0x12, 0x35, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x47, 0x65, 0x74, 0x41, 0x76, + 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x61, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xf8, 0x4e, 0x12, 0x2f, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, + 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, + 0x73, 0x65, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xf9, 0x4e, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0xf9, 0x4e, 0x12, 0x37, 0x0a, 0x32, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x63, - 0x65, 0x6e, 0x73, 0x65, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, - 0xfa, 0x4e, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, - 0x43, 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xe0, 0x5d, 0x12, 0x30, 0x0a, - 0x2b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe0, 0x5d, 0x12, - 0x38, 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe1, 0x5d, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, - 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x10, 0xc4, 0x5e, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x64, 0x10, 0xc4, 0x5e, 0x1a, 0x02, 0x10, 0x01, 0x2a, 0xcf, 0x04, 0x0a, 0x17, 0x45, + 0x68, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xfa, + 0x4e, 0x12, 0x19, 0x0a, 0x14, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x43, + 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0xe0, 0x5d, 0x12, 0x30, 0x0a, 0x2b, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe0, 0x5d, 0x12, 0x38, + 0x0a, 0x33, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, + 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xe1, 0x5d, 0x12, 0x1b, 0x0a, 0x16, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x42, 0x61, 0x73, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x10, 0xc4, 0x5e, 0x12, 0x1e, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x64, 0x10, 0xc4, 0x5e, 0x12, 0x11, 0x0a, 0x0c, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x42, + 0x61, 0x73, 0x65, 0x57, 0x47, 0x10, 0xa8, 0x5f, 0x12, 0x24, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x57, 0x47, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xa8, 0x5f, 0x12, 0x28, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x47, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x10, 0xa9, 0x5f, 0x12, 0x30, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x4d, + 0x73, 0x67, 0x57, 0x47, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xaa, 0x5f, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, + 0x45, 0x4d, 0x73, 0x67, 0x57, 0x47, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x57, 0x47, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, + 0xab, 0x5f, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x57, 0x47, 0x43, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x57, 0x47, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xac, 0x5f, 0x1a, 0x02, 0x10, 0x01, 0x2a, + 0xcf, 0x04, 0x0a, 0x17, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, + 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x23, 0x0a, 0x1f, 0x6b, + 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x01, + 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, + 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, + 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x6f, 0x72, 0x74, 0x10, + 0x04, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, + 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x53, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x49, 0x44, 0x10, 0x08, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x46, 0x6c, 0x61, 0x67, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x10, 0x10, 0x12, + 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, + 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x4c, 0x61, 0x73, 0x74, + 0x53, 0x65, 0x65, 0x6e, 0x10, 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, - 0x6c, 0x61, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x01, 0x12, 0x27, 0x0a, 0x23, 0x6b, + 0x6c, 0x61, 0x67, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x10, + 0x80, 0x01, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, + 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x45, + 0x78, 0x74, 0x72, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x80, 0x02, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x61, - 0x6d, 0x65, 0x10, 0x02, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, - 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x6f, 0x72, 0x74, 0x10, 0x04, 0x12, 0x25, 0x0a, 0x21, - 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, - 0x44, 0x10, 0x08, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x74, 0x61, 0x74, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x42, 0x6c, 0x6f, 0x62, + 0x10, 0x80, 0x04, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, - 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x10, 0x10, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, - 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x4c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x10, - 0x40, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, - 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x55, 0x73, - 0x65, 0x72, 0x43, 0x6c, 0x61, 0x6e, 0x52, 0x61, 0x6e, 0x6b, 0x10, 0x80, 0x01, 0x12, 0x27, 0x0a, - 0x22, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, - 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x78, 0x74, 0x72, 0x61, 0x49, - 0x6e, 0x66, 0x6f, 0x10, 0x80, 0x02, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x47, - 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x42, 0x6c, 0x6f, 0x62, 0x10, 0x80, 0x04, 0x12, 0x26, - 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, - 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x44, - 0x61, 0x74, 0x61, 0x10, 0x80, 0x08, 0x12, 0x26, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, - 0x6c, 0x61, 0x67, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x10, 0x80, 0x10, 0x12, 0x2a, - 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, - 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x52, 0x69, 0x63, 0x68, 0x50, - 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x10, 0x80, 0x20, 0x12, 0x27, 0x0a, 0x22, 0x6b, 0x5f, - 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x10, 0x80, 0x40, 0x12, 0x27, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x43, 0x6c, 0x61, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x10, 0x80, 0x08, 0x12, 0x26, 0x0a, 0x21, 0x6b, + 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, + 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, + 0x10, 0x80, 0x10, 0x12, 0x2a, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, - 0x57, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x80, 0x80, 0x01, 0x2a, 0xb9, 0x01, 0x0a, - 0x14, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, - 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x63, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x4c, - 0x61, 0x72, 0x67, 0x65, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x4c, - 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x4d, 0x73, - 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, - 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, + 0x52, 0x69, 0x63, 0x68, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x10, 0x80, 0x20, 0x12, + 0x27, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, + 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x42, 0x72, 0x6f, 0x61, + 0x64, 0x63, 0x61, 0x73, 0x74, 0x10, 0x80, 0x40, 0x12, 0x27, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x46, 0x6c, 0x61, 0x67, 0x57, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x80, 0x80, + 0x01, 0x2a, 0xb9, 0x01, 0x0a, 0x14, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x46, - 0x6c, 0x61, 0x67, 0x4f, 0x47, 0x47, 0x10, 0x10, 0x2a, 0x90, 0x03, 0x0a, 0x11, 0x45, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2e, - 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x68, 0x65, 0x6c, 0x6d, 0x69, - 0x6e, 0x67, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x10, 0x09, 0x12, 0x24, - 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x56, 0x65, 0x72, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x76, 0x65, 0x10, 0x08, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x76, 0x65, 0x10, 0x07, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4d, 0x6f, - 0x73, 0x74, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x10, 0x06, 0x12, 0x1d, - 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x10, 0x05, 0x12, 0x26, 0x0a, - 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4d, 0x6f, 0x73, 0x74, 0x6c, 0x79, 0x4e, 0x65, 0x67, 0x61, 0x74, - 0x69, 0x76, 0x65, 0x10, 0x04, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4e, 0x65, 0x67, - 0x61, 0x74, 0x69, 0x76, 0x65, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x56, - 0x65, 0x72, 0x79, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x10, 0x02, 0x12, 0x2e, 0x0a, - 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x68, 0x65, 0x6c, 0x6d, 0x69, 0x6e, - 0x67, 0x6c, 0x79, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x10, 0x01, 0x12, 0x1c, 0x0a, - 0x18, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, - 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x42, 0x2a, 0x48, 0x01, 0x5a, - 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, - 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, - 0x64, 0x6f, 0x74, 0x61, 0x80, 0x01, 0x00, + 0x6c, 0x61, 0x67, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x46, 0x6c, 0x61, 0x67, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, + 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x46, 0x6c, 0x61, 0x67, 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, + 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x46, 0x6c, 0x61, 0x67, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x10, 0x08, 0x12, + 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x4f, 0x47, 0x47, 0x10, 0x10, 0x2a, 0x90, 0x03, + 0x0a, 0x11, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, + 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4f, 0x76, 0x65, 0x72, 0x77, + 0x68, 0x65, 0x6c, 0x6d, 0x69, 0x6e, 0x67, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, + 0x65, 0x10, 0x09, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, + 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x56, 0x65, 0x72, 0x79, 0x50, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x10, 0x08, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x5f, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x10, 0x07, 0x12, 0x26, 0x0a, 0x22, 0x6b, + 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x5f, 0x4d, 0x6f, 0x73, 0x74, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, + 0x65, 0x10, 0x06, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, + 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4d, 0x69, 0x78, 0x65, 0x64, + 0x10, 0x05, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, + 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4d, 0x6f, 0x73, 0x74, 0x6c, 0x79, + 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x10, 0x04, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x5f, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, + 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x5f, 0x56, 0x65, 0x72, 0x79, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x10, 0x02, 0x12, 0x2e, 0x0a, 0x2a, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, + 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4f, 0x76, 0x65, 0x72, 0x77, 0x68, + 0x65, 0x6c, 0x6d, 0x69, 0x6e, 0x67, 0x6c, 0x79, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, + 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, + 0x76, 0x69, 0x65, 0x77, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, + 0x2a, 0xbd, 0x01, 0x0a, 0x13, 0x45, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x43, + 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x6b, 0x5f, + 0x45, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x61, 0x63, 0x4f, 0x53, 0x10, 0x02, 0x12, 0x1e, 0x0a, 0x1a, + 0x6b, 0x5f, 0x45, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4c, 0x69, 0x6e, 0x75, 0x78, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, + 0x6b, 0x5f, 0x45, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x63, 0x6b, 0x10, 0x04, + 0x2a, 0x9d, 0x01, 0x0a, 0x11, 0x45, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x5f, 0x45, 0x43, 0x6f, 0x64, + 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x55, 0x6e, 0x6b, + 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x43, 0x6f, 0x64, + 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, + 0x43, 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, + 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x20, + 0x0a, 0x1c, 0x6b, 0x5f, 0x45, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x10, 0x03, + 0x42, 0x2a, 0x48, 0x01, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, + 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, 0x80, 0x01, 0x00, } var ( @@ -8170,12 +8338,14 @@ func file_enums_clientserver_proto_rawDescGZIP() []byte { return file_enums_clientserver_proto_rawDescData } -var file_enums_clientserver_proto_enumTypes = make([]protoimpl.EnumInfo, 4) +var file_enums_clientserver_proto_enumTypes = make([]protoimpl.EnumInfo, 6) var file_enums_clientserver_proto_goTypes = []interface{}{ (EMsg)(0), // 0: dota.EMsg (EClientPersonaStateFlag)(0), // 1: dota.EClientPersonaStateFlag (EMsgClanAccountFlags)(0), // 2: dota.EMsgClanAccountFlags (ESteamReviewScore)(0), // 3: dota.ESteamReviewScore + (ECodecUsagePlatform)(0), // 4: dota.ECodecUsagePlatform + (ECodecUsageReason)(0), // 5: dota.ECodecUsageReason } var file_enums_clientserver_proto_depIdxs = []int32{ 0, // [0:0] is the sub-list for method output_type @@ -8195,7 +8365,7 @@ func file_enums_clientserver_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_enums_clientserver_proto_rawDesc, - NumEnums: 4, + NumEnums: 6, NumMessages: 0, NumExtensions: 0, NumServices: 0, diff --git a/dota/enums_clientserver.proto b/dota/enums_clientserver.proto index 6c1ff6f3..6556d14c 100644 --- a/dota/enums_clientserver.proto +++ b/dota/enums_clientserver.proto @@ -82,7 +82,6 @@ enum EMsg { k_EMsgLicenseProcessingComplete = 316; k_EMsgSetTestFlag = 317; k_EMsgQueuedEmailsComplete = 318; - k_EMsgGMReportPHPError = 319; k_EMsgGMDRMSync = 320; k_EMsgPhysicalBoxInventory = 321; k_EMsgUpdateConfigFile = 322; @@ -100,6 +99,8 @@ enum EMsg { k_EMsgExpectShellRestart = 336; k_EMsgHotFixProgress = 337; k_EMsgGMStatsForwardToAdminConnections = 338; + k_EMsgGMGetModifiedConVars = 339; + k_EMsgGMGetModifiedConVarsResponse = 340; k_EMsgBaseAIS = 400; k_EMsgAISRequestContentDescription = 402; k_EMsgAISUpdateAppInfo = 403; @@ -508,11 +509,8 @@ enum EMsg { k_EMsgClientDPSendSpecialSurveyResponse = 1622; k_EMsgClientDPSendSpecialSurveyResponseReply = 1623; k_EMsgDPStoreSaleStatistics = 1624; - k_EMsgClientDPUpdateAppJobReport = 1625; - k_EMsgClientDPUnsignedInstallScript = 1627; k_EMsgDPPartnerMicroTxns = 1628; k_EMsgDPPartnerMicroTxnsResponse = 1629; - k_EMsgClientDPContentStatsReport = 1630; k_EMsgDPVRUniquePlayersStat = 1631; k_EMsgBaseCM = 1700; k_EMsgCMSetAllowState = 1701; @@ -558,6 +556,9 @@ enum EMsg { k_EMsgGCHAppCheersReceived = 2242; k_EMsgGCHAppCheersGetAllowedTypes = 2243; k_EMsgGCHAppCheersGetAllowedTypesResponse = 2244; + k_EMsgGCHRoutingRulesFromGCHtoGM = 2245; + k_EMsgGCHRoutingRulesToGCHfromGM = 2246; + k_EMsgUpdateCMMessageRateRules = 2247; k_EMsgBaseP2P = 2500; k_EMsgP2PIntroducerMessage = 2502; k_EMsgBaseSM = 2900; @@ -704,8 +705,6 @@ enum EMsg { k_EMsgAMSendQueuedEmails = 4152; k_EMsgAMSetLicenseFlags = 4153; k_EMsgCommunityDeleteUserNews = 4155; - k_EMsgAMAllowUserFilesRequest = 4156; - k_EMsgAMAllowUserFilesResponse = 4157; k_EMsgAMGetAccountStatus = 4158; k_EMsgAMGetAccountStatusResponse = 4159; k_EMsgAMEditBanReason = 4160; @@ -733,7 +732,6 @@ enum EMsg { k_EMsgAMSupportIsAccountEnabledResponse = 4210; k_EMsgUGSGetUserStats = 4211; k_EMsgAMGSSearch = 4213; - k_EMsgMarketingMessageUpdate = 4216; k_EMsgChatServerRouteFriendMsg = 4219; k_EMsgAMTicketAuthRequestOrResponse = 4220; k_EMsgAMAddFreeLicense = 4224; @@ -760,7 +758,6 @@ enum EMsg { k_EMsgAMCreateFinancialAdjustment = 4265; k_EMsgAMPlayerNicknameList = 4266; k_EMsgAMPlayerNicknameListResponse = 4267; - k_EMsgAMSetDRMTestConfig = 4268; k_EMsgAMGetUserCurrentGameInfo = 4269; k_EMsgAMGetUserCurrentGameInfoResponse = 4270; k_EMsgAMGetGSPlayerList = 4271; @@ -891,6 +888,7 @@ enum EMsg { k_EMsgAMPerfectWorldPaymentResponse = 4422; k_EMsgAMECommPayPayment = 4423; k_EMsgAMECommPayPaymentResponse = 4424; + k_EMsgAMSetRemoteClientID = 4425; k_EMsgBasePSRange = 5000; k_EMsgPSCreateShoppingCart = 5001; k_EMsgPSCreateShoppingCartResponse = 5002; @@ -980,7 +978,6 @@ enum EMsg { k_EMsgClientP2PConnectionFailInfo = 5435; k_EMsgClientGetDepotDecryptionKey = 5438; k_EMsgClientGetDepotDecryptionKeyResponse = 5439; - k_EMsgGSPerformHardwareSurvey = 5440; k_EMsgClientEnableTestLicense = 5443; k_EMsgClientEnableTestLicenseResponse = 5444; k_EMsgClientDisableTestLicense = 5445; @@ -1020,8 +1017,10 @@ enum EMsg { k_EMsgClientOGSEndSession = 5492; k_EMsgClientOGSEndSessionResponse = 5493; k_EMsgClientOGSWriteRow = 5494; - k_EMsgClientDRMTest = 5495; - k_EMsgClientDRMTestResult = 5496; + k_EMsgClientGetPeerContentInfo = 5495; + k_EMsgClientGetPeerContentInfoResponse = 5496; + k_EMsgClientStartPeerContentServer = 5497; + k_EMsgClientStartPeerContentServerResponse = 5498; k_EMsgClientServerUnavailable = 5500; k_EMsgClientServersAvailable = 5501; k_EMsgClientRegisterAuthTicketWithCM = 5502; @@ -1031,7 +1030,6 @@ enum EMsg { k_EMsgClientMicroTxnAuthorizeResponse = 5506; k_EMsgClientGetMicroTxnInfo = 5508; k_EMsgClientGetMicroTxnInfoResponse = 5509; - k_EMsgClientMarketingMessageUpdate2 = 5510; k_EMsgClientDeregisterWithServer = 5511; k_EMsgClientSubscribeToPersonaFeed = 5512; k_EMsgClientLogon = 5514; @@ -1246,8 +1244,6 @@ enum EMsg { k_EMsgClientUCMUpdatePublishedFileResponse = 7326; k_EMsgUCMUpdatePublishedFile = 7327; k_EMsgUCMUpdatePublishedFileResponse = 7328; - k_EMsgUCMDeletePublishedFile = 7329; - k_EMsgUCMDeletePublishedFileResponse = 7330; k_EMsgUCMUpdatePublishedFileStat = 7331; k_EMsgUCMReloadPublishedFile = 7337; k_EMsgUCMReloadUserFileListCaches = 7338; @@ -1276,8 +1272,6 @@ enum EMsg { k_EMsgClientUCMEnumerateUserSubscribedFilesWithUpdatesResponse = 7379; k_EMsgUCMPublishedFileContentUpdated = 7380; k_EMsgClientUCMPublishedFileUpdated = 7381; - k_EMsgClientWorkshopItemChangesRequest = 7382; - k_EMsgClientWorkshopItemChangesResponse = 7383; k_EMsgFSBase = 7500; k_EMsgClientRichPresenceUpload = 7501; k_EMsgClientRichPresenceRequest = 7502; @@ -1448,14 +1442,14 @@ enum EMsg { k_EMsgRemoteClientStartStreamResponse = 9504; k_EMsgRemoteClientPing = 9505; k_EMsgRemoteClientPingResponse = 9506; - k_EMsgClientUnlockStreaming = 9507; - k_EMsgClientUnlockStreamingResponse = 9508; + k_EMsgClientUnlockH264 = 9507; + k_EMsgClientUnlockH264Response = 9508; k_EMsgRemoteClientAcceptEULA = 9509; k_EMsgRemoteClientGetControllerConfig = 9510; k_EMsgRemoteClientGetControllerConfigResponse = 9511; k_EMsgRemoteClientStreamingEnabled = 9512; - k_EMsgClientUnlockHEVC = 9513; - k_EMsgClientUnlockHEVCResponse = 9514; + k_EMsgClientUnlockHEVC_OBSOLETE = 9513; + k_EMsgClientUnlockHEVCResponse_OBSOLETE = 9514; k_EMsgRemoteClientStatusRequest = 9515; k_EMsgRemoteClientStatusResponse = 9516; k_EMsgClientConcurrentSessionsBase = 9600; @@ -1465,7 +1459,6 @@ enum EMsg { k_EMsgClientBroadcastInit = 9700; k_EMsgClientBroadcastFrames = 9701; k_EMsgClientBroadcastDisconnect = 9702; - k_EMsgClientBroadcastScreenshot = 9703; k_EMsgClientBroadcastUploadConfig = 9704; k_EMsgBaseClient3 = 9800; k_EMsgClientVoiceCallPreAuthorize = 9800; @@ -1474,9 +1467,13 @@ enum EMsg { k_EMsgClientServerTimestampResponse = 9803; k_EMsgServiceMethodCallFromClientNonAuthed = 9804; k_EMsgClientHello = 9805; + k_EMsgClientEnableOrDisableDownloads = 9806; + k_EMsgClientEnableOrDisableDownloadsResponse = 9807; k_EMsgClientLANP2PBase = 9900; k_EMsgClientLANP2PRequestChunk = 9900; k_EMsgClientLANP2PRequestChunkResponse = 9901; + k_EMsgClientPeerChunkRequest = 9902; + k_EMsgClientPeerChunkResponse = 9903; k_EMsgClientLANP2PMax = 9999; k_EMsgBaseWatchdogServer = 10000; k_EMsgNotifyWatchdog = 10000; @@ -1493,6 +1490,12 @@ enum EMsg { k_EMsgChatServerGetPendingNotificationCountResponse = 12001; k_EMsgBaseSecretServer = 12100; k_EMsgServerSecretChanged = 12100; + k_EMsgBaseWG = 12200; + k_EMsgWGConnectionProtocolError = 12200; + k_EMsgWGConnectionValidateUserToken = 12201; + k_EMsgWGConnectionValidateUserTokenResponse = 12202; + k_EMsgWGConnectionLegacyWGRequest = 12203; + k_EMsgWGConnectionLegacyWGResponse = 12204; } enum EClientPersonaStateFlag { @@ -1532,3 +1535,18 @@ enum ESteamReviewScore { k_ESteamReviewScore_OverwhelminglyNegative = 1; k_ESteamReviewScore_None = 0; } + +enum ECodecUsagePlatform { + k_ECodecUsagePlatformUnknown = 0; + k_ECodecUsagePlatformWindows = 1; + k_ECodecUsagePlatformMacOS = 2; + k_ECodecUsagePlatformLinux = 3; + k_ECodecUsagePlatformSteamDeck = 4; +} + +enum ECodecUsageReason { + k_ECodecUsageReasonUnknown = 0; + k_ECodecUsageReasonRemotePlay = 1; + k_ECodecUsageReasonBroadcasting = 2; + k_ECodecUsageReasonGameVideo = 3; +} diff --git a/dota/gameevents.pb.go b/dota/gameevents.pb.go index 75a6557b..08747104 100644 --- a/dota/gameevents.pb.go +++ b/dota/gameevents.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: gameevents.proto diff --git a/dota/gcsdk_gcmessages.pb.go b/dota/gcsdk_gcmessages.pb.go index 906c3c25..807d8971 100644 --- a/dota/gcsdk_gcmessages.pb.go +++ b/dota/gcsdk_gcmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: gcsdk_gcmessages.proto @@ -277,6 +277,69 @@ func (x *CExtraMsgBlock) GetIsCompressed() bool { return false } +type CMsgSteamLearnServerInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + EnableDataSubmission *bool `protobuf:"varint,1,opt,name=enable_data_submission,json=enableDataSubmission" json:"enable_data_submission,omitempty"` + AccessTokens *CMsgSteamLearnAccessTokens `protobuf:"bytes,4,opt,name=access_tokens,json=accessTokens" json:"access_tokens,omitempty"` + ProjectInfos []*CMsgSteamLearnServerInfo_ProjectInfo `protobuf:"bytes,5,rep,name=project_infos,json=projectInfos" json:"project_infos,omitempty"` +} + +func (x *CMsgSteamLearnServerInfo) Reset() { + *x = CMsgSteamLearnServerInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_gcsdk_gcmessages_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearnServerInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearnServerInfo) ProtoMessage() {} + +func (x *CMsgSteamLearnServerInfo) ProtoReflect() protoreflect.Message { + mi := &file_gcsdk_gcmessages_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearnServerInfo.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnServerInfo) Descriptor() ([]byte, []int) { + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{1} +} + +func (x *CMsgSteamLearnServerInfo) GetEnableDataSubmission() bool { + if x != nil && x.EnableDataSubmission != nil { + return *x.EnableDataSubmission + } + return false +} + +func (x *CMsgSteamLearnServerInfo) GetAccessTokens() *CMsgSteamLearnAccessTokens { + if x != nil { + return x.AccessTokens + } + return nil +} + +func (x *CMsgSteamLearnServerInfo) GetProjectInfos() []*CMsgSteamLearnServerInfo_ProjectInfo { + if x != nil { + return x.ProjectInfos + } + return nil +} + type CMsgGCAssertJobData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -289,7 +352,7 @@ type CMsgGCAssertJobData struct { func (x *CMsgGCAssertJobData) Reset() { *x = CMsgGCAssertJobData{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[1] + mi := &file_gcsdk_gcmessages_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -302,7 +365,7 @@ func (x *CMsgGCAssertJobData) String() string { func (*CMsgGCAssertJobData) ProtoMessage() {} func (x *CMsgGCAssertJobData) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[1] + mi := &file_gcsdk_gcmessages_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -315,7 +378,7 @@ func (x *CMsgGCAssertJobData) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCAssertJobData.ProtoReflect.Descriptor instead. func (*CMsgGCAssertJobData) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{1} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{2} } func (x *CMsgGCAssertJobData) GetMessageType() string { @@ -343,7 +406,7 @@ type CMsgGCConCommand struct { func (x *CMsgGCConCommand) Reset() { *x = CMsgGCConCommand{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[2] + mi := &file_gcsdk_gcmessages_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -356,7 +419,7 @@ func (x *CMsgGCConCommand) String() string { func (*CMsgGCConCommand) ProtoMessage() {} func (x *CMsgGCConCommand) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[2] + mi := &file_gcsdk_gcmessages_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -369,7 +432,7 @@ func (x *CMsgGCConCommand) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCConCommand.ProtoReflect.Descriptor instead. func (*CMsgGCConCommand) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{2} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{3} } func (x *CMsgGCConCommand) GetCommand() string { @@ -391,7 +454,7 @@ type CMsgSDOAssert struct { func (x *CMsgSDOAssert) Reset() { *x = CMsgSDOAssert{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[3] + mi := &file_gcsdk_gcmessages_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -404,7 +467,7 @@ func (x *CMsgSDOAssert) String() string { func (*CMsgSDOAssert) ProtoMessage() {} func (x *CMsgSDOAssert) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[3] + mi := &file_gcsdk_gcmessages_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -417,7 +480,7 @@ func (x *CMsgSDOAssert) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSDOAssert.ProtoReflect.Descriptor instead. func (*CMsgSDOAssert) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{3} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{4} } func (x *CMsgSDOAssert) GetSdoType() int32 { @@ -446,7 +509,7 @@ type CMsgSOIDOwner struct { func (x *CMsgSOIDOwner) Reset() { *x = CMsgSOIDOwner{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[4] + mi := &file_gcsdk_gcmessages_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -459,7 +522,7 @@ func (x *CMsgSOIDOwner) String() string { func (*CMsgSOIDOwner) ProtoMessage() {} func (x *CMsgSOIDOwner) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[4] + mi := &file_gcsdk_gcmessages_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -472,7 +535,7 @@ func (x *CMsgSOIDOwner) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOIDOwner.ProtoReflect.Descriptor instead. func (*CMsgSOIDOwner) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{4} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{5} } func (x *CMsgSOIDOwner) GetType() uint32 { @@ -504,7 +567,7 @@ type CMsgSOSingleObject struct { func (x *CMsgSOSingleObject) Reset() { *x = CMsgSOSingleObject{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[5] + mi := &file_gcsdk_gcmessages_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -517,7 +580,7 @@ func (x *CMsgSOSingleObject) String() string { func (*CMsgSOSingleObject) ProtoMessage() {} func (x *CMsgSOSingleObject) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[5] + mi := &file_gcsdk_gcmessages_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -530,7 +593,7 @@ func (x *CMsgSOSingleObject) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOSingleObject.ProtoReflect.Descriptor instead. func (*CMsgSOSingleObject) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{5} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{6} } func (x *CMsgSOSingleObject) GetTypeId() int32 { @@ -584,7 +647,7 @@ type CMsgSOMultipleObjects struct { func (x *CMsgSOMultipleObjects) Reset() { *x = CMsgSOMultipleObjects{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[6] + mi := &file_gcsdk_gcmessages_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -597,7 +660,7 @@ func (x *CMsgSOMultipleObjects) String() string { func (*CMsgSOMultipleObjects) ProtoMessage() {} func (x *CMsgSOMultipleObjects) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[6] + mi := &file_gcsdk_gcmessages_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -610,7 +673,7 @@ func (x *CMsgSOMultipleObjects) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOMultipleObjects.ProtoReflect.Descriptor instead. func (*CMsgSOMultipleObjects) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{6} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{7} } func (x *CMsgSOMultipleObjects) GetObjectsModified() []*CMsgSOMultipleObjects_SingleObject { @@ -671,7 +734,7 @@ type CMsgSOCacheSubscribed struct { func (x *CMsgSOCacheSubscribed) Reset() { *x = CMsgSOCacheSubscribed{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[7] + mi := &file_gcsdk_gcmessages_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -684,7 +747,7 @@ func (x *CMsgSOCacheSubscribed) String() string { func (*CMsgSOCacheSubscribed) ProtoMessage() {} func (x *CMsgSOCacheSubscribed) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[7] + mi := &file_gcsdk_gcmessages_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -697,7 +760,7 @@ func (x *CMsgSOCacheSubscribed) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOCacheSubscribed.ProtoReflect.Descriptor instead. func (*CMsgSOCacheSubscribed) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{7} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{8} } func (x *CMsgSOCacheSubscribed) GetObjects() []*CMsgSOCacheSubscribed_SubscribedType { @@ -757,7 +820,7 @@ type CMsgSOCacheSubscribedUpToDate struct { func (x *CMsgSOCacheSubscribedUpToDate) Reset() { *x = CMsgSOCacheSubscribedUpToDate{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[8] + mi := &file_gcsdk_gcmessages_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -770,7 +833,7 @@ func (x *CMsgSOCacheSubscribedUpToDate) String() string { func (*CMsgSOCacheSubscribedUpToDate) ProtoMessage() {} func (x *CMsgSOCacheSubscribedUpToDate) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[8] + mi := &file_gcsdk_gcmessages_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -783,7 +846,7 @@ func (x *CMsgSOCacheSubscribedUpToDate) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOCacheSubscribedUpToDate.ProtoReflect.Descriptor instead. func (*CMsgSOCacheSubscribedUpToDate) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{8} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{9} } func (x *CMsgSOCacheSubscribedUpToDate) GetVersion() uint64 { @@ -832,7 +895,7 @@ type CMsgSOCacheUnsubscribed struct { func (x *CMsgSOCacheUnsubscribed) Reset() { *x = CMsgSOCacheUnsubscribed{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[9] + mi := &file_gcsdk_gcmessages_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -845,7 +908,7 @@ func (x *CMsgSOCacheUnsubscribed) String() string { func (*CMsgSOCacheUnsubscribed) ProtoMessage() {} func (x *CMsgSOCacheUnsubscribed) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[9] + mi := &file_gcsdk_gcmessages_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -858,7 +921,7 @@ func (x *CMsgSOCacheUnsubscribed) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOCacheUnsubscribed.ProtoReflect.Descriptor instead. func (*CMsgSOCacheUnsubscribed) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{9} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{10} } func (x *CMsgSOCacheUnsubscribed) GetOwnerSoid() *CMsgSOIDOwner { @@ -883,7 +946,7 @@ type CMsgSOCacheSubscriptionCheck struct { func (x *CMsgSOCacheSubscriptionCheck) Reset() { *x = CMsgSOCacheSubscriptionCheck{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[10] + mi := &file_gcsdk_gcmessages_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -896,7 +959,7 @@ func (x *CMsgSOCacheSubscriptionCheck) String() string { func (*CMsgSOCacheSubscriptionCheck) ProtoMessage() {} func (x *CMsgSOCacheSubscriptionCheck) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[10] + mi := &file_gcsdk_gcmessages_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -909,7 +972,7 @@ func (x *CMsgSOCacheSubscriptionCheck) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOCacheSubscriptionCheck.ProtoReflect.Descriptor instead. func (*CMsgSOCacheSubscriptionCheck) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{10} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{11} } func (x *CMsgSOCacheSubscriptionCheck) GetVersion() uint64 { @@ -958,7 +1021,7 @@ type CMsgSOCacheSubscriptionRefresh struct { func (x *CMsgSOCacheSubscriptionRefresh) Reset() { *x = CMsgSOCacheSubscriptionRefresh{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[11] + mi := &file_gcsdk_gcmessages_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -971,7 +1034,7 @@ func (x *CMsgSOCacheSubscriptionRefresh) String() string { func (*CMsgSOCacheSubscriptionRefresh) ProtoMessage() {} func (x *CMsgSOCacheSubscriptionRefresh) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[11] + mi := &file_gcsdk_gcmessages_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -984,7 +1047,7 @@ func (x *CMsgSOCacheSubscriptionRefresh) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOCacheSubscriptionRefresh.ProtoReflect.Descriptor instead. func (*CMsgSOCacheSubscriptionRefresh) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{11} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{12} } func (x *CMsgSOCacheSubscriptionRefresh) GetOwnerSoid() *CMsgSOIDOwner { @@ -1005,7 +1068,7 @@ type CMsgSOCacheVersion struct { func (x *CMsgSOCacheVersion) Reset() { *x = CMsgSOCacheVersion{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[12] + mi := &file_gcsdk_gcmessages_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1018,7 +1081,7 @@ func (x *CMsgSOCacheVersion) String() string { func (*CMsgSOCacheVersion) ProtoMessage() {} func (x *CMsgSOCacheVersion) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[12] + mi := &file_gcsdk_gcmessages_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1031,7 +1094,7 @@ func (x *CMsgSOCacheVersion) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOCacheVersion.ProtoReflect.Descriptor instead. func (*CMsgSOCacheVersion) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{12} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{13} } func (x *CMsgSOCacheVersion) GetVersion() uint64 { @@ -1054,7 +1117,7 @@ type CMsgGCMultiplexMessage struct { func (x *CMsgGCMultiplexMessage) Reset() { *x = CMsgGCMultiplexMessage{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[13] + mi := &file_gcsdk_gcmessages_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1067,7 +1130,7 @@ func (x *CMsgGCMultiplexMessage) String() string { func (*CMsgGCMultiplexMessage) ProtoMessage() {} func (x *CMsgGCMultiplexMessage) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[13] + mi := &file_gcsdk_gcmessages_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1080,7 +1143,7 @@ func (x *CMsgGCMultiplexMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCMultiplexMessage.ProtoReflect.Descriptor instead. func (*CMsgGCMultiplexMessage) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{13} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{14} } func (x *CMsgGCMultiplexMessage) GetMsgtype() uint32 { @@ -1115,7 +1178,7 @@ type CMsgGCToGCSubGCStarting struct { func (x *CMsgGCToGCSubGCStarting) Reset() { *x = CMsgGCToGCSubGCStarting{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[14] + mi := &file_gcsdk_gcmessages_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1128,7 +1191,7 @@ func (x *CMsgGCToGCSubGCStarting) String() string { func (*CMsgGCToGCSubGCStarting) ProtoMessage() {} func (x *CMsgGCToGCSubGCStarting) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[14] + mi := &file_gcsdk_gcmessages_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1141,7 +1204,7 @@ func (x *CMsgGCToGCSubGCStarting) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCSubGCStarting.ProtoReflect.Descriptor instead. func (*CMsgGCToGCSubGCStarting) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{14} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{15} } func (x *CMsgGCToGCSubGCStarting) GetDirIndex() int32 { @@ -1165,7 +1228,7 @@ type CGCToGCMsgMasterAck struct { func (x *CGCToGCMsgMasterAck) Reset() { *x = CGCToGCMsgMasterAck{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[15] + mi := &file_gcsdk_gcmessages_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1178,7 +1241,7 @@ func (x *CGCToGCMsgMasterAck) String() string { func (*CGCToGCMsgMasterAck) ProtoMessage() {} func (x *CGCToGCMsgMasterAck) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[15] + mi := &file_gcsdk_gcmessages_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1191,7 +1254,7 @@ func (x *CGCToGCMsgMasterAck) ProtoReflect() protoreflect.Message { // Deprecated: Use CGCToGCMsgMasterAck.ProtoReflect.Descriptor instead. func (*CGCToGCMsgMasterAck) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{15} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{16} } func (x *CGCToGCMsgMasterAck) GetDirIndex() int32 { @@ -1233,7 +1296,7 @@ type CGCToGCMsgMasterAck_Response struct { func (x *CGCToGCMsgMasterAck_Response) Reset() { *x = CGCToGCMsgMasterAck_Response{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[16] + mi := &file_gcsdk_gcmessages_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1246,7 +1309,7 @@ func (x *CGCToGCMsgMasterAck_Response) String() string { func (*CGCToGCMsgMasterAck_Response) ProtoMessage() {} func (x *CGCToGCMsgMasterAck_Response) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[16] + mi := &file_gcsdk_gcmessages_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1259,7 +1322,7 @@ func (x *CGCToGCMsgMasterAck_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use CGCToGCMsgMasterAck_Response.ProtoReflect.Descriptor instead. func (*CGCToGCMsgMasterAck_Response) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{16} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{17} } func (x *CGCToGCMsgMasterAck_Response) GetEresult() int32 { @@ -1280,7 +1343,7 @@ type CMsgGCToGCUniverseStartup struct { func (x *CMsgGCToGCUniverseStartup) Reset() { *x = CMsgGCToGCUniverseStartup{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[17] + mi := &file_gcsdk_gcmessages_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1293,7 +1356,7 @@ func (x *CMsgGCToGCUniverseStartup) String() string { func (*CMsgGCToGCUniverseStartup) ProtoMessage() {} func (x *CMsgGCToGCUniverseStartup) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[17] + mi := &file_gcsdk_gcmessages_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1306,7 +1369,7 @@ func (x *CMsgGCToGCUniverseStartup) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCUniverseStartup.ProtoReflect.Descriptor instead. func (*CMsgGCToGCUniverseStartup) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{17} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{18} } func (x *CMsgGCToGCUniverseStartup) GetIsInitialStartup() bool { @@ -1327,7 +1390,7 @@ type CMsgGCToGCUniverseStartupResponse struct { func (x *CMsgGCToGCUniverseStartupResponse) Reset() { *x = CMsgGCToGCUniverseStartupResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[18] + mi := &file_gcsdk_gcmessages_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1340,7 +1403,7 @@ func (x *CMsgGCToGCUniverseStartupResponse) String() string { func (*CMsgGCToGCUniverseStartupResponse) ProtoMessage() {} func (x *CMsgGCToGCUniverseStartupResponse) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[18] + mi := &file_gcsdk_gcmessages_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1353,7 +1416,7 @@ func (x *CMsgGCToGCUniverseStartupResponse) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgGCToGCUniverseStartupResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToGCUniverseStartupResponse) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{18} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{19} } func (x *CMsgGCToGCUniverseStartupResponse) GetEresult() int32 { @@ -1374,7 +1437,7 @@ type CGCToGCMsgMasterStartupComplete struct { func (x *CGCToGCMsgMasterStartupComplete) Reset() { *x = CGCToGCMsgMasterStartupComplete{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[19] + mi := &file_gcsdk_gcmessages_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1387,7 +1450,7 @@ func (x *CGCToGCMsgMasterStartupComplete) String() string { func (*CGCToGCMsgMasterStartupComplete) ProtoMessage() {} func (x *CGCToGCMsgMasterStartupComplete) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[19] + mi := &file_gcsdk_gcmessages_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1400,7 +1463,7 @@ func (x *CGCToGCMsgMasterStartupComplete) ProtoReflect() protoreflect.Message { // Deprecated: Use CGCToGCMsgMasterStartupComplete.ProtoReflect.Descriptor instead. func (*CGCToGCMsgMasterStartupComplete) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{19} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{20} } func (x *CGCToGCMsgMasterStartupComplete) GetGcInfo() []*CGCToGCMsgMasterStartupComplete_GCInfo { @@ -1423,7 +1486,7 @@ type CGCToGCMsgRouted struct { func (x *CGCToGCMsgRouted) Reset() { *x = CGCToGCMsgRouted{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[20] + mi := &file_gcsdk_gcmessages_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1436,7 +1499,7 @@ func (x *CGCToGCMsgRouted) String() string { func (*CGCToGCMsgRouted) ProtoMessage() {} func (x *CGCToGCMsgRouted) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[20] + mi := &file_gcsdk_gcmessages_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1449,7 +1512,7 @@ func (x *CGCToGCMsgRouted) ProtoReflect() protoreflect.Message { // Deprecated: Use CGCToGCMsgRouted.ProtoReflect.Descriptor instead. func (*CGCToGCMsgRouted) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{20} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{21} } func (x *CGCToGCMsgRouted) GetMsgType() uint32 { @@ -1485,7 +1548,7 @@ type CGCToGCMsgRoutedReply struct { func (x *CGCToGCMsgRoutedReply) Reset() { *x = CGCToGCMsgRoutedReply{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[21] + mi := &file_gcsdk_gcmessages_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1498,7 +1561,7 @@ func (x *CGCToGCMsgRoutedReply) String() string { func (*CGCToGCMsgRoutedReply) ProtoMessage() {} func (x *CGCToGCMsgRoutedReply) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[21] + mi := &file_gcsdk_gcmessages_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1511,7 +1574,7 @@ func (x *CGCToGCMsgRoutedReply) ProtoReflect() protoreflect.Message { // Deprecated: Use CGCToGCMsgRoutedReply.ProtoReflect.Descriptor instead. func (*CGCToGCMsgRoutedReply) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{21} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{22} } func (x *CGCToGCMsgRoutedReply) GetMsgType() uint32 { @@ -1539,7 +1602,7 @@ type CMsgGCUpdateSubGCSessionInfo struct { func (x *CMsgGCUpdateSubGCSessionInfo) Reset() { *x = CMsgGCUpdateSubGCSessionInfo{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[22] + mi := &file_gcsdk_gcmessages_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1552,7 +1615,7 @@ func (x *CMsgGCUpdateSubGCSessionInfo) String() string { func (*CMsgGCUpdateSubGCSessionInfo) ProtoMessage() {} func (x *CMsgGCUpdateSubGCSessionInfo) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[22] + mi := &file_gcsdk_gcmessages_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1565,7 +1628,7 @@ func (x *CMsgGCUpdateSubGCSessionInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCUpdateSubGCSessionInfo.ProtoReflect.Descriptor instead. func (*CMsgGCUpdateSubGCSessionInfo) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{22} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{23} } func (x *CMsgGCUpdateSubGCSessionInfo) GetUpdates() []*CMsgGCUpdateSubGCSessionInfo_CMsgUpdate { @@ -1586,7 +1649,7 @@ type CMsgGCRequestSubGCSessionInfo struct { func (x *CMsgGCRequestSubGCSessionInfo) Reset() { *x = CMsgGCRequestSubGCSessionInfo{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[23] + mi := &file_gcsdk_gcmessages_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1599,7 +1662,7 @@ func (x *CMsgGCRequestSubGCSessionInfo) String() string { func (*CMsgGCRequestSubGCSessionInfo) ProtoMessage() {} func (x *CMsgGCRequestSubGCSessionInfo) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[23] + mi := &file_gcsdk_gcmessages_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1612,7 +1675,7 @@ func (x *CMsgGCRequestSubGCSessionInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCRequestSubGCSessionInfo.ProtoReflect.Descriptor instead. func (*CMsgGCRequestSubGCSessionInfo) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{23} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{24} } func (x *CMsgGCRequestSubGCSessionInfo) GetSteamid() uint64 { @@ -1636,7 +1699,7 @@ type CMsgGCRequestSubGCSessionInfoResponse struct { func (x *CMsgGCRequestSubGCSessionInfoResponse) Reset() { *x = CMsgGCRequestSubGCSessionInfoResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[24] + mi := &file_gcsdk_gcmessages_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1649,7 +1712,7 @@ func (x *CMsgGCRequestSubGCSessionInfoResponse) String() string { func (*CMsgGCRequestSubGCSessionInfoResponse) ProtoMessage() {} func (x *CMsgGCRequestSubGCSessionInfoResponse) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[24] + mi := &file_gcsdk_gcmessages_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1662,7 +1725,7 @@ func (x *CMsgGCRequestSubGCSessionInfoResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCRequestSubGCSessionInfoResponse.ProtoReflect.Descriptor instead. func (*CMsgGCRequestSubGCSessionInfoResponse) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{24} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{25} } func (x *CMsgGCRequestSubGCSessionInfoResponse) GetIp() uint32 { @@ -1707,7 +1770,7 @@ type CMsgSOCacheHaveVersion struct { func (x *CMsgSOCacheHaveVersion) Reset() { *x = CMsgSOCacheHaveVersion{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[25] + mi := &file_gcsdk_gcmessages_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1720,7 +1783,7 @@ func (x *CMsgSOCacheHaveVersion) String() string { func (*CMsgSOCacheHaveVersion) ProtoMessage() {} func (x *CMsgSOCacheHaveVersion) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[25] + mi := &file_gcsdk_gcmessages_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1733,7 +1796,7 @@ func (x *CMsgSOCacheHaveVersion) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSOCacheHaveVersion.ProtoReflect.Descriptor instead. func (*CMsgSOCacheHaveVersion) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{25} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{26} } func (x *CMsgSOCacheHaveVersion) GetSoid() *CMsgSOIDOwner { @@ -1797,7 +1860,7 @@ type CMsgClientHello struct { func (x *CMsgClientHello) Reset() { *x = CMsgClientHello{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[26] + mi := &file_gcsdk_gcmessages_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1810,7 +1873,7 @@ func (x *CMsgClientHello) String() string { func (*CMsgClientHello) ProtoMessage() {} func (x *CMsgClientHello) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[26] + mi := &file_gcsdk_gcmessages_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1823,7 +1886,7 @@ func (x *CMsgClientHello) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientHello.ProtoReflect.Descriptor instead. func (*CMsgClientHello) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{26} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{27} } func (x *CMsgClientHello) GetVersion() uint32 { @@ -2008,13 +2071,13 @@ type CMsgClientWelcome struct { HasAcceptedChinaSsa *bool `protobuf:"varint,16,opt,name=has_accepted_china_ssa,json=hasAcceptedChinaSsa" json:"has_accepted_china_ssa,omitempty"` IsBannedSteamChina *bool `protobuf:"varint,17,opt,name=is_banned_steam_china,json=isBannedSteamChina" json:"is_banned_steam_china,omitempty"` AdditionalWelcomeMsgs *CExtraMsgBlock `protobuf:"bytes,18,opt,name=additional_welcome_msgs,json=additionalWelcomeMsgs" json:"additional_welcome_msgs,omitempty"` - SteamLearnHmacKeys *CMsgSteamLearnHMACKeys `protobuf:"bytes,19,opt,name=steam_learn_hmac_keys,json=steamLearnHmacKeys" json:"steam_learn_hmac_keys,omitempty"` + SteamLearnServerInfo *CMsgSteamLearnServerInfo `protobuf:"bytes,20,opt,name=steam_learn_server_info,json=steamLearnServerInfo" json:"steam_learn_server_info,omitempty"` } func (x *CMsgClientWelcome) Reset() { *x = CMsgClientWelcome{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[27] + mi := &file_gcsdk_gcmessages_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2027,7 +2090,7 @@ func (x *CMsgClientWelcome) String() string { func (*CMsgClientWelcome) ProtoMessage() {} func (x *CMsgClientWelcome) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[27] + mi := &file_gcsdk_gcmessages_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2040,7 +2103,7 @@ func (x *CMsgClientWelcome) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientWelcome.ProtoReflect.Descriptor instead. func (*CMsgClientWelcome) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{27} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{28} } func (x *CMsgClientWelcome) GetVersion() uint32 { @@ -2155,9 +2218,9 @@ func (x *CMsgClientWelcome) GetAdditionalWelcomeMsgs() *CExtraMsgBlock { return nil } -func (x *CMsgClientWelcome) GetSteamLearnHmacKeys() *CMsgSteamLearnHMACKeys { +func (x *CMsgClientWelcome) GetSteamLearnServerInfo() *CMsgSteamLearnServerInfo { if x != nil { - return x.SteamLearnHmacKeys + return x.SteamLearnServerInfo } return nil } @@ -2178,7 +2241,7 @@ type CMsgConnectionStatus struct { func (x *CMsgConnectionStatus) Reset() { *x = CMsgConnectionStatus{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[28] + mi := &file_gcsdk_gcmessages_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2191,7 +2254,7 @@ func (x *CMsgConnectionStatus) String() string { func (*CMsgConnectionStatus) ProtoMessage() {} func (x *CMsgConnectionStatus) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[28] + mi := &file_gcsdk_gcmessages_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2204,7 +2267,7 @@ func (x *CMsgConnectionStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgConnectionStatus.ProtoReflect.Descriptor instead. func (*CMsgConnectionStatus) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{28} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{29} } func (x *CMsgConnectionStatus) GetStatus() GCConnectionStatus { @@ -2264,7 +2327,7 @@ type CMsgGCToGCSOCacheSubscribe struct { func (x *CMsgGCToGCSOCacheSubscribe) Reset() { *x = CMsgGCToGCSOCacheSubscribe{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[29] + mi := &file_gcsdk_gcmessages_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2277,7 +2340,7 @@ func (x *CMsgGCToGCSOCacheSubscribe) String() string { func (*CMsgGCToGCSOCacheSubscribe) ProtoMessage() {} func (x *CMsgGCToGCSOCacheSubscribe) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[29] + mi := &file_gcsdk_gcmessages_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2290,7 +2353,7 @@ func (x *CMsgGCToGCSOCacheSubscribe) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCSOCacheSubscribe.ProtoReflect.Descriptor instead. func (*CMsgGCToGCSOCacheSubscribe) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{29} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{30} } func (x *CMsgGCToGCSOCacheSubscribe) GetSubscriber() uint64 { @@ -2341,7 +2404,7 @@ type CMsgGCToGCSOCacheUnsubscribe struct { func (x *CMsgGCToGCSOCacheUnsubscribe) Reset() { *x = CMsgGCToGCSOCacheUnsubscribe{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[30] + mi := &file_gcsdk_gcmessages_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2354,7 +2417,7 @@ func (x *CMsgGCToGCSOCacheUnsubscribe) String() string { func (*CMsgGCToGCSOCacheUnsubscribe) ProtoMessage() {} func (x *CMsgGCToGCSOCacheUnsubscribe) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[30] + mi := &file_gcsdk_gcmessages_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2367,7 +2430,7 @@ func (x *CMsgGCToGCSOCacheUnsubscribe) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCSOCacheUnsubscribe.ProtoReflect.Descriptor instead. func (*CMsgGCToGCSOCacheUnsubscribe) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{30} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{31} } func (x *CMsgGCToGCSOCacheUnsubscribe) GetSubscriber() uint64 { @@ -2400,7 +2463,7 @@ type CMsgGCClientPing struct { func (x *CMsgGCClientPing) Reset() { *x = CMsgGCClientPing{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[31] + mi := &file_gcsdk_gcmessages_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2413,7 +2476,7 @@ func (x *CMsgGCClientPing) String() string { func (*CMsgGCClientPing) ProtoMessage() {} func (x *CMsgGCClientPing) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[31] + mi := &file_gcsdk_gcmessages_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2426,7 +2489,7 @@ func (x *CMsgGCClientPing) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCClientPing.ProtoReflect.Descriptor instead. func (*CMsgGCClientPing) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{31} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{32} } type CMsgGCToGCForwardAccountDetails struct { @@ -2442,7 +2505,7 @@ type CMsgGCToGCForwardAccountDetails struct { func (x *CMsgGCToGCForwardAccountDetails) Reset() { *x = CMsgGCToGCForwardAccountDetails{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[32] + mi := &file_gcsdk_gcmessages_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2455,7 +2518,7 @@ func (x *CMsgGCToGCForwardAccountDetails) String() string { func (*CMsgGCToGCForwardAccountDetails) ProtoMessage() {} func (x *CMsgGCToGCForwardAccountDetails) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[32] + mi := &file_gcsdk_gcmessages_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2468,7 +2531,7 @@ func (x *CMsgGCToGCForwardAccountDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCForwardAccountDetails.ProtoReflect.Descriptor instead. func (*CMsgGCToGCForwardAccountDetails) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{32} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{33} } func (x *CMsgGCToGCForwardAccountDetails) GetSteamid() uint64 { @@ -2504,7 +2567,7 @@ type CMsgGCToGCLoadSessionSOCache struct { func (x *CMsgGCToGCLoadSessionSOCache) Reset() { *x = CMsgGCToGCLoadSessionSOCache{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[33] + mi := &file_gcsdk_gcmessages_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2517,7 +2580,7 @@ func (x *CMsgGCToGCLoadSessionSOCache) String() string { func (*CMsgGCToGCLoadSessionSOCache) ProtoMessage() {} func (x *CMsgGCToGCLoadSessionSOCache) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[33] + mi := &file_gcsdk_gcmessages_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2530,7 +2593,7 @@ func (x *CMsgGCToGCLoadSessionSOCache) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCLoadSessionSOCache.ProtoReflect.Descriptor instead. func (*CMsgGCToGCLoadSessionSOCache) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{33} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{34} } func (x *CMsgGCToGCLoadSessionSOCache) GetAccountId() uint32 { @@ -2556,7 +2619,7 @@ type CMsgGCToGCLoadSessionSOCacheResponse struct { func (x *CMsgGCToGCLoadSessionSOCacheResponse) Reset() { *x = CMsgGCToGCLoadSessionSOCacheResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[34] + mi := &file_gcsdk_gcmessages_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2569,7 +2632,7 @@ func (x *CMsgGCToGCLoadSessionSOCacheResponse) String() string { func (*CMsgGCToGCLoadSessionSOCacheResponse) ProtoMessage() {} func (x *CMsgGCToGCLoadSessionSOCacheResponse) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[34] + mi := &file_gcsdk_gcmessages_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2582,7 +2645,7 @@ func (x *CMsgGCToGCLoadSessionSOCacheResponse) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgGCToGCLoadSessionSOCacheResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToGCLoadSessionSOCacheResponse) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{34} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{35} } type CMsgGCToGCUpdateSessionStats struct { @@ -2598,7 +2661,7 @@ type CMsgGCToGCUpdateSessionStats struct { func (x *CMsgGCToGCUpdateSessionStats) Reset() { *x = CMsgGCToGCUpdateSessionStats{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[35] + mi := &file_gcsdk_gcmessages_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2611,7 +2674,7 @@ func (x *CMsgGCToGCUpdateSessionStats) String() string { func (*CMsgGCToGCUpdateSessionStats) ProtoMessage() {} func (x *CMsgGCToGCUpdateSessionStats) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[35] + mi := &file_gcsdk_gcmessages_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2624,7 +2687,7 @@ func (x *CMsgGCToGCUpdateSessionStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCUpdateSessionStats.ProtoReflect.Descriptor instead. func (*CMsgGCToGCUpdateSessionStats) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{35} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{36} } func (x *CMsgGCToGCUpdateSessionStats) GetUserSessions() uint32 { @@ -2657,7 +2720,7 @@ type CMsgGCToClientRequestDropped struct { func (x *CMsgGCToClientRequestDropped) Reset() { *x = CMsgGCToClientRequestDropped{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[36] + mi := &file_gcsdk_gcmessages_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2670,7 +2733,7 @@ func (x *CMsgGCToClientRequestDropped) String() string { func (*CMsgGCToClientRequestDropped) ProtoMessage() {} func (x *CMsgGCToClientRequestDropped) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[36] + mi := &file_gcsdk_gcmessages_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2683,7 +2746,7 @@ func (x *CMsgGCToClientRequestDropped) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientRequestDropped.ProtoReflect.Descriptor instead. func (*CMsgGCToClientRequestDropped) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{36} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{37} } type CWorkshop_PopulateItemDescriptions_Request struct { @@ -2698,7 +2761,7 @@ type CWorkshop_PopulateItemDescriptions_Request struct { func (x *CWorkshop_PopulateItemDescriptions_Request) Reset() { *x = CWorkshop_PopulateItemDescriptions_Request{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[37] + mi := &file_gcsdk_gcmessages_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2711,7 +2774,7 @@ func (x *CWorkshop_PopulateItemDescriptions_Request) String() string { func (*CWorkshop_PopulateItemDescriptions_Request) ProtoMessage() {} func (x *CWorkshop_PopulateItemDescriptions_Request) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[37] + mi := &file_gcsdk_gcmessages_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2724,7 +2787,7 @@ func (x *CWorkshop_PopulateItemDescriptions_Request) ProtoReflect() protoreflect // Deprecated: Use CWorkshop_PopulateItemDescriptions_Request.ProtoReflect.Descriptor instead. func (*CWorkshop_PopulateItemDescriptions_Request) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{37} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{38} } func (x *CWorkshop_PopulateItemDescriptions_Request) GetAppid() uint32 { @@ -2753,7 +2816,7 @@ type CWorkshop_GetContributors_Request struct { func (x *CWorkshop_GetContributors_Request) Reset() { *x = CWorkshop_GetContributors_Request{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[38] + mi := &file_gcsdk_gcmessages_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2766,7 +2829,7 @@ func (x *CWorkshop_GetContributors_Request) String() string { func (*CWorkshop_GetContributors_Request) ProtoMessage() {} func (x *CWorkshop_GetContributors_Request) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[38] + mi := &file_gcsdk_gcmessages_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2779,7 +2842,7 @@ func (x *CWorkshop_GetContributors_Request) ProtoReflect() protoreflect.Message // Deprecated: Use CWorkshop_GetContributors_Request.ProtoReflect.Descriptor instead. func (*CWorkshop_GetContributors_Request) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{38} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{39} } func (x *CWorkshop_GetContributors_Request) GetAppid() uint32 { @@ -2807,7 +2870,7 @@ type CWorkshop_GetContributors_Response struct { func (x *CWorkshop_GetContributors_Response) Reset() { *x = CWorkshop_GetContributors_Response{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[39] + mi := &file_gcsdk_gcmessages_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2820,7 +2883,7 @@ func (x *CWorkshop_GetContributors_Response) String() string { func (*CWorkshop_GetContributors_Response) ProtoMessage() {} func (x *CWorkshop_GetContributors_Response) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[39] + mi := &file_gcsdk_gcmessages_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2833,7 +2896,7 @@ func (x *CWorkshop_GetContributors_Response) ProtoReflect() protoreflect.Message // Deprecated: Use CWorkshop_GetContributors_Response.ProtoReflect.Descriptor instead. func (*CWorkshop_GetContributors_Response) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{39} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{40} } func (x *CWorkshop_GetContributors_Response) GetContributors() []uint64 { @@ -2860,7 +2923,7 @@ type CWorkshop_SetItemPaymentRules_Request struct { func (x *CWorkshop_SetItemPaymentRules_Request) Reset() { *x = CWorkshop_SetItemPaymentRules_Request{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[40] + mi := &file_gcsdk_gcmessages_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2873,7 +2936,7 @@ func (x *CWorkshop_SetItemPaymentRules_Request) String() string { func (*CWorkshop_SetItemPaymentRules_Request) ProtoMessage() {} func (x *CWorkshop_SetItemPaymentRules_Request) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[40] + mi := &file_gcsdk_gcmessages_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2886,7 +2949,7 @@ func (x *CWorkshop_SetItemPaymentRules_Request) ProtoReflect() protoreflect.Mess // Deprecated: Use CWorkshop_SetItemPaymentRules_Request.ProtoReflect.Descriptor instead. func (*CWorkshop_SetItemPaymentRules_Request) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{40} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{41} } func (x *CWorkshop_SetItemPaymentRules_Request) GetAppid() uint32 { @@ -2949,7 +3012,7 @@ type CWorkshop_SetItemPaymentRules_Response struct { func (x *CWorkshop_SetItemPaymentRules_Response) Reset() { *x = CWorkshop_SetItemPaymentRules_Response{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[41] + mi := &file_gcsdk_gcmessages_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2962,7 +3025,7 @@ func (x *CWorkshop_SetItemPaymentRules_Response) String() string { func (*CWorkshop_SetItemPaymentRules_Response) ProtoMessage() {} func (x *CWorkshop_SetItemPaymentRules_Response) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[41] + mi := &file_gcsdk_gcmessages_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2975,7 +3038,7 @@ func (x *CWorkshop_SetItemPaymentRules_Response) ProtoReflect() protoreflect.Mes // Deprecated: Use CWorkshop_SetItemPaymentRules_Response.ProtoReflect.Descriptor instead. func (*CWorkshop_SetItemPaymentRules_Response) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{41} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{42} } func (x *CWorkshop_SetItemPaymentRules_Response) GetValidationErrors() []string { @@ -3007,7 +3070,7 @@ type CCommunity_ClanAnnouncementInfo struct { func (x *CCommunity_ClanAnnouncementInfo) Reset() { *x = CCommunity_ClanAnnouncementInfo{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[42] + mi := &file_gcsdk_gcmessages_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3020,7 +3083,7 @@ func (x *CCommunity_ClanAnnouncementInfo) String() string { func (*CCommunity_ClanAnnouncementInfo) ProtoMessage() {} func (x *CCommunity_ClanAnnouncementInfo) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[42] + mi := &file_gcsdk_gcmessages_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3033,7 +3096,7 @@ func (x *CCommunity_ClanAnnouncementInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CCommunity_ClanAnnouncementInfo.ProtoReflect.Descriptor instead. func (*CCommunity_ClanAnnouncementInfo) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{42} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{43} } func (x *CCommunity_ClanAnnouncementInfo) GetGid() uint64 { @@ -3143,7 +3206,7 @@ type CCommunity_GetClanAnnouncements_Request struct { func (x *CCommunity_GetClanAnnouncements_Request) Reset() { *x = CCommunity_GetClanAnnouncements_Request{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[43] + mi := &file_gcsdk_gcmessages_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3156,7 +3219,7 @@ func (x *CCommunity_GetClanAnnouncements_Request) String() string { func (*CCommunity_GetClanAnnouncements_Request) ProtoMessage() {} func (x *CCommunity_GetClanAnnouncements_Request) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[43] + mi := &file_gcsdk_gcmessages_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3169,7 +3232,7 @@ func (x *CCommunity_GetClanAnnouncements_Request) ProtoReflect() protoreflect.Me // Deprecated: Use CCommunity_GetClanAnnouncements_Request.ProtoReflect.Descriptor instead. func (*CCommunity_GetClanAnnouncements_Request) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{43} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{44} } func (x *CCommunity_GetClanAnnouncements_Request) GetSteamid() uint64 { @@ -3276,7 +3339,7 @@ type CCommunity_GetClanAnnouncements_Response struct { func (x *CCommunity_GetClanAnnouncements_Response) Reset() { *x = CCommunity_GetClanAnnouncements_Response{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[44] + mi := &file_gcsdk_gcmessages_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3289,7 +3352,7 @@ func (x *CCommunity_GetClanAnnouncements_Response) String() string { func (*CCommunity_GetClanAnnouncements_Response) ProtoMessage() {} func (x *CCommunity_GetClanAnnouncements_Response) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[44] + mi := &file_gcsdk_gcmessages_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3302,7 +3365,7 @@ func (x *CCommunity_GetClanAnnouncements_Response) ProtoReflect() protoreflect.M // Deprecated: Use CCommunity_GetClanAnnouncements_Response.ProtoReflect.Descriptor instead. func (*CCommunity_GetClanAnnouncements_Response) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{44} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{45} } func (x *CCommunity_GetClanAnnouncements_Response) GetMaxchars() uint32 { @@ -3340,7 +3403,7 @@ type CBroadcast_PostGameDataFrame_Request struct { func (x *CBroadcast_PostGameDataFrame_Request) Reset() { *x = CBroadcast_PostGameDataFrame_Request{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[45] + mi := &file_gcsdk_gcmessages_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3353,7 +3416,7 @@ func (x *CBroadcast_PostGameDataFrame_Request) String() string { func (*CBroadcast_PostGameDataFrame_Request) ProtoMessage() {} func (x *CBroadcast_PostGameDataFrame_Request) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[45] + mi := &file_gcsdk_gcmessages_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3366,7 +3429,7 @@ func (x *CBroadcast_PostGameDataFrame_Request) ProtoReflect() protoreflect.Messa // Deprecated: Use CBroadcast_PostGameDataFrame_Request.ProtoReflect.Descriptor instead. func (*CBroadcast_PostGameDataFrame_Request) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{45} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{46} } func (x *CBroadcast_PostGameDataFrame_Request) GetAppid() uint32 { @@ -3410,7 +3473,7 @@ type CMsgSerializedSOCache struct { func (x *CMsgSerializedSOCache) Reset() { *x = CMsgSerializedSOCache{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[46] + mi := &file_gcsdk_gcmessages_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3423,7 +3486,7 @@ func (x *CMsgSerializedSOCache) String() string { func (*CMsgSerializedSOCache) ProtoMessage() {} func (x *CMsgSerializedSOCache) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[46] + mi := &file_gcsdk_gcmessages_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3436,7 +3499,7 @@ func (x *CMsgSerializedSOCache) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSerializedSOCache.ProtoReflect.Descriptor instead. func (*CMsgSerializedSOCache) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{46} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{47} } func (x *CMsgSerializedSOCache) GetFileVersion() uint32 { @@ -3472,7 +3535,7 @@ type CMsgGCToClientPollConvarRequest struct { func (x *CMsgGCToClientPollConvarRequest) Reset() { *x = CMsgGCToClientPollConvarRequest{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[47] + mi := &file_gcsdk_gcmessages_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3485,7 +3548,7 @@ func (x *CMsgGCToClientPollConvarRequest) String() string { func (*CMsgGCToClientPollConvarRequest) ProtoMessage() {} func (x *CMsgGCToClientPollConvarRequest) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[47] + mi := &file_gcsdk_gcmessages_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3498,7 +3561,7 @@ func (x *CMsgGCToClientPollConvarRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPollConvarRequest.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPollConvarRequest) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{47} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{48} } func (x *CMsgGCToClientPollConvarRequest) GetConvarName() string { @@ -3527,7 +3590,7 @@ type CMsgGCToClientPollConvarResponse struct { func (x *CMsgGCToClientPollConvarResponse) Reset() { *x = CMsgGCToClientPollConvarResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[48] + mi := &file_gcsdk_gcmessages_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3540,7 +3603,7 @@ func (x *CMsgGCToClientPollConvarResponse) String() string { func (*CMsgGCToClientPollConvarResponse) ProtoMessage() {} func (x *CMsgGCToClientPollConvarResponse) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[48] + mi := &file_gcsdk_gcmessages_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3553,7 +3616,7 @@ func (x *CMsgGCToClientPollConvarResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToClientPollConvarResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToClientPollConvarResponse) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{48} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{49} } func (x *CMsgGCToClientPollConvarResponse) GetPollId() uint32 { @@ -3582,7 +3645,7 @@ type CGCMsgCompressedMsgToClient struct { func (x *CGCMsgCompressedMsgToClient) Reset() { *x = CGCMsgCompressedMsgToClient{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[49] + mi := &file_gcsdk_gcmessages_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3595,7 +3658,7 @@ func (x *CGCMsgCompressedMsgToClient) String() string { func (*CGCMsgCompressedMsgToClient) ProtoMessage() {} func (x *CGCMsgCompressedMsgToClient) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[49] + mi := &file_gcsdk_gcmessages_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3608,7 +3671,7 @@ func (x *CGCMsgCompressedMsgToClient) ProtoReflect() protoreflect.Message { // Deprecated: Use CGCMsgCompressedMsgToClient.ProtoReflect.Descriptor instead. func (*CGCMsgCompressedMsgToClient) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{49} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{50} } func (x *CGCMsgCompressedMsgToClient) GetMsgId() uint32 { @@ -3640,7 +3703,7 @@ type CMsgGCToGCMasterBroadcastMessage struct { func (x *CMsgGCToGCMasterBroadcastMessage) Reset() { *x = CMsgGCToGCMasterBroadcastMessage{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[50] + mi := &file_gcsdk_gcmessages_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3653,7 +3716,7 @@ func (x *CMsgGCToGCMasterBroadcastMessage) String() string { func (*CMsgGCToGCMasterBroadcastMessage) ProtoMessage() {} func (x *CMsgGCToGCMasterBroadcastMessage) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[50] + mi := &file_gcsdk_gcmessages_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3666,7 +3729,7 @@ func (x *CMsgGCToGCMasterBroadcastMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCMasterBroadcastMessage.ProtoReflect.Descriptor instead. func (*CMsgGCToGCMasterBroadcastMessage) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{50} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{51} } func (x *CMsgGCToGCMasterBroadcastMessage) GetUsersPerSecond() uint32 { @@ -3718,7 +3781,7 @@ type CMsgGCToGCMasterSubscribeToCache struct { func (x *CMsgGCToGCMasterSubscribeToCache) Reset() { *x = CMsgGCToGCMasterSubscribeToCache{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[51] + mi := &file_gcsdk_gcmessages_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3731,7 +3794,7 @@ func (x *CMsgGCToGCMasterSubscribeToCache) String() string { func (*CMsgGCToGCMasterSubscribeToCache) ProtoMessage() {} func (x *CMsgGCToGCMasterSubscribeToCache) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[51] + mi := &file_gcsdk_gcmessages_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3744,7 +3807,7 @@ func (x *CMsgGCToGCMasterSubscribeToCache) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCMasterSubscribeToCache.ProtoReflect.Descriptor instead. func (*CMsgGCToGCMasterSubscribeToCache) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{51} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{52} } func (x *CMsgGCToGCMasterSubscribeToCache) GetSoidType() uint32 { @@ -3784,7 +3847,7 @@ type CMsgGCToGCMasterSubscribeToCacheResponse struct { func (x *CMsgGCToGCMasterSubscribeToCacheResponse) Reset() { *x = CMsgGCToGCMasterSubscribeToCacheResponse{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[52] + mi := &file_gcsdk_gcmessages_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3797,7 +3860,7 @@ func (x *CMsgGCToGCMasterSubscribeToCacheResponse) String() string { func (*CMsgGCToGCMasterSubscribeToCacheResponse) ProtoMessage() {} func (x *CMsgGCToGCMasterSubscribeToCacheResponse) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[52] + mi := &file_gcsdk_gcmessages_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3810,7 +3873,7 @@ func (x *CMsgGCToGCMasterSubscribeToCacheResponse) ProtoReflect() protoreflect.M // Deprecated: Use CMsgGCToGCMasterSubscribeToCacheResponse.ProtoReflect.Descriptor instead. func (*CMsgGCToGCMasterSubscribeToCacheResponse) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{52} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{53} } type CMsgGCToGCMasterSubscribeToCacheAsync struct { @@ -3824,7 +3887,7 @@ type CMsgGCToGCMasterSubscribeToCacheAsync struct { func (x *CMsgGCToGCMasterSubscribeToCacheAsync) Reset() { *x = CMsgGCToGCMasterSubscribeToCacheAsync{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[53] + mi := &file_gcsdk_gcmessages_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3837,7 +3900,7 @@ func (x *CMsgGCToGCMasterSubscribeToCacheAsync) String() string { func (*CMsgGCToGCMasterSubscribeToCacheAsync) ProtoMessage() {} func (x *CMsgGCToGCMasterSubscribeToCacheAsync) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[53] + mi := &file_gcsdk_gcmessages_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3850,7 +3913,7 @@ func (x *CMsgGCToGCMasterSubscribeToCacheAsync) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgGCToGCMasterSubscribeToCacheAsync.ProtoReflect.Descriptor instead. func (*CMsgGCToGCMasterSubscribeToCacheAsync) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{53} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{54} } func (x *CMsgGCToGCMasterSubscribeToCacheAsync) GetSubscribeMsg() *CMsgGCToGCMasterSubscribeToCache { @@ -3874,7 +3937,7 @@ type CMsgGCToGCMasterUnsubscribeFromCache struct { func (x *CMsgGCToGCMasterUnsubscribeFromCache) Reset() { *x = CMsgGCToGCMasterUnsubscribeFromCache{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[54] + mi := &file_gcsdk_gcmessages_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3887,7 +3950,7 @@ func (x *CMsgGCToGCMasterUnsubscribeFromCache) String() string { func (*CMsgGCToGCMasterUnsubscribeFromCache) ProtoMessage() {} func (x *CMsgGCToGCMasterUnsubscribeFromCache) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[54] + mi := &file_gcsdk_gcmessages_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3900,7 +3963,7 @@ func (x *CMsgGCToGCMasterUnsubscribeFromCache) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgGCToGCMasterUnsubscribeFromCache.ProtoReflect.Descriptor instead. func (*CMsgGCToGCMasterUnsubscribeFromCache) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{54} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{55} } func (x *CMsgGCToGCMasterUnsubscribeFromCache) GetSoidType() uint32 { @@ -3943,7 +4006,7 @@ type CMsgGCToGCMasterDestroyCache struct { func (x *CMsgGCToGCMasterDestroyCache) Reset() { *x = CMsgGCToGCMasterDestroyCache{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[55] + mi := &file_gcsdk_gcmessages_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3956,7 +4019,7 @@ func (x *CMsgGCToGCMasterDestroyCache) String() string { func (*CMsgGCToGCMasterDestroyCache) ProtoMessage() {} func (x *CMsgGCToGCMasterDestroyCache) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[55] + mi := &file_gcsdk_gcmessages_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3969,7 +4032,7 @@ func (x *CMsgGCToGCMasterDestroyCache) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgGCToGCMasterDestroyCache.ProtoReflect.Descriptor instead. func (*CMsgGCToGCMasterDestroyCache) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{55} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{56} } func (x *CMsgGCToGCMasterDestroyCache) GetSoidType() uint32 { @@ -3986,6 +4049,69 @@ func (x *CMsgGCToGCMasterDestroyCache) GetSoidId() uint64 { return 0 } +type CMsgSteamLearnServerInfo_ProjectInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ProjectId *uint32 `protobuf:"varint,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + SnapshotPublishedVersion *uint32 `protobuf:"varint,2,opt,name=snapshot_published_version,json=snapshotPublishedVersion" json:"snapshot_published_version,omitempty"` + InferencePublishedVersion *uint32 `protobuf:"varint,3,opt,name=inference_published_version,json=inferencePublishedVersion" json:"inference_published_version,omitempty"` +} + +func (x *CMsgSteamLearnServerInfo_ProjectInfo) Reset() { + *x = CMsgSteamLearnServerInfo_ProjectInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_gcsdk_gcmessages_proto_msgTypes[57] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearnServerInfo_ProjectInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearnServerInfo_ProjectInfo) ProtoMessage() {} + +func (x *CMsgSteamLearnServerInfo_ProjectInfo) ProtoReflect() protoreflect.Message { + mi := &file_gcsdk_gcmessages_proto_msgTypes[57] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearnServerInfo_ProjectInfo.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnServerInfo_ProjectInfo) Descriptor() ([]byte, []int) { + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{1, 0} +} + +func (x *CMsgSteamLearnServerInfo_ProjectInfo) GetProjectId() uint32 { + if x != nil && x.ProjectId != nil { + return *x.ProjectId + } + return 0 +} + +func (x *CMsgSteamLearnServerInfo_ProjectInfo) GetSnapshotPublishedVersion() uint32 { + if x != nil && x.SnapshotPublishedVersion != nil { + return *x.SnapshotPublishedVersion + } + return 0 +} + +func (x *CMsgSteamLearnServerInfo_ProjectInfo) GetInferencePublishedVersion() uint32 { + if x != nil && x.InferencePublishedVersion != nil { + return *x.InferencePublishedVersion + } + return 0 +} + type CMsgSDOAssert_Request struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3998,7 +4124,7 @@ type CMsgSDOAssert_Request struct { func (x *CMsgSDOAssert_Request) Reset() { *x = CMsgSDOAssert_Request{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[56] + mi := &file_gcsdk_gcmessages_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4011,7 +4137,7 @@ func (x *CMsgSDOAssert_Request) String() string { func (*CMsgSDOAssert_Request) ProtoMessage() {} func (x *CMsgSDOAssert_Request) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[56] + mi := &file_gcsdk_gcmessages_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4024,7 +4150,7 @@ func (x *CMsgSDOAssert_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSDOAssert_Request.ProtoReflect.Descriptor instead. func (*CMsgSDOAssert_Request) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{3, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{4, 0} } func (x *CMsgSDOAssert_Request) GetKey() []uint64 { @@ -4053,7 +4179,7 @@ type CMsgSOMultipleObjects_SingleObject struct { func (x *CMsgSOMultipleObjects_SingleObject) Reset() { *x = CMsgSOMultipleObjects_SingleObject{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[57] + mi := &file_gcsdk_gcmessages_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4066,7 +4192,7 @@ func (x *CMsgSOMultipleObjects_SingleObject) String() string { func (*CMsgSOMultipleObjects_SingleObject) ProtoMessage() {} func (x *CMsgSOMultipleObjects_SingleObject) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[57] + mi := &file_gcsdk_gcmessages_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4079,7 +4205,7 @@ func (x *CMsgSOMultipleObjects_SingleObject) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgSOMultipleObjects_SingleObject.ProtoReflect.Descriptor instead. func (*CMsgSOMultipleObjects_SingleObject) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{6, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{7, 0} } func (x *CMsgSOMultipleObjects_SingleObject) GetTypeId() int32 { @@ -4108,7 +4234,7 @@ type CMsgSOCacheSubscribed_SubscribedType struct { func (x *CMsgSOCacheSubscribed_SubscribedType) Reset() { *x = CMsgSOCacheSubscribed_SubscribedType{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[58] + mi := &file_gcsdk_gcmessages_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4121,7 +4247,7 @@ func (x *CMsgSOCacheSubscribed_SubscribedType) String() string { func (*CMsgSOCacheSubscribed_SubscribedType) ProtoMessage() {} func (x *CMsgSOCacheSubscribed_SubscribedType) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[58] + mi := &file_gcsdk_gcmessages_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4134,7 +4260,7 @@ func (x *CMsgSOCacheSubscribed_SubscribedType) ProtoReflect() protoreflect.Messa // Deprecated: Use CMsgSOCacheSubscribed_SubscribedType.ProtoReflect.Descriptor instead. func (*CMsgSOCacheSubscribed_SubscribedType) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{7, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{8, 0} } func (x *CMsgSOCacheSubscribed_SubscribedType) GetTypeId() int32 { @@ -4163,7 +4289,7 @@ type CGCToGCMsgMasterAck_Process struct { func (x *CGCToGCMsgMasterAck_Process) Reset() { *x = CGCToGCMsgMasterAck_Process{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[59] + mi := &file_gcsdk_gcmessages_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4176,7 +4302,7 @@ func (x *CGCToGCMsgMasterAck_Process) String() string { func (*CGCToGCMsgMasterAck_Process) ProtoMessage() {} func (x *CGCToGCMsgMasterAck_Process) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[59] + mi := &file_gcsdk_gcmessages_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4189,7 +4315,7 @@ func (x *CGCToGCMsgMasterAck_Process) ProtoReflect() protoreflect.Message { // Deprecated: Use CGCToGCMsgMasterAck_Process.ProtoReflect.Descriptor instead. func (*CGCToGCMsgMasterAck_Process) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{15, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{16, 0} } func (x *CGCToGCMsgMasterAck_Process) GetDirIndex() int32 { @@ -4218,7 +4344,7 @@ type CGCToGCMsgMasterStartupComplete_GCInfo struct { func (x *CGCToGCMsgMasterStartupComplete_GCInfo) Reset() { *x = CGCToGCMsgMasterStartupComplete_GCInfo{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[60] + mi := &file_gcsdk_gcmessages_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4231,7 +4357,7 @@ func (x *CGCToGCMsgMasterStartupComplete_GCInfo) String() string { func (*CGCToGCMsgMasterStartupComplete_GCInfo) ProtoMessage() {} func (x *CGCToGCMsgMasterStartupComplete_GCInfo) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[60] + mi := &file_gcsdk_gcmessages_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4244,7 +4370,7 @@ func (x *CGCToGCMsgMasterStartupComplete_GCInfo) ProtoReflect() protoreflect.Mes // Deprecated: Use CGCToGCMsgMasterStartupComplete_GCInfo.ProtoReflect.Descriptor instead. func (*CGCToGCMsgMasterStartupComplete_GCInfo) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{19, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{20, 0} } func (x *CGCToGCMsgMasterStartupComplete_GCInfo) GetDirIndex() int32 { @@ -4274,7 +4400,7 @@ type CMsgGCUpdateSubGCSessionInfo_CMsgUpdate struct { func (x *CMsgGCUpdateSubGCSessionInfo_CMsgUpdate) Reset() { *x = CMsgGCUpdateSubGCSessionInfo_CMsgUpdate{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[61] + mi := &file_gcsdk_gcmessages_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4287,7 +4413,7 @@ func (x *CMsgGCUpdateSubGCSessionInfo_CMsgUpdate) String() string { func (*CMsgGCUpdateSubGCSessionInfo_CMsgUpdate) ProtoMessage() {} func (x *CMsgGCUpdateSubGCSessionInfo_CMsgUpdate) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[61] + mi := &file_gcsdk_gcmessages_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4300,7 +4426,7 @@ func (x *CMsgGCUpdateSubGCSessionInfo_CMsgUpdate) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgGCUpdateSubGCSessionInfo_CMsgUpdate.ProtoReflect.Descriptor instead. func (*CMsgGCUpdateSubGCSessionInfo_CMsgUpdate) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{22, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{23, 0} } func (x *CMsgGCUpdateSubGCSessionInfo_CMsgUpdate) GetSteamid() uint64 { @@ -4337,7 +4463,7 @@ type CMsgClientWelcome_Location struct { func (x *CMsgClientWelcome_Location) Reset() { *x = CMsgClientWelcome_Location{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[62] + mi := &file_gcsdk_gcmessages_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4350,7 +4476,7 @@ func (x *CMsgClientWelcome_Location) String() string { func (*CMsgClientWelcome_Location) ProtoMessage() {} func (x *CMsgClientWelcome_Location) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[62] + mi := &file_gcsdk_gcmessages_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4363,7 +4489,7 @@ func (x *CMsgClientWelcome_Location) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgClientWelcome_Location.ProtoReflect.Descriptor instead. func (*CMsgClientWelcome_Location) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{27, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{28, 0} } func (x *CMsgClientWelcome_Location) GetLatitude() float32 { @@ -4399,7 +4525,7 @@ type CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions struct { func (x *CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions) Reset() { *x = CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[63] + mi := &file_gcsdk_gcmessages_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4412,7 +4538,7 @@ func (x *CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions) String() string { func (*CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions) ProtoMessage() {} func (x *CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[63] + mi := &file_gcsdk_gcmessages_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4425,7 +4551,7 @@ func (x *CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions) ProtoReflect() protoreflec // Deprecated: Use CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions.ProtoReflect.Descriptor instead. func (*CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{29, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{30, 0} } func (x *CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions) GetServiceId() uint32 { @@ -4454,7 +4580,7 @@ type CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription struct { func (x *CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription) Reset() { *x = CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[64] + mi := &file_gcsdk_gcmessages_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4467,7 +4593,7 @@ func (x *CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription) Strin func (*CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription) ProtoMessage() {} func (x *CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[64] + mi := &file_gcsdk_gcmessages_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4480,7 +4606,7 @@ func (x *CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription) Proto // Deprecated: Use CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription.ProtoReflect.Descriptor instead. func (*CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{37, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{38, 0} } func (x *CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription) GetGameitemid() uint32 { @@ -4509,7 +4635,7 @@ type CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock st func (x *CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock) Reset() { *x = CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[65] + mi := &file_gcsdk_gcmessages_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4522,7 +4648,7 @@ func (x *CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBloc func (*CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock) ProtoMessage() {} func (x *CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[65] + mi := &file_gcsdk_gcmessages_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4535,7 +4661,7 @@ func (x *CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBloc // Deprecated: Use CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock.ProtoReflect.Descriptor instead. func (*CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{37, 1} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{38, 1} } func (x *CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock) GetLanguage() string { @@ -4566,7 +4692,7 @@ type CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule struct { func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule) Reset() { *x = CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[66] + mi := &file_gcsdk_gcmessages_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4579,7 +4705,7 @@ func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule) String() func (*CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule) ProtoMessage() {} func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[66] + mi := &file_gcsdk_gcmessages_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4592,7 +4718,7 @@ func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule) ProtoRef // Deprecated: Use CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule.ProtoReflect.Descriptor instead. func (*CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{40, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{41, 0} } func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule) GetWorkshopFileId() uint64 { @@ -4635,7 +4761,7 @@ type CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule struct { func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule) Reset() { *x = CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[67] + mi := &file_gcsdk_gcmessages_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4648,7 +4774,7 @@ func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule) String func (*CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule) ProtoMessage() {} func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[67] + mi := &file_gcsdk_gcmessages_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4661,7 +4787,7 @@ func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule) ProtoR // Deprecated: Use CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule.ProtoReflect.Descriptor instead. func (*CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{40, 1} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{41, 1} } func (x *CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule) GetWorkshopFileId() uint64 { @@ -4691,7 +4817,7 @@ type CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule struct { func (x *CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule) Reset() { *x = CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[68] + mi := &file_gcsdk_gcmessages_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4704,7 +4830,7 @@ func (x *CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule) String() func (*CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule) ProtoMessage() {} func (x *CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[68] + mi := &file_gcsdk_gcmessages_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4717,7 +4843,7 @@ func (x *CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule) ProtoRefl // Deprecated: Use CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule.ProtoReflect.Descriptor instead. func (*CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{40, 2} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{41, 2} } func (x *CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule) GetAccountId() uint32 { @@ -4754,7 +4880,7 @@ type CMsgSerializedSOCache_TypeCache struct { func (x *CMsgSerializedSOCache_TypeCache) Reset() { *x = CMsgSerializedSOCache_TypeCache{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[69] + mi := &file_gcsdk_gcmessages_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4767,7 +4893,7 @@ func (x *CMsgSerializedSOCache_TypeCache) String() string { func (*CMsgSerializedSOCache_TypeCache) ProtoMessage() {} func (x *CMsgSerializedSOCache_TypeCache) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[69] + mi := &file_gcsdk_gcmessages_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4780,7 +4906,7 @@ func (x *CMsgSerializedSOCache_TypeCache) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSerializedSOCache_TypeCache.ProtoReflect.Descriptor instead. func (*CMsgSerializedSOCache_TypeCache) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{46, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{47, 0} } func (x *CMsgSerializedSOCache_TypeCache) GetType() uint32 { @@ -4818,7 +4944,7 @@ type CMsgSerializedSOCache_Cache struct { func (x *CMsgSerializedSOCache_Cache) Reset() { *x = CMsgSerializedSOCache_Cache{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[70] + mi := &file_gcsdk_gcmessages_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4831,7 +4957,7 @@ func (x *CMsgSerializedSOCache_Cache) String() string { func (*CMsgSerializedSOCache_Cache) ProtoMessage() {} func (x *CMsgSerializedSOCache_Cache) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[70] + mi := &file_gcsdk_gcmessages_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4844,7 +4970,7 @@ func (x *CMsgSerializedSOCache_Cache) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSerializedSOCache_Cache.ProtoReflect.Descriptor instead. func (*CMsgSerializedSOCache_Cache) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{46, 1} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{47, 1} } func (x *CMsgSerializedSOCache_Cache) GetType() uint32 { @@ -4887,7 +5013,7 @@ type CMsgSerializedSOCache_Cache_Version struct { func (x *CMsgSerializedSOCache_Cache_Version) Reset() { *x = CMsgSerializedSOCache_Cache_Version{} if protoimpl.UnsafeEnabled { - mi := &file_gcsdk_gcmessages_proto_msgTypes[71] + mi := &file_gcsdk_gcmessages_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4900,7 +5026,7 @@ func (x *CMsgSerializedSOCache_Cache_Version) String() string { func (*CMsgSerializedSOCache_Cache_Version) ProtoMessage() {} func (x *CMsgSerializedSOCache_Cache_Version) ProtoReflect() protoreflect.Message { - mi := &file_gcsdk_gcmessages_proto_msgTypes[71] + mi := &file_gcsdk_gcmessages_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4913,7 +5039,7 @@ func (x *CMsgSerializedSOCache_Cache_Version) ProtoReflect() protoreflect.Messag // Deprecated: Use CMsgSerializedSOCache_Cache_Version.ProtoReflect.Descriptor instead. func (*CMsgSerializedSOCache_Cache_Version) Descriptor() ([]byte, []int) { - return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{46, 1, 0} + return file_gcsdk_gcmessages_proto_rawDescGZIP(), []int{47, 1, 0} } func (x *CMsgSerializedSOCache_Cache_Version) GetService() uint32 { @@ -4947,751 +5073,777 @@ var file_gcsdk_gcmessages_proto_rawDesc = []byte{ 0x73, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6d, 0x73, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x43, - 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x22, 0x5b, 0x0a, 0x13, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x41, 0x73, 0x73, 0x65, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0x2c, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x43, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, - 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, - 0x6d, 0x61, 0x6e, 0x64, 0x22, 0xa7, 0x01, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x44, 0x4f, - 0x41, 0x73, 0x73, 0x65, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x64, 0x6f, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x64, 0x6f, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x37, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x44, 0x4f, 0x41, 0x73, 0x73, 0x65, 0x72, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0x42, 0x0a, 0x07, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6a, 0x6f, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x22, 0x33, - 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x02, 0x69, 0x64, 0x22, 0xbb, 0x01, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x53, 0x69, - 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, - 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x79, 0x70, - 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, - 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, - 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, - 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, - 0x64, 0x22, 0xd1, 0x03, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x4d, 0x75, 0x6c, 0x74, - 0x69, 0x70, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x53, 0x0a, 0x10, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x4f, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x73, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, - 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x0d, 0x6f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x4d, - 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x53, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x0c, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x73, 0x41, 0x64, 0x64, 0x65, 0x64, 0x12, 0x51, 0x0a, 0x0f, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x05, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, - 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, - 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x0e, 0x6f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x0a, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, - 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x1a, - 0x54, 0x0a, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, - 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x61, 0x74, 0x61, 0x3a, 0x0a, 0x80, 0xa6, 0x1d, 0x80, 0x02, - 0x88, 0xa6, 0x1d, 0x80, 0x08, 0x22, 0xdc, 0x02, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, - 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x12, - 0x44, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x2e, 0x53, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, - 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, - 0x6f, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, - 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6c, 0x69, - 0x73, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x73, 0x79, 0x6e, - 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x4a, 0x0a, 0x0e, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, - 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x79, 0x70, - 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x44, 0x61, 0x74, 0x61, 0x22, 0xd2, 0x01, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x55, 0x70, - 0x54, 0x6f, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, - 0x53, 0x6f, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6c, - 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x73, 0x79, - 0x6e, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x0a, 0x17, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x22, 0x95, 0x03, 0x0a, 0x18, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x34, 0x0a, 0x16, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x0d, + 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x73, 0x12, 0x4f, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, + 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x73, 0x1a, 0xaa, 0x01, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x1a, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x3e, 0x0a, 0x1b, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x22, 0x5b, 0x0a, 0x13, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x41, 0x73, 0x73, 0x65, 0x72, + 0x74, 0x4a, 0x6f, 0x62, 0x44, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0x2c, + 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, + 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0xa7, 0x01, 0x0a, + 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x44, 0x4f, 0x41, 0x73, 0x73, 0x65, 0x72, 0x74, 0x12, 0x19, + 0x0a, 0x08, 0x73, 0x64, 0x6f, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x73, 0x64, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x37, 0x0a, 0x08, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x44, 0x4f, 0x41, 0x73, 0x73, 0x65, 0x72, 0x74, + 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x73, 0x1a, 0x42, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6a, 0x6f, + 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x22, 0x33, 0x0a, 0x0d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, + 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x22, 0xbb, 0x01, 0x0a, 0x12, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, + 0x73, 0x6f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, + 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0xd1, 0x03, 0x0a, 0x15, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x4f, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x73, 0x12, 0x53, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x5f, 0x6d, + 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x4d, 0x75, 0x6c, 0x74, 0x69, + 0x70, 0x6c, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, + 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, + 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x0d, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x5f, 0x61, 0x64, + 0x64, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x4f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x52, 0x0c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x41, 0x64, 0x64, 0x65, + 0x64, 0x12, 0x51, 0x0a, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x64, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, + 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x52, 0x0e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, + 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, - 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, 0x22, 0xd1, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x79, 0x6e, - 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, - 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x0a, 0x1e, + 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x1a, 0x54, 0x0a, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, + 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, + 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x61, 0x74, + 0x61, 0x3a, 0x0a, 0x80, 0xa6, 0x1d, 0x80, 0x02, 0x88, 0xa6, 0x1d, 0x80, 0x08, 0x22, 0xdc, 0x02, + 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x12, 0x44, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x12, 0x32, - 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, - 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, - 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x12, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, - 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x22, 0x68, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x4d, 0x75, 0x6c, 0x74, - 0x69, 0x70, 0x6c, 0x65, 0x78, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x6d, 0x73, 0x67, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, - 0x73, 0x67, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, - 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x06, 0x52, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x73, 0x22, 0x36, 0x0a, 0x17, - 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x75, 0x62, 0x47, 0x43, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x5f, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x69, 0x72, 0x49, - 0x6e, 0x64, 0x65, 0x78, 0x22, 0x88, 0x02, 0x0a, 0x13, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, - 0x64, 0x69, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x64, 0x69, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x63, - 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, - 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x3f, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x63, 0x6b, 0x2e, 0x50, 0x72, - 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, - 0x1a, 0x4d, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x64, - 0x69, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x64, 0x69, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x79, 0x70, 0x65, - 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, - 0x52, 0x0d, 0x74, 0x79, 0x70, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x22, - 0x38, 0x0a, 0x1c, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x73, - 0x74, 0x65, 0x72, 0x41, 0x63, 0x6b, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x49, 0x0a, 0x19, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x69, - 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x75, 0x70, 0x22, 0x3d, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, - 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x22, 0xb2, 0x01, 0x0a, 0x1f, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, - 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x45, 0x0a, 0x07, 0x67, 0x63, 0x5f, 0x69, 0x6e, - 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x2e, - 0x47, 0x43, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x67, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x48, - 0x0a, 0x06, 0x47, 0x43, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x69, 0x72, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x63, - 0x68, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x6b, 0x0a, 0x10, 0x43, 0x47, 0x43, 0x54, - 0x6f, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, - 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, - 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6e, 0x65, 0x74, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x53, 0x0a, 0x15, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x4d, 0x73, 0x67, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x74, - 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, - 0x6e, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xb9, 0x01, 0x0a, 0x1c, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x47, 0x43, - 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x47, 0x0a, 0x07, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x53, 0x75, 0x62, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x07, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x73, 0x1a, 0x50, 0x0a, 0x0a, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x02, 0x69, 0x70, 0x12, 0x18, 0x0a, 0x07, - 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x74, - 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x22, 0x39, 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x75, 0x62, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, - 0x64, 0x22, 0x7f, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x53, 0x75, 0x62, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x02, 0x69, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x72, - 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x74, 0x72, 0x75, - 0x73, 0x74, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x22, 0xaa, 0x01, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x48, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, - 0x04, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, + 0x72, 0x69, 0x62, 0x65, 0x64, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x18, 0x0a, + 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, + 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, - 0x52, 0x04, 0x73, 0x6f, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, - 0x2e, 0x0a, 0x13, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, - 0xb1, 0x07, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, - 0x6c, 0x6c, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, - 0x15, 0x73, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x68, 0x61, 0x76, 0x65, 0x5f, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, - 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x73, 0x6f, 0x63, 0x61, - 0x63, 0x68, 0x65, 0x48, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x5f, 0x6e, 0x65, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x12, - 0x41, 0x0a, 0x0f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, - 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x52, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, - 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, - 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x6e, 0x67, - 0x75, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x06, 0x65, 0x6e, - 0x67, 0x69, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x45, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, - 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x73, 0x74, 0x65, 0x61, 0x6d, - 0x64, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x64, 0x61, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x61, 0x6d, - 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x67, 0x61, 0x6d, - 0x65, 0x4d, 0x73, 0x67, 0x12, 0x17, 0x0a, 0x07, 0x6f, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, - 0x0d, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, - 0x65, 0x6d, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x73, - 0x74, 0x65, 0x6d, 0x5f, 0x72, 0x65, 0x71, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x21, - 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x57, 0x69, 0x64, 0x74, - 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x5f, 0x68, 0x65, 0x69, 0x67, - 0x68, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, - 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, - 0x5f, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, - 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x12, 0x21, 0x0a, - 0x0c, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x57, 0x69, 0x64, 0x74, 0x68, - 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, - 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x48, - 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x77, 0x69, - 0x64, 0x74, 0x68, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x77, 0x61, 0x70, 0x57, - 0x69, 0x64, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x68, 0x65, 0x69, - 0x67, 0x68, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x77, 0x61, 0x70, 0x48, - 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, - 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x12, 0x31, 0x0a, 0x15, 0x69, - 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x73, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x23, - 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4e, - 0x61, 0x6d, 0x65, 0x22, 0xea, 0x07, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x5b, 0x0a, 0x1b, 0x6f, 0x75, 0x74, 0x6f, 0x66, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, - 0x65, 0x64, 0x52, 0x19, 0x6f, 0x75, 0x74, 0x6f, 0x66, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x60, 0x0a, - 0x1a, 0x75, 0x70, 0x74, 0x6f, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x18, 0x75, 0x70, 0x74, 0x6f, 0x64, 0x61, 0x74, 0x65, 0x53, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, - 0x3c, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, - 0x0d, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x61, 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, - 0x79, 0x12, 0x35, 0x0a, 0x17, 0x67, 0x63, 0x5f, 0x73, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x14, 0x67, 0x63, 0x53, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x46, 0x69, 0x6c, - 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x78, 0x6e, 0x5f, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x74, 0x78, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, - 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x32, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, - 0x32, 0x12, 0x3f, 0x0a, 0x1c, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x33, 0x32, 0x5f, 0x67, 0x63, 0x5f, - 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x33, 0x32, - 0x47, 0x63, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x18, - 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x6c, 0x61, - 0x6e, 0x63, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x33, 0x0a, 0x16, 0x68, 0x61, 0x73, - 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x5f, - 0x73, 0x73, 0x61, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x68, 0x61, 0x73, 0x41, 0x63, - 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x53, 0x73, 0x61, 0x12, 0x31, - 0x0a, 0x15, 0x69, 0x73, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, - 0x73, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, - 0x61, 0x12, 0x4c, 0x0a, 0x17, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, - 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, - 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x15, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x6c, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x73, 0x67, 0x73, 0x12, - 0x4f, 0x0a, 0x15, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x68, - 0x6d, 0x61, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, - 0x65, 0x61, 0x72, 0x6e, 0x48, 0x4d, 0x41, 0x43, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x12, 0x73, 0x74, - 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x73, - 0x1a, 0x5e, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, - 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, - 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x6f, 0x6e, 0x67, - 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6c, 0x6f, 0x6e, - 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, - 0x22, 0xaa, 0x02, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x65, - 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x71, - 0x75, 0x65, 0x75, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0d, 0x71, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x71, 0x75, 0x65, 0x75, 0x65, 0x53, 0x69, 0x7a, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x47, 0x0a, 0x20, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x72, - 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x1d, - 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0xd8, 0x02, - 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x4f, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, - 0x52, 0x0a, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, - 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, - 0x54, 0x6f, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x73, 0x79, 0x6e, 0x63, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x56, 0x0a, 0x0d, 0x68, 0x61, 0x76, 0x65, 0x5f, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x48, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x0c, 0x68, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x2a, 0x0a, 0x11, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x74, 0x6f, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x4b, 0x0a, 0x10, 0x43, - 0x4d, 0x73, 0x67, 0x48, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xa2, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x55, 0x6e, - 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0a, 0x73, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x13, 0x75, 0x6e, 0x73, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x75, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x75, 0x6e, 0x73, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x75, 0x6e, 0x73, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x22, 0x12, 0x0a, - 0x10, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, - 0x67, 0x22, 0xb4, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, - 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, - 0x56, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x47, 0x43, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x65, 0x74, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x5f, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x67, 0x65, 0x5f, 0x73, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x67, - 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, - 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x5d, 0x0a, 0x17, 0x66, 0x6f, 0x72, 0x77, - 0x61, 0x72, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x6f, 0x72, 0x77, 0x61, - 0x72, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x52, 0x15, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x26, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x21, 0x0a, + 0x0c, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x06, 0x52, 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x1a, 0x4a, 0x0a, 0x0e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, + 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0xd2, 0x01, 0x0a, + 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x55, 0x70, 0x54, 0x6f, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, + 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, + 0x72, 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, + 0x72, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x21, + 0x0a, 0x0c, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x22, 0x4d, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, + 0x55, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x0a, + 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, + 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, + 0x22, 0xd1, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, + 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, + 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x0a, 0x6f, + 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, 0x4f, + 0x77, 0x6e, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, + 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, + 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x0a, 0x1e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, + 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x12, 0x32, 0x0a, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, + 0x73, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, + 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x53, 0x6f, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x12, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x06, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x68, 0x0a, 0x16, 0x43, 0x4d, + 0x73, 0x67, 0x47, 0x43, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x78, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, + 0x6d, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x06, 0x52, 0x08, 0x73, 0x74, 0x65, 0x61, + 0x6d, 0x69, 0x64, 0x73, 0x22, 0x36, 0x0a, 0x17, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x53, 0x75, 0x62, 0x47, 0x43, 0x53, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x12, + 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x64, 0x69, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x88, 0x02, 0x0a, + 0x13, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, 0x65, + 0x72, 0x41, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x69, 0x72, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, + 0x65, 0x72, 0x41, 0x63, 0x6b, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x09, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x4d, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x69, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x79, 0x70, 0x65, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x22, 0x38, 0x0a, 0x1c, 0x43, 0x47, 0x43, 0x54, 0x6f, + 0x47, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x63, 0x6b, 0x5f, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x22, 0x49, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, + 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x12, 0x2c, + 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x49, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x22, 0x3d, 0x0a, 0x21, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, + 0x73, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xb2, 0x01, 0x0a, 0x1f, + 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, + 0x45, 0x0a, 0x07, 0x67, 0x63, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, + 0x73, 0x67, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x43, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x2e, 0x47, 0x43, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, + 0x67, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x48, 0x0a, 0x06, 0x47, 0x43, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x69, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, + 0x0c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x22, 0x6b, 0x0a, 0x10, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x6f, + 0x75, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, + 0x6e, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x0a, 0x6e, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x53, 0x0a, + 0x15, 0x43, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x52, 0x6f, 0x75, 0x74, 0x65, + 0x64, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6e, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x22, 0xb9, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x47, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x47, 0x43, 0x53, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x1a, 0x50, 0x0a, 0x0a, + 0x43, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, + 0x52, 0x02, 0x69, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x22, 0x39, + 0x0a, 0x1d, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, + 0x75, 0x62, 0x47, 0x43, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x22, 0x7f, 0x0a, 0x25, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x75, 0x62, 0x47, 0x43, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x02, + 0x69, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x07, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0xaa, 0x01, 0x0a, 0x16, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x61, 0x76, 0x65, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x04, 0x73, 0x6f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x4f, 0x49, 0x44, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x04, 0x73, 0x6f, 0x69, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, + 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xb1, 0x07, 0x0a, 0x0f, 0x43, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x15, 0x73, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, + 0x5f, 0x68, 0x61, 0x76, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x48, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x52, 0x13, 0x73, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x48, 0x61, 0x76, 0x65, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x65, 0x65, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x12, 0x41, 0x0a, 0x0f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x5f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, + 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x06, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, + 0x2f, 0x0a, 0x13, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x64, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x64, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, + 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x69, 0x64, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x07, 0x67, 0x61, 0x6d, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x17, 0x0a, 0x07, + 0x6f, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, + 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, + 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x72, 0x65, 0x71, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x79, 0x73, + 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, + 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x63, + 0x72, 0x65, 0x65, 0x6e, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x63, 0x72, + 0x65, 0x65, 0x6e, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, + 0x0a, 0x0e, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x73, 0x77, 0x61, 0x70, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x73, 0x77, 0x61, 0x70, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, + 0x73, 0x77, 0x61, 0x70, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x73, 0x77, 0x61, 0x70, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x24, 0x0a, + 0x0e, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, + 0x69, 0x6e, 0x61, 0x12, 0x31, 0x0a, 0x15, 0x69, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, + 0x63, 0x68, 0x69, 0x6e, 0x61, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x18, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x12, 0x69, 0x73, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xf0, 0x07, 0x0a, 0x11, + 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x67, + 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, + 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x5b, 0x0a, 0x1b, 0x6f, 0x75, 0x74, 0x6f, + 0x66, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, + 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, + 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x52, 0x19, 0x6f, 0x75, 0x74, 0x6f, + 0x66, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x43, + 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x60, 0x0a, 0x1a, 0x75, 0x70, 0x74, 0x6f, 0x64, 0x61, 0x74, + 0x65, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x63, + 0x68, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x18, 0x75, + 0x70, 0x74, 0x6f, 0x64, 0x61, 0x74, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, + 0x64, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x65, 0x6c, 0x63, 0x6f, + 0x6d, 0x65, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x61, + 0x76, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x35, 0x0a, 0x17, 0x67, 0x63, 0x5f, + 0x73, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x67, 0x63, 0x53, 0x6f, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x28, 0x0a, 0x10, 0x74, 0x78, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x5f, + 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x78, 0x6e, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x61, + 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x32, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, + 0x67, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x32, 0x12, 0x3f, 0x0a, 0x1c, 0x72, 0x74, 0x69, + 0x6d, 0x65, 0x33, 0x32, 0x5f, 0x67, 0x63, 0x5f, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x19, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x33, 0x32, 0x47, 0x63, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, + 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x72, + 0x6c, 0x12, 0x33, 0x0a, 0x16, 0x68, 0x61, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, + 0x64, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x5f, 0x73, 0x73, 0x61, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x13, 0x68, 0x61, 0x73, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x43, 0x68, + 0x69, 0x6e, 0x61, 0x53, 0x73, 0x61, 0x12, 0x31, 0x0a, 0x15, 0x69, 0x73, 0x5f, 0x62, 0x61, 0x6e, + 0x6e, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x73, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x69, 0x6e, 0x61, 0x12, 0x4c, 0x0a, 0x17, 0x61, 0x64, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x5f, + 0x6d, 0x73, 0x67, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4d, 0x73, 0x67, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x52, 0x15, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x57, 0x65, 0x6c, 0x63, + 0x6f, 0x6d, 0x65, 0x4d, 0x73, 0x67, 0x73, 0x12, 0x55, 0x0a, 0x17, 0x73, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, + 0x66, 0x6f, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x14, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x65, 0x61, 0x72, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x5e, + 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, + 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, 0x61, + 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, + 0x75, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x69, + 0x74, 0x75, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x22, 0xaa, + 0x02, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x47, + 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x65, 0x65, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x65, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x71, 0x75, 0x65, + 0x75, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0d, 0x71, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x71, 0x75, 0x65, 0x75, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, + 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, + 0x64, 0x73, 0x12, 0x47, 0x0a, 0x20, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x72, 0x65, 0x6d, + 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x1d, 0x65, 0x73, + 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, + 0x64, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0xd8, 0x02, 0x0a, 0x1a, + 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0a, + 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x06, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, + 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x73, 0x79, 0x6e, 0x63, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x56, 0x0a, 0x0d, 0x68, 0x61, 0x76, 0x65, 0x5f, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x4f, + 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x48, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x0c, 0x68, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2a, 0x0a, + 0x11, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x65, 0x54, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x4b, 0x0a, 0x10, 0x43, 0x4d, 0x73, + 0x67, 0x48, 0x61, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x0a, + 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xa2, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, + 0x43, 0x54, 0x6f, 0x47, 0x43, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x55, 0x6e, 0x73, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x73, 0x63, + 0x72, 0x69, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0a, 0x73, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x13, 0x75, 0x6e, 0x73, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x75, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, + 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x75, 0x6e, 0x73, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x75, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x22, 0x12, 0x0a, 0x10, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x22, + 0xb4, 0x01, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x6f, + 0x72, 0x77, 0x61, 0x72, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x56, 0x0a, + 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, + 0x43, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x65, 0x74, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x5f, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x67, 0x65, 0x53, + 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x92, 0x01, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, - 0x12, 0x23, 0x0a, 0x0d, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, - 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x24, - 0x0a, 0x0e, 0x69, 0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x6e, 0x5f, 0x73, 0x75, 0x72, 0x67, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x6f, 0x6e, 0x53, - 0x75, 0x72, 0x67, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x72, 0x6f, - 0x70, 0x70, 0x65, 0x64, 0x22, 0xbe, 0x03, 0x0a, 0x2a, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, - 0x6f, 0x70, 0x5f, 0x50, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x6c, 0x0a, 0x09, 0x6c, 0x61, 0x6e, - 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x50, 0x6f, - 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x49, - 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, - 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x09, 0x6c, 0x61, - 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x62, 0x0a, 0x15, 0x53, 0x69, 0x6e, 0x67, 0x6c, - 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, - 0x12, 0x29, 0x0a, 0x10, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x74, 0x65, 0x6d, - 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xa7, 0x01, 0x0a, 0x1d, - 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1a, 0x0a, - 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x6a, 0x0a, 0x0c, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x46, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, + 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x5d, 0x0a, 0x17, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, + 0x64, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x15, + 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x26, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x4f, + 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x92, 0x01, + 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x23, + 0x0a, 0x0d, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x24, 0x0a, 0x0e, + 0x69, 0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x6e, 0x5f, 0x73, 0x75, 0x72, 0x67, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x6e, 0x4c, 0x6f, 0x67, 0x6f, 0x6e, 0x53, 0x75, 0x72, + 0x67, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x72, 0x6f, 0x70, 0x70, + 0x65, 0x64, 0x22, 0xbe, 0x03, 0x0a, 0x2a, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x50, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x59, 0x0a, 0x21, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, - 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, - 0x72, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, - 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, - 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, - 0x22, 0x48, 0x0a, 0x22, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x5f, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x69, - 0x62, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0c, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x22, 0xa5, 0x08, 0x0a, 0x25, 0x43, - 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, - 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x61, - 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x12, 0x7f, 0x0a, 0x19, 0x61, 0x73, - 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, - 0x70, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, + 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x6c, 0x0a, 0x09, 0x6c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x50, 0x6f, 0x70, 0x75, + 0x6c, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x49, 0x74, 0x65, + 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x09, 0x6c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x62, 0x0a, 0x15, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, + 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, + 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x12, 0x29, + 0x0a, 0x10, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x74, 0x65, 0x6d, 0x44, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xa7, 0x01, 0x0a, 0x1d, 0x49, 0x74, + 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x61, + 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, + 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x6a, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x46, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x50, + 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, + 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x22, 0x59, 0x0a, 0x21, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, + 0x5f, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x73, + 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x61, 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x22, 0x48, + 0x0a, 0x22, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x47, 0x65, 0x74, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x06, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x73, 0x22, 0xa5, 0x08, 0x0a, 0x25, 0x43, 0x57, 0x6f, + 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x61, 0x6d, 0x65, + 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x61, + 0x6d, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x69, 0x64, 0x12, 0x7f, 0x0a, 0x19, 0x61, 0x73, 0x73, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, + 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x53, 0x65, 0x74, + 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, + 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, + 0x70, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, + 0x52, 0x17, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x57, 0x6f, 0x72, 0x6b, + 0x73, 0x68, 0x6f, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x6d, 0x0a, 0x10, 0x70, 0x61, 0x72, + 0x74, 0x6e, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, + 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x47, 0x0a, + 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x66, + 0x69, 0x6c, 0x65, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x61, 0x62, 0x6c, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1d, 0x6d, 0x61, 0x6b, 0x65, 0x57, 0x6f, 0x72, + 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x61, 0x62, 0x6c, 0x65, 0x12, 0xa4, 0x01, 0x0a, 0x2c, 0x61, 0x73, 0x73, 0x6f, 0x63, + 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x66, + 0x69, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x70, + 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x73, - 0x68, 0x6f, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, - 0x6c, 0x65, 0x52, 0x17, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x57, 0x6f, - 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x6d, 0x0a, 0x10, 0x70, - 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, - 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x6e, - 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, - 0x47, 0x0a, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, - 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x61, - 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1d, 0x6d, 0x61, 0x6b, 0x65, 0x57, - 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x61, 0x62, 0x6c, 0x65, 0x12, 0xa4, 0x01, 0x0a, 0x2c, 0x61, 0x73, 0x73, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, - 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x45, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, - 0x5f, 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, - 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x27, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, - 0x65, 0x64, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x6f, - 0x72, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, - 0xba, 0x01, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x49, 0x74, 0x65, 0x6d, - 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x77, - 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x46, - 0x69, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, - 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x11, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, - 0x74, 0x61, 0x67, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x72, 0x75, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x1b, 0x0a, 0x09, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x72, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x70, 0x0a, 0x19, - 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x61, + 0x68, 0x6f, 0x70, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, + 0x52, 0x75, 0x6c, 0x65, 0x52, 0x27, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, + 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x44, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0xba, 0x01, + 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x46, 0x69, 0x6c, - 0x65, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, - 0x75, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x91, - 0x01, 0x0a, 0x16, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x76, 0x65, - 0x6e, 0x75, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x50, 0x65, 0x72, - 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x75, 0x6c, 0x65, 0x5f, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x72, 0x75, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x55, 0x0a, 0x26, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, - 0x53, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, - 0x6c, 0x65, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x11, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0xe5, 0x02, 0x0a, 0x1f, 0x43, 0x43, - 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x6e, 0x6e, - 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, - 0x03, 0x67, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, - 0x16, 0x0a, 0x06, 0x63, 0x6c, 0x61, 0x6e, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x06, 0x63, 0x6c, 0x61, 0x6e, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x65, - 0x72, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x65, - 0x72, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, - 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, - 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, - 0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x66, - 0x6f, 0x72, 0x75, 0x6d, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x0c, 0x66, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x49, - 0x64, 0x22, 0xef, 0x03, 0x0a, 0x27, 0x43, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, + 0x65, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x5f, 0x70, + 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x11, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, + 0x67, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x75, + 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, + 0x09, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x72, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x70, 0x0a, 0x19, 0x57, 0x6f, + 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x50, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x77, 0x6f, 0x72, 0x6b, 0x73, + 0x68, 0x6f, 0x70, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x49, + 0x64, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x75, 0x6c, + 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x91, 0x01, 0x0a, + 0x16, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, + 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x11, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, + 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x72, 0x75, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x55, 0x0a, 0x26, 0x43, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x5f, 0x53, 0x65, + 0x74, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0xe5, 0x02, 0x0a, 0x1f, 0x43, 0x43, 0x6f, 0x6d, + 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x6e, 0x6e, 0x6f, 0x75, + 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x67, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x63, 0x6c, 0x61, 0x6e, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x63, + 0x6c, 0x61, 0x6e, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x69, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x70, 0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, + 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x22, 0x0a, + 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x6f, 0x72, + 0x75, 0x6d, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x06, 0x52, 0x0c, 0x66, 0x6f, 0x72, 0x75, 0x6d, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x49, 0x64, 0x22, + 0xef, 0x03, 0x0a, 0x27, 0x43, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x47, + 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, + 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x63, 0x68, 0x61, 0x72, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x63, 0x68, 0x61, 0x72, 0x73, 0x12, + 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x69, 0x70, 0x5f, 0x68, 0x74, 0x6d, 0x6c, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x74, 0x72, 0x69, 0x70, 0x48, 0x74, 0x6d, 0x6c, 0x12, 0x23, + 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, + 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x54, + 0x61, 0x67, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, 0x6e, + 0x6f, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x4e, 0x6f, 0x54, 0x61, 0x67, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x6c, + 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, + 0x67, 0x65, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x19, 0x0a, + 0x08, 0x6f, 0x6e, 0x6c, 0x79, 0x5f, 0x67, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x07, 0x6f, 0x6e, 0x6c, 0x79, 0x47, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x74, 0x69, 0x6d, + 0x65, 0x5f, 0x6f, 0x6c, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x6c, 0x64, 0x65, 0x73, 0x74, + 0x44, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, + 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x6e, + 0x63, 0x6c, 0x75, 0x64, 0x65, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x5f, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x69, 0x6e, 0x63, + 0x6c, 0x75, 0x64, 0x65, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x22, 0xb2, 0x01, 0x0a, 0x28, 0x43, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, - 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, - 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x63, 0x68, 0x61, 0x72, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x63, 0x68, 0x61, 0x72, - 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x69, 0x70, 0x5f, 0x68, 0x74, 0x6d, 0x6c, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x74, 0x72, 0x69, 0x70, 0x48, 0x74, 0x6d, 0x6c, - 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x74, 0x61, 0x67, - 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, - 0x64, 0x54, 0x61, 0x67, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, - 0x5f, 0x6e, 0x6f, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x4e, 0x6f, 0x54, 0x61, 0x67, 0x73, 0x12, 0x2f, 0x0a, - 0x13, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, - 0x65, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x12, 0x6c, 0x61, 0x6e, 0x67, - 0x75, 0x61, 0x67, 0x65, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x4f, 0x6e, 0x6c, 0x79, 0x12, - 0x19, 0x0a, 0x08, 0x6f, 0x6e, 0x6c, 0x79, 0x5f, 0x67, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x6f, 0x6e, 0x6c, 0x79, 0x47, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x74, - 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x6c, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x6c, 0x64, 0x65, - 0x73, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, - 0x65, 0x5f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x34, 0x0a, - 0x16, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, - 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x69, - 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x73, 0x22, 0xb2, 0x01, 0x0a, 0x28, 0x43, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, - 0x74, 0x79, 0x5f, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, - 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x63, 0x68, 0x61, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x63, 0x68, 0x61, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, - 0x73, 0x74, 0x72, 0x69, 0x70, 0x5f, 0x68, 0x74, 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x09, 0x73, 0x74, 0x72, 0x69, 0x70, 0x48, 0x74, 0x6d, 0x6c, 0x12, 0x4b, 0x0a, 0x0d, 0x61, - 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x43, 0x6f, 0x6d, 0x6d, 0x75, - 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, - 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x24, 0x43, 0x42, 0x72, - 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, - 0x73, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x44, - 0x61, 0x74, 0x61, 0x22, 0x82, 0x04, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x69, - 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x39, 0x0a, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x69, - 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x52, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x17, 0x67, - 0x63, 0x5f, 0x73, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x67, 0x63, - 0x53, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x1a, 0x58, 0x0a, 0x09, 0x54, 0x79, 0x70, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0c, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x1d, 0x0a, - 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x1a, 0xf9, 0x01, 0x0a, - 0x05, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x45, 0x0a, 0x08, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, - 0x65, 0x64, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x46, 0x0a, 0x0b, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x53, 0x4f, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x0a, 0x74, - 0x79, 0x70, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x07, 0x56, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x5b, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x43, 0x6f, - 0x6e, 0x76, 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, - 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, - 0x70, 0x6f, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, - 0x6f, 0x6c, 0x6c, 0x49, 0x64, 0x22, 0x5e, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, - 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x61, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x6c, - 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x6c, - 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x5f, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x5b, 0x0a, 0x1b, 0x43, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x43, - 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x4d, 0x73, 0x67, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6d, 0x73, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6d, 0x73, 0x67, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, - 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x4d, - 0x73, 0x67, 0x22, 0xca, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, - 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x75, 0x73, 0x65, 0x72, 0x73, - 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x65, - 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x6f, - 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, - 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x73, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x15, 0x0a, - 0x06, 0x6d, 0x73, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6d, - 0x73, 0x67, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x22, - 0x96, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, - 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x6f, 0x69, 0x64, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x06, 0x52, 0x06, 0x73, 0x6f, 0x69, 0x64, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, - 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x06, 0x52, 0x08, - 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x2a, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x74, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, - 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, - 0x65, 0x54, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x12, 0x4b, 0x0a, - 0x0d, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x0c, 0x73, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x73, 0x67, 0x22, 0x9a, 0x01, 0x0a, 0x24, 0x43, - 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x55, - 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x6f, 0x69, 0x64, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x06, 0x73, 0x6f, 0x69, 0x64, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x06, 0x52, 0x08, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x54, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, - 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x73, 0x74, 0x72, - 0x6f, 0x79, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x69, 0x64, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x6f, 0x69, 0x64, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x06, 0x73, 0x6f, 0x69, 0x64, 0x49, 0x64, 0x2a, 0x35, 0x0a, - 0x0d, 0x45, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x11, - 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x53, 0x45, 0x5f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x31, 0x10, - 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x53, 0x45, 0x5f, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x32, 0x10, 0x01, 0x2a, 0x56, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x41, - 0x52, 0x54, 0x4e, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, - 0x50, 0x41, 0x52, 0x54, 0x4e, 0x45, 0x52, 0x5f, 0x50, 0x45, 0x52, 0x46, 0x45, 0x43, 0x54, 0x5f, - 0x57, 0x4f, 0x52, 0x4c, 0x44, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x41, 0x52, 0x54, 0x4e, - 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x03, 0x2a, 0xa0, 0x02, 0x0a, - 0x12, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x48, 0x41, 0x56, 0x45, 0x5f, 0x53, - 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x47, 0x43, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x47, - 0x43, 0x5f, 0x47, 0x4f, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x01, 0x12, 0x21, - 0x0a, 0x1d, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, - 0x02, 0x12, 0x30, 0x0a, 0x2c, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, - 0x4f, 0x4e, 0x5f, 0x49, 0x4e, 0x5f, 0x4c, 0x4f, 0x47, 0x4f, 0x4e, 0x5f, 0x51, 0x55, 0x45, 0x55, - 0x45, 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x5f, 0x53, 0x54, 0x45, - 0x41, 0x4d, 0x10, 0x04, 0x12, 0x20, 0x0a, 0x1c, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x53, 0x55, 0x53, 0x50, 0x45, - 0x4e, 0x44, 0x45, 0x44, 0x10, 0x05, 0x12, 0x27, 0x0a, 0x23, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x53, 0x54, 0x45, - 0x41, 0x4d, 0x5f, 0x47, 0x4f, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x06, 0x42, - 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, - 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, - 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x63, 0x68, 0x61, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x6d, 0x61, 0x78, 0x63, 0x68, 0x61, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, + 0x72, 0x69, 0x70, 0x5f, 0x68, 0x74, 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, + 0x73, 0x74, 0x72, 0x69, 0x70, 0x48, 0x74, 0x6d, 0x6c, 0x12, 0x4b, 0x0a, 0x0d, 0x61, 0x6e, 0x6e, + 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, + 0x74, 0x79, 0x5f, 0x43, 0x6c, 0x61, 0x6e, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x24, 0x43, 0x42, 0x72, 0x6f, 0x61, + 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, + 0x21, 0x0a, 0x0c, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, + 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x22, 0x82, 0x04, 0x0a, 0x15, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, + 0x69, 0x7a, 0x65, 0x64, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, + 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x39, + 0x0a, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, + 0x69, 0x7a, 0x65, 0x64, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x52, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x17, 0x67, 0x63, 0x5f, + 0x73, 0x6f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x67, 0x63, 0x53, 0x6f, + 0x63, 0x61, 0x63, 0x68, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x1a, 0x58, 0x0a, 0x09, 0x54, 0x79, 0x70, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0c, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x1a, 0xf9, 0x01, 0x0a, 0x05, 0x43, + 0x61, 0x63, 0x68, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x45, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, + 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2e, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x46, 0x0a, 0x0b, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x53, 0x4f, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x0a, 0x74, 0x79, 0x70, + 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x5b, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, + 0x61, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, + 0x76, 0x61, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, + 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x6c, + 0x6c, 0x49, 0x64, 0x22, 0x5e, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x6c, 0x6c, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x6c, 0x49, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x22, 0x5b, 0x0a, 0x1b, 0x43, 0x47, 0x43, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6d, + 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x4d, 0x73, 0x67, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6d, 0x73, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x6d, 0x73, 0x67, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, + 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x4d, 0x73, 0x67, + 0x22, 0xca, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, + 0x61, 0x73, 0x74, 0x65, 0x72, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x75, 0x73, 0x65, 0x72, 0x73, 0x5f, 0x70, + 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x75, 0x73, 0x65, 0x72, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x12, + 0x22, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x55, 0x73, + 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x65, + 0x6e, 0x64, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x6d, + 0x73, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6d, 0x73, 0x67, + 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x22, 0x96, 0x01, + 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, + 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x43, 0x61, 0x63, + 0x68, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x6f, 0x69, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x17, 0x0a, 0x07, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x06, 0x73, 0x6f, 0x69, 0x64, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x06, 0x52, 0x08, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x2a, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x65, 0x54, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x74, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, + 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, + 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x73, 0x79, 0x6e, 0x63, 0x12, 0x4b, 0x0a, 0x0d, 0x73, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, + 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, + 0x69, 0x62, 0x65, 0x54, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x4d, 0x73, 0x67, 0x22, 0x9a, 0x01, 0x0a, 0x24, 0x43, 0x4d, 0x73, + 0x67, 0x47, 0x43, 0x54, 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x55, 0x6e, 0x73, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x61, 0x63, 0x68, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x6f, 0x69, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, + 0x0a, 0x07, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, + 0x06, 0x73, 0x6f, 0x69, 0x64, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x06, 0x52, 0x08, 0x73, 0x74, 0x65, + 0x61, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x54, 0x0a, 0x1c, 0x43, 0x4d, 0x73, 0x67, 0x47, 0x43, 0x54, + 0x6f, 0x47, 0x43, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, + 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x6f, 0x69, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x6f, 0x69, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x06, 0x52, 0x06, 0x73, 0x6f, 0x69, 0x64, 0x49, 0x64, 0x2a, 0x35, 0x0a, 0x0d, 0x45, + 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x11, 0x0a, 0x0d, + 0x6b, 0x5f, 0x45, 0x53, 0x45, 0x5f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x31, 0x10, 0x00, 0x12, + 0x11, 0x0a, 0x0d, 0x6b, 0x5f, 0x45, 0x53, 0x45, 0x5f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x32, + 0x10, 0x01, 0x2a, 0x56, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x41, 0x52, 0x54, + 0x4e, 0x45, 0x52, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x41, + 0x52, 0x54, 0x4e, 0x45, 0x52, 0x5f, 0x50, 0x45, 0x52, 0x46, 0x45, 0x43, 0x54, 0x5f, 0x57, 0x4f, + 0x52, 0x4c, 0x44, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x41, 0x52, 0x54, 0x4e, 0x45, 0x52, + 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x03, 0x2a, 0xa0, 0x02, 0x0a, 0x12, 0x47, + 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x48, 0x41, 0x56, 0x45, 0x5f, 0x53, 0x45, 0x53, + 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x47, 0x43, 0x5f, + 0x47, 0x4f, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, + 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, + 0x30, 0x0a, 0x2c, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, + 0x5f, 0x49, 0x4e, 0x5f, 0x4c, 0x4f, 0x47, 0x4f, 0x4e, 0x5f, 0x51, 0x55, 0x45, 0x55, 0x45, 0x10, + 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x5f, 0x53, 0x54, 0x45, 0x41, 0x4d, + 0x10, 0x04, 0x12, 0x20, 0x0a, 0x1c, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x53, 0x55, 0x53, 0x50, 0x45, 0x4e, 0x44, + 0x45, 0x44, 0x10, 0x05, 0x12, 0x27, 0x0a, 0x23, 0x47, 0x43, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x53, 0x54, 0x45, 0x41, 0x4d, + 0x5f, 0x47, 0x4f, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x06, 0x42, 0x25, 0x5a, + 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, + 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, + 0x64, 0x6f, 0x74, 0x61, } var ( @@ -5707,130 +5859,134 @@ func file_gcsdk_gcmessages_proto_rawDescGZIP() []byte { } var file_gcsdk_gcmessages_proto_enumTypes = make([]protoimpl.EnumInfo, 3) -var file_gcsdk_gcmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 72) +var file_gcsdk_gcmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 74) var file_gcsdk_gcmessages_proto_goTypes = []interface{}{ (ESourceEngine)(0), // 0: dota.ESourceEngine (PartnerAccountType)(0), // 1: dota.PartnerAccountType (GCConnectionStatus)(0), // 2: dota.GCConnectionStatus (*CExtraMsgBlock)(nil), // 3: dota.CExtraMsgBlock - (*CMsgGCAssertJobData)(nil), // 4: dota.CMsgGCAssertJobData - (*CMsgGCConCommand)(nil), // 5: dota.CMsgGCConCommand - (*CMsgSDOAssert)(nil), // 6: dota.CMsgSDOAssert - (*CMsgSOIDOwner)(nil), // 7: dota.CMsgSOIDOwner - (*CMsgSOSingleObject)(nil), // 8: dota.CMsgSOSingleObject - (*CMsgSOMultipleObjects)(nil), // 9: dota.CMsgSOMultipleObjects - (*CMsgSOCacheSubscribed)(nil), // 10: dota.CMsgSOCacheSubscribed - (*CMsgSOCacheSubscribedUpToDate)(nil), // 11: dota.CMsgSOCacheSubscribedUpToDate - (*CMsgSOCacheUnsubscribed)(nil), // 12: dota.CMsgSOCacheUnsubscribed - (*CMsgSOCacheSubscriptionCheck)(nil), // 13: dota.CMsgSOCacheSubscriptionCheck - (*CMsgSOCacheSubscriptionRefresh)(nil), // 14: dota.CMsgSOCacheSubscriptionRefresh - (*CMsgSOCacheVersion)(nil), // 15: dota.CMsgSOCacheVersion - (*CMsgGCMultiplexMessage)(nil), // 16: dota.CMsgGCMultiplexMessage - (*CMsgGCToGCSubGCStarting)(nil), // 17: dota.CMsgGCToGCSubGCStarting - (*CGCToGCMsgMasterAck)(nil), // 18: dota.CGCToGCMsgMasterAck - (*CGCToGCMsgMasterAck_Response)(nil), // 19: dota.CGCToGCMsgMasterAck_Response - (*CMsgGCToGCUniverseStartup)(nil), // 20: dota.CMsgGCToGCUniverseStartup - (*CMsgGCToGCUniverseStartupResponse)(nil), // 21: dota.CMsgGCToGCUniverseStartupResponse - (*CGCToGCMsgMasterStartupComplete)(nil), // 22: dota.CGCToGCMsgMasterStartupComplete - (*CGCToGCMsgRouted)(nil), // 23: dota.CGCToGCMsgRouted - (*CGCToGCMsgRoutedReply)(nil), // 24: dota.CGCToGCMsgRoutedReply - (*CMsgGCUpdateSubGCSessionInfo)(nil), // 25: dota.CMsgGCUpdateSubGCSessionInfo - (*CMsgGCRequestSubGCSessionInfo)(nil), // 26: dota.CMsgGCRequestSubGCSessionInfo - (*CMsgGCRequestSubGCSessionInfoResponse)(nil), // 27: dota.CMsgGCRequestSubGCSessionInfoResponse - (*CMsgSOCacheHaveVersion)(nil), // 28: dota.CMsgSOCacheHaveVersion - (*CMsgClientHello)(nil), // 29: dota.CMsgClientHello - (*CMsgClientWelcome)(nil), // 30: dota.CMsgClientWelcome - (*CMsgConnectionStatus)(nil), // 31: dota.CMsgConnectionStatus - (*CMsgGCToGCSOCacheSubscribe)(nil), // 32: dota.CMsgGCToGCSOCacheSubscribe - (*CMsgGCToGCSOCacheUnsubscribe)(nil), // 33: dota.CMsgGCToGCSOCacheUnsubscribe - (*CMsgGCClientPing)(nil), // 34: dota.CMsgGCClientPing - (*CMsgGCToGCForwardAccountDetails)(nil), // 35: dota.CMsgGCToGCForwardAccountDetails - (*CMsgGCToGCLoadSessionSOCache)(nil), // 36: dota.CMsgGCToGCLoadSessionSOCache - (*CMsgGCToGCLoadSessionSOCacheResponse)(nil), // 37: dota.CMsgGCToGCLoadSessionSOCacheResponse - (*CMsgGCToGCUpdateSessionStats)(nil), // 38: dota.CMsgGCToGCUpdateSessionStats - (*CMsgGCToClientRequestDropped)(nil), // 39: dota.CMsgGCToClientRequestDropped - (*CWorkshop_PopulateItemDescriptions_Request)(nil), // 40: dota.CWorkshop_PopulateItemDescriptions_Request - (*CWorkshop_GetContributors_Request)(nil), // 41: dota.CWorkshop_GetContributors_Request - (*CWorkshop_GetContributors_Response)(nil), // 42: dota.CWorkshop_GetContributors_Response - (*CWorkshop_SetItemPaymentRules_Request)(nil), // 43: dota.CWorkshop_SetItemPaymentRules_Request - (*CWorkshop_SetItemPaymentRules_Response)(nil), // 44: dota.CWorkshop_SetItemPaymentRules_Response - (*CCommunity_ClanAnnouncementInfo)(nil), // 45: dota.CCommunity_ClanAnnouncementInfo - (*CCommunity_GetClanAnnouncements_Request)(nil), // 46: dota.CCommunity_GetClanAnnouncements_Request - (*CCommunity_GetClanAnnouncements_Response)(nil), // 47: dota.CCommunity_GetClanAnnouncements_Response - (*CBroadcast_PostGameDataFrame_Request)(nil), // 48: dota.CBroadcast_PostGameDataFrame_Request - (*CMsgSerializedSOCache)(nil), // 49: dota.CMsgSerializedSOCache - (*CMsgGCToClientPollConvarRequest)(nil), // 50: dota.CMsgGCToClientPollConvarRequest - (*CMsgGCToClientPollConvarResponse)(nil), // 51: dota.CMsgGCToClientPollConvarResponse - (*CGCMsgCompressedMsgToClient)(nil), // 52: dota.CGCMsgCompressedMsgToClient - (*CMsgGCToGCMasterBroadcastMessage)(nil), // 53: dota.CMsgGCToGCMasterBroadcastMessage - (*CMsgGCToGCMasterSubscribeToCache)(nil), // 54: dota.CMsgGCToGCMasterSubscribeToCache - (*CMsgGCToGCMasterSubscribeToCacheResponse)(nil), // 55: dota.CMsgGCToGCMasterSubscribeToCacheResponse - (*CMsgGCToGCMasterSubscribeToCacheAsync)(nil), // 56: dota.CMsgGCToGCMasterSubscribeToCacheAsync - (*CMsgGCToGCMasterUnsubscribeFromCache)(nil), // 57: dota.CMsgGCToGCMasterUnsubscribeFromCache - (*CMsgGCToGCMasterDestroyCache)(nil), // 58: dota.CMsgGCToGCMasterDestroyCache - (*CMsgSDOAssert_Request)(nil), // 59: dota.CMsgSDOAssert.Request - (*CMsgSOMultipleObjects_SingleObject)(nil), // 60: dota.CMsgSOMultipleObjects.SingleObject - (*CMsgSOCacheSubscribed_SubscribedType)(nil), // 61: dota.CMsgSOCacheSubscribed.SubscribedType - (*CGCToGCMsgMasterAck_Process)(nil), // 62: dota.CGCToGCMsgMasterAck.Process - (*CGCToGCMsgMasterStartupComplete_GCInfo)(nil), // 63: dota.CGCToGCMsgMasterStartupComplete.GCInfo - (*CMsgGCUpdateSubGCSessionInfo_CMsgUpdate)(nil), // 64: dota.CMsgGCUpdateSubGCSessionInfo.CMsgUpdate - (*CMsgClientWelcome_Location)(nil), // 65: dota.CMsgClientWelcome.Location - (*CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions)(nil), // 66: dota.CMsgGCToGCSOCacheSubscribe.CMsgHaveVersions - (*CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription)(nil), // 67: dota.CWorkshop_PopulateItemDescriptions_Request.SingleItemDescription - (*CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock)(nil), // 68: dota.CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock - (*CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule)(nil), // 69: dota.CWorkshop_SetItemPaymentRules_Request.WorkshopItemPaymentRule - (*CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule)(nil), // 70: dota.CWorkshop_SetItemPaymentRules_Request.WorkshopDirectPaymentRule - (*CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule)(nil), // 71: dota.CWorkshop_SetItemPaymentRules_Request.PartnerItemPaymentRule - (*CMsgSerializedSOCache_TypeCache)(nil), // 72: dota.CMsgSerializedSOCache.TypeCache - (*CMsgSerializedSOCache_Cache)(nil), // 73: dota.CMsgSerializedSOCache.Cache - (*CMsgSerializedSOCache_Cache_Version)(nil), // 74: dota.CMsgSerializedSOCache.Cache.Version - (*CMsgSteamLearnHMACKeys)(nil), // 75: dota.CMsgSteamLearnHMACKeys - (*CGCSystemMsg_GetAccountDetails_Response)(nil), // 76: dota.CGCSystemMsg_GetAccountDetails_Response + (*CMsgSteamLearnServerInfo)(nil), // 4: dota.CMsgSteamLearnServerInfo + (*CMsgGCAssertJobData)(nil), // 5: dota.CMsgGCAssertJobData + (*CMsgGCConCommand)(nil), // 6: dota.CMsgGCConCommand + (*CMsgSDOAssert)(nil), // 7: dota.CMsgSDOAssert + (*CMsgSOIDOwner)(nil), // 8: dota.CMsgSOIDOwner + (*CMsgSOSingleObject)(nil), // 9: dota.CMsgSOSingleObject + (*CMsgSOMultipleObjects)(nil), // 10: dota.CMsgSOMultipleObjects + (*CMsgSOCacheSubscribed)(nil), // 11: dota.CMsgSOCacheSubscribed + (*CMsgSOCacheSubscribedUpToDate)(nil), // 12: dota.CMsgSOCacheSubscribedUpToDate + (*CMsgSOCacheUnsubscribed)(nil), // 13: dota.CMsgSOCacheUnsubscribed + (*CMsgSOCacheSubscriptionCheck)(nil), // 14: dota.CMsgSOCacheSubscriptionCheck + (*CMsgSOCacheSubscriptionRefresh)(nil), // 15: dota.CMsgSOCacheSubscriptionRefresh + (*CMsgSOCacheVersion)(nil), // 16: dota.CMsgSOCacheVersion + (*CMsgGCMultiplexMessage)(nil), // 17: dota.CMsgGCMultiplexMessage + (*CMsgGCToGCSubGCStarting)(nil), // 18: dota.CMsgGCToGCSubGCStarting + (*CGCToGCMsgMasterAck)(nil), // 19: dota.CGCToGCMsgMasterAck + (*CGCToGCMsgMasterAck_Response)(nil), // 20: dota.CGCToGCMsgMasterAck_Response + (*CMsgGCToGCUniverseStartup)(nil), // 21: dota.CMsgGCToGCUniverseStartup + (*CMsgGCToGCUniverseStartupResponse)(nil), // 22: dota.CMsgGCToGCUniverseStartupResponse + (*CGCToGCMsgMasterStartupComplete)(nil), // 23: dota.CGCToGCMsgMasterStartupComplete + (*CGCToGCMsgRouted)(nil), // 24: dota.CGCToGCMsgRouted + (*CGCToGCMsgRoutedReply)(nil), // 25: dota.CGCToGCMsgRoutedReply + (*CMsgGCUpdateSubGCSessionInfo)(nil), // 26: dota.CMsgGCUpdateSubGCSessionInfo + (*CMsgGCRequestSubGCSessionInfo)(nil), // 27: dota.CMsgGCRequestSubGCSessionInfo + (*CMsgGCRequestSubGCSessionInfoResponse)(nil), // 28: dota.CMsgGCRequestSubGCSessionInfoResponse + (*CMsgSOCacheHaveVersion)(nil), // 29: dota.CMsgSOCacheHaveVersion + (*CMsgClientHello)(nil), // 30: dota.CMsgClientHello + (*CMsgClientWelcome)(nil), // 31: dota.CMsgClientWelcome + (*CMsgConnectionStatus)(nil), // 32: dota.CMsgConnectionStatus + (*CMsgGCToGCSOCacheSubscribe)(nil), // 33: dota.CMsgGCToGCSOCacheSubscribe + (*CMsgGCToGCSOCacheUnsubscribe)(nil), // 34: dota.CMsgGCToGCSOCacheUnsubscribe + (*CMsgGCClientPing)(nil), // 35: dota.CMsgGCClientPing + (*CMsgGCToGCForwardAccountDetails)(nil), // 36: dota.CMsgGCToGCForwardAccountDetails + (*CMsgGCToGCLoadSessionSOCache)(nil), // 37: dota.CMsgGCToGCLoadSessionSOCache + (*CMsgGCToGCLoadSessionSOCacheResponse)(nil), // 38: dota.CMsgGCToGCLoadSessionSOCacheResponse + (*CMsgGCToGCUpdateSessionStats)(nil), // 39: dota.CMsgGCToGCUpdateSessionStats + (*CMsgGCToClientRequestDropped)(nil), // 40: dota.CMsgGCToClientRequestDropped + (*CWorkshop_PopulateItemDescriptions_Request)(nil), // 41: dota.CWorkshop_PopulateItemDescriptions_Request + (*CWorkshop_GetContributors_Request)(nil), // 42: dota.CWorkshop_GetContributors_Request + (*CWorkshop_GetContributors_Response)(nil), // 43: dota.CWorkshop_GetContributors_Response + (*CWorkshop_SetItemPaymentRules_Request)(nil), // 44: dota.CWorkshop_SetItemPaymentRules_Request + (*CWorkshop_SetItemPaymentRules_Response)(nil), // 45: dota.CWorkshop_SetItemPaymentRules_Response + (*CCommunity_ClanAnnouncementInfo)(nil), // 46: dota.CCommunity_ClanAnnouncementInfo + (*CCommunity_GetClanAnnouncements_Request)(nil), // 47: dota.CCommunity_GetClanAnnouncements_Request + (*CCommunity_GetClanAnnouncements_Response)(nil), // 48: dota.CCommunity_GetClanAnnouncements_Response + (*CBroadcast_PostGameDataFrame_Request)(nil), // 49: dota.CBroadcast_PostGameDataFrame_Request + (*CMsgSerializedSOCache)(nil), // 50: dota.CMsgSerializedSOCache + (*CMsgGCToClientPollConvarRequest)(nil), // 51: dota.CMsgGCToClientPollConvarRequest + (*CMsgGCToClientPollConvarResponse)(nil), // 52: dota.CMsgGCToClientPollConvarResponse + (*CGCMsgCompressedMsgToClient)(nil), // 53: dota.CGCMsgCompressedMsgToClient + (*CMsgGCToGCMasterBroadcastMessage)(nil), // 54: dota.CMsgGCToGCMasterBroadcastMessage + (*CMsgGCToGCMasterSubscribeToCache)(nil), // 55: dota.CMsgGCToGCMasterSubscribeToCache + (*CMsgGCToGCMasterSubscribeToCacheResponse)(nil), // 56: dota.CMsgGCToGCMasterSubscribeToCacheResponse + (*CMsgGCToGCMasterSubscribeToCacheAsync)(nil), // 57: dota.CMsgGCToGCMasterSubscribeToCacheAsync + (*CMsgGCToGCMasterUnsubscribeFromCache)(nil), // 58: dota.CMsgGCToGCMasterUnsubscribeFromCache + (*CMsgGCToGCMasterDestroyCache)(nil), // 59: dota.CMsgGCToGCMasterDestroyCache + (*CMsgSteamLearnServerInfo_ProjectInfo)(nil), // 60: dota.CMsgSteamLearnServerInfo.ProjectInfo + (*CMsgSDOAssert_Request)(nil), // 61: dota.CMsgSDOAssert.Request + (*CMsgSOMultipleObjects_SingleObject)(nil), // 62: dota.CMsgSOMultipleObjects.SingleObject + (*CMsgSOCacheSubscribed_SubscribedType)(nil), // 63: dota.CMsgSOCacheSubscribed.SubscribedType + (*CGCToGCMsgMasterAck_Process)(nil), // 64: dota.CGCToGCMsgMasterAck.Process + (*CGCToGCMsgMasterStartupComplete_GCInfo)(nil), // 65: dota.CGCToGCMsgMasterStartupComplete.GCInfo + (*CMsgGCUpdateSubGCSessionInfo_CMsgUpdate)(nil), // 66: dota.CMsgGCUpdateSubGCSessionInfo.CMsgUpdate + (*CMsgClientWelcome_Location)(nil), // 67: dota.CMsgClientWelcome.Location + (*CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions)(nil), // 68: dota.CMsgGCToGCSOCacheSubscribe.CMsgHaveVersions + (*CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription)(nil), // 69: dota.CWorkshop_PopulateItemDescriptions_Request.SingleItemDescription + (*CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock)(nil), // 70: dota.CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock + (*CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule)(nil), // 71: dota.CWorkshop_SetItemPaymentRules_Request.WorkshopItemPaymentRule + (*CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule)(nil), // 72: dota.CWorkshop_SetItemPaymentRules_Request.WorkshopDirectPaymentRule + (*CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule)(nil), // 73: dota.CWorkshop_SetItemPaymentRules_Request.PartnerItemPaymentRule + (*CMsgSerializedSOCache_TypeCache)(nil), // 74: dota.CMsgSerializedSOCache.TypeCache + (*CMsgSerializedSOCache_Cache)(nil), // 75: dota.CMsgSerializedSOCache.Cache + (*CMsgSerializedSOCache_Cache_Version)(nil), // 76: dota.CMsgSerializedSOCache.Cache.Version + (*CMsgSteamLearnAccessTokens)(nil), // 77: dota.CMsgSteamLearnAccessTokens + (*CGCSystemMsg_GetAccountDetails_Response)(nil), // 78: dota.CGCSystemMsg_GetAccountDetails_Response } var file_gcsdk_gcmessages_proto_depIdxs = []int32{ - 59, // 0: dota.CMsgSDOAssert.requests:type_name -> dota.CMsgSDOAssert.Request - 7, // 1: dota.CMsgSOSingleObject.owner_soid:type_name -> dota.CMsgSOIDOwner - 60, // 2: dota.CMsgSOMultipleObjects.objects_modified:type_name -> dota.CMsgSOMultipleObjects.SingleObject - 60, // 3: dota.CMsgSOMultipleObjects.objects_added:type_name -> dota.CMsgSOMultipleObjects.SingleObject - 60, // 4: dota.CMsgSOMultipleObjects.objects_removed:type_name -> dota.CMsgSOMultipleObjects.SingleObject - 7, // 5: dota.CMsgSOMultipleObjects.owner_soid:type_name -> dota.CMsgSOIDOwner - 61, // 6: dota.CMsgSOCacheSubscribed.objects:type_name -> dota.CMsgSOCacheSubscribed.SubscribedType - 7, // 7: dota.CMsgSOCacheSubscribed.owner_soid:type_name -> dota.CMsgSOIDOwner - 7, // 8: dota.CMsgSOCacheSubscribedUpToDate.owner_soid:type_name -> dota.CMsgSOIDOwner - 7, // 9: dota.CMsgSOCacheUnsubscribed.owner_soid:type_name -> dota.CMsgSOIDOwner - 7, // 10: dota.CMsgSOCacheSubscriptionCheck.owner_soid:type_name -> dota.CMsgSOIDOwner - 7, // 11: dota.CMsgSOCacheSubscriptionRefresh.owner_soid:type_name -> dota.CMsgSOIDOwner - 62, // 12: dota.CGCToGCMsgMasterAck.directory:type_name -> dota.CGCToGCMsgMasterAck.Process - 63, // 13: dota.CGCToGCMsgMasterStartupComplete.gc_info:type_name -> dota.CGCToGCMsgMasterStartupComplete.GCInfo - 64, // 14: dota.CMsgGCUpdateSubGCSessionInfo.updates:type_name -> dota.CMsgGCUpdateSubGCSessionInfo.CMsgUpdate - 7, // 15: dota.CMsgSOCacheHaveVersion.soid:type_name -> dota.CMsgSOIDOwner - 28, // 16: dota.CMsgClientHello.socache_have_versions:type_name -> dota.CMsgSOCacheHaveVersion - 1, // 17: dota.CMsgClientHello.client_launcher:type_name -> dota.PartnerAccountType - 0, // 18: dota.CMsgClientHello.engine:type_name -> dota.ESourceEngine - 10, // 19: dota.CMsgClientWelcome.outofdate_subscribed_caches:type_name -> dota.CMsgSOCacheSubscribed - 13, // 20: dota.CMsgClientWelcome.uptodate_subscribed_caches:type_name -> dota.CMsgSOCacheSubscriptionCheck - 65, // 21: dota.CMsgClientWelcome.location:type_name -> dota.CMsgClientWelcome.Location - 3, // 22: dota.CMsgClientWelcome.additional_welcome_msgs:type_name -> dota.CExtraMsgBlock - 75, // 23: dota.CMsgClientWelcome.steam_learn_hmac_keys:type_name -> dota.CMsgSteamLearnHMACKeys - 2, // 24: dota.CMsgConnectionStatus.status:type_name -> dota.GCConnectionStatus - 66, // 25: dota.CMsgGCToGCSOCacheSubscribe.have_versions:type_name -> dota.CMsgGCToGCSOCacheSubscribe.CMsgHaveVersions - 76, // 26: dota.CMsgGCToGCForwardAccountDetails.account_details:type_name -> dota.CGCSystemMsg_GetAccountDetails_Response - 35, // 27: dota.CMsgGCToGCLoadSessionSOCache.forward_account_details:type_name -> dota.CMsgGCToGCForwardAccountDetails - 68, // 28: dota.CWorkshop_PopulateItemDescriptions_Request.languages:type_name -> dota.CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock - 69, // 29: dota.CWorkshop_SetItemPaymentRules_Request.associated_workshop_files:type_name -> dota.CWorkshop_SetItemPaymentRules_Request.WorkshopItemPaymentRule - 71, // 30: dota.CWorkshop_SetItemPaymentRules_Request.partner_accounts:type_name -> dota.CWorkshop_SetItemPaymentRules_Request.PartnerItemPaymentRule - 70, // 31: dota.CWorkshop_SetItemPaymentRules_Request.associated_workshop_file_for_direct_payments:type_name -> dota.CWorkshop_SetItemPaymentRules_Request.WorkshopDirectPaymentRule - 45, // 32: dota.CCommunity_GetClanAnnouncements_Response.announcements:type_name -> dota.CCommunity_ClanAnnouncementInfo - 73, // 33: dota.CMsgSerializedSOCache.caches:type_name -> dota.CMsgSerializedSOCache.Cache - 54, // 34: dota.CMsgGCToGCMasterSubscribeToCacheAsync.subscribe_msg:type_name -> dota.CMsgGCToGCMasterSubscribeToCache - 67, // 35: dota.CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock.descriptions:type_name -> dota.CWorkshop_PopulateItemDescriptions_Request.SingleItemDescription - 74, // 36: dota.CMsgSerializedSOCache.Cache.versions:type_name -> dota.CMsgSerializedSOCache.Cache.Version - 72, // 37: dota.CMsgSerializedSOCache.Cache.type_caches:type_name -> dota.CMsgSerializedSOCache.TypeCache - 38, // [38:38] is the sub-list for method output_type - 38, // [38:38] is the sub-list for method input_type - 38, // [38:38] is the sub-list for extension type_name - 38, // [38:38] is the sub-list for extension extendee - 0, // [0:38] is the sub-list for field type_name + 77, // 0: dota.CMsgSteamLearnServerInfo.access_tokens:type_name -> dota.CMsgSteamLearnAccessTokens + 60, // 1: dota.CMsgSteamLearnServerInfo.project_infos:type_name -> dota.CMsgSteamLearnServerInfo.ProjectInfo + 61, // 2: dota.CMsgSDOAssert.requests:type_name -> dota.CMsgSDOAssert.Request + 8, // 3: dota.CMsgSOSingleObject.owner_soid:type_name -> dota.CMsgSOIDOwner + 62, // 4: dota.CMsgSOMultipleObjects.objects_modified:type_name -> dota.CMsgSOMultipleObjects.SingleObject + 62, // 5: dota.CMsgSOMultipleObjects.objects_added:type_name -> dota.CMsgSOMultipleObjects.SingleObject + 62, // 6: dota.CMsgSOMultipleObjects.objects_removed:type_name -> dota.CMsgSOMultipleObjects.SingleObject + 8, // 7: dota.CMsgSOMultipleObjects.owner_soid:type_name -> dota.CMsgSOIDOwner + 63, // 8: dota.CMsgSOCacheSubscribed.objects:type_name -> dota.CMsgSOCacheSubscribed.SubscribedType + 8, // 9: dota.CMsgSOCacheSubscribed.owner_soid:type_name -> dota.CMsgSOIDOwner + 8, // 10: dota.CMsgSOCacheSubscribedUpToDate.owner_soid:type_name -> dota.CMsgSOIDOwner + 8, // 11: dota.CMsgSOCacheUnsubscribed.owner_soid:type_name -> dota.CMsgSOIDOwner + 8, // 12: dota.CMsgSOCacheSubscriptionCheck.owner_soid:type_name -> dota.CMsgSOIDOwner + 8, // 13: dota.CMsgSOCacheSubscriptionRefresh.owner_soid:type_name -> dota.CMsgSOIDOwner + 64, // 14: dota.CGCToGCMsgMasterAck.directory:type_name -> dota.CGCToGCMsgMasterAck.Process + 65, // 15: dota.CGCToGCMsgMasterStartupComplete.gc_info:type_name -> dota.CGCToGCMsgMasterStartupComplete.GCInfo + 66, // 16: dota.CMsgGCUpdateSubGCSessionInfo.updates:type_name -> dota.CMsgGCUpdateSubGCSessionInfo.CMsgUpdate + 8, // 17: dota.CMsgSOCacheHaveVersion.soid:type_name -> dota.CMsgSOIDOwner + 29, // 18: dota.CMsgClientHello.socache_have_versions:type_name -> dota.CMsgSOCacheHaveVersion + 1, // 19: dota.CMsgClientHello.client_launcher:type_name -> dota.PartnerAccountType + 0, // 20: dota.CMsgClientHello.engine:type_name -> dota.ESourceEngine + 11, // 21: dota.CMsgClientWelcome.outofdate_subscribed_caches:type_name -> dota.CMsgSOCacheSubscribed + 14, // 22: dota.CMsgClientWelcome.uptodate_subscribed_caches:type_name -> dota.CMsgSOCacheSubscriptionCheck + 67, // 23: dota.CMsgClientWelcome.location:type_name -> dota.CMsgClientWelcome.Location + 3, // 24: dota.CMsgClientWelcome.additional_welcome_msgs:type_name -> dota.CExtraMsgBlock + 4, // 25: dota.CMsgClientWelcome.steam_learn_server_info:type_name -> dota.CMsgSteamLearnServerInfo + 2, // 26: dota.CMsgConnectionStatus.status:type_name -> dota.GCConnectionStatus + 68, // 27: dota.CMsgGCToGCSOCacheSubscribe.have_versions:type_name -> dota.CMsgGCToGCSOCacheSubscribe.CMsgHaveVersions + 78, // 28: dota.CMsgGCToGCForwardAccountDetails.account_details:type_name -> dota.CGCSystemMsg_GetAccountDetails_Response + 36, // 29: dota.CMsgGCToGCLoadSessionSOCache.forward_account_details:type_name -> dota.CMsgGCToGCForwardAccountDetails + 70, // 30: dota.CWorkshop_PopulateItemDescriptions_Request.languages:type_name -> dota.CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock + 71, // 31: dota.CWorkshop_SetItemPaymentRules_Request.associated_workshop_files:type_name -> dota.CWorkshop_SetItemPaymentRules_Request.WorkshopItemPaymentRule + 73, // 32: dota.CWorkshop_SetItemPaymentRules_Request.partner_accounts:type_name -> dota.CWorkshop_SetItemPaymentRules_Request.PartnerItemPaymentRule + 72, // 33: dota.CWorkshop_SetItemPaymentRules_Request.associated_workshop_file_for_direct_payments:type_name -> dota.CWorkshop_SetItemPaymentRules_Request.WorkshopDirectPaymentRule + 46, // 34: dota.CCommunity_GetClanAnnouncements_Response.announcements:type_name -> dota.CCommunity_ClanAnnouncementInfo + 75, // 35: dota.CMsgSerializedSOCache.caches:type_name -> dota.CMsgSerializedSOCache.Cache + 55, // 36: dota.CMsgGCToGCMasterSubscribeToCacheAsync.subscribe_msg:type_name -> dota.CMsgGCToGCMasterSubscribeToCache + 69, // 37: dota.CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock.descriptions:type_name -> dota.CWorkshop_PopulateItemDescriptions_Request.SingleItemDescription + 76, // 38: dota.CMsgSerializedSOCache.Cache.versions:type_name -> dota.CMsgSerializedSOCache.Cache.Version + 74, // 39: dota.CMsgSerializedSOCache.Cache.type_caches:type_name -> dota.CMsgSerializedSOCache.TypeCache + 40, // [40:40] is the sub-list for method output_type + 40, // [40:40] is the sub-list for method input_type + 40, // [40:40] is the sub-list for extension type_name + 40, // [40:40] is the sub-list for extension extendee + 0, // [0:40] is the sub-list for field type_name } func init() { file_gcsdk_gcmessages_proto_init() } @@ -5854,7 +6010,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCAssertJobData); i { + switch v := v.(*CMsgSteamLearnServerInfo); i { case 0: return &v.state case 1: @@ -5866,7 +6022,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCConCommand); i { + switch v := v.(*CMsgGCAssertJobData); i { case 0: return &v.state case 1: @@ -5878,7 +6034,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSDOAssert); i { + switch v := v.(*CMsgGCConCommand); i { case 0: return &v.state case 1: @@ -5890,7 +6046,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOIDOwner); i { + switch v := v.(*CMsgSDOAssert); i { case 0: return &v.state case 1: @@ -5902,7 +6058,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOSingleObject); i { + switch v := v.(*CMsgSOIDOwner); i { case 0: return &v.state case 1: @@ -5914,7 +6070,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOMultipleObjects); i { + switch v := v.(*CMsgSOSingleObject); i { case 0: return &v.state case 1: @@ -5926,7 +6082,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOCacheSubscribed); i { + switch v := v.(*CMsgSOMultipleObjects); i { case 0: return &v.state case 1: @@ -5938,7 +6094,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOCacheSubscribedUpToDate); i { + switch v := v.(*CMsgSOCacheSubscribed); i { case 0: return &v.state case 1: @@ -5950,7 +6106,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOCacheUnsubscribed); i { + switch v := v.(*CMsgSOCacheSubscribedUpToDate); i { case 0: return &v.state case 1: @@ -5962,7 +6118,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOCacheSubscriptionCheck); i { + switch v := v.(*CMsgSOCacheUnsubscribed); i { case 0: return &v.state case 1: @@ -5974,7 +6130,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOCacheSubscriptionRefresh); i { + switch v := v.(*CMsgSOCacheSubscriptionCheck); i { case 0: return &v.state case 1: @@ -5986,7 +6142,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOCacheVersion); i { + switch v := v.(*CMsgSOCacheSubscriptionRefresh); i { case 0: return &v.state case 1: @@ -5998,7 +6154,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCMultiplexMessage); i { + switch v := v.(*CMsgSOCacheVersion); i { case 0: return &v.state case 1: @@ -6010,7 +6166,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCSubGCStarting); i { + switch v := v.(*CMsgGCMultiplexMessage); i { case 0: return &v.state case 1: @@ -6022,7 +6178,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGCToGCMsgMasterAck); i { + switch v := v.(*CMsgGCToGCSubGCStarting); i { case 0: return &v.state case 1: @@ -6034,7 +6190,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGCToGCMsgMasterAck_Response); i { + switch v := v.(*CGCToGCMsgMasterAck); i { case 0: return &v.state case 1: @@ -6046,7 +6202,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCUniverseStartup); i { + switch v := v.(*CGCToGCMsgMasterAck_Response); i { case 0: return &v.state case 1: @@ -6058,7 +6214,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCUniverseStartupResponse); i { + switch v := v.(*CMsgGCToGCUniverseStartup); i { case 0: return &v.state case 1: @@ -6070,7 +6226,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGCToGCMsgMasterStartupComplete); i { + switch v := v.(*CMsgGCToGCUniverseStartupResponse); i { case 0: return &v.state case 1: @@ -6082,7 +6238,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGCToGCMsgRouted); i { + switch v := v.(*CGCToGCMsgMasterStartupComplete); i { case 0: return &v.state case 1: @@ -6094,7 +6250,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGCToGCMsgRoutedReply); i { + switch v := v.(*CGCToGCMsgRouted); i { case 0: return &v.state case 1: @@ -6106,7 +6262,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCUpdateSubGCSessionInfo); i { + switch v := v.(*CGCToGCMsgRoutedReply); i { case 0: return &v.state case 1: @@ -6118,7 +6274,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCRequestSubGCSessionInfo); i { + switch v := v.(*CMsgGCUpdateSubGCSessionInfo); i { case 0: return &v.state case 1: @@ -6130,7 +6286,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCRequestSubGCSessionInfoResponse); i { + switch v := v.(*CMsgGCRequestSubGCSessionInfo); i { case 0: return &v.state case 1: @@ -6142,7 +6298,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOCacheHaveVersion); i { + switch v := v.(*CMsgGCRequestSubGCSessionInfoResponse); i { case 0: return &v.state case 1: @@ -6154,7 +6310,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientHello); i { + switch v := v.(*CMsgSOCacheHaveVersion); i { case 0: return &v.state case 1: @@ -6166,7 +6322,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientWelcome); i { + switch v := v.(*CMsgClientHello); i { case 0: return &v.state case 1: @@ -6178,7 +6334,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgConnectionStatus); i { + switch v := v.(*CMsgClientWelcome); i { case 0: return &v.state case 1: @@ -6190,7 +6346,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCSOCacheSubscribe); i { + switch v := v.(*CMsgConnectionStatus); i { case 0: return &v.state case 1: @@ -6202,7 +6358,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCSOCacheUnsubscribe); i { + switch v := v.(*CMsgGCToGCSOCacheSubscribe); i { case 0: return &v.state case 1: @@ -6214,7 +6370,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCClientPing); i { + switch v := v.(*CMsgGCToGCSOCacheUnsubscribe); i { case 0: return &v.state case 1: @@ -6226,7 +6382,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCForwardAccountDetails); i { + switch v := v.(*CMsgGCClientPing); i { case 0: return &v.state case 1: @@ -6238,7 +6394,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCLoadSessionSOCache); i { + switch v := v.(*CMsgGCToGCForwardAccountDetails); i { case 0: return &v.state case 1: @@ -6250,7 +6406,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCLoadSessionSOCacheResponse); i { + switch v := v.(*CMsgGCToGCLoadSessionSOCache); i { case 0: return &v.state case 1: @@ -6262,7 +6418,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCUpdateSessionStats); i { + switch v := v.(*CMsgGCToGCLoadSessionSOCacheResponse); i { case 0: return &v.state case 1: @@ -6274,7 +6430,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientRequestDropped); i { + switch v := v.(*CMsgGCToGCUpdateSessionStats); i { case 0: return &v.state case 1: @@ -6286,7 +6442,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_PopulateItemDescriptions_Request); i { + switch v := v.(*CMsgGCToClientRequestDropped); i { case 0: return &v.state case 1: @@ -6298,7 +6454,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_GetContributors_Request); i { + switch v := v.(*CWorkshop_PopulateItemDescriptions_Request); i { case 0: return &v.state case 1: @@ -6310,7 +6466,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_GetContributors_Response); i { + switch v := v.(*CWorkshop_GetContributors_Request); i { case 0: return &v.state case 1: @@ -6322,7 +6478,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_SetItemPaymentRules_Request); i { + switch v := v.(*CWorkshop_GetContributors_Response); i { case 0: return &v.state case 1: @@ -6334,7 +6490,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_SetItemPaymentRules_Response); i { + switch v := v.(*CWorkshop_SetItemPaymentRules_Request); i { case 0: return &v.state case 1: @@ -6346,7 +6502,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCommunity_ClanAnnouncementInfo); i { + switch v := v.(*CWorkshop_SetItemPaymentRules_Response); i { case 0: return &v.state case 1: @@ -6358,7 +6514,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCommunity_GetClanAnnouncements_Request); i { + switch v := v.(*CCommunity_ClanAnnouncementInfo); i { case 0: return &v.state case 1: @@ -6370,7 +6526,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCommunity_GetClanAnnouncements_Response); i { + switch v := v.(*CCommunity_GetClanAnnouncements_Request); i { case 0: return &v.state case 1: @@ -6382,7 +6538,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CBroadcast_PostGameDataFrame_Request); i { + switch v := v.(*CCommunity_GetClanAnnouncements_Response); i { case 0: return &v.state case 1: @@ -6394,7 +6550,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSerializedSOCache); i { + switch v := v.(*CBroadcast_PostGameDataFrame_Request); i { case 0: return &v.state case 1: @@ -6406,7 +6562,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientPollConvarRequest); i { + switch v := v.(*CMsgSerializedSOCache); i { case 0: return &v.state case 1: @@ -6418,7 +6574,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToClientPollConvarResponse); i { + switch v := v.(*CMsgGCToClientPollConvarRequest); i { case 0: return &v.state case 1: @@ -6430,7 +6586,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGCMsgCompressedMsgToClient); i { + switch v := v.(*CMsgGCToClientPollConvarResponse); i { case 0: return &v.state case 1: @@ -6442,7 +6598,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCMasterBroadcastMessage); i { + switch v := v.(*CGCMsgCompressedMsgToClient); i { case 0: return &v.state case 1: @@ -6454,7 +6610,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCMasterSubscribeToCache); i { + switch v := v.(*CMsgGCToGCMasterBroadcastMessage); i { case 0: return &v.state case 1: @@ -6466,7 +6622,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCMasterSubscribeToCacheResponse); i { + switch v := v.(*CMsgGCToGCMasterSubscribeToCache); i { case 0: return &v.state case 1: @@ -6478,7 +6634,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCMasterSubscribeToCacheAsync); i { + switch v := v.(*CMsgGCToGCMasterSubscribeToCacheResponse); i { case 0: return &v.state case 1: @@ -6490,7 +6646,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCMasterUnsubscribeFromCache); i { + switch v := v.(*CMsgGCToGCMasterSubscribeToCacheAsync); i { case 0: return &v.state case 1: @@ -6502,7 +6658,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCMasterDestroyCache); i { + switch v := v.(*CMsgGCToGCMasterUnsubscribeFromCache); i { case 0: return &v.state case 1: @@ -6514,7 +6670,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSDOAssert_Request); i { + switch v := v.(*CMsgGCToGCMasterDestroyCache); i { case 0: return &v.state case 1: @@ -6526,7 +6682,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOMultipleObjects_SingleObject); i { + switch v := v.(*CMsgSteamLearnServerInfo_ProjectInfo); i { case 0: return &v.state case 1: @@ -6538,7 +6694,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSOCacheSubscribed_SubscribedType); i { + switch v := v.(*CMsgSDOAssert_Request); i { case 0: return &v.state case 1: @@ -6550,7 +6706,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGCToGCMsgMasterAck_Process); i { + switch v := v.(*CMsgSOMultipleObjects_SingleObject); i { case 0: return &v.state case 1: @@ -6562,7 +6718,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CGCToGCMsgMasterStartupComplete_GCInfo); i { + switch v := v.(*CMsgSOCacheSubscribed_SubscribedType); i { case 0: return &v.state case 1: @@ -6574,7 +6730,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCUpdateSubGCSessionInfo_CMsgUpdate); i { + switch v := v.(*CGCToGCMsgMasterAck_Process); i { case 0: return &v.state case 1: @@ -6586,7 +6742,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgClientWelcome_Location); i { + switch v := v.(*CGCToGCMsgMasterStartupComplete_GCInfo); i { case 0: return &v.state case 1: @@ -6598,7 +6754,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions); i { + switch v := v.(*CMsgGCUpdateSubGCSessionInfo_CMsgUpdate); i { case 0: return &v.state case 1: @@ -6610,7 +6766,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription); i { + switch v := v.(*CMsgClientWelcome_Location); i { case 0: return &v.state case 1: @@ -6622,7 +6778,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock); i { + switch v := v.(*CMsgGCToGCSOCacheSubscribe_CMsgHaveVersions); i { case 0: return &v.state case 1: @@ -6634,7 +6790,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule); i { + switch v := v.(*CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription); i { case 0: return &v.state case 1: @@ -6646,7 +6802,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule); i { + switch v := v.(*CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock); i { case 0: return &v.state case 1: @@ -6658,7 +6814,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule); i { + switch v := v.(*CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule); i { case 0: return &v.state case 1: @@ -6670,7 +6826,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSerializedSOCache_TypeCache); i { + switch v := v.(*CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule); i { case 0: return &v.state case 1: @@ -6682,7 +6838,7 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSerializedSOCache_Cache); i { + switch v := v.(*CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule); i { case 0: return &v.state case 1: @@ -6694,6 +6850,30 @@ func file_gcsdk_gcmessages_proto_init() { } } file_gcsdk_gcmessages_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSerializedSOCache_TypeCache); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_gcsdk_gcmessages_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSerializedSOCache_Cache); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_gcsdk_gcmessages_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSerializedSOCache_Cache_Version); i { case 0: return &v.state @@ -6712,7 +6892,7 @@ func file_gcsdk_gcmessages_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_gcsdk_gcmessages_proto_rawDesc, NumEnums: 3, - NumMessages: 72, + NumMessages: 74, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/gcsdk_gcmessages.proto b/dota/gcsdk_gcmessages.proto index 5970d44f..0e9b3486 100644 --- a/dota/gcsdk_gcmessages.proto +++ b/dota/gcsdk_gcmessages.proto @@ -34,6 +34,18 @@ message CExtraMsgBlock { optional bool is_compressed = 4; } +message CMsgSteamLearnServerInfo { + message ProjectInfo { + optional uint32 project_id = 1; + optional uint32 snapshot_published_version = 2; + optional uint32 inference_published_version = 3; + } + + optional bool enable_data_submission = 1; + optional CMsgSteamLearnAccessTokens access_tokens = 4; + repeated CMsgSteamLearnServerInfo.ProjectInfo project_infos = 5; +} + message CMsgGCAssertJobData { optional string message_type = 1; optional bytes message_data = 2; @@ -256,7 +268,7 @@ message CMsgClientWelcome { optional bool has_accepted_china_ssa = 16; optional bool is_banned_steam_china = 17; optional CExtraMsgBlock additional_welcome_msgs = 18; - optional CMsgSteamLearnHMACKeys steam_learn_hmac_keys = 19; + optional CMsgSteamLearnServerInfo steam_learn_server_info = 20; } message CMsgConnectionStatus { diff --git a/dota/gcsystemmsgs.pb.go b/dota/gcsystemmsgs.pb.go index 08de210b..0bf33ffa 100644 --- a/dota/gcsystemmsgs.pb.go +++ b/dota/gcsystemmsgs.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: gcsystemmsgs.proto diff --git a/dota/netmessages.pb.go b/dota/netmessages.pb.go index a9516173..4b551b9a 100644 --- a/dota/netmessages.pb.go +++ b/dota/netmessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: netmessages.proto @@ -266,6 +266,7 @@ type VoiceDataFormatT int32 const ( VoiceDataFormatT_VOICEDATA_FORMAT_STEAM VoiceDataFormatT = 0 VoiceDataFormatT_VOICEDATA_FORMAT_ENGINE VoiceDataFormatT = 1 + VoiceDataFormatT_VOICEDATA_FORMAT_OPUS VoiceDataFormatT = 2 ) // Enum value maps for VoiceDataFormatT. @@ -273,10 +274,12 @@ var ( VoiceDataFormatT_name = map[int32]string{ 0: "VOICEDATA_FORMAT_STEAM", 1: "VOICEDATA_FORMAT_ENGINE", + 2: "VOICEDATA_FORMAT_OPUS", } VoiceDataFormatT_value = map[string]int32{ "VOICEDATA_FORMAT_STEAM": 0, "VOICEDATA_FORMAT_ENGINE": 1, + "VOICEDATA_FORMAT_OPUS": 2, } ) @@ -998,6 +1001,9 @@ type CMsgVoiceAudio struct { SectionNumber *uint32 `protobuf:"varint,4,opt,name=section_number,json=sectionNumber" json:"section_number,omitempty"` SampleRate *uint32 `protobuf:"varint,5,opt,name=sample_rate,json=sampleRate" json:"sample_rate,omitempty"` UncompressedSampleOffset *uint32 `protobuf:"varint,6,opt,name=uncompressed_sample_offset,json=uncompressedSampleOffset" json:"uncompressed_sample_offset,omitempty"` + NumPackets *uint32 `protobuf:"varint,7,opt,name=num_packets,json=numPackets" json:"num_packets,omitempty"` + PacketOffsets []uint32 `protobuf:"varint,8,rep,name=packet_offsets,json=packetOffsets" json:"packet_offsets,omitempty"` + VoiceLevel *float32 `protobuf:"fixed32,9,opt,name=voice_level,json=voiceLevel" json:"voice_level,omitempty"` } func (x *CMsgVoiceAudio) Reset() { @@ -1074,6 +1080,27 @@ func (x *CMsgVoiceAudio) GetUncompressedSampleOffset() uint32 { return 0 } +func (x *CMsgVoiceAudio) GetNumPackets() uint32 { + if x != nil && x.NumPackets != nil { + return *x.NumPackets + } + return 0 +} + +func (x *CMsgVoiceAudio) GetPacketOffsets() []uint32 { + if x != nil { + return x.PacketOffsets + } + return nil +} + +func (x *CMsgVoiceAudio) GetVoiceLevel() float32 { + if x != nil && x.VoiceLevel != nil { + return *x.VoiceLevel + } + return 0 +} + type CCLCMsg_VoiceData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1632,44 +1659,6 @@ func (x *CCLCMsg_ServerStatus) GetSimplified() bool { return false } -type CCLCMsg_ServerPing struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CCLCMsg_ServerPing) Reset() { - *x = CCLCMsg_ServerPing{} - if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CCLCMsg_ServerPing) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CCLCMsg_ServerPing) ProtoMessage() {} - -func (x *CCLCMsg_ServerPing) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CCLCMsg_ServerPing.ProtoReflect.Descriptor instead. -func (*CCLCMsg_ServerPing) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{13} -} - type CCLCMsg_RequestPause struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1682,7 +1671,7 @@ type CCLCMsg_RequestPause struct { func (x *CCLCMsg_RequestPause) Reset() { *x = CCLCMsg_RequestPause{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[14] + mi := &file_netmessages_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1695,7 +1684,7 @@ func (x *CCLCMsg_RequestPause) String() string { func (*CCLCMsg_RequestPause) ProtoMessage() {} func (x *CCLCMsg_RequestPause) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[14] + mi := &file_netmessages_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1708,7 +1697,7 @@ func (x *CCLCMsg_RequestPause) ProtoReflect() protoreflect.Message { // Deprecated: Use CCLCMsg_RequestPause.ProtoReflect.Descriptor instead. func (*CCLCMsg_RequestPause) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{14} + return file_netmessages_proto_rawDescGZIP(), []int{13} } func (x *CCLCMsg_RequestPause) GetPauseType() RequestPauseT { @@ -1736,7 +1725,7 @@ type CCLCMsg_CmdKeyValues struct { func (x *CCLCMsg_CmdKeyValues) Reset() { *x = CCLCMsg_CmdKeyValues{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[15] + mi := &file_netmessages_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1749,7 +1738,7 @@ func (x *CCLCMsg_CmdKeyValues) String() string { func (*CCLCMsg_CmdKeyValues) ProtoMessage() {} func (x *CCLCMsg_CmdKeyValues) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[15] + mi := &file_netmessages_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1762,7 +1751,7 @@ func (x *CCLCMsg_CmdKeyValues) ProtoReflect() protoreflect.Message { // Deprecated: Use CCLCMsg_CmdKeyValues.ProtoReflect.Descriptor instead. func (*CCLCMsg_CmdKeyValues) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{15} + return file_netmessages_proto_rawDescGZIP(), []int{14} } func (x *CCLCMsg_CmdKeyValues) GetData() []byte { @@ -1783,7 +1772,7 @@ type CCLCMsg_RconServerDetails struct { func (x *CCLCMsg_RconServerDetails) Reset() { *x = CCLCMsg_RconServerDetails{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[16] + mi := &file_netmessages_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1796,7 +1785,7 @@ func (x *CCLCMsg_RconServerDetails) String() string { func (*CCLCMsg_RconServerDetails) ProtoMessage() {} func (x *CCLCMsg_RconServerDetails) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[16] + mi := &file_netmessages_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1809,7 +1798,7 @@ func (x *CCLCMsg_RconServerDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CCLCMsg_RconServerDetails.ProtoReflect.Descriptor instead. func (*CCLCMsg_RconServerDetails) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{16} + return file_netmessages_proto_rawDescGZIP(), []int{15} } func (x *CCLCMsg_RconServerDetails) GetToken() []byte { @@ -1845,7 +1834,7 @@ type CSVCMsg_ServerInfo struct { func (x *CSVCMsg_ServerInfo) Reset() { *x = CSVCMsg_ServerInfo{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[17] + mi := &file_netmessages_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1858,7 +1847,7 @@ func (x *CSVCMsg_ServerInfo) String() string { func (*CSVCMsg_ServerInfo) ProtoMessage() {} func (x *CSVCMsg_ServerInfo) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[17] + mi := &file_netmessages_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1871,7 +1860,7 @@ func (x *CSVCMsg_ServerInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_ServerInfo.ProtoReflect.Descriptor instead. func (*CSVCMsg_ServerInfo) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{17} + return file_netmessages_proto_rawDescGZIP(), []int{16} } func (x *CSVCMsg_ServerInfo) GetProtocol() int32 { @@ -1998,7 +1987,7 @@ type CSVCMsg_ClassInfo struct { func (x *CSVCMsg_ClassInfo) Reset() { *x = CSVCMsg_ClassInfo{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[18] + mi := &file_netmessages_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2011,7 +2000,7 @@ func (x *CSVCMsg_ClassInfo) String() string { func (*CSVCMsg_ClassInfo) ProtoMessage() {} func (x *CSVCMsg_ClassInfo) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[18] + mi := &file_netmessages_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2024,7 +2013,7 @@ func (x *CSVCMsg_ClassInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_ClassInfo.ProtoReflect.Descriptor instead. func (*CSVCMsg_ClassInfo) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{18} + return file_netmessages_proto_rawDescGZIP(), []int{17} } func (x *CSVCMsg_ClassInfo) GetCreateOnClient() bool { @@ -2052,7 +2041,7 @@ type CSVCMsg_SetPause struct { func (x *CSVCMsg_SetPause) Reset() { *x = CSVCMsg_SetPause{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[19] + mi := &file_netmessages_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2065,7 +2054,7 @@ func (x *CSVCMsg_SetPause) String() string { func (*CSVCMsg_SetPause) ProtoMessage() {} func (x *CSVCMsg_SetPause) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[19] + mi := &file_netmessages_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2078,7 +2067,7 @@ func (x *CSVCMsg_SetPause) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_SetPause.ProtoReflect.Descriptor instead. func (*CSVCMsg_SetPause) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{19} + return file_netmessages_proto_rawDescGZIP(), []int{18} } func (x *CSVCMsg_SetPause) GetPaused() bool { @@ -2101,7 +2090,7 @@ type CSVCMsg_VoiceInit struct { func (x *CSVCMsg_VoiceInit) Reset() { *x = CSVCMsg_VoiceInit{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[20] + mi := &file_netmessages_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2114,7 +2103,7 @@ func (x *CSVCMsg_VoiceInit) String() string { func (*CSVCMsg_VoiceInit) ProtoMessage() {} func (x *CSVCMsg_VoiceInit) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[20] + mi := &file_netmessages_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2127,7 +2116,7 @@ func (x *CSVCMsg_VoiceInit) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_VoiceInit.ProtoReflect.Descriptor instead. func (*CSVCMsg_VoiceInit) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{20} + return file_netmessages_proto_rawDescGZIP(), []int{19} } func (x *CSVCMsg_VoiceInit) GetQuality() int32 { @@ -2162,7 +2151,7 @@ type CSVCMsg_Print struct { func (x *CSVCMsg_Print) Reset() { *x = CSVCMsg_Print{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[21] + mi := &file_netmessages_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2175,7 +2164,7 @@ func (x *CSVCMsg_Print) String() string { func (*CSVCMsg_Print) ProtoMessage() {} func (x *CSVCMsg_Print) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[21] + mi := &file_netmessages_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2188,7 +2177,7 @@ func (x *CSVCMsg_Print) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_Print.ProtoReflect.Descriptor instead. func (*CSVCMsg_Print) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{21} + return file_netmessages_proto_rawDescGZIP(), []int{20} } func (x *CSVCMsg_Print) GetText() string { @@ -2210,7 +2199,7 @@ type CSVCMsg_Sounds struct { func (x *CSVCMsg_Sounds) Reset() { *x = CSVCMsg_Sounds{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[22] + mi := &file_netmessages_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2223,7 +2212,7 @@ func (x *CSVCMsg_Sounds) String() string { func (*CSVCMsg_Sounds) ProtoMessage() {} func (x *CSVCMsg_Sounds) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[22] + mi := &file_netmessages_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2236,7 +2225,7 @@ func (x *CSVCMsg_Sounds) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_Sounds.ProtoReflect.Descriptor instead. func (*CSVCMsg_Sounds) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{22} + return file_netmessages_proto_rawDescGZIP(), []int{21} } func (x *CSVCMsg_Sounds) GetReliableSound() bool { @@ -2265,7 +2254,7 @@ type CSVCMsg_Prefetch struct { func (x *CSVCMsg_Prefetch) Reset() { *x = CSVCMsg_Prefetch{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[23] + mi := &file_netmessages_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2278,7 +2267,7 @@ func (x *CSVCMsg_Prefetch) String() string { func (*CSVCMsg_Prefetch) ProtoMessage() {} func (x *CSVCMsg_Prefetch) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[23] + mi := &file_netmessages_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2291,7 +2280,7 @@ func (x *CSVCMsg_Prefetch) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_Prefetch.ProtoReflect.Descriptor instead. func (*CSVCMsg_Prefetch) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{23} + return file_netmessages_proto_rawDescGZIP(), []int{22} } func (x *CSVCMsg_Prefetch) GetSoundIndex() int32 { @@ -2320,7 +2309,7 @@ type CSVCMsg_SetView struct { func (x *CSVCMsg_SetView) Reset() { *x = CSVCMsg_SetView{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[24] + mi := &file_netmessages_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2333,7 +2322,7 @@ func (x *CSVCMsg_SetView) String() string { func (*CSVCMsg_SetView) ProtoMessage() {} func (x *CSVCMsg_SetView) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[24] + mi := &file_netmessages_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2346,7 +2335,7 @@ func (x *CSVCMsg_SetView) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_SetView.ProtoReflect.Descriptor instead. func (*CSVCMsg_SetView) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{24} + return file_netmessages_proto_rawDescGZIP(), []int{23} } func (x *CSVCMsg_SetView) GetEntityIndex() int32 { @@ -2375,7 +2364,7 @@ type CSVCMsg_FixAngle struct { func (x *CSVCMsg_FixAngle) Reset() { *x = CSVCMsg_FixAngle{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[25] + mi := &file_netmessages_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2388,7 +2377,7 @@ func (x *CSVCMsg_FixAngle) String() string { func (*CSVCMsg_FixAngle) ProtoMessage() {} func (x *CSVCMsg_FixAngle) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[25] + mi := &file_netmessages_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2401,7 +2390,7 @@ func (x *CSVCMsg_FixAngle) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_FixAngle.ProtoReflect.Descriptor instead. func (*CSVCMsg_FixAngle) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{25} + return file_netmessages_proto_rawDescGZIP(), []int{24} } func (x *CSVCMsg_FixAngle) GetRelative() bool { @@ -2429,7 +2418,7 @@ type CSVCMsg_CrosshairAngle struct { func (x *CSVCMsg_CrosshairAngle) Reset() { *x = CSVCMsg_CrosshairAngle{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[26] + mi := &file_netmessages_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2442,7 +2431,7 @@ func (x *CSVCMsg_CrosshairAngle) String() string { func (*CSVCMsg_CrosshairAngle) ProtoMessage() {} func (x *CSVCMsg_CrosshairAngle) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[26] + mi := &file_netmessages_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2455,7 +2444,7 @@ func (x *CSVCMsg_CrosshairAngle) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_CrosshairAngle.ProtoReflect.Descriptor instead. func (*CSVCMsg_CrosshairAngle) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{26} + return file_netmessages_proto_rawDescGZIP(), []int{25} } func (x *CSVCMsg_CrosshairAngle) GetAngle() *CMsgQAngle { @@ -2480,7 +2469,7 @@ type CSVCMsg_BSPDecal struct { func (x *CSVCMsg_BSPDecal) Reset() { *x = CSVCMsg_BSPDecal{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[27] + mi := &file_netmessages_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2493,7 +2482,7 @@ func (x *CSVCMsg_BSPDecal) String() string { func (*CSVCMsg_BSPDecal) ProtoMessage() {} func (x *CSVCMsg_BSPDecal) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[27] + mi := &file_netmessages_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2506,7 +2495,7 @@ func (x *CSVCMsg_BSPDecal) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_BSPDecal.ProtoReflect.Descriptor instead. func (*CSVCMsg_BSPDecal) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{27} + return file_netmessages_proto_rawDescGZIP(), []int{26} } func (x *CSVCMsg_BSPDecal) GetPos() *CMsgVector { @@ -2557,7 +2546,7 @@ type CSVCMsg_SplitScreen struct { func (x *CSVCMsg_SplitScreen) Reset() { *x = CSVCMsg_SplitScreen{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[28] + mi := &file_netmessages_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2570,7 +2559,7 @@ func (x *CSVCMsg_SplitScreen) String() string { func (*CSVCMsg_SplitScreen) ProtoMessage() {} func (x *CSVCMsg_SplitScreen) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[28] + mi := &file_netmessages_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2583,7 +2572,7 @@ func (x *CSVCMsg_SplitScreen) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_SplitScreen.ProtoReflect.Descriptor instead. func (*CSVCMsg_SplitScreen) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{28} + return file_netmessages_proto_rawDescGZIP(), []int{27} } func (x *CSVCMsg_SplitScreen) GetType() ESplitScreenMessageType { @@ -2619,7 +2608,7 @@ type CSVCMsg_GetCvarValue struct { func (x *CSVCMsg_GetCvarValue) Reset() { *x = CSVCMsg_GetCvarValue{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[29] + mi := &file_netmessages_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2632,7 +2621,7 @@ func (x *CSVCMsg_GetCvarValue) String() string { func (*CSVCMsg_GetCvarValue) ProtoMessage() {} func (x *CSVCMsg_GetCvarValue) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[29] + mi := &file_netmessages_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2645,7 +2634,7 @@ func (x *CSVCMsg_GetCvarValue) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_GetCvarValue.ProtoReflect.Descriptor instead. func (*CSVCMsg_GetCvarValue) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{29} + return file_netmessages_proto_rawDescGZIP(), []int{28} } func (x *CSVCMsg_GetCvarValue) GetCookie() int32 { @@ -2674,7 +2663,7 @@ type CSVCMsg_Menu struct { func (x *CSVCMsg_Menu) Reset() { *x = CSVCMsg_Menu{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[30] + mi := &file_netmessages_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2687,7 +2676,7 @@ func (x *CSVCMsg_Menu) String() string { func (*CSVCMsg_Menu) ProtoMessage() {} func (x *CSVCMsg_Menu) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[30] + mi := &file_netmessages_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2700,7 +2689,7 @@ func (x *CSVCMsg_Menu) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_Menu.ProtoReflect.Descriptor instead. func (*CSVCMsg_Menu) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{30} + return file_netmessages_proto_rawDescGZIP(), []int{29} } func (x *CSVCMsg_Menu) GetDialogType() int32 { @@ -2730,7 +2719,7 @@ type CSVCMsg_UserMessage struct { func (x *CSVCMsg_UserMessage) Reset() { *x = CSVCMsg_UserMessage{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[31] + mi := &file_netmessages_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2743,7 +2732,7 @@ func (x *CSVCMsg_UserMessage) String() string { func (*CSVCMsg_UserMessage) ProtoMessage() {} func (x *CSVCMsg_UserMessage) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[31] + mi := &file_netmessages_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2756,7 +2745,7 @@ func (x *CSVCMsg_UserMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_UserMessage.ProtoReflect.Descriptor instead. func (*CSVCMsg_UserMessage) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{31} + return file_netmessages_proto_rawDescGZIP(), []int{30} } func (x *CSVCMsg_UserMessage) GetMsgType() int32 { @@ -2794,7 +2783,7 @@ type CSVCMsg_SendTable struct { func (x *CSVCMsg_SendTable) Reset() { *x = CSVCMsg_SendTable{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[32] + mi := &file_netmessages_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2807,7 +2796,7 @@ func (x *CSVCMsg_SendTable) String() string { func (*CSVCMsg_SendTable) ProtoMessage() {} func (x *CSVCMsg_SendTable) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[32] + mi := &file_netmessages_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2820,7 +2809,7 @@ func (x *CSVCMsg_SendTable) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_SendTable.ProtoReflect.Descriptor instead. func (*CSVCMsg_SendTable) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{32} + return file_netmessages_proto_rawDescGZIP(), []int{31} } func (x *CSVCMsg_SendTable) GetIsEnd() bool { @@ -2862,7 +2851,7 @@ type CSVCMsg_GameEventList struct { func (x *CSVCMsg_GameEventList) Reset() { *x = CSVCMsg_GameEventList{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[33] + mi := &file_netmessages_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2875,7 +2864,7 @@ func (x *CSVCMsg_GameEventList) String() string { func (*CSVCMsg_GameEventList) ProtoMessage() {} func (x *CSVCMsg_GameEventList) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[33] + mi := &file_netmessages_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2888,7 +2877,7 @@ func (x *CSVCMsg_GameEventList) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_GameEventList.ProtoReflect.Descriptor instead. func (*CSVCMsg_GameEventList) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{33} + return file_netmessages_proto_rawDescGZIP(), []int{32} } func (x *CSVCMsg_GameEventList) GetDescriptors() []*CSVCMsg_GameEventListDescriptorT { @@ -2903,27 +2892,32 @@ type CSVCMsg_PacketEntities struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MaxEntries *int32 `protobuf:"varint,1,opt,name=max_entries,json=maxEntries" json:"max_entries,omitempty"` - UpdatedEntries *int32 `protobuf:"varint,2,opt,name=updated_entries,json=updatedEntries" json:"updated_entries,omitempty"` - IsDelta *bool `protobuf:"varint,3,opt,name=is_delta,json=isDelta" json:"is_delta,omitempty"` - UpdateBaseline *bool `protobuf:"varint,4,opt,name=update_baseline,json=updateBaseline" json:"update_baseline,omitempty"` - Baseline *int32 `protobuf:"varint,5,opt,name=baseline" json:"baseline,omitempty"` - DeltaFrom *int32 `protobuf:"varint,6,opt,name=delta_from,json=deltaFrom" json:"delta_from,omitempty"` - EntityData []byte `protobuf:"bytes,7,opt,name=entity_data,json=entityData" json:"entity_data,omitempty"` - PendingFullFrame *bool `protobuf:"varint,8,opt,name=pending_full_frame,json=pendingFullFrame" json:"pending_full_frame,omitempty"` - ActiveSpawngroupHandle *uint32 `protobuf:"varint,9,opt,name=active_spawngroup_handle,json=activeSpawngroupHandle" json:"active_spawngroup_handle,omitempty"` - MaxSpawngroupCreationsequence *uint32 `protobuf:"varint,10,opt,name=max_spawngroup_creationsequence,json=maxSpawngroupCreationsequence" json:"max_spawngroup_creationsequence,omitempty"` - LastCmdNumber *uint32 `protobuf:"varint,11,opt,name=last_cmd_number,json=lastCmdNumber" json:"last_cmd_number,omitempty"` - ServerTick *uint32 `protobuf:"varint,12,opt,name=server_tick,json=serverTick" json:"server_tick,omitempty"` - SerializedEntities []byte `protobuf:"bytes,13,opt,name=serialized_entities,json=serializedEntities" json:"serialized_entities,omitempty"` - CommandQueueInfo *CSVCMsg_PacketEntitiesCommandQueueInfoT `protobuf:"bytes,14,opt,name=command_queue_info,json=commandQueueInfo" json:"command_queue_info,omitempty"` - AlternateBaselines []*CSVCMsg_PacketEntitiesAlternateBaselineT `protobuf:"bytes,15,rep,name=alternate_baselines,json=alternateBaselines" json:"alternate_baselines,omitempty"` + MaxEntries *int32 `protobuf:"varint,1,opt,name=max_entries,json=maxEntries" json:"max_entries,omitempty"` + UpdatedEntries *int32 `protobuf:"varint,2,opt,name=updated_entries,json=updatedEntries" json:"updated_entries,omitempty"` + LegacyIsDelta *bool `protobuf:"varint,3,opt,name=legacy_is_delta,json=legacyIsDelta" json:"legacy_is_delta,omitempty"` + UpdateBaseline *bool `protobuf:"varint,4,opt,name=update_baseline,json=updateBaseline" json:"update_baseline,omitempty"` + Baseline *int32 `protobuf:"varint,5,opt,name=baseline" json:"baseline,omitempty"` + DeltaFrom *int32 `protobuf:"varint,6,opt,name=delta_from,json=deltaFrom" json:"delta_from,omitempty"` + EntityData []byte `protobuf:"bytes,7,opt,name=entity_data,json=entityData" json:"entity_data,omitempty"` + PendingFullFrame *bool `protobuf:"varint,8,opt,name=pending_full_frame,json=pendingFullFrame" json:"pending_full_frame,omitempty"` + ActiveSpawngroupHandle *uint32 `protobuf:"varint,9,opt,name=active_spawngroup_handle,json=activeSpawngroupHandle" json:"active_spawngroup_handle,omitempty"` + MaxSpawngroupCreationsequence *uint32 `protobuf:"varint,10,opt,name=max_spawngroup_creationsequence,json=maxSpawngroupCreationsequence" json:"max_spawngroup_creationsequence,omitempty"` + LastCmdNumberExecuted *uint32 `protobuf:"varint,11,opt,name=last_cmd_number_executed,json=lastCmdNumberExecuted" json:"last_cmd_number_executed,omitempty"` + LastCmdNumberRecvDelta *int32 `protobuf:"zigzag32,17,opt,name=last_cmd_number_recv_delta,json=lastCmdNumberRecvDelta" json:"last_cmd_number_recv_delta,omitempty"` + ServerTick *uint32 `protobuf:"varint,12,opt,name=server_tick,json=serverTick" json:"server_tick,omitempty"` + SerializedEntities []byte `protobuf:"bytes,13,opt,name=serialized_entities,json=serializedEntities" json:"serialized_entities,omitempty"` + CommandQueueInfo *CSVCMsg_PacketEntitiesCommandQueueInfoT `protobuf:"bytes,14,opt,name=command_queue_info,json=commandQueueInfo" json:"command_queue_info,omitempty"` + AlternateBaselines []*CSVCMsg_PacketEntitiesAlternateBaselineT `protobuf:"bytes,15,rep,name=alternate_baselines,json=alternateBaselines" json:"alternate_baselines,omitempty"` + HasPvsVisBits *uint32 `protobuf:"varint,16,opt,name=has_pvs_vis_bits,json=hasPvsVisBits" json:"has_pvs_vis_bits,omitempty"` + LastCmdRecvMargin *uint32 `protobuf:"varint,18,opt,name=last_cmd_recv_margin,json=lastCmdRecvMargin" json:"last_cmd_recv_margin,omitempty"` + NonTransmittedEntities *CSVCMsg_PacketEntitiesNonTransmittedEntitiesT `protobuf:"bytes,19,opt,name=non_transmitted_entities,json=nonTransmittedEntities" json:"non_transmitted_entities,omitempty"` + DevPadding []byte `protobuf:"bytes,999,opt,name=dev_padding,json=devPadding" json:"dev_padding,omitempty"` } func (x *CSVCMsg_PacketEntities) Reset() { *x = CSVCMsg_PacketEntities{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[34] + mi := &file_netmessages_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2936,7 +2930,7 @@ func (x *CSVCMsg_PacketEntities) String() string { func (*CSVCMsg_PacketEntities) ProtoMessage() {} func (x *CSVCMsg_PacketEntities) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[34] + mi := &file_netmessages_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2949,7 +2943,7 @@ func (x *CSVCMsg_PacketEntities) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_PacketEntities.ProtoReflect.Descriptor instead. func (*CSVCMsg_PacketEntities) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{34} + return file_netmessages_proto_rawDescGZIP(), []int{33} } func (x *CSVCMsg_PacketEntities) GetMaxEntries() int32 { @@ -2966,9 +2960,9 @@ func (x *CSVCMsg_PacketEntities) GetUpdatedEntries() int32 { return 0 } -func (x *CSVCMsg_PacketEntities) GetIsDelta() bool { - if x != nil && x.IsDelta != nil { - return *x.IsDelta +func (x *CSVCMsg_PacketEntities) GetLegacyIsDelta() bool { + if x != nil && x.LegacyIsDelta != nil { + return *x.LegacyIsDelta } return false } @@ -3022,9 +3016,16 @@ func (x *CSVCMsg_PacketEntities) GetMaxSpawngroupCreationsequence() uint32 { return 0 } -func (x *CSVCMsg_PacketEntities) GetLastCmdNumber() uint32 { - if x != nil && x.LastCmdNumber != nil { - return *x.LastCmdNumber +func (x *CSVCMsg_PacketEntities) GetLastCmdNumberExecuted() uint32 { + if x != nil && x.LastCmdNumberExecuted != nil { + return *x.LastCmdNumberExecuted + } + return 0 +} + +func (x *CSVCMsg_PacketEntities) GetLastCmdNumberRecvDelta() int32 { + if x != nil && x.LastCmdNumberRecvDelta != nil { + return *x.LastCmdNumberRecvDelta } return 0 } @@ -3057,6 +3058,34 @@ func (x *CSVCMsg_PacketEntities) GetAlternateBaselines() []*CSVCMsg_PacketEntiti return nil } +func (x *CSVCMsg_PacketEntities) GetHasPvsVisBits() uint32 { + if x != nil && x.HasPvsVisBits != nil { + return *x.HasPvsVisBits + } + return 0 +} + +func (x *CSVCMsg_PacketEntities) GetLastCmdRecvMargin() uint32 { + if x != nil && x.LastCmdRecvMargin != nil { + return *x.LastCmdRecvMargin + } + return 0 +} + +func (x *CSVCMsg_PacketEntities) GetNonTransmittedEntities() *CSVCMsg_PacketEntitiesNonTransmittedEntitiesT { + if x != nil { + return x.NonTransmittedEntities + } + return nil +} + +func (x *CSVCMsg_PacketEntities) GetDevPadding() []byte { + if x != nil { + return x.DevPadding + } + return nil +} + type CSVCMsg_TempEntities struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3070,7 +3099,7 @@ type CSVCMsg_TempEntities struct { func (x *CSVCMsg_TempEntities) Reset() { *x = CSVCMsg_TempEntities{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[35] + mi := &file_netmessages_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3083,7 +3112,7 @@ func (x *CSVCMsg_TempEntities) String() string { func (*CSVCMsg_TempEntities) ProtoMessage() {} func (x *CSVCMsg_TempEntities) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[35] + mi := &file_netmessages_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3096,7 +3125,7 @@ func (x *CSVCMsg_TempEntities) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_TempEntities.ProtoReflect.Descriptor instead. func (*CSVCMsg_TempEntities) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{35} + return file_netmessages_proto_rawDescGZIP(), []int{34} } func (x *CSVCMsg_TempEntities) GetReliable() bool { @@ -3140,7 +3169,7 @@ type CSVCMsg_CreateStringTable struct { func (x *CSVCMsg_CreateStringTable) Reset() { *x = CSVCMsg_CreateStringTable{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[36] + mi := &file_netmessages_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3153,7 +3182,7 @@ func (x *CSVCMsg_CreateStringTable) String() string { func (*CSVCMsg_CreateStringTable) ProtoMessage() {} func (x *CSVCMsg_CreateStringTable) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[36] + mi := &file_netmessages_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3166,7 +3195,7 @@ func (x *CSVCMsg_CreateStringTable) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_CreateStringTable.ProtoReflect.Descriptor instead. func (*CSVCMsg_CreateStringTable) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{36} + return file_netmessages_proto_rawDescGZIP(), []int{35} } func (x *CSVCMsg_CreateStringTable) GetName() string { @@ -3252,7 +3281,7 @@ type CSVCMsg_UpdateStringTable struct { func (x *CSVCMsg_UpdateStringTable) Reset() { *x = CSVCMsg_UpdateStringTable{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[37] + mi := &file_netmessages_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3265,7 +3294,7 @@ func (x *CSVCMsg_UpdateStringTable) String() string { func (*CSVCMsg_UpdateStringTable) ProtoMessage() {} func (x *CSVCMsg_UpdateStringTable) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[37] + mi := &file_netmessages_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3278,7 +3307,7 @@ func (x *CSVCMsg_UpdateStringTable) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_UpdateStringTable.ProtoReflect.Descriptor instead. func (*CSVCMsg_UpdateStringTable) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{37} + return file_netmessages_proto_rawDescGZIP(), []int{36} } func (x *CSVCMsg_UpdateStringTable) GetTableId() int32 { @@ -3313,12 +3342,13 @@ type CSVCMsg_VoiceData struct { Xuid *uint64 `protobuf:"fixed64,4,opt,name=xuid" json:"xuid,omitempty"` AudibleMask *int32 `protobuf:"varint,5,opt,name=audible_mask,json=audibleMask" json:"audible_mask,omitempty"` Tick *uint32 `protobuf:"varint,6,opt,name=tick" json:"tick,omitempty"` + Passthrough *int32 `protobuf:"varint,7,opt,name=passthrough" json:"passthrough,omitempty"` } func (x *CSVCMsg_VoiceData) Reset() { *x = CSVCMsg_VoiceData{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[38] + mi := &file_netmessages_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3331,7 +3361,7 @@ func (x *CSVCMsg_VoiceData) String() string { func (*CSVCMsg_VoiceData) ProtoMessage() {} func (x *CSVCMsg_VoiceData) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[38] + mi := &file_netmessages_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3344,7 +3374,7 @@ func (x *CSVCMsg_VoiceData) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_VoiceData.ProtoReflect.Descriptor instead. func (*CSVCMsg_VoiceData) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{38} + return file_netmessages_proto_rawDescGZIP(), []int{37} } func (x *CSVCMsg_VoiceData) GetAudio() *CMsgVoiceAudio { @@ -3389,6 +3419,13 @@ func (x *CSVCMsg_VoiceData) GetTick() uint32 { return 0 } +func (x *CSVCMsg_VoiceData) GetPassthrough() int32 { + if x != nil && x.Passthrough != nil { + return *x.Passthrough + } + return 0 +} + type CSVCMsg_PacketReliable struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3402,7 +3439,7 @@ type CSVCMsg_PacketReliable struct { func (x *CSVCMsg_PacketReliable) Reset() { *x = CSVCMsg_PacketReliable{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[39] + mi := &file_netmessages_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3415,7 +3452,7 @@ func (x *CSVCMsg_PacketReliable) String() string { func (*CSVCMsg_PacketReliable) ProtoMessage() {} func (x *CSVCMsg_PacketReliable) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[39] + mi := &file_netmessages_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3428,7 +3465,7 @@ func (x *CSVCMsg_PacketReliable) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_PacketReliable.ProtoReflect.Descriptor instead. func (*CSVCMsg_PacketReliable) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{39} + return file_netmessages_proto_rawDescGZIP(), []int{38} } func (x *CSVCMsg_PacketReliable) GetTick() int32 { @@ -3466,7 +3503,7 @@ type CSVCMsg_FullFrameSplit struct { func (x *CSVCMsg_FullFrameSplit) Reset() { *x = CSVCMsg_FullFrameSplit{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[40] + mi := &file_netmessages_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3479,7 +3516,7 @@ func (x *CSVCMsg_FullFrameSplit) String() string { func (*CSVCMsg_FullFrameSplit) ProtoMessage() {} func (x *CSVCMsg_FullFrameSplit) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[40] + mi := &file_netmessages_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3492,7 +3529,7 @@ func (x *CSVCMsg_FullFrameSplit) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_FullFrameSplit.ProtoReflect.Descriptor instead. func (*CSVCMsg_FullFrameSplit) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{40} + return file_netmessages_proto_rawDescGZIP(), []int{39} } func (x *CSVCMsg_FullFrameSplit) GetTick() int32 { @@ -3537,7 +3574,7 @@ type CSVCMsg_HLTVStatus struct { func (x *CSVCMsg_HLTVStatus) Reset() { *x = CSVCMsg_HLTVStatus{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[41] + mi := &file_netmessages_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3550,7 +3587,7 @@ func (x *CSVCMsg_HLTVStatus) String() string { func (*CSVCMsg_HLTVStatus) ProtoMessage() {} func (x *CSVCMsg_HLTVStatus) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[41] + mi := &file_netmessages_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3563,7 +3600,7 @@ func (x *CSVCMsg_HLTVStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_HLTVStatus.ProtoReflect.Descriptor instead. func (*CSVCMsg_HLTVStatus) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{41} + return file_netmessages_proto_rawDescGZIP(), []int{40} } func (x *CSVCMsg_HLTVStatus) GetMaster() string { @@ -3605,7 +3642,7 @@ type CSVCMsg_ServerSteamID struct { func (x *CSVCMsg_ServerSteamID) Reset() { *x = CSVCMsg_ServerSteamID{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[42] + mi := &file_netmessages_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3618,7 +3655,7 @@ func (x *CSVCMsg_ServerSteamID) String() string { func (*CSVCMsg_ServerSteamID) ProtoMessage() {} func (x *CSVCMsg_ServerSteamID) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[42] + mi := &file_netmessages_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3631,7 +3668,7 @@ func (x *CSVCMsg_ServerSteamID) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_ServerSteamID.ProtoReflect.Descriptor instead. func (*CSVCMsg_ServerSteamID) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{42} + return file_netmessages_proto_rawDescGZIP(), []int{41} } func (x *CSVCMsg_ServerSteamID) GetSteamId() uint64 { @@ -3652,7 +3689,7 @@ type CSVCMsg_CmdKeyValues struct { func (x *CSVCMsg_CmdKeyValues) Reset() { *x = CSVCMsg_CmdKeyValues{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[43] + mi := &file_netmessages_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3665,7 +3702,7 @@ func (x *CSVCMsg_CmdKeyValues) String() string { func (*CSVCMsg_CmdKeyValues) ProtoMessage() {} func (x *CSVCMsg_CmdKeyValues) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[43] + mi := &file_netmessages_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3678,7 +3715,7 @@ func (x *CSVCMsg_CmdKeyValues) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_CmdKeyValues.ProtoReflect.Descriptor instead. func (*CSVCMsg_CmdKeyValues) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{43} + return file_netmessages_proto_rawDescGZIP(), []int{42} } func (x *CSVCMsg_CmdKeyValues) GetData() []byte { @@ -3700,7 +3737,7 @@ type CSVCMsg_RconServerDetails struct { func (x *CSVCMsg_RconServerDetails) Reset() { *x = CSVCMsg_RconServerDetails{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[44] + mi := &file_netmessages_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3713,7 +3750,7 @@ func (x *CSVCMsg_RconServerDetails) String() string { func (*CSVCMsg_RconServerDetails) ProtoMessage() {} func (x *CSVCMsg_RconServerDetails) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[44] + mi := &file_netmessages_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3726,7 +3763,7 @@ func (x *CSVCMsg_RconServerDetails) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_RconServerDetails.ProtoReflect.Descriptor instead. func (*CSVCMsg_RconServerDetails) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{44} + return file_netmessages_proto_rawDescGZIP(), []int{43} } func (x *CSVCMsg_RconServerDetails) GetToken() []byte { @@ -3755,7 +3792,7 @@ type CMsgIPCAddress struct { func (x *CMsgIPCAddress) Reset() { *x = CMsgIPCAddress{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[45] + mi := &file_netmessages_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3768,7 +3805,7 @@ func (x *CMsgIPCAddress) String() string { func (*CMsgIPCAddress) ProtoMessage() {} func (x *CMsgIPCAddress) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[45] + mi := &file_netmessages_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3781,7 +3818,7 @@ func (x *CMsgIPCAddress) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgIPCAddress.ProtoReflect.Descriptor instead. func (*CMsgIPCAddress) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{45} + return file_netmessages_proto_rawDescGZIP(), []int{44} } func (x *CMsgIPCAddress) GetComputerGuid() uint64 { @@ -3814,7 +3851,7 @@ type CMsgServerPeer struct { func (x *CMsgServerPeer) Reset() { *x = CMsgServerPeer{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[46] + mi := &file_netmessages_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3827,7 +3864,7 @@ func (x *CMsgServerPeer) String() string { func (*CMsgServerPeer) ProtoMessage() {} func (x *CMsgServerPeer) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[46] + mi := &file_netmessages_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3840,7 +3877,7 @@ func (x *CMsgServerPeer) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerPeer.ProtoReflect.Descriptor instead. func (*CMsgServerPeer) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{46} + return file_netmessages_proto_rawDescGZIP(), []int{45} } func (x *CMsgServerPeer) GetPlayerSlot() int32 { @@ -3896,7 +3933,7 @@ type CSVCMsg_PeerList struct { func (x *CSVCMsg_PeerList) Reset() { *x = CSVCMsg_PeerList{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[47] + mi := &file_netmessages_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3909,7 +3946,7 @@ func (x *CSVCMsg_PeerList) String() string { func (*CSVCMsg_PeerList) ProtoMessage() {} func (x *CSVCMsg_PeerList) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[47] + mi := &file_netmessages_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3922,7 +3959,7 @@ func (x *CSVCMsg_PeerList) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_PeerList.ProtoReflect.Descriptor instead. func (*CSVCMsg_PeerList) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{47} + return file_netmessages_proto_rawDescGZIP(), []int{46} } func (x *CSVCMsg_PeerList) GetPeer() []*CMsgServerPeer { @@ -3937,13 +3974,14 @@ type CSVCMsg_ClearAllStringTables struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Mapname *string `protobuf:"bytes,1,opt,name=mapname" json:"mapname,omitempty"` + Mapname *string `protobuf:"bytes,1,opt,name=mapname" json:"mapname,omitempty"` + CreateTablesSkipped *bool `protobuf:"varint,3,opt,name=create_tables_skipped,json=createTablesSkipped" json:"create_tables_skipped,omitempty"` } func (x *CSVCMsg_ClearAllStringTables) Reset() { *x = CSVCMsg_ClearAllStringTables{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[48] + mi := &file_netmessages_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3956,7 +3994,7 @@ func (x *CSVCMsg_ClearAllStringTables) String() string { func (*CSVCMsg_ClearAllStringTables) ProtoMessage() {} func (x *CSVCMsg_ClearAllStringTables) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[48] + mi := &file_netmessages_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3969,7 +4007,7 @@ func (x *CSVCMsg_ClearAllStringTables) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_ClearAllStringTables.ProtoReflect.Descriptor instead. func (*CSVCMsg_ClearAllStringTables) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{48} + return file_netmessages_proto_rawDescGZIP(), []int{47} } func (x *CSVCMsg_ClearAllStringTables) GetMapname() string { @@ -3979,27 +4017,36 @@ func (x *CSVCMsg_ClearAllStringTables) GetMapname() string { return "" } +func (x *CSVCMsg_ClearAllStringTables) GetCreateTablesSkipped() bool { + if x != nil && x.CreateTablesSkipped != nil { + return *x.CreateTablesSkipped + } + return false +} + type ProtoFlattenedSerializerFieldT struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - VarTypeSym *int32 `protobuf:"varint,1,opt,name=var_type_sym,json=varTypeSym" json:"var_type_sym,omitempty"` - VarNameSym *int32 `protobuf:"varint,2,opt,name=var_name_sym,json=varNameSym" json:"var_name_sym,omitempty"` - BitCount *int32 `protobuf:"varint,3,opt,name=bit_count,json=bitCount" json:"bit_count,omitempty"` - LowValue *float32 `protobuf:"fixed32,4,opt,name=low_value,json=lowValue" json:"low_value,omitempty"` - HighValue *float32 `protobuf:"fixed32,5,opt,name=high_value,json=highValue" json:"high_value,omitempty"` - EncodeFlags *int32 `protobuf:"varint,6,opt,name=encode_flags,json=encodeFlags" json:"encode_flags,omitempty"` - FieldSerializerNameSym *int32 `protobuf:"varint,7,opt,name=field_serializer_name_sym,json=fieldSerializerNameSym" json:"field_serializer_name_sym,omitempty"` - FieldSerializerVersion *int32 `protobuf:"varint,8,opt,name=field_serializer_version,json=fieldSerializerVersion" json:"field_serializer_version,omitempty"` - SendNodeSym *int32 `protobuf:"varint,9,opt,name=send_node_sym,json=sendNodeSym" json:"send_node_sym,omitempty"` - VarEncoderSym *int32 `protobuf:"varint,10,opt,name=var_encoder_sym,json=varEncoderSym" json:"var_encoder_sym,omitempty"` + VarTypeSym *int32 `protobuf:"varint,1,opt,name=var_type_sym,json=varTypeSym" json:"var_type_sym,omitempty"` + VarNameSym *int32 `protobuf:"varint,2,opt,name=var_name_sym,json=varNameSym" json:"var_name_sym,omitempty"` + BitCount *int32 `protobuf:"varint,3,opt,name=bit_count,json=bitCount" json:"bit_count,omitempty"` + LowValue *float32 `protobuf:"fixed32,4,opt,name=low_value,json=lowValue" json:"low_value,omitempty"` + HighValue *float32 `protobuf:"fixed32,5,opt,name=high_value,json=highValue" json:"high_value,omitempty"` + EncodeFlags *int32 `protobuf:"varint,6,opt,name=encode_flags,json=encodeFlags" json:"encode_flags,omitempty"` + FieldSerializerNameSym *int32 `protobuf:"varint,7,opt,name=field_serializer_name_sym,json=fieldSerializerNameSym" json:"field_serializer_name_sym,omitempty"` + FieldSerializerVersion *int32 `protobuf:"varint,8,opt,name=field_serializer_version,json=fieldSerializerVersion" json:"field_serializer_version,omitempty"` + SendNodeSym *int32 `protobuf:"varint,9,opt,name=send_node_sym,json=sendNodeSym" json:"send_node_sym,omitempty"` + VarEncoderSym *int32 `protobuf:"varint,10,opt,name=var_encoder_sym,json=varEncoderSym" json:"var_encoder_sym,omitempty"` + PolymorphicTypes []*ProtoFlattenedSerializerFieldTPolymorphicFieldT `protobuf:"bytes,11,rep,name=polymorphic_types,json=polymorphicTypes" json:"polymorphic_types,omitempty"` + VarSerializerSym *int32 `protobuf:"varint,12,opt,name=var_serializer_sym,json=varSerializerSym" json:"var_serializer_sym,omitempty"` } func (x *ProtoFlattenedSerializerFieldT) Reset() { *x = ProtoFlattenedSerializerFieldT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[49] + mi := &file_netmessages_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4012,7 +4059,7 @@ func (x *ProtoFlattenedSerializerFieldT) String() string { func (*ProtoFlattenedSerializerFieldT) ProtoMessage() {} func (x *ProtoFlattenedSerializerFieldT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[49] + mi := &file_netmessages_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4025,7 +4072,7 @@ func (x *ProtoFlattenedSerializerFieldT) ProtoReflect() protoreflect.Message { // Deprecated: Use ProtoFlattenedSerializerFieldT.ProtoReflect.Descriptor instead. func (*ProtoFlattenedSerializerFieldT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{49} + return file_netmessages_proto_rawDescGZIP(), []int{48} } func (x *ProtoFlattenedSerializerFieldT) GetVarTypeSym() int32 { @@ -4098,6 +4145,20 @@ func (x *ProtoFlattenedSerializerFieldT) GetVarEncoderSym() int32 { return 0 } +func (x *ProtoFlattenedSerializerFieldT) GetPolymorphicTypes() []*ProtoFlattenedSerializerFieldTPolymorphicFieldT { + if x != nil { + return x.PolymorphicTypes + } + return nil +} + +func (x *ProtoFlattenedSerializerFieldT) GetVarSerializerSym() int32 { + if x != nil && x.VarSerializerSym != nil { + return *x.VarSerializerSym + } + return 0 +} + type ProtoFlattenedSerializerT struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4111,7 +4172,7 @@ type ProtoFlattenedSerializerT struct { func (x *ProtoFlattenedSerializerT) Reset() { *x = ProtoFlattenedSerializerT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[50] + mi := &file_netmessages_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4124,7 +4185,7 @@ func (x *ProtoFlattenedSerializerT) String() string { func (*ProtoFlattenedSerializerT) ProtoMessage() {} func (x *ProtoFlattenedSerializerT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[50] + mi := &file_netmessages_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4137,7 +4198,7 @@ func (x *ProtoFlattenedSerializerT) ProtoReflect() protoreflect.Message { // Deprecated: Use ProtoFlattenedSerializerT.ProtoReflect.Descriptor instead. func (*ProtoFlattenedSerializerT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{50} + return file_netmessages_proto_rawDescGZIP(), []int{49} } func (x *ProtoFlattenedSerializerT) GetSerializerNameSym() int32 { @@ -4174,7 +4235,7 @@ type CSVCMsg_FlattenedSerializer struct { func (x *CSVCMsg_FlattenedSerializer) Reset() { *x = CSVCMsg_FlattenedSerializer{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[51] + mi := &file_netmessages_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4187,7 +4248,7 @@ func (x *CSVCMsg_FlattenedSerializer) String() string { func (*CSVCMsg_FlattenedSerializer) ProtoMessage() {} func (x *CSVCMsg_FlattenedSerializer) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[51] + mi := &file_netmessages_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4200,7 +4261,7 @@ func (x *CSVCMsg_FlattenedSerializer) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_FlattenedSerializer.ProtoReflect.Descriptor instead. func (*CSVCMsg_FlattenedSerializer) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{51} + return file_netmessages_proto_rawDescGZIP(), []int{50} } func (x *CSVCMsg_FlattenedSerializer) GetSerializers() []*ProtoFlattenedSerializerT { @@ -4235,7 +4296,7 @@ type CSVCMsg_StopSound struct { func (x *CSVCMsg_StopSound) Reset() { *x = CSVCMsg_StopSound{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[52] + mi := &file_netmessages_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4248,7 +4309,7 @@ func (x *CSVCMsg_StopSound) String() string { func (*CSVCMsg_StopSound) ProtoMessage() {} func (x *CSVCMsg_StopSound) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[52] + mi := &file_netmessages_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4261,7 +4322,7 @@ func (x *CSVCMsg_StopSound) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_StopSound.ProtoReflect.Descriptor instead. func (*CSVCMsg_StopSound) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{52} + return file_netmessages_proto_rawDescGZIP(), []int{51} } func (x *CSVCMsg_StopSound) GetGuid() uint32 { @@ -4285,7 +4346,7 @@ type CBidirMsg_RebroadcastGameEvent struct { func (x *CBidirMsg_RebroadcastGameEvent) Reset() { *x = CBidirMsg_RebroadcastGameEvent{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[53] + mi := &file_netmessages_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4298,7 +4359,7 @@ func (x *CBidirMsg_RebroadcastGameEvent) String() string { func (*CBidirMsg_RebroadcastGameEvent) ProtoMessage() {} func (x *CBidirMsg_RebroadcastGameEvent) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[53] + mi := &file_netmessages_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4311,7 +4372,7 @@ func (x *CBidirMsg_RebroadcastGameEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CBidirMsg_RebroadcastGameEvent.ProtoReflect.Descriptor instead. func (*CBidirMsg_RebroadcastGameEvent) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{53} + return file_netmessages_proto_rawDescGZIP(), []int{52} } func (x *CBidirMsg_RebroadcastGameEvent) GetPosttoserver() bool { @@ -4353,7 +4414,7 @@ type CBidirMsg_RebroadcastSource struct { func (x *CBidirMsg_RebroadcastSource) Reset() { *x = CBidirMsg_RebroadcastSource{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[54] + mi := &file_netmessages_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4366,7 +4427,7 @@ func (x *CBidirMsg_RebroadcastSource) String() string { func (*CBidirMsg_RebroadcastSource) ProtoMessage() {} func (x *CBidirMsg_RebroadcastSource) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[54] + mi := &file_netmessages_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4379,7 +4440,7 @@ func (x *CBidirMsg_RebroadcastSource) ProtoReflect() protoreflect.Message { // Deprecated: Use CBidirMsg_RebroadcastSource.ProtoReflect.Descriptor instead. func (*CBidirMsg_RebroadcastSource) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{54} + return file_netmessages_proto_rawDescGZIP(), []int{53} } func (x *CBidirMsg_RebroadcastSource) GetEventsource() int32 { @@ -4394,37 +4455,37 @@ type CMsgServerNetworkStats struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Dedicated *bool `protobuf:"varint,1,opt,name=dedicated" json:"dedicated,omitempty"` - CpuUsage *int32 `protobuf:"varint,2,opt,name=cpu_usage,json=cpuUsage" json:"cpu_usage,omitempty"` - MemoryUsedMb *int32 `protobuf:"varint,3,opt,name=memory_used_mb,json=memoryUsedMb" json:"memory_used_mb,omitempty"` - MemoryFreeMb *int32 `protobuf:"varint,4,opt,name=memory_free_mb,json=memoryFreeMb" json:"memory_free_mb,omitempty"` - Uptime *int32 `protobuf:"varint,5,opt,name=uptime" json:"uptime,omitempty"` - SpawnCount *int32 `protobuf:"varint,6,opt,name=spawn_count,json=spawnCount" json:"spawn_count,omitempty"` - NumClients *int32 `protobuf:"varint,8,opt,name=num_clients,json=numClients" json:"num_clients,omitempty"` - NumBots *int32 `protobuf:"varint,9,opt,name=num_bots,json=numBots" json:"num_bots,omitempty"` - NumSpectators *int32 `protobuf:"varint,10,opt,name=num_spectators,json=numSpectators" json:"num_spectators,omitempty"` - NumTvRelays *int32 `protobuf:"varint,11,opt,name=num_tv_relays,json=numTvRelays" json:"num_tv_relays,omitempty"` - Fps *float32 `protobuf:"fixed32,12,opt,name=fps" json:"fps,omitempty"` - Ports []*CMsgServerNetworkStats_Port `protobuf:"bytes,17,rep,name=ports" json:"ports,omitempty"` - AvgLatencyOut *float32 `protobuf:"fixed32,18,opt,name=avg_latency_out,json=avgLatencyOut" json:"avg_latency_out,omitempty"` - AvgLatencyIn *float32 `protobuf:"fixed32,19,opt,name=avg_latency_in,json=avgLatencyIn" json:"avg_latency_in,omitempty"` - AvgPacketsOut *float32 `protobuf:"fixed32,20,opt,name=avg_packets_out,json=avgPacketsOut" json:"avg_packets_out,omitempty"` - AvgPacketsIn *float32 `protobuf:"fixed32,21,opt,name=avg_packets_in,json=avgPacketsIn" json:"avg_packets_in,omitempty"` - AvgLossOut *float32 `protobuf:"fixed32,22,opt,name=avg_loss_out,json=avgLossOut" json:"avg_loss_out,omitempty"` - AvgLossIn *float32 `protobuf:"fixed32,23,opt,name=avg_loss_in,json=avgLossIn" json:"avg_loss_in,omitempty"` - AvgDataOut *float32 `protobuf:"fixed32,24,opt,name=avg_data_out,json=avgDataOut" json:"avg_data_out,omitempty"` - AvgDataIn *float32 `protobuf:"fixed32,25,opt,name=avg_data_in,json=avgDataIn" json:"avg_data_in,omitempty"` - TotalDataIn *uint64 `protobuf:"varint,26,opt,name=total_data_in,json=totalDataIn" json:"total_data_in,omitempty"` - TotalPacketsIn *uint64 `protobuf:"varint,27,opt,name=total_packets_in,json=totalPacketsIn" json:"total_packets_in,omitempty"` - TotalDataOut *uint64 `protobuf:"varint,28,opt,name=total_data_out,json=totalDataOut" json:"total_data_out,omitempty"` - TotalPacketsOut *uint64 `protobuf:"varint,29,opt,name=total_packets_out,json=totalPacketsOut" json:"total_packets_out,omitempty"` - Players []*CMsgServerNetworkStats_Player `protobuf:"bytes,30,rep,name=players" json:"players,omitempty"` + Dedicated *bool `protobuf:"varint,1,opt,name=dedicated" json:"dedicated,omitempty"` + CpuUsage *int32 `protobuf:"varint,2,opt,name=cpu_usage,json=cpuUsage" json:"cpu_usage,omitempty"` + MemoryUsedMb *int32 `protobuf:"varint,3,opt,name=memory_used_mb,json=memoryUsedMb" json:"memory_used_mb,omitempty"` + MemoryFreeMb *int32 `protobuf:"varint,4,opt,name=memory_free_mb,json=memoryFreeMb" json:"memory_free_mb,omitempty"` + Uptime *int32 `protobuf:"varint,5,opt,name=uptime" json:"uptime,omitempty"` + SpawnCount *int32 `protobuf:"varint,6,opt,name=spawn_count,json=spawnCount" json:"spawn_count,omitempty"` + NumClients *int32 `protobuf:"varint,8,opt,name=num_clients,json=numClients" json:"num_clients,omitempty"` + NumBots *int32 `protobuf:"varint,9,opt,name=num_bots,json=numBots" json:"num_bots,omitempty"` + NumSpectators *int32 `protobuf:"varint,10,opt,name=num_spectators,json=numSpectators" json:"num_spectators,omitempty"` + NumTvRelays *int32 `protobuf:"varint,11,opt,name=num_tv_relays,json=numTvRelays" json:"num_tv_relays,omitempty"` + Fps *float32 `protobuf:"fixed32,12,opt,name=fps" json:"fps,omitempty"` + Ports []*CMsgServerNetworkStats_Port `protobuf:"bytes,17,rep,name=ports" json:"ports,omitempty"` + AvgPingMs *float32 `protobuf:"fixed32,18,opt,name=avg_ping_ms,json=avgPingMs" json:"avg_ping_ms,omitempty"` + AvgEngineLatencyOut *float32 `protobuf:"fixed32,19,opt,name=avg_engine_latency_out,json=avgEngineLatencyOut" json:"avg_engine_latency_out,omitempty"` + AvgPacketsOut *float32 `protobuf:"fixed32,20,opt,name=avg_packets_out,json=avgPacketsOut" json:"avg_packets_out,omitempty"` + AvgPacketsIn *float32 `protobuf:"fixed32,21,opt,name=avg_packets_in,json=avgPacketsIn" json:"avg_packets_in,omitempty"` + AvgLossOut *float32 `protobuf:"fixed32,22,opt,name=avg_loss_out,json=avgLossOut" json:"avg_loss_out,omitempty"` + AvgLossIn *float32 `protobuf:"fixed32,23,opt,name=avg_loss_in,json=avgLossIn" json:"avg_loss_in,omitempty"` + AvgDataOut *float32 `protobuf:"fixed32,24,opt,name=avg_data_out,json=avgDataOut" json:"avg_data_out,omitempty"` + AvgDataIn *float32 `protobuf:"fixed32,25,opt,name=avg_data_in,json=avgDataIn" json:"avg_data_in,omitempty"` + TotalDataIn *uint64 `protobuf:"varint,26,opt,name=total_data_in,json=totalDataIn" json:"total_data_in,omitempty"` + TotalPacketsIn *uint64 `protobuf:"varint,27,opt,name=total_packets_in,json=totalPacketsIn" json:"total_packets_in,omitempty"` + TotalDataOut *uint64 `protobuf:"varint,28,opt,name=total_data_out,json=totalDataOut" json:"total_data_out,omitempty"` + TotalPacketsOut *uint64 `protobuf:"varint,29,opt,name=total_packets_out,json=totalPacketsOut" json:"total_packets_out,omitempty"` + Players []*CMsgServerNetworkStats_Player `protobuf:"bytes,30,rep,name=players" json:"players,omitempty"` } func (x *CMsgServerNetworkStats) Reset() { *x = CMsgServerNetworkStats{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[55] + mi := &file_netmessages_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4437,7 +4498,7 @@ func (x *CMsgServerNetworkStats) String() string { func (*CMsgServerNetworkStats) ProtoMessage() {} func (x *CMsgServerNetworkStats) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[55] + mi := &file_netmessages_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4450,7 +4511,7 @@ func (x *CMsgServerNetworkStats) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerNetworkStats.ProtoReflect.Descriptor instead. func (*CMsgServerNetworkStats) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{55} + return file_netmessages_proto_rawDescGZIP(), []int{54} } func (x *CMsgServerNetworkStats) GetDedicated() bool { @@ -4537,16 +4598,16 @@ func (x *CMsgServerNetworkStats) GetPorts() []*CMsgServerNetworkStats_Port { return nil } -func (x *CMsgServerNetworkStats) GetAvgLatencyOut() float32 { - if x != nil && x.AvgLatencyOut != nil { - return *x.AvgLatencyOut +func (x *CMsgServerNetworkStats) GetAvgPingMs() float32 { + if x != nil && x.AvgPingMs != nil { + return *x.AvgPingMs } return 0 } -func (x *CMsgServerNetworkStats) GetAvgLatencyIn() float32 { - if x != nil && x.AvgLatencyIn != nil { - return *x.AvgLatencyIn +func (x *CMsgServerNetworkStats) GetAvgEngineLatencyOut() float32 { + if x != nil && x.AvgEngineLatencyOut != nil { + return *x.AvgEngineLatencyOut } return 0 } @@ -4646,7 +4707,7 @@ type CSVCMsg_HltvReplay struct { func (x *CSVCMsg_HltvReplay) Reset() { *x = CSVCMsg_HltvReplay{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[56] + mi := &file_netmessages_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4659,7 +4720,7 @@ func (x *CSVCMsg_HltvReplay) String() string { func (*CSVCMsg_HltvReplay) ProtoMessage() {} func (x *CSVCMsg_HltvReplay) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[56] + mi := &file_netmessages_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4672,7 +4733,7 @@ func (x *CSVCMsg_HltvReplay) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_HltvReplay.ProtoReflect.Descriptor instead. func (*CSVCMsg_HltvReplay) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{56} + return file_netmessages_proto_rawDescGZIP(), []int{55} } func (x *CSVCMsg_HltvReplay) GetDelay() int32 { @@ -4746,7 +4807,7 @@ type CCLCMsg_HltvReplay struct { func (x *CCLCMsg_HltvReplay) Reset() { *x = CCLCMsg_HltvReplay{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[57] + mi := &file_netmessages_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4759,7 +4820,7 @@ func (x *CCLCMsg_HltvReplay) String() string { func (*CCLCMsg_HltvReplay) ProtoMessage() {} func (x *CCLCMsg_HltvReplay) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[57] + mi := &file_netmessages_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4772,7 +4833,7 @@ func (x *CCLCMsg_HltvReplay) ProtoReflect() protoreflect.Message { // Deprecated: Use CCLCMsg_HltvReplay.ProtoReflect.Descriptor instead. func (*CCLCMsg_HltvReplay) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{57} + return file_netmessages_proto_rawDescGZIP(), []int{56} } func (x *CCLCMsg_HltvReplay) GetRequest() int32 { @@ -4821,7 +4882,7 @@ type CSVCMsg_Broadcast_Command struct { func (x *CSVCMsg_Broadcast_Command) Reset() { *x = CSVCMsg_Broadcast_Command{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[58] + mi := &file_netmessages_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4834,7 +4895,7 @@ func (x *CSVCMsg_Broadcast_Command) String() string { func (*CSVCMsg_Broadcast_Command) ProtoMessage() {} func (x *CSVCMsg_Broadcast_Command) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[58] + mi := &file_netmessages_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4847,7 +4908,7 @@ func (x *CSVCMsg_Broadcast_Command) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_Broadcast_Command.ProtoReflect.Descriptor instead. func (*CSVCMsg_Broadcast_Command) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{58} + return file_netmessages_proto_rawDescGZIP(), []int{57} } func (x *CSVCMsg_Broadcast_Command) GetCmd() string { @@ -4875,7 +4936,7 @@ type CCLCMsg_HltvFixupOperatorTick struct { func (x *CCLCMsg_HltvFixupOperatorTick) Reset() { *x = CCLCMsg_HltvFixupOperatorTick{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[59] + mi := &file_netmessages_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4888,7 +4949,7 @@ func (x *CCLCMsg_HltvFixupOperatorTick) String() string { func (*CCLCMsg_HltvFixupOperatorTick) ProtoMessage() {} func (x *CCLCMsg_HltvFixupOperatorTick) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[59] + mi := &file_netmessages_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4901,7 +4962,7 @@ func (x *CCLCMsg_HltvFixupOperatorTick) ProtoReflect() protoreflect.Message { // Deprecated: Use CCLCMsg_HltvFixupOperatorTick.ProtoReflect.Descriptor instead. func (*CCLCMsg_HltvFixupOperatorTick) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{59} + return file_netmessages_proto_rawDescGZIP(), []int{58} } func (x *CCLCMsg_HltvFixupOperatorTick) GetTick() int32 { @@ -4972,7 +5033,7 @@ type CSVCMsg_HltvFixupOperatorStatus struct { func (x *CSVCMsg_HltvFixupOperatorStatus) Reset() { *x = CSVCMsg_HltvFixupOperatorStatus{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[60] + mi := &file_netmessages_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4985,7 +5046,7 @@ func (x *CSVCMsg_HltvFixupOperatorStatus) String() string { func (*CSVCMsg_HltvFixupOperatorStatus) ProtoMessage() {} func (x *CSVCMsg_HltvFixupOperatorStatus) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[60] + mi := &file_netmessages_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4998,7 +5059,7 @@ func (x *CSVCMsg_HltvFixupOperatorStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_HltvFixupOperatorStatus.ProtoReflect.Descriptor instead. func (*CSVCMsg_HltvFixupOperatorStatus) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{60} + return file_netmessages_proto_rawDescGZIP(), []int{59} } func (x *CSVCMsg_HltvFixupOperatorStatus) GetMode() uint32 { @@ -5020,15 +5081,14 @@ type CSVCMsg_ClassInfoClassT struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClassId *int32 `protobuf:"varint,1,opt,name=class_id,json=classId" json:"class_id,omitempty"` - DataTableName *string `protobuf:"bytes,2,opt,name=data_table_name,json=dataTableName" json:"data_table_name,omitempty"` - ClassName *string `protobuf:"bytes,3,opt,name=class_name,json=className" json:"class_name,omitempty"` + ClassId *int32 `protobuf:"varint,1,opt,name=class_id,json=classId" json:"class_id,omitempty"` + ClassName *string `protobuf:"bytes,3,opt,name=class_name,json=className" json:"class_name,omitempty"` } func (x *CSVCMsg_ClassInfoClassT) Reset() { *x = CSVCMsg_ClassInfoClassT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[61] + mi := &file_netmessages_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5041,7 +5101,7 @@ func (x *CSVCMsg_ClassInfoClassT) String() string { func (*CSVCMsg_ClassInfoClassT) ProtoMessage() {} func (x *CSVCMsg_ClassInfoClassT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[61] + mi := &file_netmessages_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5054,7 +5114,7 @@ func (x *CSVCMsg_ClassInfoClassT) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_ClassInfoClassT.ProtoReflect.Descriptor instead. func (*CSVCMsg_ClassInfoClassT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{18, 0} + return file_netmessages_proto_rawDescGZIP(), []int{17, 0} } func (x *CSVCMsg_ClassInfoClassT) GetClassId() int32 { @@ -5064,13 +5124,6 @@ func (x *CSVCMsg_ClassInfoClassT) GetClassId() int32 { return 0 } -func (x *CSVCMsg_ClassInfoClassT) GetDataTableName() string { - if x != nil && x.DataTableName != nil { - return *x.DataTableName - } - return "" -} - func (x *CSVCMsg_ClassInfoClassT) GetClassName() string { if x != nil && x.ClassName != nil { return *x.ClassName @@ -5107,7 +5160,7 @@ type CSVCMsg_SoundsSounddataT struct { func (x *CSVCMsg_SoundsSounddataT) Reset() { *x = CSVCMsg_SoundsSounddataT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[62] + mi := &file_netmessages_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5120,7 +5173,7 @@ func (x *CSVCMsg_SoundsSounddataT) String() string { func (*CSVCMsg_SoundsSounddataT) ProtoMessage() {} func (x *CSVCMsg_SoundsSounddataT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[62] + mi := &file_netmessages_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5133,7 +5186,7 @@ func (x *CSVCMsg_SoundsSounddataT) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_SoundsSounddataT.ProtoReflect.Descriptor instead. func (*CSVCMsg_SoundsSounddataT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{22, 0} + return file_netmessages_proto_rawDescGZIP(), []int{21, 0} } func (x *CSVCMsg_SoundsSounddataT) GetOriginX() int32 { @@ -5288,7 +5341,7 @@ type CSVCMsg_SendTableSendpropT struct { func (x *CSVCMsg_SendTableSendpropT) Reset() { *x = CSVCMsg_SendTableSendpropT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[63] + mi := &file_netmessages_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5301,7 +5354,7 @@ func (x *CSVCMsg_SendTableSendpropT) String() string { func (*CSVCMsg_SendTableSendpropT) ProtoMessage() {} func (x *CSVCMsg_SendTableSendpropT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[63] + mi := &file_netmessages_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5314,7 +5367,7 @@ func (x *CSVCMsg_SendTableSendpropT) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_SendTableSendpropT.ProtoReflect.Descriptor instead. func (*CSVCMsg_SendTableSendpropT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{32, 0} + return file_netmessages_proto_rawDescGZIP(), []int{31, 0} } func (x *CSVCMsg_SendTableSendpropT) GetType() int32 { @@ -5392,7 +5445,7 @@ type CSVCMsg_GameEventListKeyT struct { func (x *CSVCMsg_GameEventListKeyT) Reset() { *x = CSVCMsg_GameEventListKeyT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[64] + mi := &file_netmessages_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5405,7 +5458,7 @@ func (x *CSVCMsg_GameEventListKeyT) String() string { func (*CSVCMsg_GameEventListKeyT) ProtoMessage() {} func (x *CSVCMsg_GameEventListKeyT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[64] + mi := &file_netmessages_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5418,7 +5471,7 @@ func (x *CSVCMsg_GameEventListKeyT) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_GameEventListKeyT.ProtoReflect.Descriptor instead. func (*CSVCMsg_GameEventListKeyT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{33, 0} + return file_netmessages_proto_rawDescGZIP(), []int{32, 0} } func (x *CSVCMsg_GameEventListKeyT) GetType() int32 { @@ -5448,7 +5501,7 @@ type CSVCMsg_GameEventListDescriptorT struct { func (x *CSVCMsg_GameEventListDescriptorT) Reset() { *x = CSVCMsg_GameEventListDescriptorT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[65] + mi := &file_netmessages_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5461,7 +5514,7 @@ func (x *CSVCMsg_GameEventListDescriptorT) String() string { func (*CSVCMsg_GameEventListDescriptorT) ProtoMessage() {} func (x *CSVCMsg_GameEventListDescriptorT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[65] + mi := &file_netmessages_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5474,7 +5527,7 @@ func (x *CSVCMsg_GameEventListDescriptorT) ProtoReflect() protoreflect.Message { // Deprecated: Use CSVCMsg_GameEventListDescriptorT.ProtoReflect.Descriptor instead. func (*CSVCMsg_GameEventListDescriptorT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{33, 1} + return file_netmessages_proto_rawDescGZIP(), []int{32, 1} } func (x *CSVCMsg_GameEventListDescriptorT) GetEventid() int32 { @@ -5513,7 +5566,7 @@ type CSVCMsg_PacketEntitiesCommandQueueInfoT struct { func (x *CSVCMsg_PacketEntitiesCommandQueueInfoT) Reset() { *x = CSVCMsg_PacketEntitiesCommandQueueInfoT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[66] + mi := &file_netmessages_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5526,7 +5579,7 @@ func (x *CSVCMsg_PacketEntitiesCommandQueueInfoT) String() string { func (*CSVCMsg_PacketEntitiesCommandQueueInfoT) ProtoMessage() {} func (x *CSVCMsg_PacketEntitiesCommandQueueInfoT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[66] + mi := &file_netmessages_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5539,7 +5592,7 @@ func (x *CSVCMsg_PacketEntitiesCommandQueueInfoT) ProtoReflect() protoreflect.Me // Deprecated: Use CSVCMsg_PacketEntitiesCommandQueueInfoT.ProtoReflect.Descriptor instead. func (*CSVCMsg_PacketEntitiesCommandQueueInfoT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{34, 0} + return file_netmessages_proto_rawDescGZIP(), []int{33, 0} } func (x *CSVCMsg_PacketEntitiesCommandQueueInfoT) GetCommandsQueued() uint32 { @@ -5589,7 +5642,7 @@ type CSVCMsg_PacketEntitiesAlternateBaselineT struct { func (x *CSVCMsg_PacketEntitiesAlternateBaselineT) Reset() { *x = CSVCMsg_PacketEntitiesAlternateBaselineT{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[67] + mi := &file_netmessages_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5602,7 +5655,7 @@ func (x *CSVCMsg_PacketEntitiesAlternateBaselineT) String() string { func (*CSVCMsg_PacketEntitiesAlternateBaselineT) ProtoMessage() {} func (x *CSVCMsg_PacketEntitiesAlternateBaselineT) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[67] + mi := &file_netmessages_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5615,7 +5668,7 @@ func (x *CSVCMsg_PacketEntitiesAlternateBaselineT) ProtoReflect() protoreflect.M // Deprecated: Use CSVCMsg_PacketEntitiesAlternateBaselineT.ProtoReflect.Descriptor instead. func (*CSVCMsg_PacketEntitiesAlternateBaselineT) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{34, 1} + return file_netmessages_proto_rawDescGZIP(), []int{33, 1} } func (x *CSVCMsg_PacketEntitiesAlternateBaselineT) GetEntityIndex() int32 { @@ -5632,6 +5685,116 @@ func (x *CSVCMsg_PacketEntitiesAlternateBaselineT) GetBaselineIndex() int32 { return 0 } +type CSVCMsg_PacketEntitiesNonTransmittedEntitiesT struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + HeaderCount *int32 `protobuf:"varint,1,opt,name=header_count,json=headerCount" json:"header_count,omitempty"` + Data []byte `protobuf:"bytes,2,opt,name=data" json:"data,omitempty"` +} + +func (x *CSVCMsg_PacketEntitiesNonTransmittedEntitiesT) Reset() { + *x = CSVCMsg_PacketEntitiesNonTransmittedEntitiesT{} + if protoimpl.UnsafeEnabled { + mi := &file_netmessages_proto_msgTypes[67] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CSVCMsg_PacketEntitiesNonTransmittedEntitiesT) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CSVCMsg_PacketEntitiesNonTransmittedEntitiesT) ProtoMessage() {} + +func (x *CSVCMsg_PacketEntitiesNonTransmittedEntitiesT) ProtoReflect() protoreflect.Message { + mi := &file_netmessages_proto_msgTypes[67] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CSVCMsg_PacketEntitiesNonTransmittedEntitiesT.ProtoReflect.Descriptor instead. +func (*CSVCMsg_PacketEntitiesNonTransmittedEntitiesT) Descriptor() ([]byte, []int) { + return file_netmessages_proto_rawDescGZIP(), []int{33, 2} +} + +func (x *CSVCMsg_PacketEntitiesNonTransmittedEntitiesT) GetHeaderCount() int32 { + if x != nil && x.HeaderCount != nil { + return *x.HeaderCount + } + return 0 +} + +func (x *CSVCMsg_PacketEntitiesNonTransmittedEntitiesT) GetData() []byte { + if x != nil { + return x.Data + } + return nil +} + +type ProtoFlattenedSerializerFieldTPolymorphicFieldT struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PolymorphicFieldSerializerNameSym *int32 `protobuf:"varint,1,opt,name=polymorphic_field_serializer_name_sym,json=polymorphicFieldSerializerNameSym" json:"polymorphic_field_serializer_name_sym,omitempty"` + PolymorphicFieldSerializerVersion *int32 `protobuf:"varint,2,opt,name=polymorphic_field_serializer_version,json=polymorphicFieldSerializerVersion" json:"polymorphic_field_serializer_version,omitempty"` +} + +func (x *ProtoFlattenedSerializerFieldTPolymorphicFieldT) Reset() { + *x = ProtoFlattenedSerializerFieldTPolymorphicFieldT{} + if protoimpl.UnsafeEnabled { + mi := &file_netmessages_proto_msgTypes[68] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ProtoFlattenedSerializerFieldTPolymorphicFieldT) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ProtoFlattenedSerializerFieldTPolymorphicFieldT) ProtoMessage() {} + +func (x *ProtoFlattenedSerializerFieldTPolymorphicFieldT) ProtoReflect() protoreflect.Message { + mi := &file_netmessages_proto_msgTypes[68] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ProtoFlattenedSerializerFieldTPolymorphicFieldT.ProtoReflect.Descriptor instead. +func (*ProtoFlattenedSerializerFieldTPolymorphicFieldT) Descriptor() ([]byte, []int) { + return file_netmessages_proto_rawDescGZIP(), []int{48, 0} +} + +func (x *ProtoFlattenedSerializerFieldTPolymorphicFieldT) GetPolymorphicFieldSerializerNameSym() int32 { + if x != nil && x.PolymorphicFieldSerializerNameSym != nil { + return *x.PolymorphicFieldSerializerNameSym + } + return 0 +} + +func (x *ProtoFlattenedSerializerFieldTPolymorphicFieldT) GetPolymorphicFieldSerializerVersion() int32 { + if x != nil && x.PolymorphicFieldSerializerVersion != nil { + return *x.PolymorphicFieldSerializerVersion + } + return 0 +} + type CMsgServerNetworkStats_Port struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5644,7 +5807,7 @@ type CMsgServerNetworkStats_Port struct { func (x *CMsgServerNetworkStats_Port) Reset() { *x = CMsgServerNetworkStats_Port{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[68] + mi := &file_netmessages_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5657,7 +5820,7 @@ func (x *CMsgServerNetworkStats_Port) String() string { func (*CMsgServerNetworkStats_Port) ProtoMessage() {} func (x *CMsgServerNetworkStats_Port) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[68] + mi := &file_netmessages_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5670,7 +5833,7 @@ func (x *CMsgServerNetworkStats_Port) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerNetworkStats_Port.ProtoReflect.Descriptor instead. func (*CMsgServerNetworkStats_Port) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{55, 0} + return file_netmessages_proto_rawDescGZIP(), []int{54, 0} } func (x *CMsgServerNetworkStats_Port) GetPort() int32 { @@ -5692,18 +5855,20 @@ type CMsgServerNetworkStats_Player struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Steamid *uint64 `protobuf:"varint,1,opt,name=steamid" json:"steamid,omitempty"` - RemoteAddr *string `protobuf:"bytes,2,opt,name=remote_addr,json=remoteAddr" json:"remote_addr,omitempty"` - PingStddevMs *int32 `protobuf:"varint,3,opt,name=ping_stddev_ms,json=pingStddevMs" json:"ping_stddev_ms,omitempty"` - PingAvgMs *int32 `protobuf:"varint,4,opt,name=ping_avg_ms,json=pingAvgMs" json:"ping_avg_ms,omitempty"` - PacketLossPct *float32 `protobuf:"fixed32,5,opt,name=packet_loss_pct,json=packetLossPct" json:"packet_loss_pct,omitempty"` - IsBot *bool `protobuf:"varint,6,opt,name=is_bot,json=isBot" json:"is_bot,omitempty"` + Steamid *uint64 `protobuf:"varint,1,opt,name=steamid" json:"steamid,omitempty"` + RemoteAddr *string `protobuf:"bytes,2,opt,name=remote_addr,json=remoteAddr" json:"remote_addr,omitempty"` + PingAvgMs *int32 `protobuf:"varint,4,opt,name=ping_avg_ms,json=pingAvgMs" json:"ping_avg_ms,omitempty"` + PacketLossPct *float32 `protobuf:"fixed32,5,opt,name=packet_loss_pct,json=packetLossPct" json:"packet_loss_pct,omitempty"` + IsBot *bool `protobuf:"varint,6,opt,name=is_bot,json=isBot" json:"is_bot,omitempty"` + LossIn *float32 `protobuf:"fixed32,7,opt,name=loss_in,json=lossIn" json:"loss_in,omitempty"` + LossOut *float32 `protobuf:"fixed32,8,opt,name=loss_out,json=lossOut" json:"loss_out,omitempty"` + EngineLatencyMs *int32 `protobuf:"varint,9,opt,name=engine_latency_ms,json=engineLatencyMs" json:"engine_latency_ms,omitempty"` } func (x *CMsgServerNetworkStats_Player) Reset() { *x = CMsgServerNetworkStats_Player{} if protoimpl.UnsafeEnabled { - mi := &file_netmessages_proto_msgTypes[69] + mi := &file_netmessages_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5716,7 +5881,7 @@ func (x *CMsgServerNetworkStats_Player) String() string { func (*CMsgServerNetworkStats_Player) ProtoMessage() {} func (x *CMsgServerNetworkStats_Player) ProtoReflect() protoreflect.Message { - mi := &file_netmessages_proto_msgTypes[69] + mi := &file_netmessages_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5729,7 +5894,7 @@ func (x *CMsgServerNetworkStats_Player) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgServerNetworkStats_Player.ProtoReflect.Descriptor instead. func (*CMsgServerNetworkStats_Player) Descriptor() ([]byte, []int) { - return file_netmessages_proto_rawDescGZIP(), []int{55, 1} + return file_netmessages_proto_rawDescGZIP(), []int{54, 1} } func (x *CMsgServerNetworkStats_Player) GetSteamid() uint64 { @@ -5746,13 +5911,6 @@ func (x *CMsgServerNetworkStats_Player) GetRemoteAddr() string { return "" } -func (x *CMsgServerNetworkStats_Player) GetPingStddevMs() int32 { - if x != nil && x.PingStddevMs != nil { - return *x.PingStddevMs - } - return 0 -} - func (x *CMsgServerNetworkStats_Player) GetPingAvgMs() int32 { if x != nil && x.PingAvgMs != nil { return *x.PingAvgMs @@ -5774,6 +5932,27 @@ func (x *CMsgServerNetworkStats_Player) GetIsBot() bool { return false } +func (x *CMsgServerNetworkStats_Player) GetLossIn() float32 { + if x != nil && x.LossIn != nil { + return *x.LossIn + } + return 0 +} + +func (x *CMsgServerNetworkStats_Player) GetLossOut() float32 { + if x != nil && x.LossOut != nil { + return *x.LossOut + } + return 0 +} + +func (x *CMsgServerNetworkStats_Player) GetEngineLatencyMs() int32 { + if x != nil && x.EngineLatencyMs != nil { + return *x.EngineLatencyMs + } + return 0 +} + var File_netmessages_proto protoreflect.FileDescriptor var file_netmessages_proto_rawDesc = []byte{ @@ -5798,7 +5977,7 @@ var file_netmessages_proto_rawDesc = []byte{ 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6e, - 0x75, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x22, 0x8d, 0x02, 0x0a, 0x0e, 0x43, + 0x75, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x22, 0xf6, 0x02, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x2f, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x46, 0x6f, @@ -5815,495 +5994,550 @@ var file_netmessages_proto_rawDesc = []byte{ 0x75, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x75, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x53, 0x61, - 0x6d, 0x70, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x67, 0x0a, 0x11, 0x43, 0x43, - 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x2a, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x41, - 0x75, 0x64, 0x69, 0x6f, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x78, - 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x04, 0x78, 0x75, 0x69, 0x64, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, - 0x69, 0x63, 0x6b, 0x22, 0x5b, 0x0a, 0x13, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x42, - 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x63, 0x6b, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, - 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x12, - 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x72, - 0x22, 0x35, 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x69, 0x73, 0x74, - 0x65, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x03, 0x28, 0x07, 0x52, 0x09, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x7d, 0x0a, 0x18, 0x43, 0x43, 0x4c, 0x43, 0x4d, - 0x73, 0x67, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x9a, 0x01, 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, - 0x73, 0x67, 0x5f, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x52, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, - 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, - 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, - 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x69, 0x6c, - 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x72, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x03, - 0x63, 0x72, 0x63, 0x22, 0x35, 0x0a, 0x17, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x4c, - 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, - 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x3c, 0x0a, 0x1a, 0x43, 0x43, - 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x46, 0x0a, 0x15, 0x43, 0x43, 0x4c, 0x43, - 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x33, 0x0a, 0x1d, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x6c, 0x69, - 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x22, 0x36, 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, - 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, - 0x0a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x22, 0x14, 0x0a, - 0x12, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, - 0x69, 0x6e, 0x67, 0x22, 0x6c, 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x75, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x70, - 0x61, 0x75, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x75, 0x73, 0x65, 0x5f, 0x74, 0x52, 0x09, 0x70, 0x61, 0x75, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x61, 0x75, 0x73, 0x65, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x22, 0x2a, 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6d, 0x64, - 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x31, 0x0a, - 0x19, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x63, 0x6f, 0x6e, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, - 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x22, 0xc3, 0x04, 0x0a, 0x12, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x64, - 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, - 0x44, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, - 0x68, 0x6c, 0x74, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x48, 0x6c, - 0x74, 0x76, 0x12, 0x11, 0x0a, 0x04, 0x63, 0x5f, 0x6f, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x03, 0x63, 0x4f, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, - 0x43, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x63, 0x6b, - 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x0c, 0x74, 0x69, 0x63, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x19, 0x0a, - 0x08, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x69, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x70, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x6b, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6b, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, - 0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x64, 0x64, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x56, 0x0a, 0x13, 0x67, 0x61, - 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x11, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x32, 0x0a, 0x15, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x13, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x61, - 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x22, 0xe5, 0x01, 0x0a, 0x11, 0x43, 0x53, 0x56, 0x43, 0x4d, - 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x28, 0x0a, 0x10, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x6e, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, - 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x74, 0x52, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, - 0x73, 0x1a, 0x6b, 0x0a, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x74, 0x12, 0x19, 0x0a, 0x08, - 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x63, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x61, 0x74, 0x61, 0x5f, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x64, 0x61, 0x74, 0x61, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2a, - 0x0a, 0x10, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x50, 0x61, 0x75, - 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x75, 0x73, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x06, 0x70, 0x61, 0x75, 0x73, 0x65, 0x64, 0x22, 0x5d, 0x0a, 0x11, 0x43, 0x53, - 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x12, - 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, - 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, - 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x23, 0x0a, 0x0d, 0x43, 0x53, 0x56, - 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, - 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x22, 0xcd, - 0x05, 0x0a, 0x0e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x6f, 0x75, 0x6e, 0x64, - 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6f, - 0x75, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x65, 0x6c, 0x69, 0x61, - 0x62, 0x6c, 0x65, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x38, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x6e, - 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x2e, 0x73, - 0x6f, 0x75, 0x6e, 0x64, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x6e, - 0x64, 0x73, 0x1a, 0xd9, 0x04, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x64, 0x61, 0x74, 0x61, - 0x5f, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x78, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x58, 0x12, 0x19, 0x0a, - 0x08, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, - 0x07, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x59, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x69, 0x67, - 0x69, 0x6e, 0x5f, 0x7a, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, 0x6f, 0x72, 0x69, 0x67, - 0x69, 0x6e, 0x5a, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x64, - 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x27, 0x0a, 0x0f, - 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x69, 0x74, 0x63, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x05, 0x70, 0x69, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, - 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1b, - 0x0a, 0x09, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x08, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x10, 0x73, - 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x48, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, - 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, - 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, - 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x5f, 0x73, 0x65, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x65, 0x64, 0x12, 0x1f, 0x0a, - 0x0b, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1f, - 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x10, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x53, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x12, - 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x61, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x41, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x12, - 0x0a, 0x04, 0x67, 0x75, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x75, - 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x73, - 0x6f, 0x75, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x22, 0x6c, - 0x0a, 0x10, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x65, 0x66, 0x65, 0x74, - 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x12, 0x37, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x48, 0x0a, 0x0f, - 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x56, 0x69, 0x65, 0x77, 0x12, - 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, - 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x22, 0x56, 0x0a, 0x10, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, - 0x67, 0x5f, 0x46, 0x69, 0x78, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x22, 0x40, - 0x0a, 0x16, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x68, - 0x61, 0x69, 0x72, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x61, 0x6e, 0x67, 0x6c, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, - 0x22, 0xcd, 0x01, 0x0a, 0x10, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x53, 0x50, - 0x44, 0x65, 0x63, 0x61, 0x6c, 0x12, 0x22, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x52, 0x03, 0x70, 0x6f, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x64, 0x65, 0x63, - 0x61, 0x6c, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x64, 0x65, 0x63, 0x61, 0x6c, 0x54, 0x65, 0x78, - 0x74, 0x75, 0x72, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, - 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, - 0x0c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x22, 0x7f, 0x0a, 0x13, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x6c, 0x69, - 0x74, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x70, - 0x6c, 0x69, 0x74, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, - 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x21, - 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, - 0x78, 0x22, 0x4b, 0x0a, 0x14, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x65, 0x74, - 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6f, - 0x6b, 0x69, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x6f, 0x6f, 0x6b, 0x69, - 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x76, 0x61, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x76, 0x61, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x57, - 0x0a, 0x0c, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x65, 0x6e, 0x75, 0x12, 0x1f, - 0x0a, 0x0b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x26, 0x0a, 0x0f, 0x6d, 0x65, 0x6e, 0x75, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x6d, 0x65, 0x6e, 0x75, 0x4b, 0x65, - 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x13, 0x43, 0x53, 0x56, 0x43, 0x4d, - 0x73, 0x67, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x19, - 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x73, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x73, 0x73, 0x74, 0x68, 0x72, 0x6f, - 0x75, 0x67, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x61, 0x73, 0x73, 0x74, - 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x22, 0xb2, 0x03, 0x0a, 0x11, 0x43, 0x53, 0x56, 0x43, 0x4d, - 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x15, 0x0a, 0x06, - 0x69, 0x73, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, - 0x45, 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x65, 0x74, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x65, 0x65, - 0x64, 0x73, 0x5f, 0x64, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0c, 0x6e, 0x65, 0x65, 0x64, 0x73, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x12, 0x38, - 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, - 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x72, 0x6f, 0x70, 0x5f, - 0x74, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x1a, 0x80, 0x02, 0x0a, 0x0a, 0x73, 0x65, 0x6e, - 0x64, 0x70, 0x72, 0x6f, 0x70, 0x5f, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x76, - 0x61, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, - 0x61, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, - 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x74, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x74, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x45, 0x6c, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, 0x6f, 0x77, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x69, 0x67, 0x68, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x68, 0x69, 0x67, 0x68, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x75, 0x6d, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x42, 0x69, 0x74, 0x73, 0x22, 0x89, 0x02, 0x0a, 0x15, - 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x4a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x6f, 0x72, 0x5f, 0x74, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, - 0x73, 0x1a, 0x2f, 0x0a, 0x05, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x1a, 0x73, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, - 0x5f, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x35, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, - 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x6b, 0x65, 0x79, 0x5f, - 0x74, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x22, 0xf2, 0x08, 0x0a, 0x16, 0x43, 0x53, 0x56, 0x43, - 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, - 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x45, 0x6e, 0x74, 0x72, - 0x69, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, - 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, - 0x69, 0x73, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, - 0x69, 0x73, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x64, 0x65, 0x6c, 0x74, 0x61, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x12, - 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x66, 0x72, 0x61, - 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x46, 0x75, 0x6c, 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, - 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x48, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x46, 0x0a, 0x1f, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x70, 0x61, 0x77, - 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1d, 0x6d, - 0x61, 0x78, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0f, - 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6d, 0x64, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x74, - 0x69, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x2f, 0x0a, 0x13, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, - 0x7a, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x12, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x45, 0x6e, - 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x5f, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, - 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, - 0x67, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, - 0x6e, 0x66, 0x6f, 0x5f, 0x74, 0x52, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, - 0x65, 0x75, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x62, 0x0a, 0x13, 0x61, 0x6c, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x0f, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, - 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, - 0x65, 0x73, 0x2e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x73, - 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x52, 0x12, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, - 0x74, 0x65, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x9c, 0x02, 0x0a, 0x14, - 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x6e, - 0x66, 0x6f, 0x5f, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, - 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, - 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, 0x64, 0x12, 0x3b, 0x0a, - 0x1a, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x64, - 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x17, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, - 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x74, - 0x61, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x74, 0x69, - 0x63, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, 0x74, 0x61, 0x72, 0x76, - 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x32, - 0x0a, 0x15, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x74, - 0x69, 0x6d, 0x65, 0x44, 0x69, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x63, 0x65, - 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x17, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x65, 0x64, 0x5f, - 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x15, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x65, 0x64, 0x43, 0x6f, - 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x1a, 0x60, 0x0a, 0x14, 0x61, 0x6c, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, - 0x5f, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, - 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, - 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x74, 0x0a, 0x14, - 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x65, 0x6d, 0x70, 0x45, 0x6e, 0x74, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, - 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, - 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x44, 0x61, - 0x74, 0x61, 0x22, 0x99, 0x03, 0x0a, 0x19, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x6e, 0x74, 0x72, - 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x45, 0x6e, - 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x11, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x46, 0x69, 0x78, - 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, - 0x61, 0x74, 0x61, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, - 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2d, 0x0a, 0x13, - 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, - 0x69, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, 0x44, - 0x61, 0x74, 0x61, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x69, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, - 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, - 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, - 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x75, - 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, - 0x27, 0x0a, 0x0f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, - 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x43, 0x6f, - 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x75, 0x73, 0x69, 0x6e, - 0x67, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x6e, 0x74, 0x5f, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x56, - 0x61, 0x72, 0x69, 0x6e, 0x74, 0x42, 0x69, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0x87, - 0x01, 0x0a, 0x19, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x75, 0x6d, 0x5f, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6e, 0x75, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, - 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x73, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x22, 0xc0, 0x01, 0x0a, 0x11, 0x43, 0x53, 0x56, - 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2a, - 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x41, 0x75, - 0x64, 0x69, 0x6f, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74, 0x79, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74, 0x79, - 0x12, 0x12, 0x0a, 0x04, 0x78, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x04, - 0x78, 0x75, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x62, 0x6c, 0x65, 0x5f, - 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, - 0x62, 0x6c, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x22, 0x66, 0x0a, 0x16, 0x43, - 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x6c, - 0x69, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x73, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x22, 0x70, 0x0a, 0x16, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x46, - 0x75, 0x6c, 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, 0x63, - 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x76, 0x0a, 0x12, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, - 0x5f, 0x48, 0x4c, 0x54, 0x56, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, - 0x61, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x61, 0x73, - 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x6c, - 0x6f, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x65, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x65, 0x73, 0x22, 0x32, 0x0a, - 0x15, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x49, 0x44, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, - 0x64, 0x22, 0x2a, 0x0a, 0x14, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6d, 0x64, - 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4b, 0x0a, - 0x19, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x63, 0x6f, 0x6e, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, - 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x54, 0x0a, 0x0e, 0x43, 0x4d, - 0x73, 0x67, 0x49, 0x50, 0x43, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d, - 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x67, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x47, 0x75, 0x69, - 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x64, - 0x22, 0xed, 0x01, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, - 0x65, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, - 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x26, - 0x0a, 0x03, 0x69, 0x70, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x50, 0x43, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x52, 0x03, 0x69, 0x70, 0x63, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x68, 0x65, 0x79, 0x5f, 0x68, - 0x65, 0x61, 0x72, 0x5f, 0x79, 0x6f, 0x75, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x74, - 0x68, 0x65, 0x79, 0x48, 0x65, 0x61, 0x72, 0x59, 0x6f, 0x75, 0x12, 0x22, 0x0a, 0x0d, 0x79, 0x6f, - 0x75, 0x5f, 0x68, 0x65, 0x61, 0x72, 0x5f, 0x74, 0x68, 0x65, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0b, 0x79, 0x6f, 0x75, 0x48, 0x65, 0x61, 0x72, 0x54, 0x68, 0x65, 0x6d, 0x12, 0x30, - 0x0a, 0x14, 0x69, 0x73, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x73, - 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x48, 0x6f, 0x73, 0x74, - 0x22, 0x3c, 0x0a, 0x10, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x65, 0x65, 0x72, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x04, 0x70, 0x65, 0x65, 0x72, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x50, 0x65, 0x65, 0x72, 0x52, 0x04, 0x70, 0x65, 0x65, 0x72, 0x22, 0x38, - 0x0a, 0x1c, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, - 0x6c, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x18, - 0x0a, 0x07, 0x6d, 0x61, 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x61, 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa2, 0x03, 0x0a, 0x1f, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x46, 0x6c, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x65, 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, - 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x74, 0x12, 0x20, 0x0a, 0x0c, - 0x76, 0x61, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x76, 0x61, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x79, 0x6d, 0x12, 0x20, - 0x0a, 0x0c, 0x76, 0x61, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x76, 0x61, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x79, 0x6d, - 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x69, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, - 0x09, 0x6c, 0x6f, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x08, 0x6c, 0x6f, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x69, - 0x67, 0x68, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, - 0x68, 0x69, 0x67, 0x68, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x63, - 0x6f, 0x64, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0b, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x39, 0x0a, 0x19, - 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x16, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, - 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x79, 0x6d, 0x12, 0x38, 0x0a, 0x18, 0x66, 0x69, 0x65, 0x6c, 0x64, - 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x66, 0x69, 0x65, 0x6c, 0x64, - 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x73, - 0x79, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, 0x6e, 0x64, 0x4e, 0x6f, - 0x64, 0x65, 0x53, 0x79, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x76, 0x61, 0x72, 0x5f, 0x65, 0x6e, 0x63, - 0x6f, 0x64, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, - 0x76, 0x61, 0x72, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x53, 0x79, 0x6d, 0x22, 0x9e, 0x01, + 0x6d, 0x70, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, + 0x6d, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x6e, 0x75, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x70, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x73, 0x18, 0x08, 0x20, + 0x03, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, + 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x22, 0x67, 0x0a, 0x11, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x56, + 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, + 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x05, 0x61, + 0x75, 0x64, 0x69, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x78, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x04, 0x78, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x22, 0x5b, 0x0a, 0x13, + 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, + 0x41, 0x63, 0x6b, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, + 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61, 0x73, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x73, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x62, + 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x72, 0x22, 0x35, 0x0a, 0x14, 0x43, 0x43, 0x4c, + 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x07, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x73, 0x6b, + 0x22, 0x7d, 0x0a, 0x18, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x64, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x6f, + 0x6f, 0x6b, 0x69, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x63, + 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, + 0x9a, 0x01, 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x69, 0x6c, 0x65, + 0x43, 0x52, 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, + 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x64, + 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x64, + 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0c, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x72, + 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x03, 0x63, 0x72, 0x63, 0x22, 0x35, 0x0a, 0x17, + 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x50, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x22, 0x3c, 0x0a, 0x1a, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, + 0x70, 0x6c, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x46, 0x0a, 0x15, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, + 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x73, + 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x33, 0x0a, 0x1d, 0x43, 0x43, 0x4c, + 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, + 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x22, 0x36, + 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x69, + 0x66, 0x69, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x73, 0x69, 0x6d, 0x70, + 0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x22, 0x6c, 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, + 0x67, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x75, 0x73, 0x65, 0x12, 0x33, + 0x0a, 0x0a, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x50, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x74, 0x52, 0x09, 0x70, 0x61, 0x75, 0x73, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x61, 0x75, 0x73, 0x65, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2a, 0x0a, 0x14, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, + 0x43, 0x6d, 0x64, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x31, 0x0a, 0x19, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x63, 0x6f, 0x6e, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x14, 0x0a, + 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x22, 0xc3, 0x04, 0x0a, 0x12, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, + 0x64, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0b, 0x69, 0x73, 0x44, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, + 0x69, 0x73, 0x5f, 0x68, 0x6c, 0x74, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, + 0x73, 0x48, 0x6c, 0x74, 0x76, 0x12, 0x11, 0x0a, 0x04, 0x63, 0x5f, 0x6f, 0x73, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x03, 0x63, 0x4f, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, + 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, + 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x74, + 0x69, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0c, 0x74, 0x69, 0x63, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, + 0x12, 0x19, 0x0a, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x67, 0x61, 0x6d, 0x65, 0x44, 0x69, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6d, + 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, + 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x6b, 0x79, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6b, 0x79, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x56, 0x0a, + 0x13, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x11, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x32, 0x0a, 0x15, 0x67, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x18, 0x14, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x13, 0x67, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x22, 0xbd, 0x01, 0x0a, 0x11, 0x43, 0x53, + 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x28, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x4f, 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, + 0x6e, 0x66, 0x6f, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x74, 0x52, 0x07, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x65, 0x73, 0x1a, 0x43, 0x0a, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x74, 0x12, + 0x19, 0x0a, 0x08, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2a, 0x0a, 0x10, 0x43, 0x53, 0x56, + 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x50, 0x61, 0x75, 0x73, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x61, 0x75, 0x73, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, + 0x61, 0x75, 0x73, 0x65, 0x64, 0x22, 0x5d, 0x0a, 0x11, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, + 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x71, 0x75, 0x61, + 0x6c, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x23, 0x0a, 0x0d, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x72, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x22, 0xcd, 0x05, 0x0a, 0x0e, 0x43, 0x53, + 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x25, 0x0a, 0x0e, + 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6f, + 0x75, 0x6e, 0x64, 0x12, 0x38, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, + 0x73, 0x67, 0x5f, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x2e, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x64, + 0x61, 0x74, 0x61, 0x5f, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x1a, 0xd9, 0x04, + 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x12, 0x19, 0x0a, + 0x08, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, + 0x07, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x58, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x5f, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x59, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x7a, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5a, 0x12, 0x16, + 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x64, 0x65, 0x6c, + 0x61, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x14, 0x0a, + 0x05, 0x70, 0x69, 0x74, 0x63, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x70, 0x69, + 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x75, + 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x6f, + 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x5f, + 0x6e, 0x75, 0x6d, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x07, + 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, + 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, + 0x72, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x64, 0x6f, + 0x6d, 0x5f, 0x73, 0x65, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x61, + 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x6e, + 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, + 0x6f, 0x75, 0x6e, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, + 0x73, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, + 0x69, 0x73, 0x53, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, + 0x5f, 0x61, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, + 0x69, 0x73, 0x41, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x75, 0x69, + 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x67, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, + 0x11, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x22, 0x6c, 0x0a, 0x10, 0x43, 0x53, 0x56, + 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x72, 0x65, 0x66, 0x65, 0x74, 0x63, 0x68, 0x12, 0x1f, 0x0a, + 0x0b, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x37, + 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x50, 0x72, 0x65, + 0x66, 0x65, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x48, 0x0a, 0x0f, 0x43, 0x53, 0x56, 0x43, 0x4d, + 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x56, 0x69, 0x65, 0x77, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, + 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, + 0x74, 0x22, 0x56, 0x0a, 0x10, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x69, 0x78, + 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, + 0x65, 0x12, 0x26, 0x0a, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, + 0x6c, 0x65, 0x52, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x22, 0x40, 0x0a, 0x16, 0x43, 0x53, 0x56, + 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x68, 0x61, 0x69, 0x72, 0x41, 0x6e, + 0x67, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, + 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x22, 0xcd, 0x01, 0x0a, 0x10, + 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x42, 0x53, 0x50, 0x44, 0x65, 0x63, 0x61, 0x6c, + 0x12, 0x22, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, + 0x03, 0x70, 0x6f, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x64, 0x65, 0x63, 0x61, 0x6c, 0x5f, 0x74, 0x65, + 0x78, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x11, 0x64, 0x65, 0x63, 0x61, 0x6c, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x6f, + 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x77, 0x5f, + 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, + 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x7f, 0x0a, 0x13, 0x43, + 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x53, 0x63, 0x72, 0x65, + 0x65, 0x6e, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x53, 0x63, + 0x72, 0x65, 0x65, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x4b, 0x0a, 0x14, + 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x65, 0x74, 0x43, 0x76, 0x61, 0x72, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x12, 0x1b, 0x0a, 0x09, + 0x63, 0x76, 0x61, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x63, 0x76, 0x61, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x57, 0x0a, 0x0c, 0x43, 0x53, 0x56, + 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x4d, 0x65, 0x6e, 0x75, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x61, + 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x65, + 0x6e, 0x75, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x6d, 0x65, 0x6e, 0x75, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x13, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x73, 0x67, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x73, 0x73, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x61, 0x73, 0x73, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, + 0x68, 0x22, 0xb2, 0x03, 0x0a, 0x11, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, + 0x6e, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x65, 0x6e, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x45, 0x6e, 0x64, 0x12, 0x24, + 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x65, 0x65, 0x64, 0x73, 0x5f, 0x64, 0x65, + 0x63, 0x6f, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x6e, 0x65, 0x65, + 0x64, 0x73, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x05, 0x70, 0x72, 0x6f, + 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x2e, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x72, 0x6f, 0x70, 0x5f, 0x74, 0x52, 0x05, 0x70, 0x72, + 0x6f, 0x70, 0x73, 0x1a, 0x80, 0x02, 0x0a, 0x0a, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x72, 0x6f, 0x70, + 0x5f, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x61, 0x72, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x61, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, + 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x08, 0x6c, 0x6f, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x68, 0x69, 0x67, 0x68, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x09, 0x68, 0x69, 0x67, 0x68, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, + 0x75, 0x6d, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6e, + 0x75, 0x6d, 0x42, 0x69, 0x74, 0x73, 0x22, 0x89, 0x02, 0x0a, 0x15, 0x43, 0x53, 0x56, 0x43, 0x4d, + 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x4a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, + 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, + 0x73, 0x74, 0x2e, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x74, 0x52, + 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x1a, 0x2f, 0x0a, 0x05, + 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x73, 0x0a, + 0x0c, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x04, 0x6b, + 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x52, 0x04, 0x6b, 0x65, + 0x79, 0x73, 0x22, 0x90, 0x0c, 0x0a, 0x16, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x1f, 0x0a, + 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x27, + 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x65, 0x67, 0x61, 0x63, + 0x79, 0x5f, 0x69, 0x73, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0d, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x49, 0x73, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, + 0x27, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x5f, 0x66, 0x72, + 0x6f, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x46, + 0x72, 0x6f, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x44, 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, + 0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6c, 0x6c, 0x46, 0x72, 0x61, + 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x73, 0x70, 0x61, + 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x70, 0x61, 0x77, + 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x46, 0x0a, 0x1f, + 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1d, 0x6d, 0x61, 0x78, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6d, 0x64, + 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6d, 0x64, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x64, 0x12, 0x3a, 0x0a, + 0x1a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6d, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x11, 0x20, 0x01, 0x28, + 0x11, 0x52, 0x16, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6d, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x52, 0x65, 0x63, 0x76, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x2f, 0x0a, 0x13, 0x73, 0x65, + 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, + 0x7a, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x5f, 0x0a, 0x12, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x66, + 0x6f, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x45, 0x6e, 0x74, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, + 0x65, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x74, 0x52, 0x10, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x62, 0x0a, 0x13, + 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, + 0x6e, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x45, + 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, + 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x52, 0x12, 0x61, 0x6c, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, + 0x12, 0x27, 0x0a, 0x10, 0x68, 0x61, 0x73, 0x5f, 0x70, 0x76, 0x73, 0x5f, 0x76, 0x69, 0x73, 0x5f, + 0x62, 0x69, 0x74, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x68, 0x61, 0x73, 0x50, + 0x76, 0x73, 0x56, 0x69, 0x73, 0x42, 0x69, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x61, 0x73, + 0x74, 0x5f, 0x63, 0x6d, 0x64, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x6d, 0x61, 0x72, 0x67, 0x69, + 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6d, 0x64, + 0x52, 0x65, 0x63, 0x76, 0x4d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x12, 0x71, 0x0a, 0x18, 0x6e, 0x6f, + 0x6e, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x6e, 0x6f, 0x6e, 0x5f, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x5f, 0x74, 0x52, 0x16, 0x6e, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, + 0x69, 0x74, 0x74, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x20, 0x0a, + 0x0b, 0x64, 0x65, 0x76, 0x5f, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x18, 0xe7, 0x07, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x64, 0x65, 0x76, 0x50, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x1a, + 0x9c, 0x02, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, + 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x73, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, + 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, + 0x75, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, + 0x65, 0x75, 0x65, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x32, + 0x0a, 0x15, 0x73, 0x74, 0x61, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, + 0x74, 0x61, 0x72, 0x76, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x69, 0x63, + 0x6b, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x13, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x69, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, + 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x17, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, + 0x64, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, + 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, + 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x1a, 0x60, + 0x0a, 0x14, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, + 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x61, 0x73, + 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x1a, 0x53, 0x0a, 0x1a, 0x6e, 0x6f, 0x6e, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, + 0x74, 0x65, 0x64, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x5f, 0x74, 0x12, 0x21, + 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x74, 0x0a, 0x14, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, + 0x5f, 0x54, 0x65, 0x6d, 0x70, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x1a, 0x0a, + 0x08, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, + 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x6e, 0x75, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x44, 0x61, 0x74, 0x61, 0x22, 0x99, 0x03, 0x0a, 0x19, + 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, + 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2f, + 0x0a, 0x14, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x66, 0x69, 0x78, 0x65, + 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x75, 0x73, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x46, 0x69, 0x78, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, + 0x24, 0x0a, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, + 0x61, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2d, 0x0a, 0x13, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x61, + 0x74, 0x61, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x69, 0x7a, 0x65, + 0x42, 0x69, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x0a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x11, 0x75, + 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x75, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x61, 0x74, 0x61, + 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, + 0x64, 0x12, 0x34, 0x0a, 0x16, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x6e, + 0x74, 0x5f, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x14, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x72, 0x69, 0x6e, 0x74, 0x42, 0x69, + 0x74, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0x87, 0x01, 0x0a, 0x19, 0x43, 0x53, 0x56, 0x43, + 0x4d, 0x73, 0x67, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x64, + 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x5f, + 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6e, + 0x75, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, + 0x61, 0x22, 0xe2, 0x01, 0x0a, 0x11, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x56, 0x6f, + 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x05, 0x61, 0x75, + 0x64, 0x69, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x70, + 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, + 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x78, 0x75, 0x69, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x04, 0x78, 0x75, 0x69, 0x64, 0x12, 0x21, 0x0a, + 0x0c, 0x61, 0x75, 0x64, 0x69, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x62, 0x6c, 0x65, 0x4d, 0x61, 0x73, 0x6b, + 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x74, 0x69, 0x63, 0x6b, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x73, 0x73, 0x74, 0x68, 0x72, 0x6f, + 0x75, 0x67, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x61, 0x73, 0x73, 0x74, + 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x22, 0x66, 0x0a, 0x16, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, + 0x67, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x74, 0x69, 0x63, 0x6b, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x70, + 0x0a, 0x16, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x46, 0x75, 0x6c, 0x6c, 0x46, 0x72, + 0x61, 0x6d, 0x65, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x12, 0x18, 0x0a, 0x07, + 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x76, 0x0a, 0x12, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x4c, 0x54, 0x56, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x74, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x65, 0x73, 0x22, 0x32, 0x0a, 0x15, 0x43, 0x53, 0x56, 0x43, + 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, + 0x44, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x2a, 0x0a, 0x14, + 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6d, 0x64, 0x4b, 0x65, 0x79, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4b, 0x0a, 0x19, 0x43, 0x53, 0x56, 0x43, + 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x63, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x54, 0x0a, 0x0e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x50, 0x43, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x75, + 0x74, 0x65, 0x72, 0x5f, 0x67, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0c, + 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x47, 0x75, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x64, 0x22, 0xed, 0x01, 0x0a, 0x0e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x65, 0x65, 0x72, 0x12, 0x1f, + 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x03, 0x69, 0x70, 0x63, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x49, 0x50, 0x43, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x03, 0x69, 0x70, + 0x63, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x68, 0x65, 0x79, 0x5f, 0x68, 0x65, 0x61, 0x72, 0x5f, 0x79, + 0x6f, 0x75, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x74, 0x68, 0x65, 0x79, 0x48, 0x65, + 0x61, 0x72, 0x59, 0x6f, 0x75, 0x12, 0x22, 0x0a, 0x0d, 0x79, 0x6f, 0x75, 0x5f, 0x68, 0x65, 0x61, + 0x72, 0x5f, 0x74, 0x68, 0x65, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x79, 0x6f, + 0x75, 0x48, 0x65, 0x61, 0x72, 0x54, 0x68, 0x65, 0x6d, 0x12, 0x30, 0x0a, 0x14, 0x69, 0x73, 0x5f, + 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x68, 0x6f, 0x73, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x65, + 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x48, 0x6f, 0x73, 0x74, 0x22, 0x3c, 0x0a, 0x10, 0x43, + 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x65, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, + 0x28, 0x0a, 0x04, 0x70, 0x65, 0x65, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, + 0x65, 0x65, 0x72, 0x52, 0x04, 0x70, 0x65, 0x65, 0x72, 0x22, 0x6c, 0x0a, 0x1c, 0x43, 0x53, 0x56, + 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x70, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x13, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, + 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x22, 0xf3, 0x05, 0x0a, 0x1f, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x46, 0x6c, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x65, 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, + 0x69, 0x7a, 0x65, 0x72, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x76, + 0x61, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0a, 0x76, 0x61, 0x72, 0x54, 0x79, 0x70, 0x65, 0x53, 0x79, 0x6d, 0x12, 0x20, 0x0a, + 0x0c, 0x76, 0x61, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x76, 0x61, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x79, 0x6d, 0x12, + 0x1b, 0x0a, 0x09, 0x62, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x62, 0x69, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, + 0x6c, 0x6f, 0x77, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x08, 0x6c, 0x6f, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x69, 0x67, + 0x68, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x68, + 0x69, 0x67, 0x68, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, + 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x53, 0x79, 0x6d, 0x12, 0x38, 0x0a, 0x18, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, + 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x53, + 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x79, + 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, 0x6e, 0x64, 0x4e, 0x6f, 0x64, + 0x65, 0x53, 0x79, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x76, 0x61, 0x72, 0x5f, 0x65, 0x6e, 0x63, 0x6f, + 0x64, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x76, + 0x61, 0x72, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x53, 0x79, 0x6d, 0x12, 0x66, 0x0a, 0x11, + 0x70, 0x6f, 0x6c, 0x79, 0x6d, 0x6f, 0x72, 0x70, 0x68, 0x69, 0x63, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x46, 0x6c, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x65, 0x64, 0x53, 0x65, 0x72, + 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x74, 0x2e, 0x70, + 0x6f, 0x6c, 0x79, 0x6d, 0x6f, 0x72, 0x70, 0x68, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, + 0x5f, 0x74, 0x52, 0x10, 0x70, 0x6f, 0x6c, 0x79, 0x6d, 0x6f, 0x72, 0x70, 0x68, 0x69, 0x63, 0x54, + 0x79, 0x70, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x76, 0x61, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x69, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x10, 0x76, 0x61, 0x72, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x53, + 0x79, 0x6d, 0x1a, 0xb8, 0x01, 0x0a, 0x13, 0x70, 0x6f, 0x6c, 0x79, 0x6d, 0x6f, 0x72, 0x70, 0x68, + 0x69, 0x63, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x74, 0x12, 0x50, 0x0a, 0x25, 0x70, 0x6f, + 0x6c, 0x79, 0x6d, 0x6f, 0x72, 0x70, 0x68, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, + 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, + 0x73, 0x79, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x21, 0x70, 0x6f, 0x6c, 0x79, 0x6d, + 0x6f, 0x72, 0x70, 0x68, 0x69, 0x63, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, + 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x79, 0x6d, 0x12, 0x4f, 0x0a, 0x24, + 0x70, 0x6f, 0x6c, 0x79, 0x6d, 0x6f, 0x72, 0x70, 0x68, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x21, 0x70, 0x6f, 0x6c, 0x79, + 0x6d, 0x6f, 0x72, 0x70, 0x68, 0x69, 0x63, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x72, 0x69, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x01, 0x0a, 0x1a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x46, 0x6c, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x65, 0x64, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, @@ -6343,7 +6577,7 @@ var file_netmessages_proto_rawDesc = []byte{ 0x64, 0x69, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xa4, 0x09, 0x0a, 0x16, 0x43, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xe5, 0x09, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x65, 0x64, 0x69, 0x63, 0x61, @@ -6370,248 +6604,254 @@ var file_netmessages_proto_rawDesc = []byte{ 0x0a, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6f, 0x72, 0x74, - 0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x76, 0x67, 0x5f, 0x6c, - 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x0d, 0x61, 0x76, 0x67, 0x4c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x4f, 0x75, 0x74, 0x12, - 0x24, 0x0a, 0x0e, 0x61, 0x76, 0x67, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x69, - 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x61, 0x76, 0x67, 0x4c, 0x61, 0x74, 0x65, - 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x76, 0x67, 0x5f, 0x70, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, - 0x61, 0x76, 0x67, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4f, 0x75, 0x74, 0x12, 0x24, 0x0a, - 0x0e, 0x61, 0x76, 0x67, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x18, - 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x61, 0x76, 0x67, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, - 0x73, 0x49, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x76, 0x67, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x5f, - 0x6f, 0x75, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x61, 0x76, 0x67, 0x4c, 0x6f, - 0x73, 0x73, 0x4f, 0x75, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x6c, 0x6f, 0x73, - 0x73, 0x5f, 0x69, 0x6e, 0x18, 0x17, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x61, 0x76, 0x67, 0x4c, - 0x6f, 0x73, 0x73, 0x49, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x76, 0x67, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x61, 0x76, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x4f, 0x75, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x64, - 0x61, 0x74, 0x61, 0x5f, 0x69, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x61, 0x76, - 0x67, 0x44, 0x61, 0x74, 0x61, 0x49, 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x69, 0x6e, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x49, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x18, - 0x1b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x61, 0x63, 0x6b, - 0x65, 0x74, 0x73, 0x49, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, - 0x61, 0x74, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x75, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x75, 0x74, - 0x18, 0x1d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x73, 0x4f, 0x75, 0x74, 0x12, 0x3d, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0x2e, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x12, - 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, - 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0xc8, 0x01, 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0e, - 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x64, 0x64, 0x65, 0x76, 0x5f, 0x6d, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x64, 0x64, 0x65, 0x76, - 0x4d, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x76, 0x67, 0x5f, 0x6d, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x69, 0x6e, 0x67, 0x41, 0x76, 0x67, - 0x4d, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x73, - 0x73, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x70, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x4c, 0x6f, 0x73, 0x73, 0x50, 0x63, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, - 0x5f, 0x62, 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x42, 0x6f, - 0x74, 0x22, 0xcd, 0x02, 0x0a, 0x12, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x6c, - 0x74, 0x76, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x25, - 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x54, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, - 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, - 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x72, - 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, 0x74, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x41, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x6c, - 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x13, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x6c, 0x6f, 0x77, 0x64, 0x6f, - 0x77, 0x6e, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x70, 0x6c, 0x61, - 0x79, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x6c, 0x6f, 0x77, - 0x64, 0x6f, 0x77, 0x6e, 0x45, 0x6e, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x70, 0x6c, 0x61, - 0x79, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x6c, 0x6f, - 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, - 0x73, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x22, 0xc2, 0x01, 0x0a, 0x12, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x6c, - 0x74, 0x76, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x6c, - 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x73, 0x6c, 0x6f, - 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x73, - 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x0c, 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x61, 0x74, 0x65, - 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, - 0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x2d, 0x0a, 0x19, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, - 0x67, 0x5f, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x6d, - 0x61, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x6d, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x63, 0x6d, 0x64, 0x22, 0xe1, 0x02, 0x0a, 0x1d, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, - 0x67, 0x5f, 0x48, 0x6c, 0x74, 0x76, 0x46, 0x69, 0x78, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x70, - 0x72, 0x6f, 0x70, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x09, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, - 0x69, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, - 0x69, 0x67, 0x69, 0x6e, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x79, 0x65, 0x5f, 0x61, 0x6e, 0x67, 0x6c, - 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x09, 0x65, 0x79, 0x65, 0x41, - 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6f, 0x62, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x63, 0x61, - 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, - 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, - 0x6d, 0x61, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x27, 0x0a, - 0x0f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x6f, - 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0a, 0x76, - 0x69, 0x65, 0x77, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x6b, 0x0a, 0x1f, 0x43, 0x53, 0x56, - 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x6c, 0x74, 0x76, 0x46, 0x69, 0x78, 0x75, 0x70, 0x4f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, - 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, - 0x12, 0x34, 0x0a, 0x16, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x14, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x2a, 0x8e, 0x03, 0x0a, 0x0c, 0x43, 0x4c, 0x43, 0x5f, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x63, 0x6c, 0x63, 0x5f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x14, 0x12, 0x0c, 0x0a, 0x08, 0x63, - 0x6c, 0x63, 0x5f, 0x4d, 0x6f, 0x76, 0x65, 0x10, 0x15, 0x12, 0x11, 0x0a, 0x0d, 0x63, 0x6c, 0x63, - 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0x16, 0x12, 0x13, 0x0a, 0x0f, - 0x63, 0x6c, 0x63, 0x5f, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x63, 0x6b, 0x10, - 0x17, 0x12, 0x14, 0x0a, 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x18, 0x12, 0x18, 0x0a, 0x14, 0x63, 0x6c, 0x63, 0x5f, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x10, - 0x19, 0x12, 0x14, 0x0a, 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x52, 0x43, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x10, 0x1a, 0x12, 0x17, 0x0a, 0x13, 0x63, 0x6c, 0x63, 0x5f, 0x4c, - 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, 0x1b, - 0x12, 0x1a, 0x0a, 0x16, 0x63, 0x6c, 0x63, 0x5f, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0x1c, 0x12, 0x15, 0x0a, 0x11, - 0x63, 0x6c, 0x63, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x10, 0x1d, 0x12, 0x1d, 0x0a, 0x19, 0x63, 0x6c, 0x63, 0x5f, 0x53, 0x70, 0x6c, 0x69, 0x74, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x10, 0x1e, 0x12, 0x14, 0x0a, 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x1f, 0x12, 0x12, 0x0a, 0x0e, 0x63, 0x6c, 0x63, 0x5f, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x10, 0x20, 0x12, 0x14, 0x0a, 0x10, - 0x63, 0x6c, 0x63, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x75, 0x73, 0x65, - 0x10, 0x21, 0x12, 0x14, 0x0a, 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x43, 0x6d, 0x64, 0x4b, 0x65, 0x79, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x10, 0x22, 0x12, 0x19, 0x0a, 0x15, 0x63, 0x6c, 0x63, 0x5f, - 0x52, 0x63, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x10, 0x23, 0x12, 0x12, 0x0a, 0x0e, 0x63, 0x6c, 0x63, 0x5f, 0x48, 0x6c, 0x74, 0x76, 0x52, - 0x65, 0x70, 0x6c, 0x61, 0x79, 0x10, 0x24, 0x2a, 0x99, 0x05, 0x0a, 0x0c, 0x53, 0x56, 0x43, 0x5f, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x73, 0x76, 0x63, 0x5f, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x28, 0x12, 0x1b, 0x0a, 0x17, - 0x73, 0x76, 0x63, 0x5f, 0x46, 0x6c, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x65, 0x64, 0x53, 0x65, 0x72, - 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x10, 0x29, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x76, 0x63, - 0x5f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x2a, 0x12, 0x10, 0x0a, 0x0c, - 0x73, 0x76, 0x63, 0x5f, 0x53, 0x65, 0x74, 0x50, 0x61, 0x75, 0x73, 0x65, 0x10, 0x2b, 0x12, 0x19, - 0x0a, 0x15, 0x73, 0x76, 0x63, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x2c, 0x12, 0x19, 0x0a, 0x15, 0x73, 0x76, 0x63, - 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x10, 0x2d, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x76, 0x63, 0x5f, 0x56, 0x6f, 0x69, 0x63, - 0x65, 0x49, 0x6e, 0x69, 0x74, 0x10, 0x2e, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x76, 0x63, 0x5f, 0x56, - 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0x2f, 0x12, 0x0d, 0x0a, 0x09, 0x73, 0x76, - 0x63, 0x5f, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x10, 0x30, 0x12, 0x0e, 0x0a, 0x0a, 0x73, 0x76, 0x63, - 0x5f, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x10, 0x31, 0x12, 0x0f, 0x0a, 0x0b, 0x73, 0x76, 0x63, - 0x5f, 0x53, 0x65, 0x74, 0x56, 0x69, 0x65, 0x77, 0x10, 0x32, 0x12, 0x1c, 0x0a, 0x18, 0x73, 0x76, - 0x63, 0x5f, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x10, 0x33, 0x12, 0x14, 0x0a, 0x10, 0x73, 0x76, 0x63, 0x5f, - 0x43, 0x6d, 0x64, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x10, 0x34, 0x12, 0x10, - 0x0a, 0x0c, 0x73, 0x76, 0x63, 0x5f, 0x42, 0x53, 0x50, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x10, 0x35, - 0x12, 0x13, 0x0a, 0x0f, 0x73, 0x76, 0x63, 0x5f, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x53, 0x63, 0x72, - 0x65, 0x65, 0x6e, 0x10, 0x36, 0x12, 0x16, 0x0a, 0x12, 0x73, 0x76, 0x63, 0x5f, 0x50, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x10, 0x37, 0x12, 0x10, 0x0a, - 0x0c, 0x73, 0x76, 0x63, 0x5f, 0x50, 0x72, 0x65, 0x66, 0x65, 0x74, 0x63, 0x68, 0x10, 0x38, 0x12, - 0x0c, 0x0a, 0x08, 0x73, 0x76, 0x63, 0x5f, 0x4d, 0x65, 0x6e, 0x75, 0x10, 0x39, 0x12, 0x14, 0x0a, - 0x10, 0x73, 0x76, 0x63, 0x5f, 0x47, 0x65, 0x74, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x10, 0x3a, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x76, 0x63, 0x5f, 0x53, 0x74, 0x6f, 0x70, 0x53, - 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x3b, 0x12, 0x10, 0x0a, 0x0c, 0x73, 0x76, 0x63, 0x5f, 0x50, 0x65, - 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x3c, 0x12, 0x16, 0x0a, 0x12, 0x73, 0x76, 0x63, 0x5f, - 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x3d, - 0x12, 0x12, 0x0a, 0x0e, 0x73, 0x76, 0x63, 0x5f, 0x48, 0x4c, 0x54, 0x56, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x10, 0x3e, 0x12, 0x15, 0x0a, 0x11, 0x73, 0x76, 0x63, 0x5f, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x44, 0x10, 0x3f, 0x12, 0x16, 0x0a, 0x12, 0x73, - 0x76, 0x63, 0x5f, 0x46, 0x75, 0x6c, 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x53, 0x70, 0x6c, 0x69, - 0x74, 0x10, 0x46, 0x12, 0x19, 0x0a, 0x15, 0x73, 0x76, 0x63, 0x5f, 0x52, 0x63, 0x6f, 0x6e, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x47, 0x12, 0x13, - 0x0a, 0x0f, 0x73, 0x76, 0x63, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x10, 0x48, 0x12, 0x12, 0x0a, 0x0e, 0x73, 0x76, 0x63, 0x5f, 0x48, 0x6c, 0x74, 0x76, 0x52, - 0x65, 0x70, 0x6c, 0x61, 0x79, 0x10, 0x49, 0x12, 0x19, 0x0a, 0x15, 0x73, 0x76, 0x63, 0x5f, 0x42, - 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, - 0x10, 0x4a, 0x12, 0x1f, 0x0a, 0x1b, 0x73, 0x76, 0x63, 0x5f, 0x48, 0x6c, 0x74, 0x76, 0x46, 0x69, - 0x78, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x10, 0x4b, 0x2a, 0x4c, 0x0a, 0x11, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, - 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, 0x74, 0x12, 0x1a, 0x0a, 0x16, 0x56, 0x4f, 0x49, 0x43, - 0x45, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x53, 0x54, 0x45, - 0x41, 0x4d, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x44, 0x41, 0x54, - 0x41, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x45, 0x4e, 0x47, 0x49, 0x4e, 0x45, 0x10, - 0x01, 0x2a, 0x42, 0x0a, 0x0e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x75, 0x73, - 0x65, 0x5f, 0x74, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x50, 0x5f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x10, - 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x50, 0x5f, 0x55, 0x4e, 0x50, 0x41, 0x55, 0x53, 0x45, 0x10, - 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x50, 0x5f, 0x54, 0x4f, 0x47, 0x47, 0x4c, 0x45, 0x50, 0x41, - 0x55, 0x53, 0x45, 0x10, 0x02, 0x2a, 0x1d, 0x0a, 0x0c, 0x50, 0x72, 0x65, 0x66, 0x65, 0x74, 0x63, - 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x46, 0x54, 0x5f, 0x53, 0x4f, 0x55, - 0x4e, 0x44, 0x10, 0x00, 0x2a, 0x56, 0x0a, 0x17, 0x45, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x53, 0x63, - 0x72, 0x65, 0x65, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x1b, 0x0a, 0x17, 0x4d, 0x53, 0x47, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x53, 0x43, 0x52, 0x45, - 0x45, 0x4e, 0x5f, 0x41, 0x44, 0x44, 0x55, 0x53, 0x45, 0x52, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, - 0x4d, 0x53, 0x47, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x5f, - 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x55, 0x53, 0x45, 0x52, 0x10, 0x01, 0x2a, 0xb3, 0x01, 0x0a, - 0x15, 0x45, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x21, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x10, 0x00, 0x12, 0x26, 0x0a, - 0x22, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x43, 0x76, 0x61, 0x72, 0x4e, 0x6f, 0x74, 0x46, 0x6f, - 0x75, 0x6e, 0x64, 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, - 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, - 0x6f, 0x74, 0x41, 0x43, 0x76, 0x61, 0x72, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x65, 0x51, 0x75, + 0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x70, + 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x61, 0x76, + 0x67, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x33, 0x0a, 0x16, 0x61, 0x76, 0x67, 0x5f, 0x65, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6f, 0x75, + 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x61, 0x76, 0x67, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x4f, 0x75, 0x74, 0x12, 0x26, 0x0a, 0x0f, + 0x61, 0x76, 0x67, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x18, + 0x14, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x61, 0x76, 0x67, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, + 0x73, 0x4f, 0x75, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x76, 0x67, 0x5f, 0x70, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0c, 0x61, 0x76, + 0x67, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x49, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x76, + 0x67, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x0a, 0x61, 0x76, 0x67, 0x4c, 0x6f, 0x73, 0x73, 0x4f, 0x75, 0x74, 0x12, 0x1e, 0x0a, 0x0b, + 0x61, 0x76, 0x67, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x5f, 0x69, 0x6e, 0x18, 0x17, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x09, 0x61, 0x76, 0x67, 0x4c, 0x6f, 0x73, 0x73, 0x49, 0x6e, 0x12, 0x20, 0x0a, 0x0c, + 0x61, 0x76, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x18, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x0a, 0x61, 0x76, 0x67, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x75, 0x74, 0x12, 0x1e, + 0x0a, 0x0b, 0x61, 0x76, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x69, 0x6e, 0x18, 0x19, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x09, 0x61, 0x76, 0x67, 0x44, 0x61, 0x74, 0x61, 0x49, 0x6e, 0x12, 0x22, + 0x0a, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x69, 0x6e, 0x18, + 0x1a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, + 0x49, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x49, 0x6e, 0x12, 0x24, 0x0a, 0x0e, + 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x1c, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x4f, + 0x75, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x74, + 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4f, 0x75, 0x74, 0x12, 0x3d, + 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x1e, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x23, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x1a, 0x2e, 0x0a, + 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x82, 0x02, + 0x0a, 0x06, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x65, 0x61, + 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x73, 0x74, 0x65, 0x61, 0x6d, + 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x41, + 0x64, 0x64, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x76, 0x67, 0x5f, + 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x69, 0x6e, 0x67, 0x41, 0x76, + 0x67, 0x4d, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6c, 0x6f, + 0x73, 0x73, 0x5f, 0x70, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x70, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x4c, 0x6f, 0x73, 0x73, 0x50, 0x63, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x69, + 0x73, 0x5f, 0x62, 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x42, + 0x6f, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x6c, 0x6f, 0x73, 0x73, 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x06, 0x6c, 0x6f, 0x73, 0x73, 0x49, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6c, + 0x6f, 0x73, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x6c, + 0x6f, 0x73, 0x73, 0x4f, 0x75, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, + 0x4d, 0x73, 0x22, 0xcd, 0x02, 0x0a, 0x12, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x48, + 0x6c, 0x74, 0x76, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, + 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, + 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, + 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, + 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, + 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x6f, 0x70, 0x41, 0x74, 0x12, 0x26, 0x0a, 0x0f, + 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x61, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x41, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x73, + 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x13, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x6c, 0x6f, 0x77, 0x64, + 0x6f, 0x77, 0x6e, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x70, 0x6c, + 0x61, 0x79, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x6c, 0x6f, + 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x45, 0x6e, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x70, 0x6c, + 0x61, 0x79, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x53, 0x6c, + 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, + 0x6f, 0x6e, 0x22, 0xc2, 0x01, 0x0a, 0x12, 0x43, 0x43, 0x4c, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x48, + 0x6c, 0x74, 0x76, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x73, 0x6c, + 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d, + 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x0c, 0x73, 0x6c, 0x6f, 0x77, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x61, 0x74, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x6d, 0x61, + 0x72, 0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x2d, 0x0a, 0x19, 0x43, 0x53, 0x56, 0x43, 0x4d, + 0x73, 0x67, 0x5f, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x43, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x6d, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x63, 0x6d, 0x64, 0x22, 0xe1, 0x02, 0x0a, 0x1d, 0x43, 0x43, 0x4c, 0x43, 0x4d, + 0x73, 0x67, 0x5f, 0x48, 0x6c, 0x74, 0x76, 0x46, 0x69, 0x78, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x70, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x09, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x06, 0x6f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x79, 0x65, 0x5f, 0x61, 0x6e, 0x67, + 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x09, 0x65, 0x79, 0x65, + 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6f, + 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x63, + 0x61, 0x6d, 0x65, 0x72, 0x61, 0x6d, 0x61, 0x6e, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, + 0x61, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x63, 0x61, 0x6d, 0x65, 0x72, + 0x61, 0x6d, 0x61, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x27, + 0x0a, 0x0f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x5f, + 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0a, + 0x76, 0x69, 0x65, 0x77, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x6b, 0x0a, 0x1f, 0x43, 0x53, + 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x6c, 0x74, 0x76, 0x46, 0x69, 0x78, 0x75, 0x70, 0x4f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, + 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6d, 0x6f, 0x64, + 0x65, 0x12, 0x34, 0x0a, 0x16, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x14, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x2a, 0x8e, 0x03, 0x0a, 0x0c, 0x43, 0x4c, 0x43, 0x5f, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x63, 0x6c, 0x63, 0x5f, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x14, 0x12, 0x0c, 0x0a, 0x08, + 0x63, 0x6c, 0x63, 0x5f, 0x4d, 0x6f, 0x76, 0x65, 0x10, 0x15, 0x12, 0x11, 0x0a, 0x0d, 0x63, 0x6c, + 0x63, 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0x16, 0x12, 0x13, 0x0a, + 0x0f, 0x63, 0x6c, 0x63, 0x5f, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x63, 0x6b, + 0x10, 0x17, 0x12, 0x14, 0x0a, 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x10, 0x18, 0x12, 0x18, 0x0a, 0x14, 0x63, 0x6c, 0x63, 0x5f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x10, 0x19, 0x12, 0x14, 0x0a, 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x52, + 0x43, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x10, 0x1a, 0x12, 0x17, 0x0a, 0x13, 0x63, 0x6c, 0x63, 0x5f, + 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x10, + 0x1b, 0x12, 0x1a, 0x0a, 0x16, 0x63, 0x6c, 0x63, 0x5f, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0x1c, 0x12, 0x15, 0x0a, + 0x11, 0x63, 0x6c, 0x63, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x10, 0x1d, 0x12, 0x1d, 0x0a, 0x19, 0x63, 0x6c, 0x63, 0x5f, 0x53, 0x70, 0x6c, 0x69, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x10, 0x1e, 0x12, 0x14, 0x0a, 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x1f, 0x12, 0x12, 0x0a, 0x0e, 0x63, 0x6c, 0x63, + 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x10, 0x20, 0x12, 0x14, 0x0a, + 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x75, 0x73, + 0x65, 0x10, 0x21, 0x12, 0x14, 0x0a, 0x10, 0x63, 0x6c, 0x63, 0x5f, 0x43, 0x6d, 0x64, 0x4b, 0x65, + 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x10, 0x22, 0x12, 0x19, 0x0a, 0x15, 0x63, 0x6c, 0x63, + 0x5f, 0x52, 0x63, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x10, 0x23, 0x12, 0x12, 0x0a, 0x0e, 0x63, 0x6c, 0x63, 0x5f, 0x48, 0x6c, 0x74, 0x76, + 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x10, 0x24, 0x2a, 0x99, 0x05, 0x0a, 0x0c, 0x53, 0x56, 0x43, + 0x5f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x73, 0x76, 0x63, + 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x28, 0x12, 0x1b, 0x0a, + 0x17, 0x73, 0x76, 0x63, 0x5f, 0x46, 0x6c, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x65, 0x64, 0x53, 0x65, + 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x72, 0x10, 0x29, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x76, + 0x63, 0x5f, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x10, 0x2a, 0x12, 0x10, 0x0a, + 0x0c, 0x73, 0x76, 0x63, 0x5f, 0x53, 0x65, 0x74, 0x50, 0x61, 0x75, 0x73, 0x65, 0x10, 0x2b, 0x12, + 0x19, 0x0a, 0x15, 0x73, 0x76, 0x63, 0x5f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x2c, 0x12, 0x19, 0x0a, 0x15, 0x73, 0x76, + 0x63, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x10, 0x2d, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x76, 0x63, 0x5f, 0x56, 0x6f, 0x69, + 0x63, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x10, 0x2e, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x76, 0x63, 0x5f, + 0x56, 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x10, 0x2f, 0x12, 0x0d, 0x0a, 0x09, 0x73, + 0x76, 0x63, 0x5f, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x10, 0x30, 0x12, 0x0e, 0x0a, 0x0a, 0x73, 0x76, + 0x63, 0x5f, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x10, 0x31, 0x12, 0x0f, 0x0a, 0x0b, 0x73, 0x76, + 0x63, 0x5f, 0x53, 0x65, 0x74, 0x56, 0x69, 0x65, 0x77, 0x10, 0x32, 0x12, 0x1c, 0x0a, 0x18, 0x73, + 0x76, 0x63, 0x5f, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x10, 0x33, 0x12, 0x14, 0x0a, 0x10, 0x73, 0x76, 0x63, + 0x5f, 0x43, 0x6d, 0x64, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x10, 0x34, 0x12, + 0x10, 0x0a, 0x0c, 0x73, 0x76, 0x63, 0x5f, 0x42, 0x53, 0x50, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x10, + 0x35, 0x12, 0x13, 0x0a, 0x0f, 0x73, 0x76, 0x63, 0x5f, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x53, 0x63, + 0x72, 0x65, 0x65, 0x6e, 0x10, 0x36, 0x12, 0x16, 0x0a, 0x12, 0x73, 0x76, 0x63, 0x5f, 0x50, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x10, 0x37, 0x12, 0x10, + 0x0a, 0x0c, 0x73, 0x76, 0x63, 0x5f, 0x50, 0x72, 0x65, 0x66, 0x65, 0x74, 0x63, 0x68, 0x10, 0x38, + 0x12, 0x0c, 0x0a, 0x08, 0x73, 0x76, 0x63, 0x5f, 0x4d, 0x65, 0x6e, 0x75, 0x10, 0x39, 0x12, 0x14, + 0x0a, 0x10, 0x73, 0x76, 0x63, 0x5f, 0x47, 0x65, 0x74, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x10, 0x3a, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x76, 0x63, 0x5f, 0x53, 0x74, 0x6f, 0x70, + 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x3b, 0x12, 0x10, 0x0a, 0x0c, 0x73, 0x76, 0x63, 0x5f, 0x50, + 0x65, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x10, 0x3c, 0x12, 0x16, 0x0a, 0x12, 0x73, 0x76, 0x63, + 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x10, + 0x3d, 0x12, 0x12, 0x0a, 0x0e, 0x73, 0x76, 0x63, 0x5f, 0x48, 0x4c, 0x54, 0x56, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x10, 0x3e, 0x12, 0x15, 0x0a, 0x11, 0x73, 0x76, 0x63, 0x5f, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x44, 0x10, 0x3f, 0x12, 0x16, 0x0a, 0x12, + 0x73, 0x76, 0x63, 0x5f, 0x46, 0x75, 0x6c, 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x53, 0x70, 0x6c, + 0x69, 0x74, 0x10, 0x46, 0x12, 0x19, 0x0a, 0x15, 0x73, 0x76, 0x63, 0x5f, 0x52, 0x63, 0x6f, 0x6e, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x10, 0x47, 0x12, + 0x13, 0x0a, 0x0f, 0x73, 0x76, 0x63, 0x5f, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x10, 0x48, 0x12, 0x12, 0x0a, 0x0e, 0x73, 0x76, 0x63, 0x5f, 0x48, 0x6c, 0x74, 0x76, + 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x10, 0x49, 0x12, 0x19, 0x0a, 0x15, 0x73, 0x76, 0x63, 0x5f, + 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x10, 0x4a, 0x12, 0x1f, 0x0a, 0x1b, 0x73, 0x76, 0x63, 0x5f, 0x48, 0x6c, 0x74, 0x76, 0x46, + 0x69, 0x78, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x10, 0x4b, 0x2a, 0x67, 0x0a, 0x11, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, 0x74, 0x12, 0x1a, 0x0a, 0x16, 0x56, 0x4f, 0x49, + 0x43, 0x45, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x53, 0x54, + 0x45, 0x41, 0x4d, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x44, 0x41, + 0x54, 0x41, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x45, 0x4e, 0x47, 0x49, 0x4e, 0x45, + 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x44, 0x41, 0x54, 0x41, 0x5f, + 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x4f, 0x50, 0x55, 0x53, 0x10, 0x02, 0x2a, 0x42, 0x0a, + 0x0e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x74, 0x12, + 0x0c, 0x0a, 0x08, 0x52, 0x50, 0x5f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x10, 0x00, 0x12, 0x0e, 0x0a, + 0x0a, 0x52, 0x50, 0x5f, 0x55, 0x4e, 0x50, 0x41, 0x55, 0x53, 0x45, 0x10, 0x01, 0x12, 0x12, 0x0a, + 0x0e, 0x52, 0x50, 0x5f, 0x54, 0x4f, 0x47, 0x47, 0x4c, 0x45, 0x50, 0x41, 0x55, 0x53, 0x45, 0x10, + 0x02, 0x2a, 0x1d, 0x0a, 0x0c, 0x50, 0x72, 0x65, 0x66, 0x65, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x46, 0x54, 0x5f, 0x53, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x00, + 0x2a, 0x56, 0x0a, 0x17, 0x45, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x4d, + 0x53, 0x47, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x5f, 0x41, + 0x44, 0x44, 0x55, 0x53, 0x45, 0x52, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x4d, 0x53, 0x47, 0x5f, + 0x53, 0x50, 0x4c, 0x49, 0x54, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x5f, 0x52, 0x45, 0x4d, 0x4f, + 0x56, 0x45, 0x55, 0x53, 0x45, 0x52, 0x10, 0x01, 0x2a, 0xb3, 0x01, 0x0a, 0x15, 0x45, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x5f, 0x43, 0x76, 0x61, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, - 0x10, 0x03, 0x2a, 0x68, 0x0a, 0x0b, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x53, 0x47, 0x10, - 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x45, 0x4e, 0x55, - 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x45, 0x58, - 0x54, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x45, 0x4e, - 0x54, 0x52, 0x59, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, - 0x41, 0x53, 0x4b, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x04, 0x2a, 0x2b, 0x0a, 0x19, - 0x53, 0x56, 0x43, 0x5f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x4c, 0x6f, 0x77, - 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x0e, 0x0a, 0x09, 0x73, 0x76, 0x63, - 0x5f, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x10, 0xd8, 0x04, 0x2a, 0x61, 0x0a, 0x16, 0x42, 0x69, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x17, 0x62, 0x69, 0x5f, 0x52, 0x65, 0x62, 0x72, 0x6f, 0x61, - 0x64, 0x63, 0x61, 0x73, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x10, - 0x12, 0x18, 0x0a, 0x14, 0x62, 0x69, 0x5f, 0x52, 0x65, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, - 0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x10, 0x11, 0x12, 0x10, 0x0a, 0x0c, 0x62, 0x69, - 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x12, 0x2a, 0x4d, 0x0a, 0x23, - 0x42, 0x69, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x4c, 0x6f, 0x77, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x6e, 0x63, 0x79, 0x12, 0x11, 0x0a, 0x0c, 0x62, 0x69, 0x5f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x49, - 0x6e, 0x66, 0x6f, 0x10, 0xbc, 0x05, 0x12, 0x13, 0x0a, 0x0e, 0x62, 0x69, 0x5f, 0x52, 0x65, 0x6c, - 0x61, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x10, 0xbd, 0x05, 0x2a, 0xa1, 0x01, 0x0a, 0x11, - 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, - 0x74, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x56, 0x45, 0x4e, - 0x54, 0x5f, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, - 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x41, 0x54, 0x48, - 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x56, 0x45, - 0x4e, 0x54, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, - 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x55, - 0x43, 0x4b, 0x5f, 0x4e, 0x45, 0x45, 0x44, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x5f, 0x55, 0x50, 0x44, - 0x41, 0x54, 0x45, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x56, 0x49, 0x43, 0x54, 0x4f, 0x52, 0x59, 0x10, 0x04, 0x42, - 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, - 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, - 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x75, 0x73, 0x12, 0x25, 0x0a, 0x21, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x76, 0x61, 0x72, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x49, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x65, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x43, 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x5f, 0x43, 0x76, 0x61, 0x72, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, + 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x76, 0x61, 0x72, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x6f, 0x74, 0x41, 0x43, + 0x76, 0x61, 0x72, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, + 0x76, 0x61, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x43, + 0x76, 0x61, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, 0x03, 0x2a, 0x68, + 0x0a, 0x0b, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x0e, 0x0a, + 0x0a, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x53, 0x47, 0x10, 0x00, 0x12, 0x0f, 0x0a, + 0x0b, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x4d, 0x45, 0x4e, 0x55, 0x10, 0x01, 0x12, 0x0f, + 0x0a, 0x0b, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x10, 0x02, 0x12, + 0x10, 0x0a, 0x0c, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x45, 0x4e, 0x54, 0x52, 0x59, 0x10, + 0x03, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x49, 0x41, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x53, 0x4b, 0x43, + 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10, 0x04, 0x2a, 0x2b, 0x0a, 0x19, 0x53, 0x56, 0x43, 0x5f, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x4c, 0x6f, 0x77, 0x46, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x0e, 0x0a, 0x09, 0x73, 0x76, 0x63, 0x5f, 0x64, 0x75, 0x6d, + 0x6d, 0x79, 0x10, 0xd8, 0x04, 0x2a, 0x61, 0x0a, 0x16, 0x42, 0x69, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, + 0x1b, 0x0a, 0x17, 0x62, 0x69, 0x5f, 0x52, 0x65, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, + 0x74, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x10, 0x12, 0x18, 0x0a, 0x14, + 0x62, 0x69, 0x5f, 0x52, 0x65, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x53, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x10, 0x11, 0x12, 0x10, 0x0a, 0x0c, 0x62, 0x69, 0x5f, 0x47, 0x61, 0x6d, + 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x12, 0x2a, 0x4d, 0x0a, 0x23, 0x42, 0x69, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x73, 0x5f, 0x4c, 0x6f, 0x77, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, + 0x11, 0x0a, 0x0c, 0x62, 0x69, 0x5f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x10, + 0xbc, 0x05, 0x12, 0x13, 0x0a, 0x0e, 0x62, 0x69, 0x5f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x10, 0xbd, 0x05, 0x2a, 0xa1, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x6c, + 0x61, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x5f, 0x74, 0x12, 0x17, 0x0a, + 0x13, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x41, + 0x4e, 0x43, 0x45, 0x4c, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, + 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x41, 0x54, 0x48, 0x10, 0x01, 0x12, 0x18, + 0x0a, 0x14, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x47, + 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x10, 0x02, 0x12, 0x27, 0x0a, 0x23, 0x52, 0x45, 0x50, 0x4c, + 0x41, 0x59, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x55, 0x43, 0x4b, 0x5f, 0x4e, + 0x45, 0x45, 0x44, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, + 0x03, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x45, 0x56, 0x45, 0x4e, + 0x54, 0x5f, 0x56, 0x49, 0x43, 0x54, 0x4f, 0x52, 0x59, 0x10, 0x04, 0x42, 0x25, 0x5a, 0x23, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, + 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, + 0x74, 0x61, } var ( @@ -6627,126 +6867,129 @@ func file_netmessages_proto_rawDescGZIP() []byte { } var file_netmessages_proto_enumTypes = make([]protoimpl.EnumInfo, 12) -var file_netmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 70) +var file_netmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 71) var file_netmessages_proto_goTypes = []interface{}{ - (CLC_Messages)(0), // 0: dota.CLC_Messages - (SVC_Messages)(0), // 1: dota.SVC_Messages - (VoiceDataFormatT)(0), // 2: dota.VoiceDataFormat_t - (RequestPauseT)(0), // 3: dota.RequestPause_t - (PrefetchType)(0), // 4: dota.PrefetchType - (ESplitScreenMessageType)(0), // 5: dota.ESplitScreenMessageType - (EQueryCvarValueStatus)(0), // 6: dota.EQueryCvarValueStatus - (DIALOG_TYPE)(0), // 7: dota.DIALOG_TYPE - (SVC_Messages_LowFrequency)(0), // 8: dota.SVC_Messages_LowFrequency - (Bidirectional_Messages)(0), // 9: dota.Bidirectional_Messages - (Bidirectional_Messages_LowFrequency)(0), // 10: dota.Bidirectional_Messages_LowFrequency - (ReplayEventTypeT)(0), // 11: dota.ReplayEventType_t - (*CCLCMsg_ClientInfo)(nil), // 12: dota.CCLCMsg_ClientInfo - (*CCLCMsg_Move)(nil), // 13: dota.CCLCMsg_Move - (*CMsgVoiceAudio)(nil), // 14: dota.CMsgVoiceAudio - (*CCLCMsg_VoiceData)(nil), // 15: dota.CCLCMsg_VoiceData - (*CCLCMsg_BaselineAck)(nil), // 16: dota.CCLCMsg_BaselineAck - (*CCLCMsg_ListenEvents)(nil), // 17: dota.CCLCMsg_ListenEvents - (*CCLCMsg_RespondCvarValue)(nil), // 18: dota.CCLCMsg_RespondCvarValue - (*CCLCMsg_FileCRCCheck)(nil), // 19: dota.CCLCMsg_FileCRCCheck - (*CCLCMsg_LoadingProgress)(nil), // 20: dota.CCLCMsg_LoadingProgress - (*CCLCMsg_SplitPlayerConnect)(nil), // 21: dota.CCLCMsg_SplitPlayerConnect - (*CCLCMsg_ClientMessage)(nil), // 22: dota.CCLCMsg_ClientMessage - (*CCLCMsg_SplitPlayerDisconnect)(nil), // 23: dota.CCLCMsg_SplitPlayerDisconnect - (*CCLCMsg_ServerStatus)(nil), // 24: dota.CCLCMsg_ServerStatus - (*CCLCMsg_ServerPing)(nil), // 25: dota.CCLCMsg_ServerPing - (*CCLCMsg_RequestPause)(nil), // 26: dota.CCLCMsg_RequestPause - (*CCLCMsg_CmdKeyValues)(nil), // 27: dota.CCLCMsg_CmdKeyValues - (*CCLCMsg_RconServerDetails)(nil), // 28: dota.CCLCMsg_RconServerDetails - (*CSVCMsg_ServerInfo)(nil), // 29: dota.CSVCMsg_ServerInfo - (*CSVCMsg_ClassInfo)(nil), // 30: dota.CSVCMsg_ClassInfo - (*CSVCMsg_SetPause)(nil), // 31: dota.CSVCMsg_SetPause - (*CSVCMsg_VoiceInit)(nil), // 32: dota.CSVCMsg_VoiceInit - (*CSVCMsg_Print)(nil), // 33: dota.CSVCMsg_Print - (*CSVCMsg_Sounds)(nil), // 34: dota.CSVCMsg_Sounds - (*CSVCMsg_Prefetch)(nil), // 35: dota.CSVCMsg_Prefetch - (*CSVCMsg_SetView)(nil), // 36: dota.CSVCMsg_SetView - (*CSVCMsg_FixAngle)(nil), // 37: dota.CSVCMsg_FixAngle - (*CSVCMsg_CrosshairAngle)(nil), // 38: dota.CSVCMsg_CrosshairAngle - (*CSVCMsg_BSPDecal)(nil), // 39: dota.CSVCMsg_BSPDecal - (*CSVCMsg_SplitScreen)(nil), // 40: dota.CSVCMsg_SplitScreen - (*CSVCMsg_GetCvarValue)(nil), // 41: dota.CSVCMsg_GetCvarValue - (*CSVCMsg_Menu)(nil), // 42: dota.CSVCMsg_Menu - (*CSVCMsg_UserMessage)(nil), // 43: dota.CSVCMsg_UserMessage - (*CSVCMsg_SendTable)(nil), // 44: dota.CSVCMsg_SendTable - (*CSVCMsg_GameEventList)(nil), // 45: dota.CSVCMsg_GameEventList - (*CSVCMsg_PacketEntities)(nil), // 46: dota.CSVCMsg_PacketEntities - (*CSVCMsg_TempEntities)(nil), // 47: dota.CSVCMsg_TempEntities - (*CSVCMsg_CreateStringTable)(nil), // 48: dota.CSVCMsg_CreateStringTable - (*CSVCMsg_UpdateStringTable)(nil), // 49: dota.CSVCMsg_UpdateStringTable - (*CSVCMsg_VoiceData)(nil), // 50: dota.CSVCMsg_VoiceData - (*CSVCMsg_PacketReliable)(nil), // 51: dota.CSVCMsg_PacketReliable - (*CSVCMsg_FullFrameSplit)(nil), // 52: dota.CSVCMsg_FullFrameSplit - (*CSVCMsg_HLTVStatus)(nil), // 53: dota.CSVCMsg_HLTVStatus - (*CSVCMsg_ServerSteamID)(nil), // 54: dota.CSVCMsg_ServerSteamID - (*CSVCMsg_CmdKeyValues)(nil), // 55: dota.CSVCMsg_CmdKeyValues - (*CSVCMsg_RconServerDetails)(nil), // 56: dota.CSVCMsg_RconServerDetails - (*CMsgIPCAddress)(nil), // 57: dota.CMsgIPCAddress - (*CMsgServerPeer)(nil), // 58: dota.CMsgServerPeer - (*CSVCMsg_PeerList)(nil), // 59: dota.CSVCMsg_PeerList - (*CSVCMsg_ClearAllStringTables)(nil), // 60: dota.CSVCMsg_ClearAllStringTables - (*ProtoFlattenedSerializerFieldT)(nil), // 61: dota.ProtoFlattenedSerializerField_t - (*ProtoFlattenedSerializerT)(nil), // 62: dota.ProtoFlattenedSerializer_t - (*CSVCMsg_FlattenedSerializer)(nil), // 63: dota.CSVCMsg_FlattenedSerializer - (*CSVCMsg_StopSound)(nil), // 64: dota.CSVCMsg_StopSound - (*CBidirMsg_RebroadcastGameEvent)(nil), // 65: dota.CBidirMsg_RebroadcastGameEvent - (*CBidirMsg_RebroadcastSource)(nil), // 66: dota.CBidirMsg_RebroadcastSource - (*CMsgServerNetworkStats)(nil), // 67: dota.CMsgServerNetworkStats - (*CSVCMsg_HltvReplay)(nil), // 68: dota.CSVCMsg_HltvReplay - (*CCLCMsg_HltvReplay)(nil), // 69: dota.CCLCMsg_HltvReplay - (*CSVCMsg_Broadcast_Command)(nil), // 70: dota.CSVCMsg_Broadcast_Command - (*CCLCMsg_HltvFixupOperatorTick)(nil), // 71: dota.CCLCMsg_HltvFixupOperatorTick - (*CSVCMsg_HltvFixupOperatorStatus)(nil), // 72: dota.CSVCMsg_HltvFixupOperatorStatus - (*CSVCMsg_ClassInfoClassT)(nil), // 73: dota.CSVCMsg_ClassInfo.class_t - (*CSVCMsg_SoundsSounddataT)(nil), // 74: dota.CSVCMsg_Sounds.sounddata_t - (*CSVCMsg_SendTableSendpropT)(nil), // 75: dota.CSVCMsg_SendTable.sendprop_t - (*CSVCMsg_GameEventListKeyT)(nil), // 76: dota.CSVCMsg_GameEventList.key_t - (*CSVCMsg_GameEventListDescriptorT)(nil), // 77: dota.CSVCMsg_GameEventList.descriptor_t - (*CSVCMsg_PacketEntitiesCommandQueueInfoT)(nil), // 78: dota.CSVCMsg_PacketEntities.command_queue_info_t - (*CSVCMsg_PacketEntitiesAlternateBaselineT)(nil), // 79: dota.CSVCMsg_PacketEntities.alternate_baseline_t - (*CMsgServerNetworkStats_Port)(nil), // 80: dota.CMsgServerNetworkStats.Port - (*CMsgServerNetworkStats_Player)(nil), // 81: dota.CMsgServerNetworkStats.Player - (*CSVCMsg_GameSessionConfiguration)(nil), // 82: dota.CSVCMsg_GameSessionConfiguration - (*CMsgQAngle)(nil), // 83: dota.CMsgQAngle - (*CMsgVector)(nil), // 84: dota.CMsgVector + (CLC_Messages)(0), // 0: dota.CLC_Messages + (SVC_Messages)(0), // 1: dota.SVC_Messages + (VoiceDataFormatT)(0), // 2: dota.VoiceDataFormat_t + (RequestPauseT)(0), // 3: dota.RequestPause_t + (PrefetchType)(0), // 4: dota.PrefetchType + (ESplitScreenMessageType)(0), // 5: dota.ESplitScreenMessageType + (EQueryCvarValueStatus)(0), // 6: dota.EQueryCvarValueStatus + (DIALOG_TYPE)(0), // 7: dota.DIALOG_TYPE + (SVC_Messages_LowFrequency)(0), // 8: dota.SVC_Messages_LowFrequency + (Bidirectional_Messages)(0), // 9: dota.Bidirectional_Messages + (Bidirectional_Messages_LowFrequency)(0), // 10: dota.Bidirectional_Messages_LowFrequency + (ReplayEventTypeT)(0), // 11: dota.ReplayEventType_t + (*CCLCMsg_ClientInfo)(nil), // 12: dota.CCLCMsg_ClientInfo + (*CCLCMsg_Move)(nil), // 13: dota.CCLCMsg_Move + (*CMsgVoiceAudio)(nil), // 14: dota.CMsgVoiceAudio + (*CCLCMsg_VoiceData)(nil), // 15: dota.CCLCMsg_VoiceData + (*CCLCMsg_BaselineAck)(nil), // 16: dota.CCLCMsg_BaselineAck + (*CCLCMsg_ListenEvents)(nil), // 17: dota.CCLCMsg_ListenEvents + (*CCLCMsg_RespondCvarValue)(nil), // 18: dota.CCLCMsg_RespondCvarValue + (*CCLCMsg_FileCRCCheck)(nil), // 19: dota.CCLCMsg_FileCRCCheck + (*CCLCMsg_LoadingProgress)(nil), // 20: dota.CCLCMsg_LoadingProgress + (*CCLCMsg_SplitPlayerConnect)(nil), // 21: dota.CCLCMsg_SplitPlayerConnect + (*CCLCMsg_ClientMessage)(nil), // 22: dota.CCLCMsg_ClientMessage + (*CCLCMsg_SplitPlayerDisconnect)(nil), // 23: dota.CCLCMsg_SplitPlayerDisconnect + (*CCLCMsg_ServerStatus)(nil), // 24: dota.CCLCMsg_ServerStatus + (*CCLCMsg_RequestPause)(nil), // 25: dota.CCLCMsg_RequestPause + (*CCLCMsg_CmdKeyValues)(nil), // 26: dota.CCLCMsg_CmdKeyValues + (*CCLCMsg_RconServerDetails)(nil), // 27: dota.CCLCMsg_RconServerDetails + (*CSVCMsg_ServerInfo)(nil), // 28: dota.CSVCMsg_ServerInfo + (*CSVCMsg_ClassInfo)(nil), // 29: dota.CSVCMsg_ClassInfo + (*CSVCMsg_SetPause)(nil), // 30: dota.CSVCMsg_SetPause + (*CSVCMsg_VoiceInit)(nil), // 31: dota.CSVCMsg_VoiceInit + (*CSVCMsg_Print)(nil), // 32: dota.CSVCMsg_Print + (*CSVCMsg_Sounds)(nil), // 33: dota.CSVCMsg_Sounds + (*CSVCMsg_Prefetch)(nil), // 34: dota.CSVCMsg_Prefetch + (*CSVCMsg_SetView)(nil), // 35: dota.CSVCMsg_SetView + (*CSVCMsg_FixAngle)(nil), // 36: dota.CSVCMsg_FixAngle + (*CSVCMsg_CrosshairAngle)(nil), // 37: dota.CSVCMsg_CrosshairAngle + (*CSVCMsg_BSPDecal)(nil), // 38: dota.CSVCMsg_BSPDecal + (*CSVCMsg_SplitScreen)(nil), // 39: dota.CSVCMsg_SplitScreen + (*CSVCMsg_GetCvarValue)(nil), // 40: dota.CSVCMsg_GetCvarValue + (*CSVCMsg_Menu)(nil), // 41: dota.CSVCMsg_Menu + (*CSVCMsg_UserMessage)(nil), // 42: dota.CSVCMsg_UserMessage + (*CSVCMsg_SendTable)(nil), // 43: dota.CSVCMsg_SendTable + (*CSVCMsg_GameEventList)(nil), // 44: dota.CSVCMsg_GameEventList + (*CSVCMsg_PacketEntities)(nil), // 45: dota.CSVCMsg_PacketEntities + (*CSVCMsg_TempEntities)(nil), // 46: dota.CSVCMsg_TempEntities + (*CSVCMsg_CreateStringTable)(nil), // 47: dota.CSVCMsg_CreateStringTable + (*CSVCMsg_UpdateStringTable)(nil), // 48: dota.CSVCMsg_UpdateStringTable + (*CSVCMsg_VoiceData)(nil), // 49: dota.CSVCMsg_VoiceData + (*CSVCMsg_PacketReliable)(nil), // 50: dota.CSVCMsg_PacketReliable + (*CSVCMsg_FullFrameSplit)(nil), // 51: dota.CSVCMsg_FullFrameSplit + (*CSVCMsg_HLTVStatus)(nil), // 52: dota.CSVCMsg_HLTVStatus + (*CSVCMsg_ServerSteamID)(nil), // 53: dota.CSVCMsg_ServerSteamID + (*CSVCMsg_CmdKeyValues)(nil), // 54: dota.CSVCMsg_CmdKeyValues + (*CSVCMsg_RconServerDetails)(nil), // 55: dota.CSVCMsg_RconServerDetails + (*CMsgIPCAddress)(nil), // 56: dota.CMsgIPCAddress + (*CMsgServerPeer)(nil), // 57: dota.CMsgServerPeer + (*CSVCMsg_PeerList)(nil), // 58: dota.CSVCMsg_PeerList + (*CSVCMsg_ClearAllStringTables)(nil), // 59: dota.CSVCMsg_ClearAllStringTables + (*ProtoFlattenedSerializerFieldT)(nil), // 60: dota.ProtoFlattenedSerializerField_t + (*ProtoFlattenedSerializerT)(nil), // 61: dota.ProtoFlattenedSerializer_t + (*CSVCMsg_FlattenedSerializer)(nil), // 62: dota.CSVCMsg_FlattenedSerializer + (*CSVCMsg_StopSound)(nil), // 63: dota.CSVCMsg_StopSound + (*CBidirMsg_RebroadcastGameEvent)(nil), // 64: dota.CBidirMsg_RebroadcastGameEvent + (*CBidirMsg_RebroadcastSource)(nil), // 65: dota.CBidirMsg_RebroadcastSource + (*CMsgServerNetworkStats)(nil), // 66: dota.CMsgServerNetworkStats + (*CSVCMsg_HltvReplay)(nil), // 67: dota.CSVCMsg_HltvReplay + (*CCLCMsg_HltvReplay)(nil), // 68: dota.CCLCMsg_HltvReplay + (*CSVCMsg_Broadcast_Command)(nil), // 69: dota.CSVCMsg_Broadcast_Command + (*CCLCMsg_HltvFixupOperatorTick)(nil), // 70: dota.CCLCMsg_HltvFixupOperatorTick + (*CSVCMsg_HltvFixupOperatorStatus)(nil), // 71: dota.CSVCMsg_HltvFixupOperatorStatus + (*CSVCMsg_ClassInfoClassT)(nil), // 72: dota.CSVCMsg_ClassInfo.class_t + (*CSVCMsg_SoundsSounddataT)(nil), // 73: dota.CSVCMsg_Sounds.sounddata_t + (*CSVCMsg_SendTableSendpropT)(nil), // 74: dota.CSVCMsg_SendTable.sendprop_t + (*CSVCMsg_GameEventListKeyT)(nil), // 75: dota.CSVCMsg_GameEventList.key_t + (*CSVCMsg_GameEventListDescriptorT)(nil), // 76: dota.CSVCMsg_GameEventList.descriptor_t + (*CSVCMsg_PacketEntitiesCommandQueueInfoT)(nil), // 77: dota.CSVCMsg_PacketEntities.command_queue_info_t + (*CSVCMsg_PacketEntitiesAlternateBaselineT)(nil), // 78: dota.CSVCMsg_PacketEntities.alternate_baseline_t + (*CSVCMsg_PacketEntitiesNonTransmittedEntitiesT)(nil), // 79: dota.CSVCMsg_PacketEntities.non_transmitted_entities_t + (*ProtoFlattenedSerializerFieldTPolymorphicFieldT)(nil), // 80: dota.ProtoFlattenedSerializerField_t.polymorphic_field_t + (*CMsgServerNetworkStats_Port)(nil), // 81: dota.CMsgServerNetworkStats.Port + (*CMsgServerNetworkStats_Player)(nil), // 82: dota.CMsgServerNetworkStats.Player + (*CSVCMsg_GameSessionConfiguration)(nil), // 83: dota.CSVCMsg_GameSessionConfiguration + (*CMsgQAngle)(nil), // 84: dota.CMsgQAngle + (*CMsgVector)(nil), // 85: dota.CMsgVector } var file_netmessages_proto_depIdxs = []int32{ 2, // 0: dota.CMsgVoiceAudio.format:type_name -> dota.VoiceDataFormat_t 14, // 1: dota.CCLCMsg_VoiceData.audio:type_name -> dota.CMsgVoiceAudio 3, // 2: dota.CCLCMsg_RequestPause.pause_type:type_name -> dota.RequestPause_t - 82, // 3: dota.CSVCMsg_ServerInfo.game_session_config:type_name -> dota.CSVCMsg_GameSessionConfiguration - 73, // 4: dota.CSVCMsg_ClassInfo.classes:type_name -> dota.CSVCMsg_ClassInfo.class_t - 74, // 5: dota.CSVCMsg_Sounds.sounds:type_name -> dota.CSVCMsg_Sounds.sounddata_t + 83, // 3: dota.CSVCMsg_ServerInfo.game_session_config:type_name -> dota.CSVCMsg_GameSessionConfiguration + 72, // 4: dota.CSVCMsg_ClassInfo.classes:type_name -> dota.CSVCMsg_ClassInfo.class_t + 73, // 5: dota.CSVCMsg_Sounds.sounds:type_name -> dota.CSVCMsg_Sounds.sounddata_t 4, // 6: dota.CSVCMsg_Prefetch.resource_type:type_name -> dota.PrefetchType - 83, // 7: dota.CSVCMsg_FixAngle.angle:type_name -> dota.CMsgQAngle - 83, // 8: dota.CSVCMsg_CrosshairAngle.angle:type_name -> dota.CMsgQAngle - 84, // 9: dota.CSVCMsg_BSPDecal.pos:type_name -> dota.CMsgVector + 84, // 7: dota.CSVCMsg_FixAngle.angle:type_name -> dota.CMsgQAngle + 84, // 8: dota.CSVCMsg_CrosshairAngle.angle:type_name -> dota.CMsgQAngle + 85, // 9: dota.CSVCMsg_BSPDecal.pos:type_name -> dota.CMsgVector 5, // 10: dota.CSVCMsg_SplitScreen.type:type_name -> dota.ESplitScreenMessageType - 75, // 11: dota.CSVCMsg_SendTable.props:type_name -> dota.CSVCMsg_SendTable.sendprop_t - 77, // 12: dota.CSVCMsg_GameEventList.descriptors:type_name -> dota.CSVCMsg_GameEventList.descriptor_t - 78, // 13: dota.CSVCMsg_PacketEntities.command_queue_info:type_name -> dota.CSVCMsg_PacketEntities.command_queue_info_t - 79, // 14: dota.CSVCMsg_PacketEntities.alternate_baselines:type_name -> dota.CSVCMsg_PacketEntities.alternate_baseline_t - 14, // 15: dota.CSVCMsg_VoiceData.audio:type_name -> dota.CMsgVoiceAudio - 57, // 16: dota.CMsgServerPeer.ipc:type_name -> dota.CMsgIPCAddress - 58, // 17: dota.CSVCMsg_PeerList.peer:type_name -> dota.CMsgServerPeer - 62, // 18: dota.CSVCMsg_FlattenedSerializer.serializers:type_name -> dota.ProtoFlattenedSerializer_t - 61, // 19: dota.CSVCMsg_FlattenedSerializer.fields:type_name -> dota.ProtoFlattenedSerializerField_t - 80, // 20: dota.CMsgServerNetworkStats.ports:type_name -> dota.CMsgServerNetworkStats.Port - 81, // 21: dota.CMsgServerNetworkStats.players:type_name -> dota.CMsgServerNetworkStats.Player - 84, // 22: dota.CCLCMsg_HltvFixupOperatorTick.origin:type_name -> dota.CMsgVector - 83, // 23: dota.CCLCMsg_HltvFixupOperatorTick.eye_angles:type_name -> dota.CMsgQAngle - 84, // 24: dota.CCLCMsg_HltvFixupOperatorTick.view_offset:type_name -> dota.CMsgVector - 76, // 25: dota.CSVCMsg_GameEventList.descriptor_t.keys:type_name -> dota.CSVCMsg_GameEventList.key_t - 26, // [26:26] is the sub-list for method output_type - 26, // [26:26] is the sub-list for method input_type - 26, // [26:26] is the sub-list for extension type_name - 26, // [26:26] is the sub-list for extension extendee - 0, // [0:26] is the sub-list for field type_name + 74, // 11: dota.CSVCMsg_SendTable.props:type_name -> dota.CSVCMsg_SendTable.sendprop_t + 76, // 12: dota.CSVCMsg_GameEventList.descriptors:type_name -> dota.CSVCMsg_GameEventList.descriptor_t + 77, // 13: dota.CSVCMsg_PacketEntities.command_queue_info:type_name -> dota.CSVCMsg_PacketEntities.command_queue_info_t + 78, // 14: dota.CSVCMsg_PacketEntities.alternate_baselines:type_name -> dota.CSVCMsg_PacketEntities.alternate_baseline_t + 79, // 15: dota.CSVCMsg_PacketEntities.non_transmitted_entities:type_name -> dota.CSVCMsg_PacketEntities.non_transmitted_entities_t + 14, // 16: dota.CSVCMsg_VoiceData.audio:type_name -> dota.CMsgVoiceAudio + 56, // 17: dota.CMsgServerPeer.ipc:type_name -> dota.CMsgIPCAddress + 57, // 18: dota.CSVCMsg_PeerList.peer:type_name -> dota.CMsgServerPeer + 80, // 19: dota.ProtoFlattenedSerializerField_t.polymorphic_types:type_name -> dota.ProtoFlattenedSerializerField_t.polymorphic_field_t + 61, // 20: dota.CSVCMsg_FlattenedSerializer.serializers:type_name -> dota.ProtoFlattenedSerializer_t + 60, // 21: dota.CSVCMsg_FlattenedSerializer.fields:type_name -> dota.ProtoFlattenedSerializerField_t + 81, // 22: dota.CMsgServerNetworkStats.ports:type_name -> dota.CMsgServerNetworkStats.Port + 82, // 23: dota.CMsgServerNetworkStats.players:type_name -> dota.CMsgServerNetworkStats.Player + 85, // 24: dota.CCLCMsg_HltvFixupOperatorTick.origin:type_name -> dota.CMsgVector + 84, // 25: dota.CCLCMsg_HltvFixupOperatorTick.eye_angles:type_name -> dota.CMsgQAngle + 85, // 26: dota.CCLCMsg_HltvFixupOperatorTick.view_offset:type_name -> dota.CMsgVector + 75, // 27: dota.CSVCMsg_GameEventList.descriptor_t.keys:type_name -> dota.CSVCMsg_GameEventList.key_t + 28, // [28:28] is the sub-list for method output_type + 28, // [28:28] is the sub-list for method input_type + 28, // [28:28] is the sub-list for extension type_name + 28, // [28:28] is the sub-list for extension extendee + 0, // [0:28] is the sub-list for field type_name } func init() { file_netmessages_proto_init() } @@ -6913,7 +7156,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCLCMsg_ServerPing); i { + switch v := v.(*CCLCMsg_RequestPause); i { case 0: return &v.state case 1: @@ -6925,7 +7168,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCLCMsg_RequestPause); i { + switch v := v.(*CCLCMsg_CmdKeyValues); i { case 0: return &v.state case 1: @@ -6937,7 +7180,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCLCMsg_CmdKeyValues); i { + switch v := v.(*CCLCMsg_RconServerDetails); i { case 0: return &v.state case 1: @@ -6949,7 +7192,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCLCMsg_RconServerDetails); i { + switch v := v.(*CSVCMsg_ServerInfo); i { case 0: return &v.state case 1: @@ -6961,7 +7204,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_ServerInfo); i { + switch v := v.(*CSVCMsg_ClassInfo); i { case 0: return &v.state case 1: @@ -6973,7 +7216,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_ClassInfo); i { + switch v := v.(*CSVCMsg_SetPause); i { case 0: return &v.state case 1: @@ -6985,7 +7228,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_SetPause); i { + switch v := v.(*CSVCMsg_VoiceInit); i { case 0: return &v.state case 1: @@ -6997,7 +7240,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_VoiceInit); i { + switch v := v.(*CSVCMsg_Print); i { case 0: return &v.state case 1: @@ -7009,7 +7252,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_Print); i { + switch v := v.(*CSVCMsg_Sounds); i { case 0: return &v.state case 1: @@ -7021,7 +7264,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_Sounds); i { + switch v := v.(*CSVCMsg_Prefetch); i { case 0: return &v.state case 1: @@ -7033,7 +7276,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_Prefetch); i { + switch v := v.(*CSVCMsg_SetView); i { case 0: return &v.state case 1: @@ -7045,7 +7288,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_SetView); i { + switch v := v.(*CSVCMsg_FixAngle); i { case 0: return &v.state case 1: @@ -7057,7 +7300,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_FixAngle); i { + switch v := v.(*CSVCMsg_CrosshairAngle); i { case 0: return &v.state case 1: @@ -7069,7 +7312,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_CrosshairAngle); i { + switch v := v.(*CSVCMsg_BSPDecal); i { case 0: return &v.state case 1: @@ -7081,7 +7324,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_BSPDecal); i { + switch v := v.(*CSVCMsg_SplitScreen); i { case 0: return &v.state case 1: @@ -7093,7 +7336,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_SplitScreen); i { + switch v := v.(*CSVCMsg_GetCvarValue); i { case 0: return &v.state case 1: @@ -7105,7 +7348,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_GetCvarValue); i { + switch v := v.(*CSVCMsg_Menu); i { case 0: return &v.state case 1: @@ -7117,7 +7360,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_Menu); i { + switch v := v.(*CSVCMsg_UserMessage); i { case 0: return &v.state case 1: @@ -7129,7 +7372,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_UserMessage); i { + switch v := v.(*CSVCMsg_SendTable); i { case 0: return &v.state case 1: @@ -7141,7 +7384,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_SendTable); i { + switch v := v.(*CSVCMsg_GameEventList); i { case 0: return &v.state case 1: @@ -7153,7 +7396,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_GameEventList); i { + switch v := v.(*CSVCMsg_PacketEntities); i { case 0: return &v.state case 1: @@ -7165,7 +7408,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_PacketEntities); i { + switch v := v.(*CSVCMsg_TempEntities); i { case 0: return &v.state case 1: @@ -7177,7 +7420,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_TempEntities); i { + switch v := v.(*CSVCMsg_CreateStringTable); i { case 0: return &v.state case 1: @@ -7189,7 +7432,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_CreateStringTable); i { + switch v := v.(*CSVCMsg_UpdateStringTable); i { case 0: return &v.state case 1: @@ -7201,7 +7444,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_UpdateStringTable); i { + switch v := v.(*CSVCMsg_VoiceData); i { case 0: return &v.state case 1: @@ -7213,7 +7456,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_VoiceData); i { + switch v := v.(*CSVCMsg_PacketReliable); i { case 0: return &v.state case 1: @@ -7225,7 +7468,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_PacketReliable); i { + switch v := v.(*CSVCMsg_FullFrameSplit); i { case 0: return &v.state case 1: @@ -7237,7 +7480,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_FullFrameSplit); i { + switch v := v.(*CSVCMsg_HLTVStatus); i { case 0: return &v.state case 1: @@ -7249,7 +7492,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_HLTVStatus); i { + switch v := v.(*CSVCMsg_ServerSteamID); i { case 0: return &v.state case 1: @@ -7261,7 +7504,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_ServerSteamID); i { + switch v := v.(*CSVCMsg_CmdKeyValues); i { case 0: return &v.state case 1: @@ -7273,7 +7516,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_CmdKeyValues); i { + switch v := v.(*CSVCMsg_RconServerDetails); i { case 0: return &v.state case 1: @@ -7285,7 +7528,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_RconServerDetails); i { + switch v := v.(*CMsgIPCAddress); i { case 0: return &v.state case 1: @@ -7297,7 +7540,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgIPCAddress); i { + switch v := v.(*CMsgServerPeer); i { case 0: return &v.state case 1: @@ -7309,7 +7552,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerPeer); i { + switch v := v.(*CSVCMsg_PeerList); i { case 0: return &v.state case 1: @@ -7321,7 +7564,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_PeerList); i { + switch v := v.(*CSVCMsg_ClearAllStringTables); i { case 0: return &v.state case 1: @@ -7333,7 +7576,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_ClearAllStringTables); i { + switch v := v.(*ProtoFlattenedSerializerFieldT); i { case 0: return &v.state case 1: @@ -7345,7 +7588,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ProtoFlattenedSerializerFieldT); i { + switch v := v.(*ProtoFlattenedSerializerT); i { case 0: return &v.state case 1: @@ -7357,7 +7600,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ProtoFlattenedSerializerT); i { + switch v := v.(*CSVCMsg_FlattenedSerializer); i { case 0: return &v.state case 1: @@ -7369,7 +7612,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_FlattenedSerializer); i { + switch v := v.(*CSVCMsg_StopSound); i { case 0: return &v.state case 1: @@ -7381,7 +7624,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_StopSound); i { + switch v := v.(*CBidirMsg_RebroadcastGameEvent); i { case 0: return &v.state case 1: @@ -7393,7 +7636,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CBidirMsg_RebroadcastGameEvent); i { + switch v := v.(*CBidirMsg_RebroadcastSource); i { case 0: return &v.state case 1: @@ -7405,7 +7648,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CBidirMsg_RebroadcastSource); i { + switch v := v.(*CMsgServerNetworkStats); i { case 0: return &v.state case 1: @@ -7417,7 +7660,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerNetworkStats); i { + switch v := v.(*CSVCMsg_HltvReplay); i { case 0: return &v.state case 1: @@ -7429,7 +7672,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_HltvReplay); i { + switch v := v.(*CCLCMsg_HltvReplay); i { case 0: return &v.state case 1: @@ -7441,7 +7684,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCLCMsg_HltvReplay); i { + switch v := v.(*CSVCMsg_Broadcast_Command); i { case 0: return &v.state case 1: @@ -7453,7 +7696,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_Broadcast_Command); i { + switch v := v.(*CCLCMsg_HltvFixupOperatorTick); i { case 0: return &v.state case 1: @@ -7465,7 +7708,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CCLCMsg_HltvFixupOperatorTick); i { + switch v := v.(*CSVCMsg_HltvFixupOperatorStatus); i { case 0: return &v.state case 1: @@ -7477,7 +7720,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_HltvFixupOperatorStatus); i { + switch v := v.(*CSVCMsg_ClassInfoClassT); i { case 0: return &v.state case 1: @@ -7489,7 +7732,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_ClassInfoClassT); i { + switch v := v.(*CSVCMsg_SoundsSounddataT); i { case 0: return &v.state case 1: @@ -7501,7 +7744,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_SoundsSounddataT); i { + switch v := v.(*CSVCMsg_SendTableSendpropT); i { case 0: return &v.state case 1: @@ -7513,7 +7756,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_SendTableSendpropT); i { + switch v := v.(*CSVCMsg_GameEventListKeyT); i { case 0: return &v.state case 1: @@ -7525,7 +7768,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_GameEventListKeyT); i { + switch v := v.(*CSVCMsg_GameEventListDescriptorT); i { case 0: return &v.state case 1: @@ -7537,7 +7780,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_GameEventListDescriptorT); i { + switch v := v.(*CSVCMsg_PacketEntitiesCommandQueueInfoT); i { case 0: return &v.state case 1: @@ -7549,7 +7792,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_PacketEntitiesCommandQueueInfoT); i { + switch v := v.(*CSVCMsg_PacketEntitiesAlternateBaselineT); i { case 0: return &v.state case 1: @@ -7561,7 +7804,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CSVCMsg_PacketEntitiesAlternateBaselineT); i { + switch v := v.(*CSVCMsg_PacketEntitiesNonTransmittedEntitiesT); i { case 0: return &v.state case 1: @@ -7573,7 +7816,7 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgServerNetworkStats_Port); i { + switch v := v.(*ProtoFlattenedSerializerFieldTPolymorphicFieldT); i { case 0: return &v.state case 1: @@ -7585,6 +7828,18 @@ func file_netmessages_proto_init() { } } file_netmessages_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgServerNetworkStats_Port); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_netmessages_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgServerNetworkStats_Player); i { case 0: return &v.state @@ -7603,7 +7858,7 @@ func file_netmessages_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_netmessages_proto_rawDesc, NumEnums: 12, - NumMessages: 70, + NumMessages: 71, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/netmessages.proto b/dota/netmessages.proto index b0892d07..d75b6eb5 100644 --- a/dota/netmessages.proto +++ b/dota/netmessages.proto @@ -61,6 +61,7 @@ enum SVC_Messages { enum VoiceDataFormat_t { VOICEDATA_FORMAT_STEAM = 0; VOICEDATA_FORMAT_ENGINE = 1; + VOICEDATA_FORMAT_OPUS = 2; } enum RequestPause_t { @@ -137,6 +138,9 @@ message CMsgVoiceAudio { optional uint32 section_number = 4; optional uint32 sample_rate = 5; optional uint32 uncompressed_sample_offset = 6; + optional uint32 num_packets = 7; + repeated uint32 packet_offsets = 8; + optional float voice_level = 9; } message CCLCMsg_VoiceData { @@ -190,9 +194,6 @@ message CCLCMsg_ServerStatus { optional bool simplified = 1; } -message CCLCMsg_ServerPing { -} - message CCLCMsg_RequestPause { optional RequestPause_t pause_type = 1; optional int32 pause_group = 2; @@ -228,7 +229,6 @@ message CSVCMsg_ServerInfo { message CSVCMsg_ClassInfo { message class_t { optional int32 class_id = 1; - optional string data_table_name = 2; optional string class_name = 3; } @@ -374,9 +374,14 @@ message CSVCMsg_PacketEntities { optional int32 baseline_index = 2; } + message non_transmitted_entities_t { + optional int32 header_count = 1; + optional bytes data = 2; + } + optional int32 max_entries = 1; optional int32 updated_entries = 2; - optional bool is_delta = 3; + optional bool legacy_is_delta = 3; optional bool update_baseline = 4; optional int32 baseline = 5; optional int32 delta_from = 6; @@ -384,11 +389,16 @@ message CSVCMsg_PacketEntities { optional bool pending_full_frame = 8; optional uint32 active_spawngroup_handle = 9; optional uint32 max_spawngroup_creationsequence = 10; - optional uint32 last_cmd_number = 11; + optional uint32 last_cmd_number_executed = 11; + optional sint32 last_cmd_number_recv_delta = 17; optional uint32 server_tick = 12; optional bytes serialized_entities = 13; optional CSVCMsg_PacketEntities.command_queue_info_t command_queue_info = 14; repeated CSVCMsg_PacketEntities.alternate_baseline_t alternate_baselines = 15; + optional uint32 has_pvs_vis_bits = 16; + optional uint32 last_cmd_recv_margin = 18; + optional CSVCMsg_PacketEntities.non_transmitted_entities_t non_transmitted_entities = 19; + optional bytes dev_padding = 999; } message CSVCMsg_TempEntities { @@ -423,6 +433,7 @@ message CSVCMsg_VoiceData { optional fixed64 xuid = 4; optional int32 audible_mask = 5; optional uint32 tick = 6; + optional int32 passthrough = 7; } message CSVCMsg_PacketReliable { @@ -478,9 +489,15 @@ message CSVCMsg_PeerList { message CSVCMsg_ClearAllStringTables { optional string mapname = 1; + optional bool create_tables_skipped = 3; } message ProtoFlattenedSerializerField_t { + message polymorphic_field_t { + optional int32 polymorphic_field_serializer_name_sym = 1; + optional int32 polymorphic_field_serializer_version = 2; + } + optional int32 var_type_sym = 1; optional int32 var_name_sym = 2; optional int32 bit_count = 3; @@ -491,6 +508,8 @@ message ProtoFlattenedSerializerField_t { optional int32 field_serializer_version = 8; optional int32 send_node_sym = 9; optional int32 var_encoder_sym = 10; + repeated ProtoFlattenedSerializerField_t.polymorphic_field_t polymorphic_types = 11; + optional int32 var_serializer_sym = 12; } message ProtoFlattenedSerializer_t { @@ -529,10 +548,12 @@ message CMsgServerNetworkStats { message Player { optional uint64 steamid = 1; optional string remote_addr = 2; - optional int32 ping_stddev_ms = 3; optional int32 ping_avg_ms = 4; optional float packet_loss_pct = 5; optional bool is_bot = 6; + optional float loss_in = 7; + optional float loss_out = 8; + optional int32 engine_latency_ms = 9; } optional bool dedicated = 1; @@ -547,8 +568,8 @@ message CMsgServerNetworkStats { optional int32 num_tv_relays = 11; optional float fps = 12; repeated CMsgServerNetworkStats.Port ports = 17; - optional float avg_latency_out = 18; - optional float avg_latency_in = 19; + optional float avg_ping_ms = 18; + optional float avg_engine_latency_out = 19; optional float avg_packets_out = 20; optional float avg_packets_in = 21; optional float avg_loss_out = 22; diff --git a/dota/network_connection.pb.go b/dota/network_connection.pb.go index 738f1f57..2f61670d 100644 --- a/dota/network_connection.pb.go +++ b/dota/network_connection.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: network_connection.proto @@ -94,7 +94,6 @@ const ( ENetworkDisconnectionReason_NETWORK_DISCONNECT_STEAM_DENY_MISC ENetworkDisconnectionReason = 67 ENetworkDisconnectionReason_NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT ENetworkDisconnectionReason = 68 ENetworkDisconnectionReason_NETWORK_DISCONNECT_SERVER_SHUTDOWN ENetworkDisconnectionReason = 69 - ENetworkDisconnectionReason_NETWORK_DISCONNECT_SPLITPACKET_SEND_OVERFLOW ENetworkDisconnectionReason = 70 ENetworkDisconnectionReason_NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE ENetworkDisconnectionReason = 71 ENetworkDisconnectionReason_NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT ENetworkDisconnectionReason = 72 ENetworkDisconnectionReason_NETWORK_DISCONNECT_SERVER_INCOMPATIBLE ENetworkDisconnectionReason = 73 @@ -218,7 +217,6 @@ var ( 67: "NETWORK_DISCONNECT_STEAM_DENY_MISC", 68: "NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT", 69: "NETWORK_DISCONNECT_SERVER_SHUTDOWN", - 70: "NETWORK_DISCONNECT_SPLITPACKET_SEND_OVERFLOW", 71: "NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE", 72: "NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT", 73: "NETWORK_DISCONNECT_SERVER_INCOMPATIBLE", @@ -339,7 +337,6 @@ var ( "NETWORK_DISCONNECT_STEAM_DENY_MISC": 67, "NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT": 68, "NETWORK_DISCONNECT_SERVER_SHUTDOWN": 69, - "NETWORK_DISCONNECT_SPLITPACKET_SEND_OVERFLOW": 70, "NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE": 71, "NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT": 72, "NETWORK_DISCONNECT_SERVER_INCOMPATIBLE": 73, @@ -452,7 +449,7 @@ var file_network_connection_proto_rawDesc = []byte{ 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2a, 0x82, 0x28, 0x0a, 0x1b, 0x45, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, + 0x74, 0x6f, 0x2a, 0xd0, 0x27, 0x0a, 0x1b, 0x45, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x1a, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, @@ -633,154 +630,151 @@ var file_network_connection_proto_rawDesc = []byte{ 0x49, 0x5f, 0x43, 0x48, 0x45, 0x41, 0x54, 0x10, 0x44, 0x12, 0x26, 0x0a, 0x22, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x48, 0x55, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x10, - 0x45, 0x12, 0x30, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, - 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x50, 0x41, 0x43, - 0x4b, 0x45, 0x54, 0x5f, 0x53, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x46, 0x4c, 0x4f, - 0x57, 0x10, 0x46, 0x12, 0x2a, 0x0a, 0x26, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, - 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, - 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x47, 0x12, - 0x2f, 0x0a, 0x2b, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, - 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, - 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x44, 0x4f, 0x55, 0x54, 0x10, 0x48, - 0x12, 0x2a, 0x0a, 0x26, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, - 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x49, 0x4e, - 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x49, 0x12, 0x2e, 0x0a, 0x2a, - 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x50, 0x52, 0x4f, 0x42, 0x4c, 0x45, 0x4d, 0x5f, - 0x4d, 0x41, 0x4e, 0x59, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x53, 0x10, 0x4a, 0x12, 0x3c, 0x0a, 0x38, - 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x50, 0x52, 0x4f, 0x42, 0x4c, 0x45, 0x4d, 0x5f, - 0x48, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x50, 0x52, 0x49, 0x4d, - 0x41, 0x52, 0x59, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x4b, 0x12, 0x31, 0x0a, 0x2d, 0x4e, 0x45, + 0x45, 0x12, 0x2a, 0x0a, 0x26, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, + 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x49, + 0x4e, 0x43, 0x4f, 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x47, 0x12, 0x2f, 0x0a, + 0x2b, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, + 0x45, 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x55, + 0x45, 0x53, 0x54, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x44, 0x4f, 0x55, 0x54, 0x10, 0x48, 0x12, 0x2a, + 0x0a, 0x26, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, + 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x49, 0x4e, 0x43, 0x4f, + 0x4d, 0x50, 0x41, 0x54, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x49, 0x12, 0x2e, 0x0a, 0x2a, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, - 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x50, 0x52, 0x4f, 0x42, 0x4c, 0x45, 0x4d, 0x5f, 0x4e, 0x45, - 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x4c, 0x12, 0x29, 0x0a, - 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, - 0x45, 0x43, 0x54, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x50, 0x52, 0x4f, 0x42, 0x4c, 0x45, 0x4d, - 0x5f, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x4d, 0x12, 0x25, 0x0a, 0x21, 0x4e, 0x45, 0x54, 0x57, - 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, - 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x4f, 0x12, - 0x30, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, - 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x54, 0x49, 0x4d, - 0x45, 0x4f, 0x55, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4e, 0x47, 0x10, - 0x50, 0x12, 0x23, 0x0a, 0x1f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, - 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x4f, - 0x54, 0x48, 0x45, 0x52, 0x10, 0x51, 0x12, 0x26, 0x0a, 0x22, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, + 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x50, 0x52, 0x4f, 0x42, 0x4c, 0x45, 0x4d, 0x5f, 0x4d, 0x41, + 0x4e, 0x59, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x53, 0x10, 0x4a, 0x12, 0x3c, 0x0a, 0x38, 0x4e, 0x45, + 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, + 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x50, 0x52, 0x4f, 0x42, 0x4c, 0x45, 0x4d, 0x5f, 0x48, 0x4f, + 0x53, 0x54, 0x45, 0x44, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, + 0x59, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x4b, 0x12, 0x31, 0x0a, 0x2d, 0x4e, 0x45, 0x54, 0x57, + 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4c, + 0x4f, 0x43, 0x41, 0x4c, 0x50, 0x52, 0x4f, 0x42, 0x4c, 0x45, 0x4d, 0x5f, 0x4e, 0x45, 0x54, 0x57, + 0x4f, 0x52, 0x4b, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x4c, 0x12, 0x29, 0x0a, 0x25, 0x4e, + 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, + 0x54, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x50, 0x52, 0x4f, 0x42, 0x4c, 0x45, 0x4d, 0x5f, 0x4f, + 0x54, 0x48, 0x45, 0x52, 0x10, 0x4d, 0x12, 0x25, 0x0a, 0x21, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4d, - 0x4f, 0x54, 0x45, 0x5f, 0x42, 0x41, 0x44, 0x43, 0x52, 0x59, 0x50, 0x54, 0x10, 0x52, 0x12, 0x2c, - 0x0a, 0x28, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, - 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x43, 0x45, 0x52, 0x54, - 0x4e, 0x4f, 0x54, 0x54, 0x52, 0x55, 0x53, 0x54, 0x45, 0x44, 0x10, 0x53, 0x12, 0x1e, 0x0a, 0x1a, - 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x5f, 0x55, 0x4e, 0x55, 0x53, 0x55, 0x41, 0x4c, 0x10, 0x54, 0x12, 0x25, 0x0a, 0x21, + 0x4f, 0x54, 0x45, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x4f, 0x12, 0x30, 0x0a, + 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, + 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x4f, + 0x55, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x50, 0x12, + 0x23, 0x0a, 0x1f, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, + 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x4f, 0x54, 0x48, + 0x45, 0x52, 0x10, 0x51, 0x12, 0x26, 0x0a, 0x22, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, + 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, + 0x45, 0x5f, 0x42, 0x41, 0x44, 0x43, 0x52, 0x59, 0x50, 0x54, 0x10, 0x52, 0x12, 0x2c, 0x0a, 0x28, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x10, 0x55, 0x12, 0x2b, 0x0a, 0x26, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, - 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x42, 0x41, 0x44, 0x43, 0x48, 0x41, 0x4c, 0x4c, 0x45, 0x4e, 0x47, 0x45, 0x10, 0x80, 0x01, - 0x12, 0x26, 0x0a, 0x21, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, - 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4e, 0x4f, - 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, 0x81, 0x01, 0x12, 0x2d, 0x0a, 0x28, 0x4e, 0x45, 0x54, 0x57, - 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, - 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x47, 0x52, 0x4f, 0x55, 0x4e, 0x44, - 0x5f, 0x4d, 0x41, 0x50, 0x10, 0x82, 0x01, 0x12, 0x2c, 0x0a, 0x27, 0x4e, 0x45, 0x54, 0x57, 0x4f, - 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, - 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, - 0x45, 0x52, 0x10, 0x83, 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, + 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x43, 0x45, 0x52, 0x54, 0x4e, 0x4f, + 0x54, 0x54, 0x52, 0x55, 0x53, 0x54, 0x45, 0x44, 0x10, 0x53, 0x12, 0x1e, 0x0a, 0x1a, 0x4e, 0x45, + 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, + 0x5f, 0x55, 0x4e, 0x55, 0x53, 0x55, 0x41, 0x4c, 0x10, 0x54, 0x12, 0x25, 0x0a, 0x21, 0x4e, 0x45, + 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, + 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, + 0x55, 0x12, 0x2b, 0x0a, 0x26, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, + 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x42, + 0x41, 0x44, 0x43, 0x48, 0x41, 0x4c, 0x4c, 0x45, 0x4e, 0x47, 0x45, 0x10, 0x80, 0x01, 0x12, 0x26, + 0x0a, 0x21, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, + 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4e, 0x4f, 0x4c, 0x4f, + 0x42, 0x42, 0x59, 0x10, 0x81, 0x01, 0x12, 0x2d, 0x0a, 0x28, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, + 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x47, 0x52, 0x4f, 0x55, 0x4e, 0x44, 0x5f, 0x4d, + 0x41, 0x50, 0x10, 0x82, 0x01, 0x12, 0x2c, 0x0a, 0x27, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x48, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x84, - 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, - 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4c, - 0x41, 0x4e, 0x52, 0x45, 0x53, 0x54, 0x52, 0x49, 0x43, 0x54, 0x10, 0x85, 0x01, 0x12, 0x2a, 0x0a, - 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, - 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x42, 0x41, 0x44, 0x50, 0x41, - 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x86, 0x01, 0x12, 0x29, 0x0a, 0x24, 0x4e, 0x45, 0x54, - 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, - 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x46, 0x55, 0x4c, - 0x4c, 0x10, 0x87, 0x01, 0x12, 0x31, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, - 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, - 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x41, - 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x88, 0x01, 0x12, 0x2c, 0x0a, 0x27, 0x4e, 0x45, 0x54, 0x57, 0x4f, + 0x43, 0x54, 0x5f, 0x53, 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, + 0x10, 0x83, 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, + 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x48, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x84, 0x01, 0x12, + 0x2a, 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, + 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4c, 0x41, 0x4e, + 0x52, 0x45, 0x53, 0x54, 0x52, 0x49, 0x43, 0x54, 0x10, 0x85, 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, + 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, + 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x42, 0x41, 0x44, 0x50, 0x41, 0x53, 0x53, + 0x57, 0x4f, 0x52, 0x44, 0x10, 0x86, 0x01, 0x12, 0x29, 0x0a, 0x24, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, - 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x43, 0x48, 0x41, 0x4e, 0x4e, - 0x45, 0x4c, 0x10, 0x89, 0x01, 0x12, 0x31, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x46, 0x55, 0x4c, 0x4c, 0x10, + 0x87, 0x01, 0x12, 0x31, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, + 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x41, 0x54, 0x49, + 0x4f, 0x4e, 0x10, 0x88, 0x01, 0x12, 0x2c, 0x0a, 0x27, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x52, 0x4f, 0x4d, 0x5f, - 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, 0x8a, 0x01, 0x12, 0x31, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, - 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, - 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x45, 0x44, 0x5f, 0x46, - 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, 0x8b, 0x01, 0x12, 0x2f, 0x0a, 0x2a, 0x4e, - 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, - 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, - 0x4b, 0x45, 0x59, 0x4c, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x10, 0x8c, 0x01, 0x12, 0x2a, 0x0a, 0x25, - 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4f, 0x4c, 0x44, 0x50, 0x52, 0x4f, - 0x54, 0x4f, 0x43, 0x4f, 0x4c, 0x10, 0x8d, 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, - 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, - 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4e, 0x45, 0x57, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x43, 0x4f, - 0x4c, 0x10, 0x8e, 0x01, 0x12, 0x30, 0x0a, 0x2b, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, - 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, - 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, - 0x49, 0x4f, 0x4e, 0x10, 0x8f, 0x01, 0x12, 0x2d, 0x0a, 0x28, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, + 0x43, 0x54, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, + 0x10, 0x89, 0x01, 0x12, 0x31, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, + 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x4c, 0x4f, + 0x42, 0x42, 0x59, 0x10, 0x8a, 0x01, 0x12, 0x31, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, - 0x45, 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x43, 0x45, 0x52, 0x54, 0x4c, - 0x45, 0x4e, 0x10, 0x90, 0x01, 0x12, 0x32, 0x0a, 0x2d, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, - 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x43, - 0x45, 0x52, 0x54, 0x4c, 0x45, 0x4e, 0x10, 0x91, 0x01, 0x12, 0x24, 0x0a, 0x1f, 0x4e, 0x45, 0x54, + 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x45, 0x52, 0x56, 0x45, 0x44, 0x5f, 0x46, 0x4f, 0x52, + 0x5f, 0x4c, 0x4f, 0x42, 0x42, 0x59, 0x10, 0x8b, 0x01, 0x12, 0x2f, 0x0a, 0x2a, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, - 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x92, 0x01, 0x12, - 0x31, 0x0a, 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, - 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x52, - 0x56, 0x45, 0x52, 0x41, 0x55, 0x54, 0x48, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, - 0x93, 0x01, 0x12, 0x35, 0x0a, 0x30, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, + 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x4b, 0x45, + 0x59, 0x4c, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x10, 0x8c, 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, 0x45, + 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, + 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x4f, 0x4c, 0x44, 0x50, 0x52, 0x4f, 0x54, 0x4f, + 0x43, 0x4f, 0x4c, 0x10, 0x8d, 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, + 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x4e, 0x45, 0x57, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x43, 0x4f, 0x4c, 0x10, + 0x8e, 0x01, 0x12, 0x30, 0x0a, 0x2b, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, - 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x43, 0x44, 0x4b, 0x45, 0x59, 0x41, 0x55, 0x54, 0x48, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x94, 0x01, 0x12, 0x25, 0x0a, 0x20, 0x4e, 0x45, 0x54, + 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4f, + 0x4e, 0x10, 0x8f, 0x01, 0x12, 0x2d, 0x0a, 0x28, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, + 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, + 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x43, 0x45, 0x52, 0x54, 0x4c, 0x45, 0x4e, + 0x10, 0x90, 0x01, 0x12, 0x32, 0x0a, 0x2d, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, + 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x43, 0x45, 0x52, + 0x54, 0x4c, 0x45, 0x4e, 0x10, 0x91, 0x01, 0x12, 0x24, 0x0a, 0x1f, 0x4e, 0x45, 0x54, 0x57, 0x4f, + 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x10, 0x92, 0x01, 0x12, 0x31, 0x0a, + 0x2c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, + 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, + 0x52, 0x41, 0x55, 0x54, 0x48, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x93, 0x01, + 0x12, 0x35, 0x0a, 0x30, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, + 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x45, + 0x52, 0x56, 0x45, 0x52, 0x43, 0x44, 0x4b, 0x45, 0x59, 0x41, 0x55, 0x54, 0x48, 0x49, 0x4e, 0x56, + 0x41, 0x4c, 0x49, 0x44, 0x10, 0x94, 0x01, 0x12, 0x25, 0x0a, 0x20, 0x4e, 0x45, 0x54, 0x57, 0x4f, + 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x10, 0x95, 0x01, 0x12, 0x2a, + 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, + 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, + 0x4b, 0x49, 0x4c, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x96, 0x01, 0x12, 0x27, 0x0a, 0x22, 0x4e, 0x45, + 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, + 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x54, 0x4b, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, + 0x10, 0x97, 0x01, 0x12, 0x2f, 0x0a, 0x2a, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, + 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, + 0x5f, 0x55, 0x4e, 0x54, 0x52, 0x55, 0x53, 0x54, 0x45, 0x44, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, + 0x54, 0x10, 0x98, 0x01, 0x12, 0x2f, 0x0a, 0x2a, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, + 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, + 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x56, 0x49, 0x43, 0x54, 0x45, 0x44, 0x41, 0x43, 0x43, 0x4f, 0x55, + 0x4e, 0x54, 0x10, 0x99, 0x01, 0x12, 0x32, 0x0a, 0x2d, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, + 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, + 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x45, 0x54, 0x49, 0x54, 0x49, 0x56, 0x45, 0x43, 0x4f, + 0x4f, 0x4c, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x9a, 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, - 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x10, 0x95, 0x01, - 0x12, 0x2a, 0x0a, 0x25, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, - 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x54, 0x45, - 0x41, 0x4d, 0x4b, 0x49, 0x4c, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x96, 0x01, 0x12, 0x27, 0x0a, 0x22, - 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x54, 0x4b, 0x5f, 0x53, 0x54, 0x41, - 0x52, 0x54, 0x10, 0x97, 0x01, 0x12, 0x2f, 0x0a, 0x2a, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, + 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x48, 0x55, 0x52, 0x54, 0x49, + 0x4e, 0x47, 0x10, 0x9b, 0x01, 0x12, 0x2d, 0x0a, 0x28, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, - 0x45, 0x44, 0x5f, 0x55, 0x4e, 0x54, 0x52, 0x55, 0x53, 0x54, 0x45, 0x44, 0x41, 0x43, 0x43, 0x4f, - 0x55, 0x4e, 0x54, 0x10, 0x98, 0x01, 0x12, 0x2f, 0x0a, 0x2a, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, - 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, - 0x4b, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x56, 0x49, 0x43, 0x54, 0x45, 0x44, 0x41, 0x43, 0x43, - 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x99, 0x01, 0x12, 0x32, 0x0a, 0x2d, 0x4e, 0x45, 0x54, 0x57, 0x4f, - 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, - 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x45, 0x54, 0x49, 0x54, 0x49, 0x56, 0x45, - 0x43, 0x4f, 0x4f, 0x4c, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x9a, 0x01, 0x12, 0x2a, 0x0a, 0x25, 0x4e, - 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, - 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x54, 0x45, 0x41, 0x4d, 0x48, 0x55, 0x52, - 0x54, 0x49, 0x4e, 0x47, 0x10, 0x9b, 0x01, 0x12, 0x2d, 0x0a, 0x28, 0x4e, 0x45, 0x54, 0x57, 0x4f, - 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, - 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x41, 0x47, 0x45, 0x4b, 0x49, 0x4c, 0x4c, - 0x49, 0x4e, 0x47, 0x10, 0x9c, 0x01, 0x12, 0x27, 0x0a, 0x22, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, - 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, - 0x4b, 0x45, 0x44, 0x5f, 0x56, 0x4f, 0x54, 0x45, 0x44, 0x4f, 0x46, 0x46, 0x10, 0x9d, 0x01, 0x12, - 0x23, 0x0a, 0x1e, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, - 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x49, 0x44, 0x4c, - 0x45, 0x10, 0x9e, 0x01, 0x12, 0x26, 0x0a, 0x21, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, + 0x45, 0x44, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x41, 0x47, 0x45, 0x4b, 0x49, 0x4c, 0x4c, 0x49, 0x4e, + 0x47, 0x10, 0x9c, 0x01, 0x12, 0x27, 0x0a, 0x22, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, - 0x44, 0x5f, 0x53, 0x55, 0x49, 0x43, 0x49, 0x44, 0x45, 0x10, 0x9f, 0x01, 0x12, 0x2b, 0x0a, 0x26, - 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, - 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x4e, 0x4f, 0x53, 0x54, 0x45, 0x41, - 0x4d, 0x4c, 0x4f, 0x47, 0x49, 0x4e, 0x10, 0xa0, 0x01, 0x12, 0x2c, 0x0a, 0x27, 0x4e, 0x45, 0x54, - 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, - 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x4e, 0x4f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x54, 0x49, - 0x43, 0x4b, 0x45, 0x54, 0x10, 0xa1, 0x01, 0x3a, 0x5d, 0x0a, 0x18, 0x6e, 0x65, 0x74, 0x77, 0x6f, - 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, - 0x6b, 0x65, 0x6e, 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc4, 0x8a, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, - 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, - 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x44, 0x5f, 0x56, 0x4f, 0x54, 0x45, 0x44, 0x4f, 0x46, 0x46, 0x10, 0x9d, 0x01, 0x12, 0x23, 0x0a, + 0x1e, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, + 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x49, 0x44, 0x4c, 0x45, 0x10, + 0x9e, 0x01, 0x12, 0x26, 0x0a, 0x21, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, + 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, + 0x53, 0x55, 0x49, 0x43, 0x49, 0x44, 0x45, 0x10, 0x9f, 0x01, 0x12, 0x2b, 0x0a, 0x26, 0x4e, 0x45, + 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, + 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x4e, 0x4f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, + 0x4f, 0x47, 0x49, 0x4e, 0x10, 0xa0, 0x01, 0x12, 0x2c, 0x0a, 0x27, 0x4e, 0x45, 0x54, 0x57, 0x4f, + 0x52, 0x4b, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x5f, 0x4b, 0x49, + 0x43, 0x4b, 0x45, 0x44, 0x5f, 0x4e, 0x4f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x54, 0x49, 0x43, 0x4b, + 0x45, 0x54, 0x10, 0xa1, 0x01, 0x3a, 0x5d, 0x0a, 0x18, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc4, 0x8a, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x6e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, + 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/network_connection.proto b/dota/network_connection.proto index c8a72b0b..1b54531c 100644 --- a/dota/network_connection.proto +++ b/dota/network_connection.proto @@ -80,7 +80,6 @@ enum ENetworkDisconnectionReason { NETWORK_DISCONNECT_STEAM_DENY_MISC = 67; NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT = 68; NETWORK_DISCONNECT_SERVER_SHUTDOWN = 69; - NETWORK_DISCONNECT_SPLITPACKET_SEND_OVERFLOW = 70; NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE = 71; NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT = 72; NETWORK_DISCONNECT_SERVER_INCOMPATIBLE = 73; diff --git a/dota/networkbasetypes.pb.go b/dota/networkbasetypes.pb.go index 0d4202ef..19aa4967 100644 --- a/dota/networkbasetypes.pb.go +++ b/dota/networkbasetypes.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: networkbasetypes.proto @@ -978,6 +978,8 @@ type CNETMsg_Tick struct { HostLoss *uint32 `protobuf:"varint,7,opt,name=host_loss,json=hostLoss" json:"host_loss,omitempty"` HostUnfilteredFrametime *uint32 `protobuf:"varint,8,opt,name=host_unfiltered_frametime,json=hostUnfilteredFrametime" json:"host_unfiltered_frametime,omitempty"` HltvReplayFlags *uint32 `protobuf:"varint,9,opt,name=hltv_replay_flags,json=hltvReplayFlags" json:"hltv_replay_flags,omitempty"` + ExpectedLongTick *uint32 `protobuf:"varint,10,opt,name=expected_long_tick,json=expectedLongTick" json:"expected_long_tick,omitempty"` + ExpectedLongTickReason *string `protobuf:"bytes,11,opt,name=expected_long_tick_reason,json=expectedLongTickReason" json:"expected_long_tick_reason,omitempty"` } func (x *CNETMsg_Tick) Reset() { @@ -1075,12 +1077,27 @@ func (x *CNETMsg_Tick) GetHltvReplayFlags() uint32 { return 0 } +func (x *CNETMsg_Tick) GetExpectedLongTick() uint32 { + if x != nil && x.ExpectedLongTick != nil { + return *x.ExpectedLongTick + } + return 0 +} + +func (x *CNETMsg_Tick) GetExpectedLongTickReason() string { + if x != nil && x.ExpectedLongTickReason != nil { + return *x.ExpectedLongTickReason + } + return "" +} + type CNETMsg_StringCmd struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Command *string `protobuf:"bytes,1,opt,name=command" json:"command,omitempty"` + Command *string `protobuf:"bytes,1,opt,name=command" json:"command,omitempty"` + PredictionSync *uint32 `protobuf:"varint,2,opt,name=prediction_sync,json=predictionSync" json:"prediction_sync,omitempty"` } func (x *CNETMsg_StringCmd) Reset() { @@ -1122,6 +1139,13 @@ func (x *CNETMsg_StringCmd) GetCommand() string { return "" } +func (x *CNETMsg_StringCmd) GetPredictionSync() uint32 { + if x != nil && x.PredictionSync != nil { + return *x.PredictionSync + } + return 0 +} + type CNETMsg_SetConVar struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2372,7 +2396,7 @@ var file_networkbasetypes_proto_rawDesc = []byte{ 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, - 0x6f, 0x6e, 0x22, 0xda, 0x03, 0x0a, 0x0c, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x54, + 0x6f, 0x6e, 0x22, 0xc3, 0x04, 0x0a, 0x0c, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x12, 0x25, 0x0a, 0x0e, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, @@ -2401,272 +2425,282 @@ var file_networkbasetypes_proto_rawDesc = []byte{ 0x55, 0x6e, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x6c, 0x74, 0x76, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x68, 0x6c, 0x74, 0x76, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, - 0x2d, 0x0a, 0x11, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x43, 0x6d, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0x3f, - 0x0a, 0x11, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, - 0x56, 0x61, 0x72, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x5f, 0x43, 0x56, 0x61, 0x72, 0x73, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x73, 0x22, - 0xfe, 0x01, 0x0a, 0x13, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x69, 0x67, 0x6e, - 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x6f, - 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x5f, 0x74, 0x52, 0x0b, 0x73, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, - 0x1f, 0x0a, 0x0b, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6e, 0x75, - 0x6d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x2d, - 0x0a, 0x12, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x64, 0x73, 0x12, 0x19, 0x0a, - 0x08, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x64, 0x64, 0x6f, - 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x73, - 0x22, 0xe6, 0x02, 0x0a, 0x11, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, - 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x12, - 0x31, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, - 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x52, 0x04, 0x6b, 0x65, - 0x79, 0x73, 0x1a, 0xe4, 0x01, 0x0a, 0x05, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x12, 0x12, 0x0a, 0x04, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, - 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, - 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x5f, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x08, - 0x76, 0x61, 0x6c, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x76, 0x61, 0x6c, 0x4c, 0x6f, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x5f, 0x73, - 0x68, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x53, - 0x68, 0x6f, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x61, 0x6c, 0x5f, 0x62, 0x79, 0x74, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x12, - 0x19, 0x0a, 0x08, 0x76, 0x61, 0x6c, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x76, 0x61, 0x6c, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, - 0x6c, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, - 0x76, 0x61, 0x6c, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x22, 0xa4, 0x01, 0x0a, 0x16, 0x43, 0x53, + 0x68, 0x6c, 0x74, 0x76, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, + 0x2c, 0x0a, 0x12, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, + 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x65, 0x78, 0x70, + 0x65, 0x63, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x6e, 0x67, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x39, 0x0a, + 0x19, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x74, + 0x69, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x16, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x6e, 0x67, 0x54, 0x69, + 0x63, 0x6b, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x56, 0x0a, 0x11, 0x43, 0x4e, 0x45, 0x54, + 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6d, 0x64, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x79, 0x6e, 0x63, + 0x22, 0x3f, 0x0a, 0x11, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x43, + 0x6f, 0x6e, 0x56, 0x61, 0x72, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x5f, 0x43, 0x56, 0x61, 0x72, 0x73, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x76, 0x61, 0x72, + 0x73, 0x22, 0xfe, 0x01, 0x0a, 0x13, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x69, + 0x67, 0x6e, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x0c, 0x73, 0x69, 0x67, + 0x6e, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x13, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x5f, 0x74, 0x52, 0x0b, 0x73, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x6e, 0x75, 0x6d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, + 0x12, 0x2d, 0x0a, 0x12, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x5f, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x64, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x6d, 0x61, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x64, + 0x64, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x64, 0x64, 0x6f, + 0x6e, 0x73, 0x22, 0xe6, 0x02, 0x0a, 0x11, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, + 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, + 0x64, 0x12, 0x31, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, + 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x52, 0x04, + 0x6b, 0x65, 0x79, 0x73, 0x1a, 0xe4, 0x01, 0x0a, 0x05, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x5f, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x19, + 0x0a, 0x08, 0x76, 0x61, 0x6c, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x76, 0x61, 0x6c, 0x4c, 0x6f, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, + 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x76, 0x61, + 0x6c, 0x53, 0x68, 0x6f, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x61, 0x6c, 0x5f, 0x62, 0x79, + 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x61, 0x6c, 0x42, 0x79, 0x74, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x61, 0x6c, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x07, 0x76, 0x61, 0x6c, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, + 0x76, 0x61, 0x6c, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x09, 0x76, 0x61, 0x6c, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x22, 0xa4, 0x01, 0x0a, 0x16, + 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3c, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3c, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, - 0x4d, 0x73, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x73, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x73, 0x1a, 0x4c, 0x0a, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, 0x63, - 0x6b, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, - 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x22, 0x89, 0x07, 0x0a, 0x17, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, - 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4c, 0x6f, 0x61, 0x64, 0x12, 0x1c, 0x0a, 0x09, - 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x6c, 0x75, 0x6d, 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x6c, 0x75, 0x6d, 0x70, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x66, 0x69, 0x6c, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, - 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x70, - 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x68, 0x61, 0x6e, - 0x64, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x73, 0x70, 0x61, 0x77, 0x6e, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x12, 0x3a, 0x0a, 0x10, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, - 0x5f, 0x70, 0x6f, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0e, 0x77, 0x6f, - 0x72, 0x6c, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x12, 0x3e, 0x0a, 0x12, - 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x5f, 0x61, 0x6e, 0x67, - 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x10, 0x77, 0x6f, 0x72, 0x6c, - 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x2e, 0x0a, 0x12, - 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, - 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, - 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, - 0x67, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x2e, 0x0a, 0x12, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x6d, 0x61, - 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x12, 0x26, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x66, 0x69, 0x78, - 0x75, 0x70, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x6e, - 0x61, 0x6d, 0x65, 0x66, 0x69, 0x78, 0x75, 0x70, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x61, 0x72, 0x65, - 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x66, 0x69, 0x78, 0x75, 0x70, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x66, 0x69, 0x78, - 0x75, 0x70, 0x12, 0x32, 0x0a, 0x14, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x6c, 0x6f, - 0x61, 0x64, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x14, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x6c, 0x6f, 0x61, 0x64, 0x70, 0x72, - 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, - 0x72, 0x6c, 0x64, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, - 0x6d, 0x65, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x10, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x16, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x16, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x70, 0x61, - 0x72, 0x65, 0x6e, 0x74, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x6c, 0x65, - 0x76, 0x65, 0x6c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x13, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x77, 0x6f, - 0x72, 0x6c, 0x64, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xaf, 0x01, 0x0a, - 0x21, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x5f, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x70, - 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x2e, + 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x52, 0x06, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x4c, 0x0a, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, + 0x69, 0x63, 0x6b, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x4d, 0x73, + 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x22, 0x89, 0x07, 0x0a, 0x17, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, + 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4c, 0x6f, 0x61, 0x64, 0x12, 0x1c, + 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x6c, 0x75, 0x6d, 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x6c, 0x75, 0x6d, 0x70, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x66, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, + 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x70, 0x61, 0x77, + 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x34, 0x0a, 0x15, + 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x68, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x73, 0x70, 0x61, + 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x68, 0x61, 0x6e, 0x64, + 0x6c, 0x65, 0x12, 0x3a, 0x0a, 0x10, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x5f, 0x70, 0x6f, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0e, + 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x12, 0x3e, + 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x5f, 0x61, + 0x6e, 0x67, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x10, 0x77, 0x6f, + 0x72, 0x6c, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6d, 0x61, 0x6e, 0x69, - 0x66, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x73, 0x70, 0x61, 0x77, - 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x2e, - 0x0a, 0x12, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x6d, 0x61, 0x6e, 0x69, - 0x66, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x22, 0x9a, - 0x01, 0x0a, 0x22, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x2a, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, - 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x7b, 0x0a, 0x19, 0x43, - 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, - 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, - 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, - 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x20, 0x43, 0x4e, 0x45, 0x54, - 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4c, - 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x10, + 0x66, 0x65, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x73, 0x70, 0x61, 0x77, + 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x14, + 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, + 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x69, 0x6e, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, + 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x66, + 0x69, 0x78, 0x75, 0x70, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6c, 0x6f, 0x63, 0x61, + 0x6c, 0x6e, 0x61, 0x6d, 0x65, 0x66, 0x69, 0x78, 0x75, 0x70, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x66, 0x69, 0x78, 0x75, 0x70, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x66, + 0x69, 0x78, 0x75, 0x70, 0x12, 0x32, 0x0a, 0x14, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, + 0x6c, 0x6f, 0x61, 0x64, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x14, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x6c, 0x6f, 0x61, 0x64, + 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6c, + 0x64, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x61, 0x76, 0x65, + 0x67, 0x61, 0x6d, 0x65, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x10, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x66, 0x69, 0x6c, 0x65, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x16, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x12, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x0f, + 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, + 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xaf, + 0x01, 0x0a, 0x21, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0xce, 0x05, 0x0a, 0x20, 0x43, 0x53, 0x56, - 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, - 0x0e, 0x69, 0x73, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x61, 0x64, 0x73, - 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, - 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, - 0x11, 0x69, 0x73, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6d, - 0x61, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x42, 0x61, 0x63, 0x6b, - 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x4d, 0x61, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, - 0x68, 0x65, 0x61, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, - 0x69, 0x73, 0x48, 0x65, 0x61, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x69, - 0x6e, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, - 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x12, - 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x74, 0x69, 0x63, 0x6b, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x76, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x31, 0x5f, 0x6d, 0x61, 0x70, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x31, 0x4d, 0x61, 0x70, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x12, - 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, - 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x6f, 0x6e, 0x6c, 0x79, 0x18, - 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x6f, 0x6e, - 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x6f, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6e, 0x6f, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x73, - 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0c, 0x69, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x24, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x6c, 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, - 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, - 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x80, 0x02, 0x0a, 0x14, 0x43, 0x4e, - 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x65, 0x62, 0x75, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x6c, - 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x05, 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x76, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x76, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x52, 0x47, 0x42, 0x41, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x12, 0x1e, 0x0a, 0x0a, - 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x02, - 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x02, 0x52, 0x05, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, - 0x08, 0x52, 0x05, 0x62, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x69, 0x6e, 0x74, - 0x36, 0x34, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x75, 0x69, 0x6e, 0x74, 0x36, - 0x34, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x08, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x2a, 0xd4, 0x01, 0x0a, - 0x0d, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x12, 0x14, - 0x0a, 0x10, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x4f, - 0x4e, 0x45, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, - 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4c, 0x4c, 0x45, 0x4e, 0x47, 0x45, 0x10, 0x01, 0x12, - 0x19, 0x0a, 0x15, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, - 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x49, - 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x10, 0x03, 0x12, - 0x18, 0x0a, 0x14, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, - 0x52, 0x45, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x47, - 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x10, 0x05, + 0x12, 0x2e, 0x0a, 0x12, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6d, 0x61, + 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x73, 0x70, + 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, + 0x12, 0x2e, 0x0a, 0x12, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x6d, 0x61, + 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x22, 0x9a, 0x01, 0x0a, 0x22, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, + 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x63, 0x6b, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, + 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x7b, 0x0a, + 0x19, 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x70, + 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x74, 0x69, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x20, 0x43, 0x4e, + 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x5f, 0x4c, 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x2a, + 0x0a, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, + 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x70, 0x61, 0x77, 0x6e, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x22, 0xce, 0x05, 0x0a, 0x20, 0x43, + 0x53, 0x56, 0x43, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x25, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x4d, 0x75, 0x6c, 0x74, 0x69, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x61, + 0x64, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0e, 0x69, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x12, + 0x2a, 0x0a, 0x11, 0x69, 0x73, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, + 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x42, 0x61, + 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x4d, 0x61, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x69, + 0x73, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0a, 0x69, 0x73, 0x48, 0x65, 0x61, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x12, 0x28, 0x0a, 0x10, + 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, + 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, + 0x61, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x74, 0x69, 0x63, 0x6b, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x61, 0x76, 0x65, 0x67, 0x61, + 0x6d, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x31, 0x5f, 0x6d, 0x61, 0x70, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x31, 0x4d, 0x61, + 0x70, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, + 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x61, 0x6d, 0x65, 0x6d, 0x6f, 0x64, + 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x70, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x6f, 0x6e, 0x6c, + 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, + 0x6f, 0x6e, 0x6c, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x6f, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6e, + 0x6f, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, + 0x69, 0x73, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x65, 0x76, + 0x65, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, + 0x75, 0x73, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x6c, 0x61, 0x6e, 0x64, 0x6d, + 0x61, 0x72, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, + 0x61, 0x6e, 0x64, 0x6d, 0x61, 0x72, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x80, 0x02, 0x0a, 0x14, + 0x43, 0x4e, 0x45, 0x54, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x65, 0x62, 0x75, 0x67, 0x4f, 0x76, 0x65, + 0x72, 0x6c, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x76, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x76, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x52, 0x47, 0x42, 0x41, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x02, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x02, 0x52, 0x05, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x6f, 0x6c, 0x73, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x08, 0x52, 0x05, 0x62, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x69, + 0x6e, 0x74, 0x36, 0x34, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x75, 0x69, 0x6e, + 0x74, 0x36, 0x34, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x18, + 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x2a, 0xd4, + 0x01, 0x0a, 0x0d, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, - 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, - 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x4c, 0x45, 0x56, 0x45, - 0x4c, 0x10, 0x07, 0x2a, 0xc4, 0x02, 0x0a, 0x0c, 0x4e, 0x45, 0x54, 0x5f, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x5f, 0x4e, 0x4f, 0x50, 0x10, - 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x5f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x70, 0x6c, - 0x69, 0x74, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x10, 0x03, 0x12, 0x0c, - 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x5f, 0x54, 0x69, 0x63, 0x6b, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, - 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6d, 0x64, 0x10, 0x05, 0x12, - 0x11, 0x0a, 0x0d, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x56, 0x61, 0x72, - 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x6f, 0x6e, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x07, 0x12, 0x17, 0x0a, 0x13, 0x6e, 0x65, 0x74, 0x5f, 0x53, - 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4c, 0x6f, 0x61, 0x64, 0x10, 0x08, - 0x12, 0x21, 0x0a, 0x1d, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x5f, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x10, 0x09, 0x12, 0x22, 0x0a, 0x1e, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x63, 0x6b, 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, 0x6e, 0x65, 0x74, 0x5f, 0x53, - 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, 0x61, 0x64, - 0x10, 0x0c, 0x12, 0x20, 0x0a, 0x1c, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4c, 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x64, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x6e, 0x65, 0x74, 0x5f, 0x44, 0x65, 0x62, 0x75, - 0x67, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x10, 0x0f, 0x2a, 0xcc, 0x02, 0x0a, 0x11, 0x53, - 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x5f, 0x74, - 0x12, 0x27, 0x0a, 0x23, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, - 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x5f, 0x46, 0x52, - 0x4f, 0x4d, 0x5f, 0x53, 0x41, 0x56, 0x45, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x53, 0x50, 0x41, - 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x44, 0x4f, 0x4e, 0x54, 0x5f, 0x53, 0x50, - 0x41, 0x57, 0x4e, 0x5f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x10, 0x02, 0x12, 0x21, - 0x0a, 0x1d, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x59, - 0x4e, 0x43, 0x48, 0x52, 0x4f, 0x4e, 0x4f, 0x55, 0x53, 0x5f, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x10, - 0x04, 0x12, 0x26, 0x0a, 0x22, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, - 0x5f, 0x49, 0x53, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x4c, 0x5f, 0x53, 0x50, 0x41, 0x57, - 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x08, 0x12, 0x2b, 0x0a, 0x27, 0x53, 0x50, 0x41, - 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, - 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x5f, 0x45, 0x4e, 0x54, 0x49, - 0x54, 0x49, 0x45, 0x53, 0x10, 0x10, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, - 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x55, 0x4e, 0x54, 0x49, - 0x4c, 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x45, 0x44, 0x10, 0x40, 0x12, 0x24, 0x0a, 0x1f, 0x53, 0x50, - 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x53, - 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x10, 0x80, 0x01, - 0x12, 0x27, 0x0a, 0x22, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, - 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, - 0x5f, 0x57, 0x4f, 0x52, 0x4c, 0x44, 0x10, 0x80, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, - 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, - 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, + 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4c, 0x4c, 0x45, 0x4e, 0x47, 0x45, 0x10, + 0x01, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, + 0x5f, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, + 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x10, + 0x03, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, + 0x5f, 0x50, 0x52, 0x45, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x53, + 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x53, 0x50, 0x41, 0x57, 0x4e, + 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x49, 0x47, 0x4e, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, + 0x45, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x49, 0x47, 0x4e, + 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x4c, 0x45, + 0x56, 0x45, 0x4c, 0x10, 0x07, 0x2a, 0xc4, 0x02, 0x0a, 0x0c, 0x4e, 0x45, 0x54, 0x5f, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x5f, 0x4e, 0x4f, + 0x50, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x5f, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x6e, 0x65, 0x74, 0x5f, 0x53, + 0x70, 0x6c, 0x69, 0x74, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x10, 0x03, + 0x12, 0x0c, 0x0a, 0x08, 0x6e, 0x65, 0x74, 0x5f, 0x54, 0x69, 0x63, 0x6b, 0x10, 0x04, 0x12, 0x11, + 0x0a, 0x0d, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x43, 0x6d, 0x64, 0x10, + 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x56, + 0x61, 0x72, 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x69, 0x67, 0x6e, + 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x07, 0x12, 0x17, 0x0a, 0x13, 0x6e, 0x65, 0x74, + 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4c, 0x6f, 0x61, 0x64, + 0x10, 0x08, 0x12, 0x21, 0x0a, 0x1d, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x10, 0x09, 0x12, 0x22, 0x0a, 0x1e, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x70, 0x61, + 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x53, 0x65, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x63, 0x6b, 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, 0x6e, 0x65, 0x74, + 0x5f, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x55, 0x6e, 0x6c, 0x6f, + 0x61, 0x64, 0x10, 0x0c, 0x12, 0x20, 0x0a, 0x1c, 0x6e, 0x65, 0x74, 0x5f, 0x53, 0x70, 0x61, 0x77, + 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x4c, 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x65, 0x64, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x6e, 0x65, 0x74, 0x5f, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x10, 0x0f, 0x2a, 0xcc, 0x02, 0x0a, + 0x11, 0x53, 0x70, 0x61, 0x77, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x6c, 0x61, 0x67, 0x73, + 0x5f, 0x74, 0x12, 0x27, 0x0a, 0x23, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, + 0x50, 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x5f, + 0x46, 0x52, 0x4f, 0x4d, 0x5f, 0x53, 0x41, 0x56, 0x45, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x53, + 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x44, 0x4f, 0x4e, 0x54, 0x5f, + 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x10, 0x02, + 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, + 0x53, 0x59, 0x4e, 0x43, 0x48, 0x52, 0x4f, 0x4e, 0x4f, 0x55, 0x53, 0x5f, 0x53, 0x50, 0x41, 0x57, + 0x4e, 0x10, 0x04, 0x12, 0x26, 0x0a, 0x22, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, + 0x55, 0x50, 0x5f, 0x49, 0x53, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x4c, 0x5f, 0x53, 0x50, + 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x08, 0x12, 0x2b, 0x0a, 0x27, 0x53, + 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, + 0x45, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x5f, 0x45, 0x4e, + 0x54, 0x49, 0x54, 0x49, 0x45, 0x53, 0x10, 0x10, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x50, 0x41, 0x57, + 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x55, 0x4e, + 0x54, 0x49, 0x4c, 0x5f, 0x4c, 0x4f, 0x41, 0x44, 0x45, 0x44, 0x10, 0x40, 0x12, 0x24, 0x0a, 0x1f, + 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4c, 0x4f, 0x41, 0x44, + 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x10, + 0x80, 0x01, 0x12, 0x27, 0x0a, 0x22, 0x53, 0x50, 0x41, 0x57, 0x4e, 0x5f, 0x47, 0x52, 0x4f, 0x55, + 0x50, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x5f, 0x53, 0x43, 0x45, + 0x4e, 0x45, 0x5f, 0x57, 0x4f, 0x52, 0x4c, 0x44, 0x10, 0x80, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, + 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, + 0x74, 0x61, } var ( diff --git a/dota/networkbasetypes.proto b/dota/networkbasetypes.proto index 6ecba2ef..bcf5e293 100644 --- a/dota/networkbasetypes.proto +++ b/dota/networkbasetypes.proto @@ -124,10 +124,13 @@ message CNETMsg_Tick { optional uint32 host_loss = 7; optional uint32 host_unfiltered_frametime = 8; optional uint32 hltv_replay_flags = 9; + optional uint32 expected_long_tick = 10; + optional string expected_long_tick_reason = 11; } message CNETMsg_StringCmd { optional string command = 1; + optional uint32 prediction_sync = 2; } message CNETMsg_SetConVar { diff --git a/dota/networksystem_protomessages.pb.go b/dota/networksystem_protomessages.pb.go index 02ade303..90f443bf 100644 --- a/dota/networksystem_protomessages.pb.go +++ b/dota/networksystem_protomessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: networksystem_protomessages.proto diff --git a/dota/steamdatagram_messages_auth.pb.go b/dota/steamdatagram_messages_auth.pb.go index 370ea454..3d2b9a12 100644 --- a/dota/steamdatagram_messages_auth.pb.go +++ b/dota/steamdatagram_messages_auth.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steamdatagram_messages_auth.proto diff --git a/dota/steamdatagram_messages_sdr.pb.go b/dota/steamdatagram_messages_sdr.pb.go index a73d40e1..638d7d90 100644 --- a/dota/steamdatagram_messages_sdr.pb.go +++ b/dota/steamdatagram_messages_sdr.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steamdatagram_messages_sdr.proto @@ -350,21 +350,24 @@ const ( CMsgSteamDatagramConnectionStatsClientToRouter_ACK_REQUEST_E2E CMsgSteamDatagramConnectionStatsClientToRouter_Flags = 2 CMsgSteamDatagramConnectionStatsClientToRouter_ACK_REQUEST_IMMEDIATE CMsgSteamDatagramConnectionStatsClientToRouter_Flags = 4 CMsgSteamDatagramConnectionStatsClientToRouter_NOT_PRIMARY_SESSION CMsgSteamDatagramConnectionStatsClientToRouter_Flags = 8 + CMsgSteamDatagramConnectionStatsClientToRouter_CLIENT_RELAY_OVERRIDE CMsgSteamDatagramConnectionStatsClientToRouter_Flags = 32 ) // Enum value maps for CMsgSteamDatagramConnectionStatsClientToRouter_Flags. var ( CMsgSteamDatagramConnectionStatsClientToRouter_Flags_name = map[int32]string{ - 1: "ACK_REQUEST_RELAY", - 2: "ACK_REQUEST_E2E", - 4: "ACK_REQUEST_IMMEDIATE", - 8: "NOT_PRIMARY_SESSION", + 1: "ACK_REQUEST_RELAY", + 2: "ACK_REQUEST_E2E", + 4: "ACK_REQUEST_IMMEDIATE", + 8: "NOT_PRIMARY_SESSION", + 32: "CLIENT_RELAY_OVERRIDE", } CMsgSteamDatagramConnectionStatsClientToRouter_Flags_value = map[string]int32{ "ACK_REQUEST_RELAY": 1, "ACK_REQUEST_E2E": 2, "ACK_REQUEST_IMMEDIATE": 4, "NOT_PRIMARY_SESSION": 8, + "CLIENT_RELAY_OVERRIDE": 32, } ) @@ -590,6 +593,7 @@ const ( CMsgSteamDatagramConnectionStatsP2PClientToRouter_ACK_REQUEST_IMMEDIATE CMsgSteamDatagramConnectionStatsP2PClientToRouter_Flags = 4 CMsgSteamDatagramConnectionStatsP2PClientToRouter_NOT_PRIMARY_SESSION CMsgSteamDatagramConnectionStatsP2PClientToRouter_Flags = 8 CMsgSteamDatagramConnectionStatsP2PClientToRouter_NOT_PRIMARY_TRANSPORT_E2E CMsgSteamDatagramConnectionStatsP2PClientToRouter_Flags = 16 + CMsgSteamDatagramConnectionStatsP2PClientToRouter_CLIENT_RELAY_OVERRIDE CMsgSteamDatagramConnectionStatsP2PClientToRouter_Flags = 32 ) // Enum value maps for CMsgSteamDatagramConnectionStatsP2PClientToRouter_Flags. @@ -600,6 +604,7 @@ var ( 4: "ACK_REQUEST_IMMEDIATE", 8: "NOT_PRIMARY_SESSION", 16: "NOT_PRIMARY_TRANSPORT_E2E", + 32: "CLIENT_RELAY_OVERRIDE", } CMsgSteamDatagramConnectionStatsP2PClientToRouter_Flags_value = map[string]int32{ "ACK_REQUEST_RELAY": 1, @@ -607,6 +612,7 @@ var ( "ACK_REQUEST_IMMEDIATE": 4, "NOT_PRIMARY_SESSION": 8, "NOT_PRIMARY_TRANSPORT_E2E": 16, + "CLIENT_RELAY_OVERRIDE": 32, } ) @@ -855,6 +861,7 @@ type CMsgSteamDatagramRouterPingReply struct { Flags *uint32 `protobuf:"varint,12,opt,name=flags" json:"flags,omitempty"` RouteExceptions []*CMsgSteamDatagramRouterPingReply_RouteException `protobuf:"bytes,10,rep,name=route_exceptions,json=routeExceptions" json:"route_exceptions,omitempty"` AltAddresses []*CMsgSteamDatagramRouterPingReply_AltAddress `protobuf:"bytes,13,rep,name=alt_addresses,json=altAddresses" json:"alt_addresses,omitempty"` + DummyPad []byte `protobuf:"bytes,99,opt,name=dummy_pad,json=dummyPad" json:"dummy_pad,omitempty"` } func (x *CMsgSteamDatagramRouterPingReply) Reset() { @@ -994,6 +1001,13 @@ func (x *CMsgSteamDatagramRouterPingReply) GetAltAddresses() []*CMsgSteamDatagra return nil } +func (x *CMsgSteamDatagramRouterPingReply) GetDummyPad() []byte { + if x != nil { + return x.DummyPad + } + return nil +} + type CMsgSteamDatagramGameserverPingRequestBody struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1215,6 +1229,7 @@ type CMsgSteamDatagramGameserverPingReplyData struct { Build *string `protobuf:"bytes,9,opt,name=build" json:"build,omitempty"` NetworkConfigVersion *uint64 `protobuf:"varint,10,opt,name=network_config_version,json=networkConfigVersion" json:"network_config_version,omitempty"` MyUnixTime *uint32 `protobuf:"fixed32,11,opt,name=my_unix_time,json=myUnixTime" json:"my_unix_time,omitempty"` + RoutingBlob []byte `protobuf:"bytes,12,opt,name=routing_blob,json=routingBlob" json:"routing_blob,omitempty"` } func (x *CMsgSteamDatagramGameserverPingReplyData) Reset() { @@ -1319,6 +1334,13 @@ func (x *CMsgSteamDatagramGameserverPingReplyData) GetMyUnixTime() uint32 { return 0 } +func (x *CMsgSteamDatagramGameserverPingReplyData) GetRoutingBlob() []byte { + if x != nil { + return x.RoutingBlob + } + return nil +} + type CMsgSteamDatagramNoSessionRelayToClient struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1529,10 +1551,10 @@ type CMsgSteamDatagramClientPingSampleReply struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ConnectionId *uint32 `protobuf:"fixed32,1,opt,name=connection_id,json=connectionId" json:"connection_id,omitempty"` - OverrideActive *bool `protobuf:"varint,4,opt,name=override_active,json=overrideActive" json:"override_active,omitempty"` - Pops []*CMsgSteamDatagramClientPingSampleReply_POP `protobuf:"bytes,2,rep,name=pops" json:"pops,omitempty"` - LegacyDataCenters []*CMsgSteamDatagramClientPingSampleReply_LegacyDataCenter `protobuf:"bytes,3,rep,name=legacy_data_centers,json=legacyDataCenters" json:"legacy_data_centers,omitempty"` + ConnectionId *uint32 `protobuf:"fixed32,1,opt,name=connection_id,json=connectionId" json:"connection_id,omitempty"` + RelayOverrideActive *bool `protobuf:"varint,5,opt,name=relay_override_active,json=relayOverrideActive" json:"relay_override_active,omitempty"` + Pops []*CMsgSteamDatagramClientPingSampleReply_POP `protobuf:"bytes,2,rep,name=pops" json:"pops,omitempty"` + LegacyDataCenters []*CMsgSteamDatagramClientPingSampleReply_LegacyDataCenter `protobuf:"bytes,3,rep,name=legacy_data_centers,json=legacyDataCenters" json:"legacy_data_centers,omitempty"` } func (x *CMsgSteamDatagramClientPingSampleReply) Reset() { @@ -1574,9 +1596,9 @@ func (x *CMsgSteamDatagramClientPingSampleReply) GetConnectionId() uint32 { return 0 } -func (x *CMsgSteamDatagramClientPingSampleReply) GetOverrideActive() bool { - if x != nil && x.OverrideActive != nil { - return *x.OverrideActive +func (x *CMsgSteamDatagramClientPingSampleReply) GetRelayOverrideActive() bool { + if x != nil && x.RelayOverrideActive != nil { + return *x.RelayOverrideActive } return false } @@ -2171,6 +2193,7 @@ type CMsgSteamDatagramConnectionClosed struct { RoutingSecret *uint64 `protobuf:"fixed64,14,opt,name=routing_secret,json=routingSecret" json:"routing_secret,omitempty"` NotPrimarySession *bool `protobuf:"varint,16,opt,name=not_primary_session,json=notPrimarySession" json:"not_primary_session,omitempty"` NotPrimaryTransport *bool `protobuf:"varint,19,opt,name=not_primary_transport,json=notPrimaryTransport" json:"not_primary_transport,omitempty"` + RelayOverrideActive *bool `protobuf:"varint,22,opt,name=relay_override_active,json=relayOverrideActive" json:"relay_override_active,omitempty"` QualityRelay *CMsgSteamDatagramConnectionQuality `protobuf:"bytes,17,opt,name=quality_relay,json=qualityRelay" json:"quality_relay,omitempty"` QualityE2E *CMsgSteamDatagramConnectionQuality `protobuf:"bytes,18,opt,name=quality_e2e,json=qualityE2e" json:"quality_e2e,omitempty"` P2PRoutingSummary *CMsgSteamDatagramP2PRoutingSummary `protobuf:"bytes,21,opt,name=p2p_routing_summary,json=p2pRoutingSummary" json:"p2p_routing_summary,omitempty"` @@ -2320,6 +2343,13 @@ func (x *CMsgSteamDatagramConnectionClosed) GetNotPrimaryTransport() bool { return false } +func (x *CMsgSteamDatagramConnectionClosed) GetRelayOverrideActive() bool { + if x != nil && x.RelayOverrideActive != nil { + return *x.RelayOverrideActive + } + return false +} + func (x *CMsgSteamDatagramConnectionClosed) GetQualityRelay() *CMsgSteamDatagramConnectionQuality { if x != nil { return x.QualityRelay @@ -2356,6 +2386,7 @@ type CMsgSteamDatagramNoConnection struct { EndToEnd *bool `protobuf:"varint,4,opt,name=end_to_end,json=endToEnd" json:"end_to_end,omitempty"` NotPrimarySession *bool `protobuf:"varint,12,opt,name=not_primary_session,json=notPrimarySession" json:"not_primary_session,omitempty"` NotPrimaryTransport *bool `protobuf:"varint,15,opt,name=not_primary_transport,json=notPrimaryTransport" json:"not_primary_transport,omitempty"` + RelayOverrideActive *bool `protobuf:"varint,17,opt,name=relay_override_active,json=relayOverrideActive" json:"relay_override_active,omitempty"` QualityRelay *CMsgSteamDatagramConnectionQuality `protobuf:"bytes,13,opt,name=quality_relay,json=qualityRelay" json:"quality_relay,omitempty"` QualityE2E *CMsgSteamDatagramConnectionQuality `protobuf:"bytes,14,opt,name=quality_e2e,json=qualityE2e" json:"quality_e2e,omitempty"` P2PRoutingSummary *CMsgSteamDatagramP2PRoutingSummary `protobuf:"bytes,16,opt,name=p2p_routing_summary,json=p2pRoutingSummary" json:"p2p_routing_summary,omitempty"` @@ -2465,6 +2496,13 @@ func (x *CMsgSteamDatagramNoConnection) GetNotPrimaryTransport() bool { return false } +func (x *CMsgSteamDatagramNoConnection) GetRelayOverrideActive() bool { + if x != nil && x.RelayOverrideActive != nil { + return *x.RelayOverrideActive + } + return false +} + func (x *CMsgSteamDatagramNoConnection) GetQualityRelay() *CMsgSteamDatagramConnectionQuality { if x != nil { return x.QualityRelay @@ -4791,7 +4829,7 @@ var file_steamdatagram_messages_sdr_proto_rawDesc = []byte{ 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x5f, 0x70, 0x61, 0x64, 0x18, 0xff, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x50, 0x61, - 0x64, 0x22, 0xb5, 0x09, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, + 0x64, 0x22, 0xd2, 0x09, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, @@ -4840,111 +4878,115 @@ var file_steamdatagram_messages_sdr_proto_rawDesc = []byte{ 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x1a, 0x66, 0x0a, 0x0e, 0x52, 0x6f, 0x75, 0x74, - 0x65, 0x45, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x61, - 0x74, 0x61, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x07, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, - 0x1a, 0xe8, 0x01, 0x0a, 0x0a, 0x41, 0x6c, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x12, 0x0a, 0x04, 0x69, 0x70, 0x76, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x69, - 0x70, 0x76, 0x34, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, - 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, - 0x79, 0x12, 0x56, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x6f, 0x75, 0x74, - 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, - 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x30, 0x0a, 0x08, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x65, 0x78, 0x74, 0x10, 0x01, 0x22, 0x4c, 0x0a, 0x05, 0x46, - 0x6c, 0x61, 0x67, 0x73, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x4c, 0x41, 0x47, 0x5f, 0x4d, 0x41, 0x59, - 0x42, 0x45, 0x5f, 0x4d, 0x4f, 0x52, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x43, 0x45, 0x4e, - 0x54, 0x45, 0x52, 0x53, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x46, 0x4c, 0x41, 0x47, 0x5f, 0x4d, - 0x41, 0x59, 0x42, 0x45, 0x5f, 0x4d, 0x4f, 0x52, 0x45, 0x5f, 0x41, 0x4c, 0x54, 0x5f, 0x41, 0x44, - 0x44, 0x52, 0x45, 0x53, 0x53, 0x45, 0x53, 0x10, 0x02, 0x22, 0xdf, 0x02, 0x0a, 0x2a, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x47, - 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x61, - 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x72, - 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, 0x69, 0x64, 0x12, 0x48, 0x0a, 0x0e, 0x79, 0x6f, 0x75, - 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0c, 0x79, 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, - 0x63, 0x49, 0x70, 0x12, 0x28, 0x0a, 0x10, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6c, - 0x69, 0x63, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x79, - 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x26, 0x0a, - 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x55, 0x6e, 0x69, - 0x78, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, - 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, - 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x39, 0x0a, 0x06, - 0x6d, 0x79, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, - 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x52, 0x05, 0x6d, 0x79, 0x49, 0x70, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x22, 0xcd, 0x03, 0x0a, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, - 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x3c, - 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, - 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, 0x1f, 0x0a, 0x0b, - 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x0a, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x0a, - 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x6c, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x75, 0x6d, 0x6d, + 0x79, 0x5f, 0x70, 0x61, 0x64, 0x18, 0x63, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x64, 0x75, 0x6d, + 0x6d, 0x79, 0x50, 0x61, 0x64, 0x1a, 0x66, 0x0a, 0x0e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x45, 0x78, + 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, + 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, + 0x0c, 0x64, 0x61, 0x74, 0x61, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, + 0x61, 0x67, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x1a, 0xe8, 0x01, + 0x0a, 0x0a, 0x41, 0x6c, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, + 0x69, 0x70, 0x76, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x69, 0x70, 0x76, 0x34, + 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x70, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x56, + 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x50, + 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x41, 0x6c, 0x74, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x30, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6c, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x4e, 0x65, 0x78, 0x74, 0x10, 0x01, 0x22, 0x4c, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, + 0x73, 0x12, 0x20, 0x0a, 0x1c, 0x46, 0x4c, 0x41, 0x47, 0x5f, 0x4d, 0x41, 0x59, 0x42, 0x45, 0x5f, + 0x4d, 0x4f, 0x52, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x43, 0x45, 0x4e, 0x54, 0x45, 0x52, + 0x53, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x46, 0x4c, 0x41, 0x47, 0x5f, 0x4d, 0x41, 0x59, 0x42, + 0x45, 0x5f, 0x4d, 0x4f, 0x52, 0x45, 0x5f, 0x41, 0x4c, 0x54, 0x5f, 0x41, 0x44, 0x44, 0x52, 0x45, + 0x53, 0x53, 0x45, 0x53, 0x10, 0x02, 0x22, 0xdf, 0x02, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x70, + 0x6f, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x72, 0x65, 0x6c, 0x61, + 0x79, 0x50, 0x6f, 0x70, 0x69, 0x64, 0x12, 0x48, 0x0a, 0x0e, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x52, 0x0c, 0x79, 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x49, 0x70, + 0x12, 0x28, 0x0a, 0x10, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, + 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x79, 0x6f, 0x75, 0x72, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, + 0x6c, 0x61, 0x79, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x55, 0x6e, 0x69, 0x78, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, + 0x63, 0x72, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, + 0x69, 0x6e, 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x39, 0x0a, 0x06, 0x6d, 0x79, 0x5f, + 0x69, 0x70, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x50, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x05, 0x6d, + 0x79, 0x49, 0x70, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x22, 0xcd, 0x03, 0x0a, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x3c, 0x0a, 0x04, 0x63, + 0x65, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, + 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, + 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x69, 0x67, + 0x6e, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, + 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, + 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x6c, 0x65, 0x67, 0x61, + 0x63, 0x79, 0x5f, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x69, + 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x59, + 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x49, 0x70, 0x12, 0x35, 0x0a, 0x17, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, - 0x63, 0x5f, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x6c, 0x65, 0x67, 0x61, - 0x63, 0x79, 0x59, 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x49, 0x70, 0x12, 0x35, - 0x0a, 0x17, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, 0x75, - 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x14, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x59, 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, - 0x63, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, - 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x6c, - 0x61, 0x79, 0x55, 0x6e, 0x69, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x6c, 0x65, + 0x63, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x14, 0x6c, 0x65, + 0x67, 0x61, 0x63, 0x79, 0x59, 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x50, 0x6f, + 0x72, 0x74, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x72, 0x65, 0x6c, + 0x61, 0x79, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x07, 0x52, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x55, + 0x6e, 0x69, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x6c, 0x65, 0x67, 0x61, 0x63, + 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x06, 0x52, 0x0f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, + 0x67, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x72, 0x6f, 0x75, + 0x74, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x07, 0x52, 0x15, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, + 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x75, + 0x6d, 0x6d, 0x79, 0x5f, 0x70, 0x61, 0x64, 0x18, 0xff, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, + 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x50, 0x61, 0x64, 0x22, 0xca, 0x03, 0x0a, 0x28, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, + 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2f, 0x0a, 0x14, 0x65, 0x63, 0x68, 0x6f, 0x5f, 0x72, 0x65, + 0x6c, 0x61, 0x79, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x07, 0x52, 0x11, 0x65, 0x63, 0x68, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x55, 0x6e, + 0x69, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x12, 0x29, 0x0a, 0x10, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x15, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x52, 0x6f, - 0x75, 0x74, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1c, 0x0a, - 0x09, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x5f, 0x70, 0x61, 0x64, 0x18, 0xff, 0x07, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x08, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x50, 0x61, 0x64, 0x22, 0xa7, 0x03, 0x0a, 0x28, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, - 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, - 0x65, 0x70, 0x6c, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2f, 0x0a, 0x14, 0x65, 0x63, 0x68, 0x6f, - 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x11, 0x65, 0x63, 0x68, 0x6f, 0x52, 0x65, 0x6c, 0x61, - 0x79, 0x55, 0x6e, 0x69, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x63, 0x68, - 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x12, 0x29, 0x0a, - 0x10, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x36, 0x0a, 0x17, 0x6c, 0x65, 0x67, 0x61, - 0x63, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x15, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x43, 0x65, - 0x6e, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x29, 0x0a, 0x10, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x34, 0x0a, - 0x16, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x6e, - 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x6d, 0x79, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x6d, 0x79, 0x55, 0x6e, 0x69, - 0x78, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x93, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x75, 0x74, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x24, 0x0a, + 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x43, 0x65, 0x6e, 0x74, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x6e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x20, 0x0a, 0x0c, 0x6d, 0x79, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x6d, 0x79, 0x55, 0x6e, 0x69, 0x78, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x6c, + 0x6f, 0x62, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, + 0x67, 0x42, 0x6c, 0x6f, 0x62, 0x22, 0x93, 0x02, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4e, 0x6f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, @@ -4980,440 +5022,481 @@ var file_steamdatagram_messages_sdr_proto_rawDesc = []byte{ 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xa9, 0x0a, + 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xb4, 0x0a, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, - 0x0f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x44, 0x0a, 0x04, 0x70, 0x6f, 0x70, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x32, 0x0a, + 0x15, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, + 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, + 0x6c, 0x61, 0x79, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x12, 0x44, 0x0a, 0x04, 0x70, 0x6f, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, + 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x50, 0x4f, + 0x50, 0x52, 0x04, 0x70, 0x6f, 0x70, 0x73, 0x12, 0x6d, 0x0a, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, + 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x70, - 0x6c, 0x79, 0x2e, 0x50, 0x4f, 0x50, 0x52, 0x04, 0x70, 0x6f, 0x70, 0x73, 0x12, 0x6d, 0x0a, 0x13, - 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x65, 0x6e, 0x74, - 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, - 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x61, - 0x74, 0x61, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, - 0x44, 0x61, 0x74, 0x61, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x1a, 0xe2, 0x06, 0x0a, 0x03, - 0x50, 0x4f, 0x50, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x07, 0x52, 0x05, 0x70, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x64, 0x65, - 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, - 0x5f, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, - 0x6c, 0x74, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x27, 0x0a, - 0x0f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x50, - 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x60, 0x0a, 0x0d, 0x61, 0x6c, 0x74, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, - 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, - 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x50, 0x4f, 0x50, 0x2e, - 0x41, 0x6c, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x13, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x5f, 0x65, 0x32, 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x45, 0x32, - 0x65, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x65, 0x66, 0x61, 0x75, - 0x6c, 0x74, 0x5f, 0x65, 0x32, 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x45, 0x32, 0x65, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x12, 0x37, 0x0a, 0x19, 0x70, 0x32, 0x70, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x70, - 0x65, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x07, 0x52, 0x14, 0x70, 0x32, 0x70, 0x56, 0x69, 0x61, 0x50, 0x65, - 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, - 0x62, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x44, 0x63, 0x50, 0x69, 0x6e, - 0x67, 0x4d, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x65, 0x73, 0x74, - 0x44, 0x63, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x35, 0x0a, 0x18, 0x62, 0x65, 0x73, 0x74, 0x5f, - 0x64, 0x63, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x70, 0x6f, 0x70, - 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x62, 0x65, 0x73, 0x74, 0x44, - 0x63, 0x56, 0x69, 0x61, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x2b, - 0x0a, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x70, 0x69, 0x6e, - 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x44, 0x63, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x64, - 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x63, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x3b, 0x0a, 0x1b, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x6c, 0x79, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x61, 0x74, 0x61, 0x43, 0x65, 0x6e, + 0x74, 0x65, 0x72, 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x61, 0x74, 0x61, 0x43, + 0x65, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x1a, 0xe2, 0x06, 0x0a, 0x03, 0x50, 0x4f, 0x50, 0x12, 0x15, + 0x0a, 0x06, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x05, + 0x70, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x46, 0x72, 0x6f, + 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, + 0x79, 0x12, 0x60, 0x0a, 0x0d, 0x61, 0x6c, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, 0x6c, + 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x50, 0x4f, 0x50, 0x2e, 0x41, 0x6c, 0x74, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x13, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x65, + 0x32, 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x10, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x45, 0x32, 0x65, 0x50, 0x69, 0x6e, 0x67, + 0x4d, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x65, 0x32, + 0x65, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x45, 0x32, 0x65, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x37, + 0x0a, 0x19, 0x70, 0x32, 0x70, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x72, + 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x07, 0x52, 0x14, 0x70, 0x32, 0x70, 0x56, 0x69, 0x61, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x6c, + 0x61, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, + 0x64, 0x63, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x44, 0x63, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x22, + 0x0a, 0x0d, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x65, 0x73, 0x74, 0x44, 0x63, 0x53, 0x63, 0x6f, + 0x72, 0x65, 0x12, 0x35, 0x0a, 0x18, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x76, 0x69, + 0x61, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x62, 0x65, 0x73, 0x74, 0x44, 0x63, 0x56, 0x69, 0x61, 0x52, + 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x12, 0x64, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x63, + 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x63, 0x53, 0x63, 0x6f, 0x72, 0x65, + 0x12, 0x3b, 0x0a, 0x1b, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x76, + 0x69, 0x61, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x07, 0x52, 0x16, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x63, + 0x56, 0x69, 0x61, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x25, 0x0a, + 0x0f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x65, 0x73, 0x74, 0x44, 0x63, 0x50, 0x69, + 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, + 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x65, 0x73, + 0x74, 0x44, 0x63, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x35, 0x0a, 0x18, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x70, 0x6f, - 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x07, 0x52, 0x16, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x44, 0x63, 0x56, 0x69, 0x61, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, - 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x70, 0x69, - 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x65, 0x73, - 0x74, 0x44, 0x63, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x65, 0x73, - 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0b, 0x74, 0x65, 0x73, 0x74, 0x44, 0x63, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x35, 0x0a, - 0x18, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x72, 0x65, 0x6c, - 0x61, 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x13, 0x74, 0x65, 0x73, 0x74, 0x44, 0x63, 0x56, 0x69, 0x61, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, - 0x6f, 0x70, 0x49, 0x64, 0x1a, 0x5a, 0x0a, 0x0a, 0x41, 0x6c, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, - 0x5f, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, 0x72, 0x6f, 0x6e, 0x74, - 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, - 0x1a, 0x96, 0x01, 0x0a, 0x10, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x61, 0x74, 0x61, 0x43, - 0x65, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x65, - 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x64, - 0x61, 0x74, 0x61, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x18, 0x62, - 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, - 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x62, - 0x65, 0x73, 0x74, 0x44, 0x63, 0x56, 0x69, 0x61, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, - 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x70, 0x69, - 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x65, 0x73, - 0x74, 0x44, 0x63, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x22, 0x83, 0x07, 0x0a, 0x26, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, 0x69, - 0x6d, 0x61, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x66, 0x72, 0x6f, - 0x6d, 0x5f, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x66, 0x72, 0x6f, 0x6d, - 0x49, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x72, 0x74, 0x12, - 0x2e, 0x0a, 0x13, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x11, 0x66, 0x72, - 0x6f, 0x6d, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, - 0x28, 0x0a, 0x10, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x72, 0x6f, 0x6d, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x66, 0x72, 0x6f, - 0x6d, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, - 0x5f, 0x72, 0x65, 0x63, 0x76, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x66, 0x72, 0x6f, - 0x6d, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, - 0x63, 0x76, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x70, - 0x65, 0x64, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x11, 0x66, 0x72, 0x6f, 0x6d, 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, - 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x67, 0x61, 0x70, 0x5f, 0x6d, 0x73, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x05, 0x67, 0x61, 0x70, 0x4d, 0x73, 0x12, 0x64, 0x0a, 0x10, 0x66, 0x72, 0x6f, - 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x6f, 0x77, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, - 0x79, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, - 0x0e, 0x66, 0x72, 0x6f, 0x6d, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x77, 0x12, - 0x60, 0x0a, 0x0e, 0x74, 0x6f, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x6f, - 0x77, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, - 0x69, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x52, 0x0c, 0x74, 0x6f, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x6f, - 0x77, 0x12, 0x66, 0x0a, 0x11, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, - 0x79, 0x5f, 0x74, 0x68, 0x65, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, - 0x68, 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, - 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0f, 0x66, 0x72, 0x6f, 0x6d, 0x51, 0x75, - 0x61, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x68, 0x65, 0x6e, 0x12, 0x62, 0x0a, 0x0f, 0x74, 0x6f, 0x5f, - 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x68, 0x65, 0x6e, 0x18, 0x0c, 0x20, 0x01, + 0x70, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x74, 0x65, 0x73, 0x74, + 0x44, 0x63, 0x56, 0x69, 0x61, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x1a, + 0x5a, 0x0a, 0x0a, 0x41, 0x6c, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x22, 0x0a, + 0x0d, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x4d, + 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x1a, 0x96, 0x01, 0x0a, 0x10, + 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x61, 0x74, 0x61, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, + 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x43, 0x65, + 0x6e, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x18, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x64, + 0x63, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x13, 0x62, 0x65, 0x73, 0x74, 0x44, 0x63, + 0x56, 0x69, 0x61, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x25, 0x0a, + 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x63, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x44, 0x63, 0x50, 0x69, + 0x6e, 0x67, 0x4d, 0x73, 0x22, 0x83, 0x07, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, + 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x70, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x70, 0x12, 0x1b, 0x0a, + 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x66, 0x72, 0x6f, 0x6d, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x72, + 0x6f, 0x6d, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x11, 0x66, 0x72, 0x6f, 0x6d, 0x52, 0x6f, 0x75, + 0x74, 0x65, 0x72, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x72, + 0x6f, 0x6d, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x66, 0x72, 0x6f, 0x6d, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x76, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x66, 0x72, 0x6f, 0x6d, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x63, 0x76, 0x12, 0x2e, 0x0a, + 0x13, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x72, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x72, 0x6f, 0x6d, + 0x44, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x15, 0x0a, + 0x06, 0x67, 0x61, 0x70, 0x5f, 0x6d, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x67, + 0x61, 0x70, 0x4d, 0x73, 0x12, 0x64, 0x0a, 0x10, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x71, 0x75, 0x61, + 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x6f, 0x77, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x77, 0x69, + 0x74, 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x75, + 0x74, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0e, 0x66, 0x72, 0x6f, 0x6d, + 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x77, 0x12, 0x60, 0x0a, 0x0e, 0x74, 0x6f, + 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x6f, 0x77, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, - 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0d, - 0x74, 0x6f, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x68, 0x65, 0x6e, 0x1a, 0x8f, 0x01, - 0x0a, 0x0d, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, - 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x70, - 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x66, 0x72, 0x6f, 0x6e, 0x74, - 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x70, 0x69, 0x6e, - 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x50, 0x69, 0x6e, - 0x67, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, 0x6e, 0x74, - 0x69, 0x6c, 0x5f, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x44, 0x6f, 0x77, 0x6e, 0x22, - 0xca, 0x03, 0x0a, 0x1f, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x79, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, - 0x6d, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1e, 0x0a, 0x0b, 0x70, - 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x09, 0x70, 0x69, 0x6e, 0x67, 0x45, 0x73, 0x74, 0x4d, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x76, - 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0b, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x3d, - 0x0a, 0x1b, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, - 0x61, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x18, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x43, 0x0a, - 0x05, 0x63, 0x72, 0x79, 0x70, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x79, 0x70, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x05, 0x63, 0x72, 0x79, - 0x70, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, - 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, - 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x91, 0x03, 0x0a, - 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4f, 0x4b, 0x12, 0x30, 0x0a, 0x14, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, - 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, - 0x25, 0x0a, 0x0e, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x79, 0x6f, 0x75, 0x72, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x63, 0x12, 0x3d, - 0x0a, 0x1b, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, - 0x61, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x18, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x43, 0x0a, - 0x05, 0x63, 0x72, 0x79, 0x70, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x79, 0x70, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x05, 0x63, 0x72, 0x79, - 0x70, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, - 0x22, 0xa0, 0x05, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x53, 0x44, 0x52, 0x52, 0x6f, - 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x21, 0x0a, 0x0c, - 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x12, - 0x37, 0x0a, 0x18, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, - 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x15, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x46, 0x72, - 0x6f, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x39, 0x0a, 0x19, 0x69, 0x6e, 0x69, 0x74, - 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x72, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x69, 0x6e, 0x69, - 0x74, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, - 0x69, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x6e, 0x69, 0x74, - 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x07, 0x52, 0x0f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x6f, 0x70, 0x4c, - 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, - 0x70, 0x6f, 0x70, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x07, - 0x52, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x6f, 0x70, 0x52, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x65, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x12, - 0x31, 0x0a, 0x15, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x72, 0x6f, - 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, - 0x62, 0x65, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x4c, 0x6f, 0x63, - 0x61, 0x6c, 0x12, 0x33, 0x0a, 0x16, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, - 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x13, 0x62, 0x65, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x6f, 0x6e, - 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x5f, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62, 0x65, 0x73, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x70, - 0x6f, 0x70, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, - 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x26, 0x0a, 0x0f, - 0x62, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, - 0x10, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0d, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x65, 0x73, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6e, 0x65, 0x67, 0x6f, 0x74, - 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x73, 0x22, 0xa3, 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, - 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x3c, 0x0a, 0x03, 0x69, 0x63, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, - 0x6e, 0x67, 0x49, 0x43, 0x45, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, - 0x61, 0x72, 0x79, 0x52, 0x03, 0x69, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x03, 0x73, 0x64, 0x72, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, - 0x50, 0x32, 0x50, 0x53, 0x44, 0x52, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, - 0x6d, 0x61, 0x72, 0x79, 0x52, 0x03, 0x73, 0x64, 0x72, 0x22, 0xbf, 0x09, 0x0a, 0x21, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x12, - 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x74, 0x6f, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x72, 0x6f, - 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x72, 0x6f, 0x6d, 0x5f, - 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, - 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x6c, 0x0a, 0x1b, 0x6c, 0x65, 0x67, - 0x61, 0x63, 0x79, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, - 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x52, 0x18, 0x6c, - 0x65, 0x67, 0x61, 0x63, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x46, 0x72, 0x6f, - 0x6d, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x4a, 0x0a, 0x22, 0x6c, 0x65, 0x67, 0x61, - 0x63, 0x79, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, - 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x13, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, - 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x07, 0x52, 0x10, 0x74, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x6c, 0x61, - 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x07, 0x52, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x4a, 0x0a, 0x22, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, - 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x72, - 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x1e, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x15, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x54, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x51, 0x0a, 0x0a, 0x72, 0x65, - 0x6c, 0x61, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, - 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x2e, 0x45, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x4d, 0x6f, - 0x64, 0x65, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, - 0x62, 0x75, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, - 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, - 0x43, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, - 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, 0x6f, - 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x6e, - 0x6f, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x6e, 0x6f, 0x74, 0x50, 0x72, 0x69, - 0x6d, 0x61, 0x72, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x6e, - 0x6f, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x70, 0x6f, 0x72, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x6e, 0x6f, 0x74, 0x50, - 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, - 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x52, 0x0c, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, - 0x0a, 0x0b, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, - 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x58, 0x0a, 0x13, 0x70, 0x32, 0x70, - 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, - 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, - 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, - 0x52, 0x11, 0x70, 0x32, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, - 0x61, 0x72, 0x79, 0x22, 0x36, 0x0a, 0x0a, 0x45, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x64, - 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x45, - 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x6e, 0x64, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, - 0x73, 0x65, 0x64, 0x42, 0x79, 0x50, 0x65, 0x65, 0x72, 0x10, 0x02, 0x22, 0xc3, 0x06, 0x0a, 0x1d, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, - 0x6d, 0x4e, 0x6f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, - 0x10, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, - 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x74, 0x6f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x5f, - 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x07, 0x52, 0x10, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x4a, 0x0a, 0x22, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, - 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, - 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x1e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x12, 0x2d, 0x0a, 0x13, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, - 0x74, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x12, 0x31, 0x0a, 0x15, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, - 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, - 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x54, - 0x6f, 0x45, 0x6e, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x6f, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6d, - 0x61, 0x72, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x11, 0x6e, 0x6f, 0x74, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x6e, 0x6f, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6d, - 0x61, 0x72, 0x79, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x13, 0x6e, 0x6f, 0x74, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, + 0x74, 0x6f, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x77, 0x12, 0x66, 0x0a, 0x11, + 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x68, 0x65, + 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, + 0x69, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, + 0x69, 0x74, 0x79, 0x52, 0x0f, 0x66, 0x72, 0x6f, 0x6d, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x54, 0x68, 0x65, 0x6e, 0x12, 0x62, 0x0a, 0x0f, 0x74, 0x6f, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, + 0x74, 0x79, 0x5f, 0x74, 0x68, 0x65, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, + 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x77, 0x69, 0x74, + 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x52, 0x6f, 0x75, 0x74, + 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0d, 0x74, 0x6f, 0x51, 0x75, 0x61, + 0x6c, 0x69, 0x74, 0x79, 0x54, 0x68, 0x65, 0x6e, 0x1a, 0x8f, 0x01, 0x0a, 0x0d, 0x52, 0x6f, 0x75, + 0x74, 0x65, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x12, + 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x2c, 0x0a, 0x12, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x64, 0x6f, + 0x77, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0xca, 0x03, 0x0a, 0x1f, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, + 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0b, 0x6d, 0x79, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1e, 0x0a, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x65, + 0x73, 0x74, 0x5f, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x69, 0x6e, + 0x67, 0x45, 0x73, 0x74, 0x4d, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, + 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x76, 0x69, + 0x72, 0x74, 0x75, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x3d, 0x0a, 0x1b, 0x67, 0x61, 0x6d, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, + 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x05, 0x63, 0x72, 0x79, 0x70, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x05, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x3c, 0x0a, + 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x53, + 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, + 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x63, 0x72, + 0x65, 0x74, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x91, 0x03, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x4f, 0x4b, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x79, 0x6f, + 0x75, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x0d, 0x79, 0x6f, 0x75, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, + 0x75, 0x73, 0x65, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x61, + 0x79, 0x54, 0x69, 0x6d, 0x65, 0x55, 0x73, 0x65, 0x63, 0x12, 0x3d, 0x0a, 0x1b, 0x67, 0x61, 0x6d, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, + 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x05, 0x63, 0x72, 0x79, 0x70, + 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x05, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x3c, 0x0a, + 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x53, + 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, 0x22, 0xa0, 0x05, 0x0a, 0x27, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x53, 0x44, 0x52, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, + 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, + 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, + 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x37, 0x0a, 0x18, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, + 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x4c, 0x6f, + 0x63, 0x61, 0x6c, 0x12, 0x39, 0x0a, 0x19, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, + 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, + 0x69, 0x6e, 0x67, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x23, + 0x0a, 0x0d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, + 0x6f, 0x70, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0f, + 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x6f, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, + 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x72, + 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x69, 0x6e, 0x69, + 0x74, 0x69, 0x61, 0x6c, 0x50, 0x6f, 0x70, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x62, 0x65, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x65, + 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x6c, 0x6f, + 0x63, 0x61, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, + 0x69, 0x6e, 0x67, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x33, 0x0a, + 0x16, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x72, 0x6f, 0x6e, 0x74, + 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x62, + 0x65, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62, 0x65, 0x73, 0x74, 0x53, 0x63, 0x6f, 0x72, + 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x6c, 0x6f, + 0x63, 0x61, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, + 0x6f, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, + 0x70, 0x6f, 0x70, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x07, + 0x52, 0x0d, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x70, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x62, 0x65, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, + 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x4d, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, + 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0xa3, + 0x01, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, + 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x3c, 0x0a, 0x03, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x43, 0x45, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x03, + 0x69, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x03, 0x73, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x53, 0x44, + 0x52, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, + 0x03, 0x73, 0x64, 0x72, 0x22, 0xf3, 0x09, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, + 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x74, 0x6f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, + 0x52, 0x10, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x12, 0x6c, 0x0a, 0x1b, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x66, + 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x62, 0x69, 0x6e, + 0x61, 0x72, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x67, 0x61, + 0x63, 0x79, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x52, 0x18, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, + 0x46, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x69, 0x6e, 0x61, + 0x72, 0x79, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x66, 0x72, 0x6f, + 0x6d, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x4a, 0x0a, 0x22, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x1e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x2d, 0x0a, 0x13, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x74, 0x6f, + 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x31, + 0x0a, 0x15, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x66, + 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x4a, 0x0a, 0x22, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, + 0x67, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1e, 0x66, + 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, + 0x79, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x36, 0x0a, + 0x17, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, + 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, + 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x76, + 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x51, 0x0a, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x6d, + 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, + 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, + 0x65, 0x64, 0x2e, 0x45, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x72, + 0x65, 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x62, 0x75, + 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x12, 0x1f, + 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x12, + 0x25, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, + 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x6f, 0x74, 0x5f, 0x70, 0x72, + 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x11, 0x6e, 0x6f, 0x74, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x6e, 0x6f, 0x74, 0x5f, 0x70, 0x72, + 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, + 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x6e, 0x6f, 0x74, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, + 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, + 0x6c, 0x61, 0x79, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, 0x6c, 0x61, 0x79, + 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x4d, + 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, + 0x0c, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, 0x0a, + 0x0b, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x12, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x58, 0x0a, 0x13, 0x70, 0x32, 0x70, 0x5f, + 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, + 0x50, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, + 0x11, 0x70, 0x32, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, + 0x72, 0x79, 0x22, 0x36, 0x0a, 0x0a, 0x45, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65, + 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x6e, + 0x64, 0x54, 0x6f, 0x45, 0x6e, 0x64, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x73, + 0x65, 0x64, 0x42, 0x79, 0x50, 0x65, 0x65, 0x72, 0x10, 0x02, 0x22, 0xf7, 0x06, 0x0a, 0x1d, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x4e, 0x6f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, + 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x74, 0x6f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x07, 0x52, 0x10, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x4a, 0x0a, 0x22, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x67, + 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, + 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x1e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x2d, 0x0a, 0x13, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x74, + 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x31, 0x0a, 0x15, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, + 0x66, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x66, + 0x72, 0x6f, 0x6d, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x5f, + 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x6f, + 0x45, 0x6e, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x6f, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, + 0x72, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x11, 0x6e, 0x6f, 0x74, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x53, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x6e, 0x6f, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, + 0x72, 0x79, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x13, 0x6e, 0x6f, 0x74, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x6c, 0x61, 0x79, + 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x4f, 0x76, 0x65, + 0x72, 0x72, 0x69, 0x64, 0x65, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x4d, 0x0a, 0x0d, 0x71, + 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, 0x0a, 0x0b, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, 0x0a, 0x0b, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, - 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, - 0x32, 0x65, 0x12, 0x58, 0x0a, 0x13, 0x70, 0x32, 0x70, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, - 0x67, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, 0x61, 0x6c, 0x69, + 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x58, 0x0a, 0x13, 0x70, 0x32, 0x70, 0x5f, 0x72, 0x6f, 0x75, + 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, 0x6f, + 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x11, 0x70, 0x32, + 0x70, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, + 0x25, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, + 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x5f, + 0x70, 0x61, 0x64, 0x18, 0xff, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x08, 0x64, 0x75, 0x6d, 0x6d, + 0x79, 0x50, 0x61, 0x64, 0x22, 0x89, 0x04, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x07, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, + 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, + 0x12, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x14, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x12, 0x14, 0x0a, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x64, 0x65, 0x76, 0x5f, 0x67, 0x61, + 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x18, 0x64, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x64, 0x65, 0x76, 0x47, 0x61, 0x6d, 0x65, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x50, + 0x0a, 0x0f, 0x64, 0x65, 0x76, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, + 0x74, 0x18, 0x65, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, + 0x64, 0x52, 0x0d, 0x64, 0x65, 0x76, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x65, 0x72, 0x74, + 0x22, 0xe5, 0x02, 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, + 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x1a, 0x67, 0x61, 0x6d, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x67, 0x61, 0x6d, + 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, + 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x55, 0x6e, + 0x74, 0x69, 0x6c, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x1e, 0x0a, 0x0b, 0x73, + 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x32, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x63, 0x12, 0x3f, 0x0a, 0x1c, 0x64, + 0x75, 0x6d, 0x6d, 0x79, 0x5f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x19, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x3a, 0x0a, 0x19, + 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, + 0x17, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x22, 0x9a, 0x04, 0x0a, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0d, 0x71, + 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, 0x0a, 0x0b, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, 0x69, - 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x11, 0x70, 0x32, 0x70, 0x52, 0x6f, - 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x25, 0x0a, 0x0e, - 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x5f, 0x70, 0x61, 0x64, - 0x18, 0xff, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x08, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x50, 0x61, - 0x64, 0x22, 0x89, 0x04, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, - 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x16, 0x0a, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x30, 0x0a, 0x14, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, - 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x12, 0x34, 0x0a, 0x16, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x14, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, - 0x6f, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x14, 0x0a, - 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x75, - 0x69, 0x6c, 0x64, 0x12, 0x36, 0x0a, 0x17, 0x64, 0x65, 0x76, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x64, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x64, 0x65, 0x76, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x50, 0x0a, 0x0f, 0x64, - 0x65, 0x76, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x65, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, - 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x0d, - 0x64, 0x65, 0x76, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x65, 0x72, 0x74, 0x22, 0xe5, 0x02, - 0x0a, 0x2d, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, - 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x1a, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, 0x6e, - 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, - 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, - 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x32, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, - 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x63, 0x12, 0x3f, 0x0a, 0x1c, 0x64, 0x75, 0x6d, 0x6d, - 0x79, 0x5f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x19, - 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x3a, 0x0a, 0x19, 0x6c, 0x65, 0x67, - 0x61, 0x63, 0x79, 0x5f, 0x67, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, - 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x17, 0x6c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x69, 0x64, 0x22, 0xfe, 0x03, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, 0x61, 0x6c, 0x69, + 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, + 0x61, 0x79, 0x18, 0x04, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, + 0x61, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, + 0x5f, 0x65, 0x32, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, + 0x63, 0x79, 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x30, + 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x32, 0x72, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x43, 0x32, 0x72, + 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, + 0x22, 0x82, 0x01, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, + 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, + 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, + 0x5f, 0x45, 0x32, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, + 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, + 0x04, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, + 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x08, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4c, + 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x52, + 0x49, 0x44, 0x45, 0x10, 0x20, 0x22, 0xbe, 0x05, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, + 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, @@ -5423,29 +5506,41 @@ var file_steamdatagram_messages_sdr_proto_rawDesc = []byte{ 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, - 0x32, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, - 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x32, - 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, - 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, - 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x32, 0x72, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x43, 0x32, 0x72, 0x12, 0x1e, 0x0a, - 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, 0x22, 0x67, 0x0a, - 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, - 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, 0x12, 0x13, 0x0a, - 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x45, 0x32, 0x45, - 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, - 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x17, 0x0a, - 0x13, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x5f, 0x53, 0x45, 0x53, - 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x08, 0x22, 0xbe, 0x05, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x32, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, 0x6e, + 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, + 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x69, 0x67, 0x72, + 0x61, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x70, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x49, 0x70, 0x12, 0x30, 0x0a, 0x14, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, + 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x41, 0x0a, 0x1d, 0x73, 0x63, 0x6f, 0x72, + 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, + 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x1a, 0x73, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x52, + 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x61, + 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, + 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, + 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x07, + 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, + 0x6c, 0x61, 0x67, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, + 0x6d, 0x5f, 0x72, 0x32, 0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, + 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x63, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, + 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, + 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, 0x22, 0x4e, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, + 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, + 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, + 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x45, 0x32, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, + 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, + 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, 0x22, 0xd3, 0x05, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, - 0x72, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, + 0x72, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, @@ -5455,190 +5550,42 @@ var file_steamdatagram_messages_sdr_proto_rawDesc = []byte{ 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x45, 0x32, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, - 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x55, 0x6e, 0x74, 0x69, - 0x6c, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x69, 0x67, - 0x72, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x70, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x70, 0x12, 0x30, 0x0a, 0x14, 0x6d, 0x69, 0x67, 0x72, 0x61, - 0x74, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x41, 0x0a, 0x1d, 0x73, 0x63, 0x6f, - 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, - 0x61, 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x1a, 0x73, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, - 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, - 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x07, 0x52, - 0x08, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, - 0x61, 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x0e, 0x20, 0x03, 0x28, - 0x07, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, - 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, - 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, - 0x75, 0x6d, 0x5f, 0x72, 0x32, 0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, - 0x71, 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x63, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, - 0x75, 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, - 0x71, 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, 0x22, 0x4e, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, - 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, - 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, - 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x45, 0x32, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, - 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, - 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, 0x22, 0xd3, 0x05, 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x6f, 0x75, 0x74, - 0x65, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, - 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x71, 0x75, 0x61, - 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, 0x0a, 0x0b, 0x71, 0x75, 0x61, - 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, - 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, - 0x79, 0x45, 0x32, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, - 0x79, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, - 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, - 0x65, 0x32, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1e, 0x0a, - 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x32, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x73, 0x12, 0x1e, 0x0a, - 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, 0x12, 0x34, 0x0a, - 0x16, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x63, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x06, 0x52, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6c, 0x61, - 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x07, - 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x07, 0x52, 0x12, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, - 0x67, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, - 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x4e, 0x0a, - 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, - 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, 0x12, 0x13, 0x0a, - 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x45, 0x32, 0x45, - 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, - 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, 0x22, 0xc1, 0x04, - 0x0a, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, - 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, - 0x79, 0x52, 0x0c, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, - 0x49, 0x0a, 0x0b, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, - 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, - 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x08, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, - 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x07, 0x52, - 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, - 0x61, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x73, - 0x32, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, - 0x53, 0x32, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x65, - 0x32, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, - 0x45, 0x32, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, - 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, - 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, - 0x30, 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x22, 0x4e, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, - 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, - 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, - 0x5f, 0x45, 0x32, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, - 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, - 0x04, 0x22, 0xc8, 0x05, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, - 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x25, 0x0a, 0x0e, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x07, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, + 0x45, 0x32, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, + 0x18, 0x0a, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, + 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, + 0x32, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, + 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0b, + 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x32, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x73, 0x12, 0x1e, 0x0a, 0x0b, + 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, 0x12, 0x34, 0x0a, 0x16, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x06, 0x52, 0x13, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6c, 0x61, 0x79, + 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x70, 0x65, - 0x65, 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x06, 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x65, 0x65, 0x72, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x12, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x07, 0x52, 0x10, 0x70, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, - 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x65, 0x6e, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4d, 0x0a, 0x24, 0x65, - 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, - 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x64, 0x5f, 0x62, - 0x79, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1f, 0x65, 0x6e, 0x63, 0x72, 0x79, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, - 0x65, 0x79, 0x4c, 0x65, 0x61, 0x64, 0x42, 0x79, 0x74, 0x65, 0x12, 0x4a, 0x0a, 0x22, 0x65, 0x6e, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x79, 0x5f, 0x65, 0x70, 0x68, 0x65, - 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x10, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1e, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x4d, 0x79, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, - 0x6f, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x14, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x1a, 0x41, 0x0a, 0x0d, 0x45, 0x6e, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x65, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x94, 0x01, 0x0a, - 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x22, 0xd3, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x45, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x23, - 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, - 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x55, 0x6e, 0x74, 0x69, - 0x6c, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x6c, - 0x61, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, 0x75, - 0x74, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, - 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x32, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x63, 0x22, 0xc3, 0x06, 0x0a, 0x31, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, 0x32, - 0x50, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, + 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x07, 0x52, 0x12, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, + 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x06, 0x52, 0x0d, 0x72, + 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x4e, 0x0a, 0x05, + 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, + 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, + 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x45, 0x32, 0x45, 0x10, + 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, + 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, 0x22, 0xc1, 0x04, 0x0a, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, + 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, @@ -5648,270 +5595,376 @@ var file_steamdatagram_messages_sdr_proto_rawDesc = []byte{ 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, - 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x58, 0x0a, 0x13, 0x70, 0x32, 0x70, - 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, - 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, - 0x52, 0x11, 0x70, 0x32, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, - 0x61, 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, - 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, - 0x32, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, - 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x4a, 0x0a, 0x22, - 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, - 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1e, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, - 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, - 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x66, 0x6f, 0x72, 0x77, - 0x61, 0x72, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x66, 0x6f, 0x72, 0x77, 0x61, - 0x72, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x61, 0x63, 0x6b, 0x5f, - 0x70, 0x65, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x76, 0x69, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, 0x63, 0x6b, 0x50, - 0x65, 0x65, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, - 0x6d, 0x5f, 0x63, 0x32, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, - 0x4e, 0x75, 0x6d, 0x43, 0x32, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, - 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, - 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, 0x22, 0x86, 0x01, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, - 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, - 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, - 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x45, 0x32, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, - 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, - 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x4f, 0x54, 0x5f, 0x50, - 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x08, - 0x12, 0x1d, 0x0a, 0x19, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x5f, - 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x45, 0x32, 0x45, 0x10, 0x10, 0x22, - 0xe3, 0x06, 0x0a, 0x31, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x74, 0x61, 0x74, 0x73, 0x50, 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, - 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, - 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, 0x0a, 0x0b, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, - 0x65, 0x32, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, - 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, - 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x53, 0x68, 0x75, - 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, - 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x07, 0x52, 0x10, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x49, 0x70, 0x12, 0x30, 0x0a, 0x14, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x12, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x41, 0x0a, 0x1d, 0x73, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, - 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x73, 0x63, - 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, - 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, 0x5f, - 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x07, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, 0x6b, - 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, - 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x08, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x6c, - 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, - 0x73, 0x12, 0x3d, 0x0a, 0x1b, 0x61, 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, - 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x61, 0x63, 0x6b, 0x46, 0x6f, 0x72, 0x77, 0x61, - 0x72, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x61, 0x63, 0x6b, 0x5f, - 0x70, 0x65, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x76, 0x69, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, 0x63, 0x6b, 0x50, - 0x65, 0x65, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, - 0x6d, 0x5f, 0x72, 0x32, 0x63, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, - 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x63, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, - 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, - 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, 0x22, 0x6d, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, + 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, + 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x08, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, + 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, + 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, + 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, + 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x32, + 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x53, + 0x32, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x32, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x45, + 0x32, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, + 0x6c, 0x61, 0x79, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, + 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x22, 0x4e, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, + 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, + 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, + 0x45, 0x32, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, + 0x55, 0x45, 0x53, 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, + 0x22, 0xc8, 0x05, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, + 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x63, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x07, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, + 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x70, 0x65, 0x65, + 0x72, 0x5f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, + 0x52, 0x11, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x65, 0x65, 0x72, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x12, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x07, 0x52, 0x10, 0x70, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, + 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x65, 0x6e, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4d, 0x0a, 0x24, 0x65, 0x6e, + 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x64, 0x5f, 0x62, 0x79, + 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x59, 0x6f, 0x75, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, + 0x79, 0x4c, 0x65, 0x61, 0x64, 0x42, 0x79, 0x74, 0x65, 0x12, 0x4a, 0x0a, 0x22, 0x65, 0x6e, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x79, 0x5f, 0x65, 0x70, 0x68, 0x65, 0x6d, + 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1e, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x4d, 0x79, 0x45, 0x70, 0x68, 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, + 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x34, 0x0a, 0x16, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x14, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x1a, 0x41, 0x0a, 0x0d, 0x45, 0x6e, 0x63, 0x72, + 0x79, 0x70, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x65, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x94, 0x01, 0x0a, 0x22, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, + 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, + 0x62, 0x6f, 0x64, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x22, 0xd3, 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x45, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x23, 0x0a, + 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, 0x6e, + 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, + 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x6c, 0x61, + 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, + 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, + 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x32, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, + 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x63, 0x22, 0xde, 0x06, 0x0a, 0x31, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, 0x32, 0x50, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x4d, + 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, + 0x0c, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, 0x0a, + 0x0b, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x58, 0x0a, 0x13, 0x70, 0x32, 0x70, 0x5f, + 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, + 0x50, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, + 0x11, 0x70, 0x32, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x75, 0x6d, 0x6d, 0x61, + 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, + 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x32, + 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, + 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x4a, 0x0a, 0x22, 0x66, + 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, + 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1e, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, + 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x69, + 0x6e, 0x67, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x66, 0x6f, 0x72, 0x77, 0x61, + 0x72, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, + 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, + 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x61, 0x63, 0x6b, 0x5f, 0x70, + 0x65, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, 0x63, 0x6b, 0x50, 0x65, + 0x65, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, + 0x5f, 0x63, 0x32, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, + 0x75, 0x6d, 0x43, 0x32, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, + 0x5f, 0x65, 0x32, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, + 0x75, 0x6d, 0x45, 0x32, 0x65, 0x22, 0xa1, 0x01, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x45, 0x32, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, - 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, - 0x49, 0x4d, 0x41, 0x52, 0x59, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, - 0x45, 0x32, 0x45, 0x10, 0x10, 0x22, 0xec, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x42, 0x61, - 0x64, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x66, 0x61, 0x69, - 0x6c, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, - 0x67, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x17, 0x66, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, - 0x67, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x3d, 0x0a, 0x1b, 0x61, 0x63, 0x6b, 0x5f, 0x66, 0x6f, - 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x76, - 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x61, 0x63, 0x6b, - 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x76, - 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x6c, 0x75, 0x64, 0x67, 0x65, 0x5f, - 0x70, 0x61, 0x64, 0x18, 0x63, 0x20, 0x01, 0x28, 0x06, 0x52, 0x09, 0x6b, 0x6c, 0x75, 0x64, 0x67, - 0x65, 0x50, 0x61, 0x64, 0x22, 0x83, 0x04, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, 0x6f, 0x75, - 0x74, 0x65, 0x73, 0x12, 0x54, 0x0a, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x63, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, - 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x2e, 0x52, 0x65, - 0x6c, 0x61, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x0d, 0x72, 0x65, 0x6c, 0x61, - 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x3e, 0x0a, 0x06, 0x72, 0x6f, 0x75, - 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x2e, 0x52, 0x6f, 0x75, 0x74, - 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, - 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x76, - 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0xa2, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x05, 0x70, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x17, 0x0a, - 0x07, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x70, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, - 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, - 0x63, 0x6f, 0x72, 0x65, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x1b, 0x73, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x6f, 0x75, - 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x18, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, - 0x75, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x8d, 0x01, 0x0a, 0x05, 0x52, - 0x6f, 0x75, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x09, 0x6d, 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x07, 0x6d, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, - 0x12, 0x1e, 0x0a, 0x0b, 0x79, 0x6f, 0x75, 0x72, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x09, 0x79, 0x6f, 0x75, 0x72, 0x50, 0x6f, 0x70, 0x49, 0x64, - 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x53, 0x63, - 0x6f, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x69, 0x6f, 0x72, 0x5f, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x6e, 0x74, - 0x65, 0x72, 0x69, 0x6f, 0x72, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0xb1, 0x02, 0x0a, 0x2b, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x69, 0x6e, 0x49, 0x70, - 0x12, 0x28, 0x0a, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, - 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x61, 0x69, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x38, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x53, 0x65, 0x6e, 0x64, 0x44, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, + 0x49, 0x4d, 0x41, 0x52, 0x59, 0x5f, 0x53, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x08, 0x12, + 0x1d, 0x0a, 0x19, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x5f, 0x54, + 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x45, 0x32, 0x45, 0x10, 0x10, 0x12, 0x19, + 0x0a, 0x15, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x5f, 0x4f, + 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x45, 0x10, 0x20, 0x22, 0xe3, 0x06, 0x0a, 0x31, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, 0x32, + 0x50, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, + 0x4d, 0x0a, 0x0d, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x52, 0x0c, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x49, + 0x0a, 0x0b, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x32, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x71, + 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x32, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, + 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, + 0x64, 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, + 0x2c, 0x0a, 0x12, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x5f, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x6d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x70, 0x12, 0x30, 0x0a, + 0x14, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x12, + 0x41, 0x0a, 0x1d, 0x73, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, + 0x74, 0x79, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x73, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x50, + 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, + 0x07, 0x20, 0x03, 0x28, 0x07, 0x52, 0x08, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x12, + 0x24, 0x0a, 0x0e, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x32, + 0x65, 0x18, 0x08, 0x20, 0x03, 0x28, 0x07, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x41, + 0x63, 0x6b, 0x45, 0x32, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x3d, 0x0a, 0x1b, 0x61, + 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x18, 0x61, 0x63, 0x6b, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x54, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, + 0x75, 0x74, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, + 0x65, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x61, 0x63, 0x6b, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x72, + 0x6f, 0x75, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, 0x63, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x6f, 0x75, + 0x74, 0x65, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x32, 0x63, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x52, 0x32, 0x63, + 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x32, 0x65, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x45, 0x32, 0x65, + 0x22, 0x6d, 0x0a, 0x05, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x4b, + 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, + 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, + 0x45, 0x32, 0x45, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x45, 0x51, + 0x55, 0x45, 0x53, 0x54, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x10, 0x04, + 0x12, 0x1d, 0x0a, 0x19, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x5f, + 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x45, 0x32, 0x45, 0x10, 0x10, 0x22, + 0xec, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, + 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x42, 0x61, 0x64, 0x52, 0x6f, 0x75, 0x74, 0x65, + 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x23, + 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x72, 0x65, + 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x17, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, + 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x12, 0x3d, 0x0a, 0x1b, 0x61, 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x61, 0x63, 0x6b, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, + 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x6c, 0x75, 0x64, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x64, 0x18, 0x63, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6b, 0x6c, 0x75, 0x64, 0x67, 0x65, 0x50, 0x61, 0x64, 0x22, 0x60, - 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, - 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, - 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x2a, 0xe0, 0x0b, 0x0a, 0x13, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x53, + 0x01, 0x28, 0x06, 0x52, 0x09, 0x6b, 0x6c, 0x75, 0x64, 0x67, 0x65, 0x50, 0x61, 0x64, 0x22, 0x83, + 0x04, 0x0a, 0x1a, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x54, 0x0a, + 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, + 0x50, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x52, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x73, 0x12, 0x3e, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x50, 0x32, 0x50, 0x52, + 0x6f, 0x75, 0x74, 0x65, 0x73, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, + 0x74, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x1a, + 0xa2, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, + 0x52, 0x05, 0x70, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x69, 0x6e, 0x67, 0x5f, + 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x69, 0x6e, 0x67, 0x4d, 0x73, + 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, + 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x50, 0x65, + 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x1b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x18, 0x73, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x8d, 0x01, 0x0a, 0x05, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x1a, + 0x0a, 0x09, 0x6d, 0x79, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x07, 0x52, 0x07, 0x6d, 0x79, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x79, 0x6f, + 0x75, 0x72, 0x5f, 0x70, 0x6f, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, + 0x09, 0x79, 0x6f, 0x75, 0x72, 0x50, 0x6f, 0x70, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x65, + 0x67, 0x61, 0x63, 0x79, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0b, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x25, 0x0a, + 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x69, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x69, 0x6f, 0x72, 0x53, + 0x63, 0x6f, 0x72, 0x65, 0x22, 0xb1, 0x02, 0x0a, 0x2b, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d, + 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0c, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x69, 0x6e, 0x49, 0x70, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x69, 0x6e, + 0x50, 0x6f, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x07, 0x52, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, + 0x38, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x5f, + 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x44, 0x75, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x6c, 0x75, + 0x64, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x64, 0x18, 0x63, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6b, + 0x6c, 0x75, 0x64, 0x67, 0x65, 0x50, 0x61, 0x64, 0x22, 0x60, 0x0a, 0x2a, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x53, 0x65, 0x74, + 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0xe0, 0x0b, 0x0a, 0x13, 0x45, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, + 0x49, 0x44, 0x12, 0x1f, 0x0a, 0x1b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, + 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x10, 0x00, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x75, 0x74, 0x65, + 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x01, 0x12, 0x27, + 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, + 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, + 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0x02, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x47, + 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x10, 0x03, 0x12, 0x30, 0x0a, 0x2c, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x05, 0x12, 0x34, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, - 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x00, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, + 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x45, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x06, 0x12, 0x21, + 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, + 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x4e, 0x6f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, + 0x07, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, + 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, + 0x74, 0x69, 0x63, 0x10, 0x08, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x61, 0x74, + 0x61, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x10, + 0x09, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, + 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x6f, 0x75, + 0x74, 0x65, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x10, 0x0a, 0x12, 0x2a, 0x0a, + 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x61, 0x74, 0x61, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, + 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x10, 0x0b, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, - 0x5f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0x01, 0x12, 0x27, 0x0a, 0x23, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x6f, 0x75, 0x74, - 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0x02, 0x12, 0x2d, 0x0a, - 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, - 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x03, 0x12, 0x30, 0x0a, 0x2c, - 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x05, 0x12, 0x34, - 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x65, 0x64, 0x10, 0x06, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x4e, 0x6f, 0x53, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x07, 0x12, 0x22, 0x0a, 0x1e, 0x6b, 0x5f, 0x45, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x44, - 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x10, 0x08, 0x12, 0x2a, 0x0a, 0x26, 0x6b, - 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, - 0x73, 0x67, 0x5f, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x52, - 0x6f, 0x75, 0x74, 0x65, 0x72, 0x10, 0x09, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x44, - 0x61, 0x74, 0x61, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x10, 0x0a, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, - 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x61, 0x74, 0x61, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x10, 0x0b, 0x12, - 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x6f, 0x75, 0x74, 0x65, - 0x72, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x10, 0x0c, 0x12, 0x1d, 0x0a, 0x19, 0x6b, - 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, - 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x10, 0x0d, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, - 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, - 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, - 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x0e, 0x12, 0x2d, 0x0a, 0x29, 0x6b, + 0x5f, 0x44, 0x61, 0x74, 0x61, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x10, 0x0c, 0x12, 0x1d, 0x0a, 0x19, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x10, 0x0d, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x10, 0x0e, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x70, + 0x6c, 0x79, 0x10, 0x0f, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, + 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x10, 0x10, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, - 0x73, 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x53, 0x61, 0x6d, - 0x70, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0x0f, 0x12, 0x35, 0x0a, 0x31, 0x6b, 0x5f, - 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, - 0x67, 0x5f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, - 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x10, - 0x10, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x48, 0x65, - 0x61, 0x6c, 0x74, 0x68, 0x10, 0x11, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x12, 0x12, 0x21, - 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4f, 0x4b, 0x10, - 0x13, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x10, 0x14, 0x12, 0x24, 0x0a, 0x20, 0x6b, + 0x73, 0x67, 0x5f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x10, 0x11, + 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x12, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x5f, 0x45, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, + 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4f, 0x4b, 0x10, 0x13, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, - 0x73, 0x67, 0x5f, 0x4e, 0x6f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, - 0x15, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x44, - 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x16, 0x12, - 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x44, 0x65, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0x17, 0x12, 0x29, 0x0a, 0x25, 0x6b, + 0x73, 0x67, 0x5f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, + 0x73, 0x65, 0x64, 0x10, 0x14, 0x12, 0x24, 0x0a, 0x20, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x4e, 0x6f, 0x43, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x15, 0x12, 0x2c, 0x0a, 0x28, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, - 0x73, 0x67, 0x5f, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x10, 0x18, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x32, - 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x65, 0x64, 0x10, 0x19, 0x12, 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x32, 0x50, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x10, 0x1a, 0x12, 0x25, 0x0a, - 0x21, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, - 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x32, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x6c, - 0x61, 0x79, 0x10, 0x1b, 0x12, 0x23, 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x32, 0x50, 0x42, - 0x61, 0x64, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x10, 0x1c, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, + 0x73, 0x67, 0x5f, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x16, 0x12, 0x2a, 0x0a, 0x26, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, - 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, - 0x65, 0x70, 0x6c, 0x79, 0x10, 0x1d, 0x12, 0x34, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, - 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x1e, 0x12, 0x32, 0x0a, 0x2e, - 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x1f, - 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, - 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x10, 0x20, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, - 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x6c, 0x61, 0x79, - 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x10, 0x21, 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x6c, 0x61, - 0x79, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, - 0x79, 0x10, 0x22, 0x42, 0x2a, 0x48, 0x01, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, - 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, 0x80, 0x01, 0x00, + 0x5f, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, + 0x70, 0x6c, 0x79, 0x10, 0x17, 0x12, 0x29, 0x0a, 0x25, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x32, 0x50, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x18, + 0x12, 0x2d, 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x32, 0x50, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x45, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x19, 0x12, + 0x26, 0x0a, 0x22, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, + 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x32, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x10, 0x1a, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x5f, 0x45, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, + 0x32, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x10, 0x1b, 0x12, 0x23, + 0x0a, 0x1f, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, + 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x32, 0x50, 0x42, 0x61, 0x64, 0x52, 0x6f, 0x75, 0x74, + 0x65, 0x10, 0x1c, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x47, 0x61, 0x6d, 0x65, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0x1d, + 0x12, 0x34, 0x0a, 0x30, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x61, + 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x1e, 0x12, 0x32, 0x0a, 0x2e, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x53, 0x65, + 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x1f, 0x12, 0x31, 0x0a, 0x2d, 0x6b, 0x5f, + 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x73, + 0x67, 0x5f, 0x53, 0x65, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x10, 0x20, 0x12, 0x2f, 0x0a, + 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x61, + 0x79, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x21, 0x12, 0x2d, + 0x0a, 0x29, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, + 0x61, 0x6d, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x54, 0x6f, 0x52, 0x65, 0x6c, + 0x61, 0x79, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x10, 0x22, 0x42, 0x2a, 0x48, + 0x01, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, + 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, + 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, 0x80, 0x01, 0x00, } var ( diff --git a/dota/steamdatagram_messages_sdr.proto b/dota/steamdatagram_messages_sdr.proto index 8a6ea710..e5690038 100644 --- a/dota/steamdatagram_messages_sdr.proto +++ b/dota/steamdatagram_messages_sdr.proto @@ -98,6 +98,7 @@ message CMsgSteamDatagramRouterPingReply { optional uint32 flags = 12; repeated CMsgSteamDatagramRouterPingReply.RouteException route_exceptions = 10; repeated CMsgSteamDatagramRouterPingReply.AltAddress alt_addresses = 13; + optional bytes dummy_pad = 99; } message CMsgSteamDatagramGameserverPingRequestBody { @@ -133,6 +134,7 @@ message CMsgSteamDatagramGameserverPingReplyData { optional string build = 9; optional uint64 network_config_version = 10; optional fixed32 my_unix_time = 11; + optional bytes routing_blob = 12; } message CMsgSteamDatagramNoSessionRelayToClient { @@ -188,7 +190,7 @@ message CMsgSteamDatagramClientPingSampleReply { } optional fixed32 connection_id = 1; - optional bool override_active = 4; + optional bool relay_override_active = 5; repeated CMsgSteamDatagramClientPingSampleReply.POP pops = 2; repeated CMsgSteamDatagramClientPingSampleReply.LegacyDataCenter legacy_data_centers = 3; } @@ -283,6 +285,7 @@ message CMsgSteamDatagramConnectionClosed { optional fixed64 routing_secret = 14; optional bool not_primary_session = 16; optional bool not_primary_transport = 19; + optional bool relay_override_active = 22; optional CMsgSteamDatagramConnectionQuality quality_relay = 17; optional CMsgSteamDatagramConnectionQuality quality_e2e = 18; optional CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 21; @@ -299,6 +302,7 @@ message CMsgSteamDatagramNoConnection { optional bool end_to_end = 4; optional bool not_primary_session = 12; optional bool not_primary_transport = 15; + optional bool relay_override_active = 17; optional CMsgSteamDatagramConnectionQuality quality_relay = 13; optional CMsgSteamDatagramConnectionQuality quality_e2e = 14; optional CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 16; @@ -335,6 +339,7 @@ message CMsgSteamDatagramConnectionStatsClientToRouter { ACK_REQUEST_E2E = 2; ACK_REQUEST_IMMEDIATE = 4; NOT_PRIMARY_SESSION = 8; + CLIENT_RELAY_OVERRIDE = 32; } optional CMsgSteamDatagramConnectionQuality quality_relay = 1; @@ -449,6 +454,7 @@ message CMsgSteamDatagramConnectionStatsP2PClientToRouter { ACK_REQUEST_IMMEDIATE = 4; NOT_PRIMARY_SESSION = 8; NOT_PRIMARY_TRANSPORT_E2E = 16; + CLIENT_RELAY_OVERRIDE = 32; } optional CMsgSteamDatagramConnectionQuality quality_relay = 1; diff --git a/dota/steammessages.pb.go b/dota/steammessages.pb.go index a5e92d2e..93c0a6dd 100644 --- a/dota/steammessages.pb.go +++ b/dota/steammessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages.proto diff --git a/dota/steammessages_cloud.steamworkssdk.pb.go b/dota/steammessages_cloud.steamworkssdk.pb.go index c5951337..003c07b0 100644 --- a/dota/steammessages_cloud.steamworkssdk.pb.go +++ b/dota/steammessages_cloud.steamworkssdk.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_cloud.steamworkssdk.proto diff --git a/dota/steammessages_gamenetworkingui.pb.go b/dota/steammessages_gamenetworkingui.pb.go index 42a452f2..46ccd7f6 100644 --- a/dota/steammessages_gamenetworkingui.pb.go +++ b/dota/steammessages_gamenetworkingui.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_gamenetworkingui.proto @@ -360,6 +360,188 @@ func (x *CGameNetworkingUI_Message) GetConnectionState() []*CGameNetworkingUI_Co return nil } +type CGameNetworkingUI_ConnectionSummary struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TransportKind *uint32 `protobuf:"varint,1,opt,name=transport_kind,json=transportKind" json:"transport_kind,omitempty"` + ConnectionState *uint32 `protobuf:"varint,8,opt,name=connection_state,json=connectionState" json:"connection_state,omitempty"` + SdrpopLocal *string `protobuf:"bytes,2,opt,name=sdrpop_local,json=sdrpopLocal" json:"sdrpop_local,omitempty"` + SdrpopRemote *string `protobuf:"bytes,3,opt,name=sdrpop_remote,json=sdrpopRemote" json:"sdrpop_remote,omitempty"` + PingMs *uint32 `protobuf:"varint,4,opt,name=ping_ms,json=pingMs" json:"ping_ms,omitempty"` + PacketLoss *float32 `protobuf:"fixed32,5,opt,name=packet_loss,json=packetLoss" json:"packet_loss,omitempty"` + PingDefaultInternetRoute *uint32 `protobuf:"varint,6,opt,name=ping_default_internet_route,json=pingDefaultInternetRoute" json:"ping_default_internet_route,omitempty"` + IpWasShared *bool `protobuf:"varint,7,opt,name=ip_was_shared,json=ipWasShared" json:"ip_was_shared,omitempty"` +} + +func (x *CGameNetworkingUI_ConnectionSummary) Reset() { + *x = CGameNetworkingUI_ConnectionSummary{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_gamenetworkingui_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CGameNetworkingUI_ConnectionSummary) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CGameNetworkingUI_ConnectionSummary) ProtoMessage() {} + +func (x *CGameNetworkingUI_ConnectionSummary) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_gamenetworkingui_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CGameNetworkingUI_ConnectionSummary.ProtoReflect.Descriptor instead. +func (*CGameNetworkingUI_ConnectionSummary) Descriptor() ([]byte, []int) { + return file_steammessages_gamenetworkingui_proto_rawDescGZIP(), []int{3} +} + +func (x *CGameNetworkingUI_ConnectionSummary) GetTransportKind() uint32 { + if x != nil && x.TransportKind != nil { + return *x.TransportKind + } + return 0 +} + +func (x *CGameNetworkingUI_ConnectionSummary) GetConnectionState() uint32 { + if x != nil && x.ConnectionState != nil { + return *x.ConnectionState + } + return 0 +} + +func (x *CGameNetworkingUI_ConnectionSummary) GetSdrpopLocal() string { + if x != nil && x.SdrpopLocal != nil { + return *x.SdrpopLocal + } + return "" +} + +func (x *CGameNetworkingUI_ConnectionSummary) GetSdrpopRemote() string { + if x != nil && x.SdrpopRemote != nil { + return *x.SdrpopRemote + } + return "" +} + +func (x *CGameNetworkingUI_ConnectionSummary) GetPingMs() uint32 { + if x != nil && x.PingMs != nil { + return *x.PingMs + } + return 0 +} + +func (x *CGameNetworkingUI_ConnectionSummary) GetPacketLoss() float32 { + if x != nil && x.PacketLoss != nil { + return *x.PacketLoss + } + return 0 +} + +func (x *CGameNetworkingUI_ConnectionSummary) GetPingDefaultInternetRoute() uint32 { + if x != nil && x.PingDefaultInternetRoute != nil { + return *x.PingDefaultInternetRoute + } + return 0 +} + +func (x *CGameNetworkingUI_ConnectionSummary) GetIpWasShared() bool { + if x != nil && x.IpWasShared != nil { + return *x.IpWasShared + } + return false +} + +type CGameNetworkingUI_AppSummary struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Appid *uint32 `protobuf:"varint,1,opt,name=appid" json:"appid,omitempty"` + IpWasSharedWithFriend *bool `protobuf:"varint,10,opt,name=ip_was_shared_with_friend,json=ipWasSharedWithFriend" json:"ip_was_shared_with_friend,omitempty"` + IpWasSharedWithNonfriend *bool `protobuf:"varint,11,opt,name=ip_was_shared_with_nonfriend,json=ipWasSharedWithNonfriend" json:"ip_was_shared_with_nonfriend,omitempty"` + ActiveConnections *uint32 `protobuf:"varint,20,opt,name=active_connections,json=activeConnections" json:"active_connections,omitempty"` + MainCxn *CGameNetworkingUI_ConnectionSummary `protobuf:"bytes,30,opt,name=main_cxn,json=mainCxn" json:"main_cxn,omitempty"` +} + +func (x *CGameNetworkingUI_AppSummary) Reset() { + *x = CGameNetworkingUI_AppSummary{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_gamenetworkingui_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CGameNetworkingUI_AppSummary) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CGameNetworkingUI_AppSummary) ProtoMessage() {} + +func (x *CGameNetworkingUI_AppSummary) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_gamenetworkingui_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CGameNetworkingUI_AppSummary.ProtoReflect.Descriptor instead. +func (*CGameNetworkingUI_AppSummary) Descriptor() ([]byte, []int) { + return file_steammessages_gamenetworkingui_proto_rawDescGZIP(), []int{4} +} + +func (x *CGameNetworkingUI_AppSummary) GetAppid() uint32 { + if x != nil && x.Appid != nil { + return *x.Appid + } + return 0 +} + +func (x *CGameNetworkingUI_AppSummary) GetIpWasSharedWithFriend() bool { + if x != nil && x.IpWasSharedWithFriend != nil { + return *x.IpWasSharedWithFriend + } + return false +} + +func (x *CGameNetworkingUI_AppSummary) GetIpWasSharedWithNonfriend() bool { + if x != nil && x.IpWasSharedWithNonfriend != nil { + return *x.IpWasSharedWithNonfriend + } + return false +} + +func (x *CGameNetworkingUI_AppSummary) GetActiveConnections() uint32 { + if x != nil && x.ActiveConnections != nil { + return *x.ActiveConnections + } + return 0 +} + +func (x *CGameNetworkingUI_AppSummary) GetMainCxn() *CGameNetworkingUI_ConnectionSummary { + if x != nil { + return x.MainCxn + } + return nil +} + var File_steammessages_gamenetworkingui_proto protoreflect.FileDescriptor var file_steammessages_gamenetworkingui_proto_rawDesc = []byte{ @@ -472,10 +654,50 @@ var file_steammessages_gamenetworkingui_proto_rawDesc = []byte{ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x55, 0x49, 0x5f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0f, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x2a, - 0x48, 0x01, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, - 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, - 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, 0x80, 0x01, 0x01, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0xdc, + 0x02, 0x0a, 0x23, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, + 0x6e, 0x67, 0x55, 0x49, 0x5f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, + 0x6f, 0x72, 0x74, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x29, 0x0a, + 0x10, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x64, 0x72, 0x70, + 0x6f, 0x70, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x73, 0x64, 0x72, 0x70, 0x6f, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x64, 0x72, 0x70, 0x6f, 0x70, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x73, 0x64, 0x72, 0x70, 0x6f, 0x70, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x12, 0x17, 0x0a, 0x07, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x70, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x5f, 0x6c, 0x6f, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, + 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4c, 0x6f, 0x73, 0x73, 0x12, 0x3d, 0x0a, 0x1b, 0x70, 0x69, + 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, + 0x6e, 0x65, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x18, 0x70, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x49, 0x6e, 0x74, 0x65, + 0x72, 0x6e, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x70, 0x5f, + 0x77, 0x61, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0b, 0x69, 0x70, 0x57, 0x61, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x22, 0xa3, 0x02, + 0x0a, 0x1c, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, + 0x67, 0x55, 0x49, 0x5f, 0x41, 0x70, 0x70, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, + 0x70, 0x70, 0x69, 0x64, 0x12, 0x38, 0x0a, 0x19, 0x69, 0x70, 0x5f, 0x77, 0x61, 0x73, 0x5f, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x69, 0x70, 0x57, 0x61, 0x73, 0x53, 0x68, + 0x61, 0x72, 0x65, 0x64, 0x57, 0x69, 0x74, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x3e, + 0x0a, 0x1c, 0x69, 0x70, 0x5f, 0x77, 0x61, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, + 0x77, 0x69, 0x74, 0x68, 0x5f, 0x6e, 0x6f, 0x6e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x69, 0x70, 0x57, 0x61, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, + 0x64, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x6f, 0x6e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x2d, + 0x0a, 0x12, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x44, 0x0a, + 0x08, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x63, 0x78, 0x6e, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x47, 0x61, 0x6d, 0x65, 0x4e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x55, 0x49, 0x5f, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x07, 0x6d, 0x61, 0x69, 0x6e, + 0x43, 0x78, 0x6e, 0x42, 0x2a, 0x48, 0x01, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, + 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, 0x80, 0x01, 0x01, } var ( @@ -490,26 +712,29 @@ func file_steammessages_gamenetworkingui_proto_rawDescGZIP() []byte { return file_steammessages_gamenetworkingui_proto_rawDescData } -var file_steammessages_gamenetworkingui_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_steammessages_gamenetworkingui_proto_msgTypes = make([]protoimpl.MessageInfo, 5) var file_steammessages_gamenetworkingui_proto_goTypes = []interface{}{ - (*CGameNetworkingUI_GlobalState)(nil), // 0: dota.CGameNetworkingUI_GlobalState - (*CGameNetworkingUI_ConnectionState)(nil), // 1: dota.CGameNetworkingUI_ConnectionState - (*CGameNetworkingUI_Message)(nil), // 2: dota.CGameNetworkingUI_Message - (*CMsgSteamDatagramP2PRoutingSummary)(nil), // 3: dota.CMsgSteamDatagramP2PRoutingSummary - (*CMsgSteamDatagramConnectionQuality)(nil), // 4: dota.CMsgSteamDatagramConnectionQuality + (*CGameNetworkingUI_GlobalState)(nil), // 0: dota.CGameNetworkingUI_GlobalState + (*CGameNetworkingUI_ConnectionState)(nil), // 1: dota.CGameNetworkingUI_ConnectionState + (*CGameNetworkingUI_Message)(nil), // 2: dota.CGameNetworkingUI_Message + (*CGameNetworkingUI_ConnectionSummary)(nil), // 3: dota.CGameNetworkingUI_ConnectionSummary + (*CGameNetworkingUI_AppSummary)(nil), // 4: dota.CGameNetworkingUI_AppSummary + (*CMsgSteamDatagramP2PRoutingSummary)(nil), // 5: dota.CMsgSteamDatagramP2PRoutingSummary + (*CMsgSteamDatagramConnectionQuality)(nil), // 6: dota.CMsgSteamDatagramConnectionQuality } var file_steammessages_gamenetworkingui_proto_depIdxs = []int32{ - 3, // 0: dota.CGameNetworkingUI_ConnectionState.p2p_routing:type_name -> dota.CMsgSteamDatagramP2PRoutingSummary - 4, // 1: dota.CGameNetworkingUI_ConnectionState.e2e_quality_local:type_name -> dota.CMsgSteamDatagramConnectionQuality - 4, // 2: dota.CGameNetworkingUI_ConnectionState.e2e_quality_remote:type_name -> dota.CMsgSteamDatagramConnectionQuality - 4, // 3: dota.CGameNetworkingUI_ConnectionState.front_quality_local:type_name -> dota.CMsgSteamDatagramConnectionQuality - 4, // 4: dota.CGameNetworkingUI_ConnectionState.front_quality_remote:type_name -> dota.CMsgSteamDatagramConnectionQuality + 5, // 0: dota.CGameNetworkingUI_ConnectionState.p2p_routing:type_name -> dota.CMsgSteamDatagramP2PRoutingSummary + 6, // 1: dota.CGameNetworkingUI_ConnectionState.e2e_quality_local:type_name -> dota.CMsgSteamDatagramConnectionQuality + 6, // 2: dota.CGameNetworkingUI_ConnectionState.e2e_quality_remote:type_name -> dota.CMsgSteamDatagramConnectionQuality + 6, // 3: dota.CGameNetworkingUI_ConnectionState.front_quality_local:type_name -> dota.CMsgSteamDatagramConnectionQuality + 6, // 4: dota.CGameNetworkingUI_ConnectionState.front_quality_remote:type_name -> dota.CMsgSteamDatagramConnectionQuality 1, // 5: dota.CGameNetworkingUI_Message.connection_state:type_name -> dota.CGameNetworkingUI_ConnectionState - 6, // [6:6] is the sub-list for method output_type - 6, // [6:6] is the sub-list for method input_type - 6, // [6:6] is the sub-list for extension type_name - 6, // [6:6] is the sub-list for extension extendee - 0, // [0:6] is the sub-list for field type_name + 3, // 6: dota.CGameNetworkingUI_AppSummary.main_cxn:type_name -> dota.CGameNetworkingUI_ConnectionSummary + 7, // [7:7] is the sub-list for method output_type + 7, // [7:7] is the sub-list for method input_type + 7, // [7:7] is the sub-list for extension type_name + 7, // [7:7] is the sub-list for extension extendee + 0, // [0:7] is the sub-list for field type_name } func init() { file_steammessages_gamenetworkingui_proto_init() } @@ -556,6 +781,30 @@ func file_steammessages_gamenetworkingui_proto_init() { return nil } } + file_steammessages_gamenetworkingui_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CGameNetworkingUI_ConnectionSummary); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_gamenetworkingui_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CGameNetworkingUI_AppSummary); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -563,7 +812,7 @@ func file_steammessages_gamenetworkingui_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_steammessages_gamenetworkingui_proto_rawDesc, NumEnums: 0, - NumMessages: 3, + NumMessages: 5, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/steammessages_gamenetworkingui.proto b/dota/steammessages_gamenetworkingui.proto index 542be13f..611bf0fc 100644 --- a/dota/steammessages_gamenetworkingui.proto +++ b/dota/steammessages_gamenetworkingui.proto @@ -45,3 +45,22 @@ message CGameNetworkingUI_ConnectionState { message CGameNetworkingUI_Message { repeated CGameNetworkingUI_ConnectionState connection_state = 1; } + +message CGameNetworkingUI_ConnectionSummary { + optional uint32 transport_kind = 1; + optional uint32 connection_state = 8; + optional string sdrpop_local = 2; + optional string sdrpop_remote = 3; + optional uint32 ping_ms = 4; + optional float packet_loss = 5; + optional uint32 ping_default_internet_route = 6; + optional bool ip_was_shared = 7; +} + +message CGameNetworkingUI_AppSummary { + optional uint32 appid = 1; + optional bool ip_was_shared_with_friend = 10; + optional bool ip_was_shared_with_nonfriend = 11; + optional uint32 active_connections = 20; + optional CGameNetworkingUI_ConnectionSummary main_cxn = 30; +} diff --git a/dota/steammessages_helprequest.steamworkssdk.pb.go b/dota/steammessages_helprequest.steamworkssdk.pb.go index 35461cf7..24593afd 100644 --- a/dota/steammessages_helprequest.steamworkssdk.pb.go +++ b/dota/steammessages_helprequest.steamworkssdk.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_helprequest.steamworkssdk.proto diff --git a/dota/steammessages_int.pb.go b/dota/steammessages_int.pb.go index 684cfd0c..699559a9 100644 --- a/dota/steammessages_int.pb.go +++ b/dota/steammessages_int.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_int.proto diff --git a/dota/steammessages_oauth.steamworkssdk.pb.go b/dota/steammessages_oauth.steamworkssdk.pb.go index 5e6cafe0..6046d549 100644 --- a/dota/steammessages_oauth.steamworkssdk.pb.go +++ b/dota/steammessages_oauth.steamworkssdk.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_oauth.steamworkssdk.proto diff --git a/dota/steammessages_player.steamworkssdk.pb.go b/dota/steammessages_player.steamworkssdk.pb.go index a2fc877e..e5524af1 100644 --- a/dota/steammessages_player.steamworkssdk.pb.go +++ b/dota/steammessages_player.steamworkssdk.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_player.steamworkssdk.proto diff --git a/dota/steammessages_publishedfile.steamworkssdk.pb.go b/dota/steammessages_publishedfile.steamworkssdk.pb.go index 37c792b9..a3e16d29 100644 --- a/dota/steammessages_publishedfile.steamworkssdk.pb.go +++ b/dota/steammessages_publishedfile.steamworkssdk.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_publishedfile.steamworkssdk.proto diff --git a/dota/steammessages_steamlearn.steamworkssdk.pb.go b/dota/steammessages_steamlearn.steamworkssdk.pb.go index dea461b7..885053ab 100644 --- a/dota/steammessages_steamlearn.steamworkssdk.pb.go +++ b/dota/steammessages_steamlearn.steamworkssdk.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_steamlearn.steamworkssdk.proto @@ -334,56 +334,59 @@ func (ESteamLearnSnapshotProjectResult) EnumDescriptor() ([]byte, []int) { return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{3} } -type ESteamLearnGetHMACKeysResult int32 +type ESteamLearnGetAccessTokensResult int32 const ( - ESteamLearnGetHMACKeysResult_STEAMLEARN_GET_HMAC_KEYS_SUCCESS ESteamLearnGetHMACKeysResult = 0 + ESteamLearnGetAccessTokensResult_STEAMLEARN_GET_ACCESS_TOKENS_ERROR ESteamLearnGetAccessTokensResult = 0 + ESteamLearnGetAccessTokensResult_STEAMLEARN_GET_ACCESS_TOKENS_SUCCESS ESteamLearnGetAccessTokensResult = 1 ) -// Enum value maps for ESteamLearnGetHMACKeysResult. +// Enum value maps for ESteamLearnGetAccessTokensResult. var ( - ESteamLearnGetHMACKeysResult_name = map[int32]string{ - 0: "STEAMLEARN_GET_HMAC_KEYS_SUCCESS", + ESteamLearnGetAccessTokensResult_name = map[int32]string{ + 0: "STEAMLEARN_GET_ACCESS_TOKENS_ERROR", + 1: "STEAMLEARN_GET_ACCESS_TOKENS_SUCCESS", } - ESteamLearnGetHMACKeysResult_value = map[string]int32{ - "STEAMLEARN_GET_HMAC_KEYS_SUCCESS": 0, + ESteamLearnGetAccessTokensResult_value = map[string]int32{ + "STEAMLEARN_GET_ACCESS_TOKENS_ERROR": 0, + "STEAMLEARN_GET_ACCESS_TOKENS_SUCCESS": 1, } ) -func (x ESteamLearnGetHMACKeysResult) Enum() *ESteamLearnGetHMACKeysResult { - p := new(ESteamLearnGetHMACKeysResult) +func (x ESteamLearnGetAccessTokensResult) Enum() *ESteamLearnGetAccessTokensResult { + p := new(ESteamLearnGetAccessTokensResult) *p = x return p } -func (x ESteamLearnGetHMACKeysResult) String() string { +func (x ESteamLearnGetAccessTokensResult) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } -func (ESteamLearnGetHMACKeysResult) Descriptor() protoreflect.EnumDescriptor { +func (ESteamLearnGetAccessTokensResult) Descriptor() protoreflect.EnumDescriptor { return file_steammessages_steamlearn_steamworkssdk_proto_enumTypes[4].Descriptor() } -func (ESteamLearnGetHMACKeysResult) Type() protoreflect.EnumType { +func (ESteamLearnGetAccessTokensResult) Type() protoreflect.EnumType { return &file_steammessages_steamlearn_steamworkssdk_proto_enumTypes[4] } -func (x ESteamLearnGetHMACKeysResult) Number() protoreflect.EnumNumber { +func (x ESteamLearnGetAccessTokensResult) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Do not use. -func (x *ESteamLearnGetHMACKeysResult) UnmarshalJSON(b []byte) error { +func (x *ESteamLearnGetAccessTokensResult) UnmarshalJSON(b []byte) error { num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) if err != nil { return err } - *x = ESteamLearnGetHMACKeysResult(num) + *x = ESteamLearnGetAccessTokensResult(num) return nil } -// Deprecated: Use ESteamLearnGetHMACKeysResult.Descriptor instead. -func (ESteamLearnGetHMACKeysResult) EnumDescriptor() ([]byte, []int) { +// Deprecated: Use ESteamLearnGetAccessTokensResult.Descriptor instead. +func (ESteamLearnGetAccessTokensResult) EnumDescriptor() ([]byte, []int) { return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{4} } @@ -399,6 +402,7 @@ const ( ESteamLearnInferenceResult_STEAMLEARN_INFERENCE_ERROR_INVALID_TIMESTAMP ESteamLearnInferenceResult = 6 ESteamLearnInferenceResult_STEAMLEARN_INFERENCE_ERROR_INVALID_PUBLISHED_VERSION ESteamLearnInferenceResult = 7 ESteamLearnInferenceResult_STEAMLEARN_INFERENCE_ERROR_NO_FETCH_ID_FOUND ESteamLearnInferenceResult = 8 + ESteamLearnInferenceResult_STEAMLEARN_INFERENCE_ERROR_TOO_BUSY ESteamLearnInferenceResult = 9 ) // Enum value maps for ESteamLearnInferenceResult. @@ -413,6 +417,7 @@ var ( 6: "STEAMLEARN_INFERENCE_ERROR_INVALID_TIMESTAMP", 7: "STEAMLEARN_INFERENCE_ERROR_INVALID_PUBLISHED_VERSION", 8: "STEAMLEARN_INFERENCE_ERROR_NO_FETCH_ID_FOUND", + 9: "STEAMLEARN_INFERENCE_ERROR_TOO_BUSY", } ESteamLearnInferenceResult_value = map[string]int32{ "STEAMLEARN_INFERENCE_ERROR": 0, @@ -424,6 +429,7 @@ var ( "STEAMLEARN_INFERENCE_ERROR_INVALID_TIMESTAMP": 6, "STEAMLEARN_INFERENCE_ERROR_INVALID_PUBLISHED_VERSION": 7, "STEAMLEARN_INFERENCE_ERROR_NO_FETCH_ID_FOUND": 8, + "STEAMLEARN_INFERENCE_ERROR_TOO_BUSY": 9, } ) @@ -464,6 +470,80 @@ func (ESteamLearnInferenceResult) EnumDescriptor() ([]byte, []int) { return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{5} } +type ESteamLearnInferenceMetadataResult int32 + +const ( + ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_ERROR ESteamLearnInferenceMetadataResult = 0 + ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_SUCCESS ESteamLearnInferenceMetadataResult = 1 + ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PROJECT_ID ESteamLearnInferenceMetadataResult = 2 + ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_ERROR_NO_PUBLISHED_CONFIG ESteamLearnInferenceMetadataResult = 3 + ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_ERROR_FORBIDDEN ESteamLearnInferenceMetadataResult = 4 + ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_TIMESTAMP ESteamLearnInferenceMetadataResult = 5 + ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PUBLISHED_VERSION ESteamLearnInferenceMetadataResult = 6 + ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_ERROR_NO_FETCH_ID_FOUND ESteamLearnInferenceMetadataResult = 7 +) + +// Enum value maps for ESteamLearnInferenceMetadataResult. +var ( + ESteamLearnInferenceMetadataResult_name = map[int32]string{ + 0: "STEAMLEARN_INFERENCE_METADATA_ERROR", + 1: "STEAMLEARN_INFERENCE_METADATA_SUCCESS", + 2: "STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PROJECT_ID", + 3: "STEAMLEARN_INFERENCE_METADATA_ERROR_NO_PUBLISHED_CONFIG", + 4: "STEAMLEARN_INFERENCE_METADATA_ERROR_FORBIDDEN", + 5: "STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_TIMESTAMP", + 6: "STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PUBLISHED_VERSION", + 7: "STEAMLEARN_INFERENCE_METADATA_ERROR_NO_FETCH_ID_FOUND", + } + ESteamLearnInferenceMetadataResult_value = map[string]int32{ + "STEAMLEARN_INFERENCE_METADATA_ERROR": 0, + "STEAMLEARN_INFERENCE_METADATA_SUCCESS": 1, + "STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PROJECT_ID": 2, + "STEAMLEARN_INFERENCE_METADATA_ERROR_NO_PUBLISHED_CONFIG": 3, + "STEAMLEARN_INFERENCE_METADATA_ERROR_FORBIDDEN": 4, + "STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_TIMESTAMP": 5, + "STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PUBLISHED_VERSION": 6, + "STEAMLEARN_INFERENCE_METADATA_ERROR_NO_FETCH_ID_FOUND": 7, + } +) + +func (x ESteamLearnInferenceMetadataResult) Enum() *ESteamLearnInferenceMetadataResult { + p := new(ESteamLearnInferenceMetadataResult) + *p = x + return p +} + +func (x ESteamLearnInferenceMetadataResult) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ESteamLearnInferenceMetadataResult) Descriptor() protoreflect.EnumDescriptor { + return file_steammessages_steamlearn_steamworkssdk_proto_enumTypes[6].Descriptor() +} + +func (ESteamLearnInferenceMetadataResult) Type() protoreflect.EnumType { + return &file_steammessages_steamlearn_steamworkssdk_proto_enumTypes[6] +} + +func (x ESteamLearnInferenceMetadataResult) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Do not use. +func (x *ESteamLearnInferenceMetadataResult) UnmarshalJSON(b []byte) error { + num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b) + if err != nil { + return err + } + *x = ESteamLearnInferenceMetadataResult(num) + return nil +} + +// Deprecated: Use ESteamLearnInferenceMetadataResult.Descriptor instead. +func (ESteamLearnInferenceMetadataResult) EnumDescriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{6} +} + type CMsgSteamLearnDataSourceDescObject struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -921,83 +1001,19 @@ func (x *CMsgSteamLearnDataList) GetData() []*CMsgSteamLearnData { return nil } -type CMsgSteamLearn_AccessData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PublisherId *uint32 `protobuf:"varint,1,opt,name=publisher_id,json=publisherId" json:"publisher_id,omitempty"` - Timestamp *uint32 `protobuf:"varint,2,opt,name=timestamp" json:"timestamp,omitempty"` - RandomValue *uint64 `protobuf:"varint,3,opt,name=random_value,json=randomValue" json:"random_value,omitempty"` -} - -func (x *CMsgSteamLearn_AccessData) Reset() { - *x = CMsgSteamLearn_AccessData{} - if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMsgSteamLearn_AccessData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMsgSteamLearn_AccessData) ProtoMessage() {} - -func (x *CMsgSteamLearn_AccessData) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CMsgSteamLearn_AccessData.ProtoReflect.Descriptor instead. -func (*CMsgSteamLearn_AccessData) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{7} -} - -func (x *CMsgSteamLearn_AccessData) GetPublisherId() uint32 { - if x != nil && x.PublisherId != nil { - return *x.PublisherId - } - return 0 -} - -func (x *CMsgSteamLearn_AccessData) GetTimestamp() uint32 { - if x != nil && x.Timestamp != nil { - return *x.Timestamp - } - return 0 -} - -func (x *CMsgSteamLearn_AccessData) GetRandomValue() uint64 { - if x != nil && x.RandomValue != nil { - return *x.RandomValue - } - return 0 -} - type CMsgSteamLearn_RegisterDataSource_Request struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` - AccessData *CMsgSteamLearn_AccessData `protobuf:"bytes,2,opt,name=access_data,json=accessData" json:"access_data,omitempty"` - DataSource *CMsgSteamLearnDataSource `protobuf:"bytes,3,opt,name=data_source,json=dataSource" json:"data_source,omitempty"` + AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` + DataSource *CMsgSteamLearnDataSource `protobuf:"bytes,3,opt,name=data_source,json=dataSource" json:"data_source,omitempty"` } func (x *CMsgSteamLearn_RegisterDataSource_Request) Reset() { *x = CMsgSteamLearn_RegisterDataSource_Request{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[8] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1010,7 +1026,7 @@ func (x *CMsgSteamLearn_RegisterDataSource_Request) String() string { func (*CMsgSteamLearn_RegisterDataSource_Request) ProtoMessage() {} func (x *CMsgSteamLearn_RegisterDataSource_Request) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[8] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1023,7 +1039,7 @@ func (x *CMsgSteamLearn_RegisterDataSource_Request) ProtoReflect() protoreflect. // Deprecated: Use CMsgSteamLearn_RegisterDataSource_Request.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_RegisterDataSource_Request) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{8} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{7} } func (x *CMsgSteamLearn_RegisterDataSource_Request) GetAccessToken() string { @@ -1033,13 +1049,6 @@ func (x *CMsgSteamLearn_RegisterDataSource_Request) GetAccessToken() string { return "" } -func (x *CMsgSteamLearn_RegisterDataSource_Request) GetAccessData() *CMsgSteamLearn_AccessData { - if x != nil { - return x.AccessData - } - return nil -} - func (x *CMsgSteamLearn_RegisterDataSource_Request) GetDataSource() *CMsgSteamLearnDataSource { if x != nil { return x.DataSource @@ -1059,7 +1068,7 @@ type CMsgSteamLearn_RegisterDataSource_Response struct { func (x *CMsgSteamLearn_RegisterDataSource_Response) Reset() { *x = CMsgSteamLearn_RegisterDataSource_Response{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[9] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1072,7 +1081,7 @@ func (x *CMsgSteamLearn_RegisterDataSource_Response) String() string { func (*CMsgSteamLearn_RegisterDataSource_Response) ProtoMessage() {} func (x *CMsgSteamLearn_RegisterDataSource_Response) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[9] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1085,7 +1094,7 @@ func (x *CMsgSteamLearn_RegisterDataSource_Response) ProtoReflect() protoreflect // Deprecated: Use CMsgSteamLearn_RegisterDataSource_Response.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_RegisterDataSource_Response) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{9} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{8} } func (x *CMsgSteamLearn_RegisterDataSource_Response) GetResult() ESteammLearnRegisterDataSourceResult { @@ -1107,15 +1116,14 @@ type CMsgSteamLearn_CacheData_Request struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` - AccessData *CMsgSteamLearn_AccessData `protobuf:"bytes,2,opt,name=access_data,json=accessData" json:"access_data,omitempty"` - Data *CMsgSteamLearnData `protobuf:"bytes,3,opt,name=data" json:"data,omitempty"` + AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` + Data *CMsgSteamLearnData `protobuf:"bytes,3,opt,name=data" json:"data,omitempty"` } func (x *CMsgSteamLearn_CacheData_Request) Reset() { *x = CMsgSteamLearn_CacheData_Request{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[10] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1128,7 +1136,7 @@ func (x *CMsgSteamLearn_CacheData_Request) String() string { func (*CMsgSteamLearn_CacheData_Request) ProtoMessage() {} func (x *CMsgSteamLearn_CacheData_Request) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[10] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1141,7 +1149,7 @@ func (x *CMsgSteamLearn_CacheData_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSteamLearn_CacheData_Request.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_CacheData_Request) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{10} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{9} } func (x *CMsgSteamLearn_CacheData_Request) GetAccessToken() string { @@ -1151,13 +1159,6 @@ func (x *CMsgSteamLearn_CacheData_Request) GetAccessToken() string { return "" } -func (x *CMsgSteamLearn_CacheData_Request) GetAccessData() *CMsgSteamLearn_AccessData { - if x != nil { - return x.AccessData - } - return nil -} - func (x *CMsgSteamLearn_CacheData_Request) GetData() *CMsgSteamLearnData { if x != nil { return x.Data @@ -1176,7 +1177,7 @@ type CMsgSteamLearn_CacheData_Response struct { func (x *CMsgSteamLearn_CacheData_Response) Reset() { *x = CMsgSteamLearn_CacheData_Response{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[11] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1189,7 +1190,7 @@ func (x *CMsgSteamLearn_CacheData_Response) String() string { func (*CMsgSteamLearn_CacheData_Response) ProtoMessage() {} func (x *CMsgSteamLearn_CacheData_Response) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[11] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1202,7 +1203,7 @@ func (x *CMsgSteamLearn_CacheData_Response) ProtoReflect() protoreflect.Message // Deprecated: Use CMsgSteamLearn_CacheData_Response.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_CacheData_Response) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{11} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{10} } func (x *CMsgSteamLearn_CacheData_Response) GetCacheDataResult() ESteamLearnCacheDataResult { @@ -1217,19 +1218,18 @@ type CMsgSteamLearn_SnapshotProject_Request struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` - AccessData *CMsgSteamLearn_AccessData `protobuf:"bytes,2,opt,name=access_data,json=accessData" json:"access_data,omitempty"` - ProjectId *uint32 `protobuf:"varint,3,opt,name=project_id,json=projectId" json:"project_id,omitempty"` - PublishedVersion *uint32 `protobuf:"varint,7,opt,name=published_version,json=publishedVersion" json:"published_version,omitempty"` - Keys []uint64 `protobuf:"varint,4,rep,name=keys" json:"keys,omitempty"` - Data []*CMsgSteamLearnData `protobuf:"bytes,5,rep,name=data" json:"data,omitempty"` - PendingDataLimitSeconds *uint32 `protobuf:"varint,6,opt,name=pending_data_limit_seconds,json=pendingDataLimitSeconds" json:"pending_data_limit_seconds,omitempty"` + AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` + ProjectId *uint32 `protobuf:"varint,3,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + PublishedVersion *uint32 `protobuf:"varint,7,opt,name=published_version,json=publishedVersion" json:"published_version,omitempty"` + Keys []uint64 `protobuf:"varint,4,rep,name=keys" json:"keys,omitempty"` + Data []*CMsgSteamLearnData `protobuf:"bytes,5,rep,name=data" json:"data,omitempty"` + PendingDataLimitSeconds *uint32 `protobuf:"varint,6,opt,name=pending_data_limit_seconds,json=pendingDataLimitSeconds" json:"pending_data_limit_seconds,omitempty"` } func (x *CMsgSteamLearn_SnapshotProject_Request) Reset() { *x = CMsgSteamLearn_SnapshotProject_Request{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[12] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1242,7 +1242,7 @@ func (x *CMsgSteamLearn_SnapshotProject_Request) String() string { func (*CMsgSteamLearn_SnapshotProject_Request) ProtoMessage() {} func (x *CMsgSteamLearn_SnapshotProject_Request) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[12] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1255,7 +1255,7 @@ func (x *CMsgSteamLearn_SnapshotProject_Request) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgSteamLearn_SnapshotProject_Request.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_SnapshotProject_Request) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{12} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{11} } func (x *CMsgSteamLearn_SnapshotProject_Request) GetAccessToken() string { @@ -1265,13 +1265,6 @@ func (x *CMsgSteamLearn_SnapshotProject_Request) GetAccessToken() string { return "" } -func (x *CMsgSteamLearn_SnapshotProject_Request) GetAccessData() *CMsgSteamLearn_AccessData { - if x != nil { - return x.AccessData - } - return nil -} - func (x *CMsgSteamLearn_SnapshotProject_Request) GetProjectId() uint32 { if x != nil && x.ProjectId != nil { return *x.ProjectId @@ -1318,7 +1311,7 @@ type CMsgSteamLearn_SnapshotProject_Response struct { func (x *CMsgSteamLearn_SnapshotProject_Response) Reset() { *x = CMsgSteamLearn_SnapshotProject_Response{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[13] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1331,7 +1324,7 @@ func (x *CMsgSteamLearn_SnapshotProject_Response) String() string { func (*CMsgSteamLearn_SnapshotProject_Response) ProtoMessage() {} func (x *CMsgSteamLearn_SnapshotProject_Response) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[13] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1344,7 +1337,7 @@ func (x *CMsgSteamLearn_SnapshotProject_Response) ProtoReflect() protoreflect.Me // Deprecated: Use CMsgSteamLearn_SnapshotProject_Response.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_SnapshotProject_Response) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{13} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{12} } func (x *CMsgSteamLearn_SnapshotProject_Response) GetSnapshotResult() ESteamLearnSnapshotProjectResult { @@ -1361,12 +1354,13 @@ type CMsgSteamLearn_BatchOperation_Request struct { CacheDataRequests []*CMsgSteamLearn_CacheData_Request `protobuf:"bytes,1,rep,name=cache_data_requests,json=cacheDataRequests" json:"cache_data_requests,omitempty"` SnapshotRequests []*CMsgSteamLearn_SnapshotProject_Request `protobuf:"bytes,2,rep,name=snapshot_requests,json=snapshotRequests" json:"snapshot_requests,omitempty"` + InferenceRequests []*CMsgSteamLearn_Inference_Request `protobuf:"bytes,3,rep,name=inference_requests,json=inferenceRequests" json:"inference_requests,omitempty"` } func (x *CMsgSteamLearn_BatchOperation_Request) Reset() { *x = CMsgSteamLearn_BatchOperation_Request{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[14] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1379,7 +1373,7 @@ func (x *CMsgSteamLearn_BatchOperation_Request) String() string { func (*CMsgSteamLearn_BatchOperation_Request) ProtoMessage() {} func (x *CMsgSteamLearn_BatchOperation_Request) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[14] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1392,7 +1386,7 @@ func (x *CMsgSteamLearn_BatchOperation_Request) ProtoReflect() protoreflect.Mess // Deprecated: Use CMsgSteamLearn_BatchOperation_Request.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_BatchOperation_Request) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{14} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{13} } func (x *CMsgSteamLearn_BatchOperation_Request) GetCacheDataRequests() []*CMsgSteamLearn_CacheData_Request { @@ -1409,6 +1403,13 @@ func (x *CMsgSteamLearn_BatchOperation_Request) GetSnapshotRequests() []*CMsgSte return nil } +func (x *CMsgSteamLearn_BatchOperation_Request) GetInferenceRequests() []*CMsgSteamLearn_Inference_Request { + if x != nil { + return x.InferenceRequests + } + return nil +} + type CMsgSteamLearn_BatchOperation_Response struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1416,12 +1417,13 @@ type CMsgSteamLearn_BatchOperation_Response struct { CacheDataResponses []*CMsgSteamLearn_CacheData_Response `protobuf:"bytes,1,rep,name=cache_data_responses,json=cacheDataResponses" json:"cache_data_responses,omitempty"` SnapshotResponses []*CMsgSteamLearn_SnapshotProject_Response `protobuf:"bytes,2,rep,name=snapshot_responses,json=snapshotResponses" json:"snapshot_responses,omitempty"` + InferenceResponses []*CMsgSteamLearn_Inference_Response `protobuf:"bytes,3,rep,name=inference_responses,json=inferenceResponses" json:"inference_responses,omitempty"` } func (x *CMsgSteamLearn_BatchOperation_Response) Reset() { *x = CMsgSteamLearn_BatchOperation_Response{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[15] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1434,7 +1436,7 @@ func (x *CMsgSteamLearn_BatchOperation_Response) String() string { func (*CMsgSteamLearn_BatchOperation_Response) ProtoMessage() {} func (x *CMsgSteamLearn_BatchOperation_Response) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[15] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1447,7 +1449,7 @@ func (x *CMsgSteamLearn_BatchOperation_Response) ProtoReflect() protoreflect.Mes // Deprecated: Use CMsgSteamLearn_BatchOperation_Response.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_BatchOperation_Response) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{15} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{14} } func (x *CMsgSteamLearn_BatchOperation_Response) GetCacheDataResponses() []*CMsgSteamLearn_CacheData_Response { @@ -1464,33 +1466,41 @@ func (x *CMsgSteamLearn_BatchOperation_Response) GetSnapshotResponses() []*CMsgS return nil } -type CMsgSteamLearnHMACKeys struct { +func (x *CMsgSteamLearn_BatchOperation_Response) GetInferenceResponses() []*CMsgSteamLearn_Inference_Response { + if x != nil { + return x.InferenceResponses + } + return nil +} + +type CMsgSteamLearnAccessTokens struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RegisterDataSourceKey *string `protobuf:"bytes,1,opt,name=register_data_source_key,json=registerDataSourceKey" json:"register_data_source_key,omitempty"` - CacheDataKeys []*CMsgSteamLearnHMACKeys_CacheDataKeys `protobuf:"bytes,2,rep,name=cache_data_keys,json=cacheDataKeys" json:"cache_data_keys,omitempty"` - SnapshotProjectKeys []*CMsgSteamLearnHMACKeys_SnapshotProjectKeys `protobuf:"bytes,3,rep,name=snapshot_project_keys,json=snapshotProjectKeys" json:"snapshot_project_keys,omitempty"` + RegisterDataSourceAccessToken *string `protobuf:"bytes,1,opt,name=register_data_source_access_token,json=registerDataSourceAccessToken" json:"register_data_source_access_token,omitempty"` + CacheDataAccessTokens []*CMsgSteamLearnAccessTokens_CacheDataAccessToken `protobuf:"bytes,2,rep,name=cache_data_access_tokens,json=cacheDataAccessTokens" json:"cache_data_access_tokens,omitempty"` + SnapshotProjectAccessTokens []*CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken `protobuf:"bytes,3,rep,name=snapshot_project_access_tokens,json=snapshotProjectAccessTokens" json:"snapshot_project_access_tokens,omitempty"` + InferenceAccessTokens []*CMsgSteamLearnAccessTokens_InferenceAccessToken `protobuf:"bytes,4,rep,name=inference_access_tokens,json=inferenceAccessTokens" json:"inference_access_tokens,omitempty"` } -func (x *CMsgSteamLearnHMACKeys) Reset() { - *x = CMsgSteamLearnHMACKeys{} +func (x *CMsgSteamLearnAccessTokens) Reset() { + *x = CMsgSteamLearnAccessTokens{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[16] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgSteamLearnHMACKeys) String() string { +func (x *CMsgSteamLearnAccessTokens) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgSteamLearnHMACKeys) ProtoMessage() {} +func (*CMsgSteamLearnAccessTokens) ProtoMessage() {} -func (x *CMsgSteamLearnHMACKeys) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[16] +func (x *CMsgSteamLearnAccessTokens) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1501,33 +1511,40 @@ func (x *CMsgSteamLearnHMACKeys) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CMsgSteamLearnHMACKeys.ProtoReflect.Descriptor instead. -func (*CMsgSteamLearnHMACKeys) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{16} +// Deprecated: Use CMsgSteamLearnAccessTokens.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnAccessTokens) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{15} } -func (x *CMsgSteamLearnHMACKeys) GetRegisterDataSourceKey() string { - if x != nil && x.RegisterDataSourceKey != nil { - return *x.RegisterDataSourceKey +func (x *CMsgSteamLearnAccessTokens) GetRegisterDataSourceAccessToken() string { + if x != nil && x.RegisterDataSourceAccessToken != nil { + return *x.RegisterDataSourceAccessToken } return "" } -func (x *CMsgSteamLearnHMACKeys) GetCacheDataKeys() []*CMsgSteamLearnHMACKeys_CacheDataKeys { +func (x *CMsgSteamLearnAccessTokens) GetCacheDataAccessTokens() []*CMsgSteamLearnAccessTokens_CacheDataAccessToken { + if x != nil { + return x.CacheDataAccessTokens + } + return nil +} + +func (x *CMsgSteamLearnAccessTokens) GetSnapshotProjectAccessTokens() []*CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken { if x != nil { - return x.CacheDataKeys + return x.SnapshotProjectAccessTokens } return nil } -func (x *CMsgSteamLearnHMACKeys) GetSnapshotProjectKeys() []*CMsgSteamLearnHMACKeys_SnapshotProjectKeys { +func (x *CMsgSteamLearnAccessTokens) GetInferenceAccessTokens() []*CMsgSteamLearnAccessTokens_InferenceAccessToken { if x != nil { - return x.SnapshotProjectKeys + return x.InferenceAccessTokens } return nil } -type CMsgSteamLearn_GetHMACKeys_Request struct { +type CMsgSteamLearn_GetAccessTokens_Request struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -1535,23 +1552,23 @@ type CMsgSteamLearn_GetHMACKeys_Request struct { Appid *uint32 `protobuf:"varint,1,opt,name=appid" json:"appid,omitempty"` } -func (x *CMsgSteamLearn_GetHMACKeys_Request) Reset() { - *x = CMsgSteamLearn_GetHMACKeys_Request{} +func (x *CMsgSteamLearn_GetAccessTokens_Request) Reset() { + *x = CMsgSteamLearn_GetAccessTokens_Request{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[17] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgSteamLearn_GetHMACKeys_Request) String() string { +func (x *CMsgSteamLearn_GetAccessTokens_Request) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgSteamLearn_GetHMACKeys_Request) ProtoMessage() {} +func (*CMsgSteamLearn_GetAccessTokens_Request) ProtoMessage() {} -func (x *CMsgSteamLearn_GetHMACKeys_Request) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[17] +func (x *CMsgSteamLearn_GetAccessTokens_Request) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1562,44 +1579,44 @@ func (x *CMsgSteamLearn_GetHMACKeys_Request) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use CMsgSteamLearn_GetHMACKeys_Request.ProtoReflect.Descriptor instead. -func (*CMsgSteamLearn_GetHMACKeys_Request) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{17} +// Deprecated: Use CMsgSteamLearn_GetAccessTokens_Request.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_GetAccessTokens_Request) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{16} } -func (x *CMsgSteamLearn_GetHMACKeys_Request) GetAppid() uint32 { +func (x *CMsgSteamLearn_GetAccessTokens_Request) GetAppid() uint32 { if x != nil && x.Appid != nil { return *x.Appid } return 0 } -type CMsgSteamLearn_GetHMACKeys_Response struct { +type CMsgSteamLearn_GetAccessTokens_Response struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Result *ESteamLearnGetHMACKeysResult `protobuf:"varint,1,opt,name=result,enum=dota.ESteamLearnGetHMACKeysResult" json:"result,omitempty"` - Keys *CMsgSteamLearnHMACKeys `protobuf:"bytes,2,opt,name=keys" json:"keys,omitempty"` + Result *ESteamLearnGetAccessTokensResult `protobuf:"varint,1,opt,name=result,enum=dota.ESteamLearnGetAccessTokensResult" json:"result,omitempty"` + AccessTokens *CMsgSteamLearnAccessTokens `protobuf:"bytes,2,opt,name=access_tokens,json=accessTokens" json:"access_tokens,omitempty"` } -func (x *CMsgSteamLearn_GetHMACKeys_Response) Reset() { - *x = CMsgSteamLearn_GetHMACKeys_Response{} +func (x *CMsgSteamLearn_GetAccessTokens_Response) Reset() { + *x = CMsgSteamLearn_GetAccessTokens_Response{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[18] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgSteamLearn_GetHMACKeys_Response) String() string { +func (x *CMsgSteamLearn_GetAccessTokens_Response) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgSteamLearn_GetHMACKeys_Response) ProtoMessage() {} +func (*CMsgSteamLearn_GetAccessTokens_Response) ProtoMessage() {} -func (x *CMsgSteamLearn_GetHMACKeys_Response) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[18] +func (x *CMsgSteamLearn_GetAccessTokens_Response) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1610,21 +1627,21 @@ func (x *CMsgSteamLearn_GetHMACKeys_Response) ProtoReflect() protoreflect.Messag return mi.MessageOf(x) } -// Deprecated: Use CMsgSteamLearn_GetHMACKeys_Response.ProtoReflect.Descriptor instead. -func (*CMsgSteamLearn_GetHMACKeys_Response) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{18} +// Deprecated: Use CMsgSteamLearn_GetAccessTokens_Response.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_GetAccessTokens_Response) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{17} } -func (x *CMsgSteamLearn_GetHMACKeys_Response) GetResult() ESteamLearnGetHMACKeysResult { +func (x *CMsgSteamLearn_GetAccessTokens_Response) GetResult() ESteamLearnGetAccessTokensResult { if x != nil && x.Result != nil { return *x.Result } - return ESteamLearnGetHMACKeysResult_STEAMLEARN_GET_HMAC_KEYS_SUCCESS + return ESteamLearnGetAccessTokensResult_STEAMLEARN_GET_ACCESS_TOKENS_ERROR } -func (x *CMsgSteamLearn_GetHMACKeys_Response) GetKeys() *CMsgSteamLearnHMACKeys { +func (x *CMsgSteamLearn_GetAccessTokens_Response) GetAccessTokens() *CMsgSteamLearnAccessTokens { if x != nil { - return x.Keys + return x.AccessTokens } return nil } @@ -1634,19 +1651,18 @@ type CMsgSteamLearn_Inference_Request struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` - AccessData *CMsgSteamLearn_AccessData `protobuf:"bytes,2,opt,name=access_data,json=accessData" json:"access_data,omitempty"` - ProjectId *uint32 `protobuf:"varint,3,opt,name=project_id,json=projectId" json:"project_id,omitempty"` - PublishedVersion *uint32 `protobuf:"varint,4,opt,name=published_version,json=publishedVersion" json:"published_version,omitempty"` - OverrideTrainId *uint32 `protobuf:"varint,5,opt,name=override_train_id,json=overrideTrainId" json:"override_train_id,omitempty"` - Data *CMsgSteamLearnDataList `protobuf:"bytes,6,opt,name=data" json:"data,omitempty"` - AdditionalData []float32 `protobuf:"fixed32,7,rep,name=additional_data,json=additionalData" json:"additional_data,omitempty"` + AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` + ProjectId *uint32 `protobuf:"varint,3,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + PublishedVersion *uint32 `protobuf:"varint,4,opt,name=published_version,json=publishedVersion" json:"published_version,omitempty"` + OverrideTrainId *uint32 `protobuf:"varint,5,opt,name=override_train_id,json=overrideTrainId" json:"override_train_id,omitempty"` + Data *CMsgSteamLearnDataList `protobuf:"bytes,6,opt,name=data" json:"data,omitempty"` + AdditionalData []float32 `protobuf:"fixed32,7,rep,name=additional_data,json=additionalData" json:"additional_data,omitempty"` } func (x *CMsgSteamLearn_Inference_Request) Reset() { *x = CMsgSteamLearn_Inference_Request{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[19] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1659,7 +1675,7 @@ func (x *CMsgSteamLearn_Inference_Request) String() string { func (*CMsgSteamLearn_Inference_Request) ProtoMessage() {} func (x *CMsgSteamLearn_Inference_Request) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[19] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1672,7 +1688,7 @@ func (x *CMsgSteamLearn_Inference_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use CMsgSteamLearn_Inference_Request.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_Inference_Request) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{19} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{18} } func (x *CMsgSteamLearn_Inference_Request) GetAccessToken() string { @@ -1682,13 +1698,6 @@ func (x *CMsgSteamLearn_Inference_Request) GetAccessToken() string { return "" } -func (x *CMsgSteamLearn_Inference_Request) GetAccessData() *CMsgSteamLearn_AccessData { - if x != nil { - return x.AccessData - } - return nil -} - func (x *CMsgSteamLearn_Inference_Request) GetProjectId() uint32 { if x != nil && x.ProjectId != nil { return *x.ProjectId @@ -1724,31 +1733,34 @@ func (x *CMsgSteamLearn_Inference_Request) GetAdditionalData() []float32 { return nil } -type CMsgSteamLearn_InferenceBackend_Response struct { +type CMsgSteamLearn_InferenceMetadata_Request struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Outputs []*CMsgSteamLearn_InferenceBackend_Response_Output `protobuf:"bytes,1,rep,name=outputs" json:"outputs,omitempty"` + AccessToken *string `protobuf:"bytes,1,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` + ProjectId *uint32 `protobuf:"varint,3,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + PublishedVersion *uint32 `protobuf:"varint,4,opt,name=published_version,json=publishedVersion" json:"published_version,omitempty"` + OverrideTrainId *uint32 `protobuf:"varint,5,opt,name=override_train_id,json=overrideTrainId" json:"override_train_id,omitempty"` } -func (x *CMsgSteamLearn_InferenceBackend_Response) Reset() { - *x = CMsgSteamLearn_InferenceBackend_Response{} +func (x *CMsgSteamLearn_InferenceMetadata_Request) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Request{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[20] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgSteamLearn_InferenceBackend_Response) String() string { +func (x *CMsgSteamLearn_InferenceMetadata_Request) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgSteamLearn_InferenceBackend_Response) ProtoMessage() {} +func (*CMsgSteamLearn_InferenceMetadata_Request) ProtoMessage() {} -func (x *CMsgSteamLearn_InferenceBackend_Response) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[20] +func (x *CMsgSteamLearn_InferenceMetadata_Request) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1759,44 +1771,65 @@ func (x *CMsgSteamLearn_InferenceBackend_Response) ProtoReflect() protoreflect.M return mi.MessageOf(x) } -// Deprecated: Use CMsgSteamLearn_InferenceBackend_Response.ProtoReflect.Descriptor instead. -func (*CMsgSteamLearn_InferenceBackend_Response) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{20} +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Request.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Request) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{19} } -func (x *CMsgSteamLearn_InferenceBackend_Response) GetOutputs() []*CMsgSteamLearn_InferenceBackend_Response_Output { - if x != nil { - return x.Outputs +func (x *CMsgSteamLearn_InferenceMetadata_Request) GetAccessToken() string { + if x != nil && x.AccessToken != nil { + return *x.AccessToken } - return nil + return "" } -type CMsgSteamLearn_Inference_Response struct { +func (x *CMsgSteamLearn_InferenceMetadata_Request) GetProjectId() uint32 { + if x != nil && x.ProjectId != nil { + return *x.ProjectId + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Request) GetPublishedVersion() uint32 { + if x != nil && x.PublishedVersion != nil { + return *x.PublishedVersion + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Request) GetOverrideTrainId() uint32 { + if x != nil && x.OverrideTrainId != nil { + return *x.OverrideTrainId + } + return 0 +} + +type CMsgSteamLearn_InferenceMetadataBackend_Request struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - InferenceResult *ESteamLearnInferenceResult `protobuf:"varint,1,opt,name=inference_result,json=inferenceResult,enum=dota.ESteamLearnInferenceResult" json:"inference_result,omitempty"` - BackendResponse *CMsgSteamLearn_InferenceBackend_Response `protobuf:"bytes,2,opt,name=backend_response,json=backendResponse" json:"backend_response,omitempty"` + ProjectId *uint32 `protobuf:"varint,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + FetchId *uint32 `protobuf:"varint,2,opt,name=fetch_id,json=fetchId" json:"fetch_id,omitempty"` } -func (x *CMsgSteamLearn_Inference_Response) Reset() { - *x = CMsgSteamLearn_Inference_Response{} +func (x *CMsgSteamLearn_InferenceMetadataBackend_Request) Reset() { + *x = CMsgSteamLearn_InferenceMetadataBackend_Request{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[21] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgSteamLearn_Inference_Response) String() string { +func (x *CMsgSteamLearn_InferenceMetadataBackend_Request) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgSteamLearn_Inference_Response) ProtoMessage() {} +func (*CMsgSteamLearn_InferenceMetadataBackend_Request) ProtoMessage() {} -func (x *CMsgSteamLearn_Inference_Response) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[21] +func (x *CMsgSteamLearn_InferenceMetadataBackend_Request) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1807,52 +1840,665 @@ func (x *CMsgSteamLearn_Inference_Response) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use CMsgSteamLearn_Inference_Response.ProtoReflect.Descriptor instead. -func (*CMsgSteamLearn_Inference_Response) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21} +// Deprecated: Use CMsgSteamLearn_InferenceMetadataBackend_Request.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadataBackend_Request) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{20} } -func (x *CMsgSteamLearn_Inference_Response) GetInferenceResult() ESteamLearnInferenceResult { - if x != nil && x.InferenceResult != nil { - return *x.InferenceResult +func (x *CMsgSteamLearn_InferenceMetadataBackend_Request) GetProjectId() uint32 { + if x != nil && x.ProjectId != nil { + return *x.ProjectId } - return ESteamLearnInferenceResult_STEAMLEARN_INFERENCE_ERROR + return 0 } -func (x *CMsgSteamLearn_Inference_Response) GetBackendResponse() *CMsgSteamLearn_InferenceBackend_Response { - if x != nil { - return x.BackendResponse +func (x *CMsgSteamLearn_InferenceMetadataBackend_Request) GetFetchId() uint32 { + if x != nil && x.FetchId != nil { + return *x.FetchId } - return nil + return 0 } -type CMsgSteamLearnHMACKeys_CacheDataKeys struct { +type CMsgSteamLearn_InferenceMetadata_Response struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - DataSourceId *uint32 `protobuf:"varint,1,opt,name=data_source_id,json=dataSourceId" json:"data_source_id,omitempty"` - Version *uint32 `protobuf:"varint,3,opt,name=version" json:"version,omitempty"` - Key *string `protobuf:"bytes,2,opt,name=key" json:"key,omitempty"` + InferenceMetadataResult *ESteamLearnInferenceMetadataResult `protobuf:"varint,1,opt,name=inference_metadata_result,json=inferenceMetadataResult,enum=dota.ESteamLearnInferenceMetadataResult" json:"inference_metadata_result,omitempty"` + RowRange *CMsgSteamLearn_InferenceMetadata_Response_RowRange `protobuf:"bytes,2,opt,name=row_range,json=rowRange" json:"row_range,omitempty"` + Ranges []*CMsgSteamLearn_InferenceMetadata_Response_Range `protobuf:"bytes,3,rep,name=ranges" json:"ranges,omitempty"` + StdDevs []*CMsgSteamLearn_InferenceMetadata_Response_StdDev `protobuf:"bytes,4,rep,name=std_devs,json=stdDevs" json:"std_devs,omitempty"` + CompactTables []*CMsgSteamLearn_InferenceMetadata_Response_CompactTable `protobuf:"bytes,5,rep,name=compact_tables,json=compactTables" json:"compact_tables,omitempty"` + Kmeans []*CMsgSteamLearn_InferenceMetadata_Response_KMeans `protobuf:"bytes,6,rep,name=kmeans" json:"kmeans,omitempty"` + SnapshotHistogram *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram `protobuf:"bytes,7,opt,name=snapshot_histogram,json=snapshotHistogram" json:"snapshot_histogram,omitempty"` } -func (x *CMsgSteamLearnHMACKeys_CacheDataKeys) Reset() { - *x = CMsgSteamLearnHMACKeys_CacheDataKeys{} +func (x *CMsgSteamLearn_InferenceMetadata_Response) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[22] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgSteamLearnHMACKeys_CacheDataKeys) String() string { +func (x *CMsgSteamLearn_InferenceMetadata_Response) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgSteamLearnHMACKeys_CacheDataKeys) ProtoMessage() {} +func (*CMsgSteamLearn_InferenceMetadata_Response) ProtoMessage() {} -func (x *CMsgSteamLearnHMACKeys_CacheDataKeys) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[22] +func (x *CMsgSteamLearn_InferenceMetadata_Response) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response) GetInferenceMetadataResult() ESteamLearnInferenceMetadataResult { + if x != nil && x.InferenceMetadataResult != nil { + return *x.InferenceMetadataResult + } + return ESteamLearnInferenceMetadataResult_STEAMLEARN_INFERENCE_METADATA_ERROR +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response) GetRowRange() *CMsgSteamLearn_InferenceMetadata_Response_RowRange { + if x != nil { + return x.RowRange + } + return nil +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response) GetRanges() []*CMsgSteamLearn_InferenceMetadata_Response_Range { + if x != nil { + return x.Ranges + } + return nil +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response) GetStdDevs() []*CMsgSteamLearn_InferenceMetadata_Response_StdDev { + if x != nil { + return x.StdDevs + } + return nil +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response) GetCompactTables() []*CMsgSteamLearn_InferenceMetadata_Response_CompactTable { + if x != nil { + return x.CompactTables + } + return nil +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response) GetKmeans() []*CMsgSteamLearn_InferenceMetadata_Response_KMeans { + if x != nil { + return x.Kmeans + } + return nil +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response) GetSnapshotHistogram() *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram { + if x != nil { + return x.SnapshotHistogram + } + return nil +} + +type CMsgSteamLearn_InferenceBackend_Response struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Outputs []*CMsgSteamLearn_InferenceBackend_Response_Output `protobuf:"bytes,1,rep,name=outputs" json:"outputs,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceBackend_Response) Reset() { + *x = CMsgSteamLearn_InferenceBackend_Response{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceBackend_Response) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceBackend_Response) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceBackend_Response) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceBackend_Response.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceBackend_Response) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{22} +} + +func (x *CMsgSteamLearn_InferenceBackend_Response) GetOutputs() []*CMsgSteamLearn_InferenceBackend_Response_Output { + if x != nil { + return x.Outputs + } + return nil +} + +type CMsgSteamLearn_Inference_Response struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + InferenceResult *ESteamLearnInferenceResult `protobuf:"varint,1,opt,name=inference_result,json=inferenceResult,enum=dota.ESteamLearnInferenceResult" json:"inference_result,omitempty"` + BackendResponse *CMsgSteamLearn_InferenceBackend_Response `protobuf:"bytes,2,opt,name=backend_response,json=backendResponse" json:"backend_response,omitempty"` + Keys []uint64 `protobuf:"varint,3,rep,name=keys" json:"keys,omitempty"` +} + +func (x *CMsgSteamLearn_Inference_Response) Reset() { + *x = CMsgSteamLearn_Inference_Response{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_Inference_Response) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_Inference_Response) ProtoMessage() {} + +func (x *CMsgSteamLearn_Inference_Response) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_Inference_Response.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_Inference_Response) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{23} +} + +func (x *CMsgSteamLearn_Inference_Response) GetInferenceResult() ESteamLearnInferenceResult { + if x != nil && x.InferenceResult != nil { + return *x.InferenceResult + } + return ESteamLearnInferenceResult_STEAMLEARN_INFERENCE_ERROR +} + +func (x *CMsgSteamLearn_Inference_Response) GetBackendResponse() *CMsgSteamLearn_InferenceBackend_Response { + if x != nil { + return x.BackendResponse + } + return nil +} + +func (x *CMsgSteamLearn_Inference_Response) GetKeys() []uint64 { + if x != nil { + return x.Keys + } + return nil +} + +type CMsgSteamLearnAccessTokens_CacheDataAccessToken struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + DataSourceId *uint32 `protobuf:"varint,1,opt,name=data_source_id,json=dataSourceId" json:"data_source_id,omitempty"` + AccessToken *string `protobuf:"bytes,2,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` +} + +func (x *CMsgSteamLearnAccessTokens_CacheDataAccessToken) Reset() { + *x = CMsgSteamLearnAccessTokens_CacheDataAccessToken{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearnAccessTokens_CacheDataAccessToken) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearnAccessTokens_CacheDataAccessToken) ProtoMessage() {} + +func (x *CMsgSteamLearnAccessTokens_CacheDataAccessToken) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearnAccessTokens_CacheDataAccessToken.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnAccessTokens_CacheDataAccessToken) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{15, 0} +} + +func (x *CMsgSteamLearnAccessTokens_CacheDataAccessToken) GetDataSourceId() uint32 { + if x != nil && x.DataSourceId != nil { + return *x.DataSourceId + } + return 0 +} + +func (x *CMsgSteamLearnAccessTokens_CacheDataAccessToken) GetAccessToken() string { + if x != nil && x.AccessToken != nil { + return *x.AccessToken + } + return "" +} + +type CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ProjectId *uint32 `protobuf:"varint,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + AccessToken *string `protobuf:"bytes,2,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` +} + +func (x *CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken) Reset() { + *x = CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken) ProtoMessage() {} + +func (x *CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{15, 1} +} + +func (x *CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken) GetProjectId() uint32 { + if x != nil && x.ProjectId != nil { + return *x.ProjectId + } + return 0 +} + +func (x *CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken) GetAccessToken() string { + if x != nil && x.AccessToken != nil { + return *x.AccessToken + } + return "" +} + +type CMsgSteamLearnAccessTokens_InferenceAccessToken struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ProjectId *uint32 `protobuf:"varint,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"` + AccessToken *string `protobuf:"bytes,2,opt,name=access_token,json=accessToken" json:"access_token,omitempty"` +} + +func (x *CMsgSteamLearnAccessTokens_InferenceAccessToken) Reset() { + *x = CMsgSteamLearnAccessTokens_InferenceAccessToken{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearnAccessTokens_InferenceAccessToken) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearnAccessTokens_InferenceAccessToken) ProtoMessage() {} + +func (x *CMsgSteamLearnAccessTokens_InferenceAccessToken) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearnAccessTokens_InferenceAccessToken.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearnAccessTokens_InferenceAccessToken) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{15, 2} +} + +func (x *CMsgSteamLearnAccessTokens_InferenceAccessToken) GetProjectId() uint32 { + if x != nil && x.ProjectId != nil { + return *x.ProjectId + } + return 0 +} + +func (x *CMsgSteamLearnAccessTokens_InferenceAccessToken) GetAccessToken() string { + if x != nil && x.AccessToken != nil { + return *x.AccessToken + } + return "" +} + +type CMsgSteamLearn_InferenceMetadata_Response_RowRange struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MinRow *uint64 `protobuf:"varint,1,opt,name=min_row,json=minRow" json:"min_row,omitempty"` + MaxRow *uint64 `protobuf:"varint,2,opt,name=max_row,json=maxRow" json:"max_row,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_RowRange) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_RowRange{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_RowRange) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_RowRange) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_RowRange) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_RowRange.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_RowRange) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 0} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_RowRange) GetMinRow() uint64 { + if x != nil && x.MinRow != nil { + return *x.MinRow + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_RowRange) GetMaxRow() uint64 { + if x != nil && x.MaxRow != nil { + return *x.MaxRow + } + return 0 +} + +type CMsgSteamLearn_InferenceMetadata_Response_Range struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + DataElementPath *string `protobuf:"bytes,1,opt,name=data_element_path,json=dataElementPath" json:"data_element_path,omitempty"` + MinValue *float32 `protobuf:"fixed32,2,opt,name=min_value,json=minValue" json:"min_value,omitempty"` + MaxValue *float32 `protobuf:"fixed32,3,opt,name=max_value,json=maxValue" json:"max_value,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_Range) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_Range{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_Range) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_Range) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_Range) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_Range.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_Range) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 1} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_Range) GetDataElementPath() string { + if x != nil && x.DataElementPath != nil { + return *x.DataElementPath + } + return "" +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_Range) GetMinValue() float32 { + if x != nil && x.MinValue != nil { + return *x.MinValue + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_Range) GetMaxValue() float32 { + if x != nil && x.MaxValue != nil { + return *x.MaxValue + } + return 0 +} + +type CMsgSteamLearn_InferenceMetadata_Response_StdDev struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + DataElementPath *string `protobuf:"bytes,1,opt,name=data_element_path,json=dataElementPath" json:"data_element_path,omitempty"` + Mean *float32 `protobuf:"fixed32,2,opt,name=mean" json:"mean,omitempty"` + StdDev *float32 `protobuf:"fixed32,3,opt,name=std_dev,json=stdDev" json:"std_dev,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_StdDev) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_StdDev{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_StdDev) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_StdDev) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_StdDev) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_StdDev.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_StdDev) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 2} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_StdDev) GetDataElementPath() string { + if x != nil && x.DataElementPath != nil { + return *x.DataElementPath + } + return "" +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_StdDev) GetMean() float32 { + if x != nil && x.Mean != nil { + return *x.Mean + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_StdDev) GetStdDev() float32 { + if x != nil && x.StdDev != nil { + return *x.StdDev + } + return 0 +} + +type CMsgSteamLearn_InferenceMetadata_Response_CompactTable struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + MapValues []*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry `protobuf:"bytes,2,rep,name=map_values,json=mapValues" json:"map_values,omitempty"` + MapMappings []*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry `protobuf:"bytes,3,rep,name=map_mappings,json=mapMappings" json:"map_mappings,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_CompactTable{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_CompactTable.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 3} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable) GetMapValues() []*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry { + if x != nil { + return x.MapValues + } + return nil +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable) GetMapMappings() []*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry { + if x != nil { + return x.MapMappings + } + return nil +} + +type CMsgSteamLearn_InferenceMetadata_Response_KMeans struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` + Clusters []*CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster `protobuf:"bytes,2,rep,name=clusters" json:"clusters,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_KMeans{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_KMeans) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1863,59 +2509,123 @@ func (x *CMsgSteamLearnHMACKeys_CacheDataKeys) ProtoReflect() protoreflect.Messa return mi.MessageOf(x) } -// Deprecated: Use CMsgSteamLearnHMACKeys_CacheDataKeys.ProtoReflect.Descriptor instead. -func (*CMsgSteamLearnHMACKeys_CacheDataKeys) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{16, 0} +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_KMeans.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_KMeans) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 4} } -func (x *CMsgSteamLearnHMACKeys_CacheDataKeys) GetDataSourceId() uint32 { - if x != nil && x.DataSourceId != nil { - return *x.DataSourceId +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans) GetClusters() []*CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster { + if x != nil { + return x.Clusters + } + return nil +} + +type CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MinValue *float32 `protobuf:"fixed32,1,opt,name=min_value,json=minValue" json:"min_value,omitempty"` + MaxValue *float32 `protobuf:"fixed32,2,opt,name=max_value,json=maxValue" json:"max_value,omitempty"` + NumBuckets *uint32 `protobuf:"varint,3,opt,name=num_buckets,json=numBuckets" json:"num_buckets,omitempty"` + BucketCounts []uint32 `protobuf:"varint,4,rep,name=bucket_counts,json=bucketCounts" json:"bucket_counts,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 5} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) GetMinValue() float32 { + if x != nil && x.MinValue != nil { + return *x.MinValue } return 0 } -func (x *CMsgSteamLearnHMACKeys_CacheDataKeys) GetVersion() uint32 { - if x != nil && x.Version != nil { - return *x.Version +func (x *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) GetMaxValue() float32 { + if x != nil && x.MaxValue != nil { + return *x.MaxValue } return 0 } -func (x *CMsgSteamLearnHMACKeys_CacheDataKeys) GetKey() string { - if x != nil && x.Key != nil { - return *x.Key +func (x *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) GetNumBuckets() uint32 { + if x != nil && x.NumBuckets != nil { + return *x.NumBuckets } - return "" + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram) GetBucketCounts() []uint32 { + if x != nil { + return x.BucketCounts + } + return nil } -type CMsgSteamLearnHMACKeys_SnapshotProjectKeys struct { +type CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ProjectId *uint32 `protobuf:"varint,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"` - PublishedVersion *uint32 `protobuf:"varint,3,opt,name=published_version,json=publishedVersion" json:"published_version,omitempty"` - Key *string `protobuf:"bytes,2,opt,name=key" json:"key,omitempty"` + Value *uint32 `protobuf:"varint,1,opt,name=value" json:"value,omitempty"` + Mapping *uint32 `protobuf:"varint,2,opt,name=mapping" json:"mapping,omitempty"` + Count *uint64 `protobuf:"varint,3,opt,name=count" json:"count,omitempty"` } -func (x *CMsgSteamLearnHMACKeys_SnapshotProjectKeys) Reset() { - *x = CMsgSteamLearnHMACKeys_SnapshotProjectKeys{} +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[23] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CMsgSteamLearnHMACKeys_SnapshotProjectKeys) String() string { +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CMsgSteamLearnHMACKeys_SnapshotProjectKeys) ProtoMessage() {} +func (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry) ProtoMessage() {} -func (x *CMsgSteamLearnHMACKeys_SnapshotProjectKeys) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[23] +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1926,30 +2636,274 @@ func (x *CMsgSteamLearnHMACKeys_SnapshotProjectKeys) ProtoReflect() protoreflect return mi.MessageOf(x) } -// Deprecated: Use CMsgSteamLearnHMACKeys_SnapshotProjectKeys.ProtoReflect.Descriptor instead. -func (*CMsgSteamLearnHMACKeys_SnapshotProjectKeys) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{16, 1} +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 3, 0} } -func (x *CMsgSteamLearnHMACKeys_SnapshotProjectKeys) GetProjectId() uint32 { - if x != nil && x.ProjectId != nil { - return *x.ProjectId +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry) GetValue() uint32 { + if x != nil && x.Value != nil { + return *x.Value } return 0 } -func (x *CMsgSteamLearnHMACKeys_SnapshotProjectKeys) GetPublishedVersion() uint32 { - if x != nil && x.PublishedVersion != nil { - return *x.PublishedVersion +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry) GetMapping() uint32 { + if x != nil && x.Mapping != nil { + return *x.Mapping + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry) GetCount() uint64 { + if x != nil && x.Count != nil { + return *x.Count } return 0 } -func (x *CMsgSteamLearnHMACKeys_SnapshotProjectKeys) GetKey() string { +type CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Key *uint32 `protobuf:"varint,1,opt,name=key" json:"key,omitempty"` + Value *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 3, 1} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry) GetKey() uint32 { if x != nil && x.Key != nil { return *x.Key } - return "" + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry) GetValue() *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry { + if x != nil { + return x.Value + } + return nil +} + +type CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Key *uint32 `protobuf:"varint,1,opt,name=key" json:"key,omitempty"` + Value *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 3, 2} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry) GetKey() uint32 { + if x != nil && x.Key != nil { + return *x.Key + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry) GetValue() *CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry { + if x != nil { + return x.Value + } + return nil +} + +type CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + X *float32 `protobuf:"fixed32,1,opt,name=x" json:"x,omitempty"` + Y *float32 `protobuf:"fixed32,2,opt,name=y" json:"y,omitempty"` + Radius *float32 `protobuf:"fixed32,3,opt,name=radius" json:"radius,omitempty"` + Radius_75Pct *float32 `protobuf:"fixed32,4,opt,name=radius_75pct,json=radius75pct" json:"radius_75pct,omitempty"` + Radius_50Pct *float32 `protobuf:"fixed32,5,opt,name=radius_50pct,json=radius50pct" json:"radius_50pct,omitempty"` + Radius_25Pct *float32 `protobuf:"fixed32,6,opt,name=radius_25pct,json=radius25pct" json:"radius_25pct,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) Reset() { + *x = CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{21, 4, 0} +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) GetX() float32 { + if x != nil && x.X != nil { + return *x.X + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) GetY() float32 { + if x != nil && x.Y != nil { + return *x.Y + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) GetRadius() float32 { + if x != nil && x.Radius != nil { + return *x.Radius + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) GetRadius_75Pct() float32 { + if x != nil && x.Radius_75Pct != nil { + return *x.Radius_75Pct + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) GetRadius_50Pct() float32 { + if x != nil && x.Radius_50Pct != nil { + return *x.Radius_50Pct + } + return 0 +} + +func (x *CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster) GetRadius_25Pct() float32 { + if x != nil && x.Radius_25Pct != nil { + return *x.Radius_25Pct + } + return 0 +} + +type CMsgSteamLearn_InferenceBackend_Response_RegressionOutput struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Value *float32 `protobuf:"fixed32,1,opt,name=value" json:"value,omitempty"` +} + +func (x *CMsgSteamLearn_InferenceBackend_Response_RegressionOutput) Reset() { + *x = CMsgSteamLearn_InferenceBackend_Response_RegressionOutput{} + if protoimpl.UnsafeEnabled { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CMsgSteamLearn_InferenceBackend_Response_RegressionOutput) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CMsgSteamLearn_InferenceBackend_Response_RegressionOutput) ProtoMessage() {} + +func (x *CMsgSteamLearn_InferenceBackend_Response_RegressionOutput) ProtoReflect() protoreflect.Message { + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CMsgSteamLearn_InferenceBackend_Response_RegressionOutput.ProtoReflect.Descriptor instead. +func (*CMsgSteamLearn_InferenceBackend_Response_RegressionOutput) Descriptor() ([]byte, []int) { + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{22, 0} +} + +func (x *CMsgSteamLearn_InferenceBackend_Response_RegressionOutput) GetValue() float32 { + if x != nil && x.Value != nil { + return *x.Value + } + return 0 } type CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput struct { @@ -1963,7 +2917,7 @@ type CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput struct { func (x *CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput) Reset() { *x = CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[24] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1976,7 +2930,7 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput) Stri func (*CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput) ProtoMessage() {} func (x *CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[24] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1989,7 +2943,7 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput) Prot // Deprecated: Use CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{20, 0} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{22, 1} } func (x *CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput) GetValue() float32 { @@ -2011,7 +2965,7 @@ type CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput stru func (x *CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput) Reset() { *x = CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[25] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2024,7 +2978,7 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput) func (*CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput) ProtoMessage() {} func (x *CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[25] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2037,7 +2991,7 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput) // Deprecated: Use CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{20, 1} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{22, 2} } func (x *CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput) GetWeight() []float32 { @@ -2066,7 +3020,7 @@ type CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput stru func (x *CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput) Reset() { *x = CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[26] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2079,7 +3033,7 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput) func (*CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput) ProtoMessage() {} func (x *CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[26] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2092,7 +3046,7 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput) // Deprecated: Use CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{20, 2} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{22, 3} } func (x *CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput) GetWeight() []float32 { @@ -2115,16 +3069,18 @@ type CMsgSteamLearn_InferenceBackend_Response_Output struct { unknownFields protoimpl.UnknownFields // Types that are assignable to ResponseType: + // // *CMsgSteamLearn_InferenceBackend_Response_Output_BinaryCrossentropy // *CMsgSteamLearn_InferenceBackend_Response_Output_CategoricalCrossentropy // *CMsgSteamLearn_InferenceBackend_Response_Output_MultiBinaryCrossentropy + // *CMsgSteamLearn_InferenceBackend_Response_Output_Regression ResponseType isCMsgSteamLearn_InferenceBackend_Response_Output_ResponseType `protobuf_oneof:"ResponseType"` } func (x *CMsgSteamLearn_InferenceBackend_Response_Output) Reset() { *x = CMsgSteamLearn_InferenceBackend_Response_Output{} if protoimpl.UnsafeEnabled { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[27] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2137,7 +3093,7 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_Output) String() string { func (*CMsgSteamLearn_InferenceBackend_Response_Output) ProtoMessage() {} func (x *CMsgSteamLearn_InferenceBackend_Response_Output) ProtoReflect() protoreflect.Message { - mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[27] + mi := &file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2150,7 +3106,7 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_Output) ProtoReflect() protore // Deprecated: Use CMsgSteamLearn_InferenceBackend_Response_Output.ProtoReflect.Descriptor instead. func (*CMsgSteamLearn_InferenceBackend_Response_Output) Descriptor() ([]byte, []int) { - return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{20, 3} + return file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP(), []int{22, 4} } func (m *CMsgSteamLearn_InferenceBackend_Response_Output) GetResponseType() isCMsgSteamLearn_InferenceBackend_Response_Output_ResponseType { @@ -2181,6 +3137,13 @@ func (x *CMsgSteamLearn_InferenceBackend_Response_Output) GetMultiBinaryCrossent return nil } +func (x *CMsgSteamLearn_InferenceBackend_Response_Output) GetRegression() *CMsgSteamLearn_InferenceBackend_Response_RegressionOutput { + if x, ok := x.GetResponseType().(*CMsgSteamLearn_InferenceBackend_Response_Output_Regression); ok { + return x.Regression + } + return nil +} + type isCMsgSteamLearn_InferenceBackend_Response_Output_ResponseType interface { isCMsgSteamLearn_InferenceBackend_Response_Output_ResponseType() } @@ -2197,6 +3160,10 @@ type CMsgSteamLearn_InferenceBackend_Response_Output_MultiBinaryCrossentropy str MultiBinaryCrossentropy *CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput `protobuf:"bytes,3,opt,name=multi_binary_crossentropy,json=multiBinaryCrossentropy,oneof"` } +type CMsgSteamLearn_InferenceBackend_Response_Output_Regression struct { + Regression *CMsgSteamLearn_InferenceBackend_Response_RegressionOutput `protobuf:"bytes,4,opt,name=regression,oneof"` +} + func (*CMsgSteamLearn_InferenceBackend_Response_Output_BinaryCrossentropy) isCMsgSteamLearn_InferenceBackend_Response_Output_ResponseType() { } @@ -2206,6 +3173,9 @@ func (*CMsgSteamLearn_InferenceBackend_Response_Output_CategoricalCrossentropy) func (*CMsgSteamLearn_InferenceBackend_Response_Output_MultiBinaryCrossentropy) isCMsgSteamLearn_InferenceBackend_Response_Output_ResponseType() { } +func (*CMsgSteamLearn_InferenceBackend_Response_Output_Regression) isCMsgSteamLearn_InferenceBackend_Response_Output_ResponseType() { +} + var File_steammessages_steamlearn_steamworkssdk_proto protoreflect.FileDescriptor var file_steammessages_steamlearn_steamworkssdk_proto_rawDesc = []byte{ @@ -2288,478 +3258,685 @@ var file_steammessages_steamlearn_steamworkssdk_proto_rawDesc = []byte{ 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, - 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x7f, 0x0a, 0x19, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x44, - 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, - 0x73, 0x68, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x5f, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x72, 0x61, 0x6e, 0x64, - 0x6f, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xd1, 0x01, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x73, - 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, - 0x61, 0x72, 0x6e, 0x5f, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, - 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x3f, 0x0a, 0x0b, 0x64, 0x61, - 0x74, 0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, - 0x0a, 0x64, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xb1, 0x01, 0x0a, 0x2a, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x52, - 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, - 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x3f, - 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, - 0xb5, 0x01, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, - 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x71, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8f, 0x01, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, + 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x3f, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, - 0x72, 0x6e, 0x5f, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x61, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, - 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x71, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, - 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x11, - 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, - 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0f, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xd8, 0x02, 0x0a, 0x26, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, - 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, - 0x61, 0x72, 0x6e, 0x5f, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, - 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x04, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3b, 0x0a, 0x1a, 0x70, 0x65, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x73, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x70, 0x65, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x53, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x7a, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x4f, 0x0a, 0x0f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x53, 0x6e, 0x61, 0x70, - 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x52, 0x0e, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x22, 0xda, 0x01, 0x0a, 0x25, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, - 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x56, 0x0a, 0x13, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0a, 0x64, 0x61, + 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xb1, 0x01, 0x0a, 0x2a, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x52, 0x65, 0x67, 0x69, + 0x73, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x3f, 0x0a, 0x0b, 0x64, + 0x61, 0x74, 0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x73, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x11, 0x63, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x73, 0x12, 0x59, 0x0a, 0x11, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, - 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x10, 0x73, 0x6e, - 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0xe1, - 0x01, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, - 0x6e, 0x5f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x14, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x12, 0x63, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x73, 0x12, 0x5c, 0x0a, 0x12, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, - 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, - 0x11, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x73, 0x22, 0xe3, 0x03, 0x0a, 0x16, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x48, 0x4d, 0x41, 0x43, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x37, 0x0a, - 0x18, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x15, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x52, 0x0a, 0x0f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, - 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2a, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x48, 0x4d, 0x41, 0x43, 0x4b, 0x65, 0x79, 0x73, 0x2e, 0x43, 0x61, - 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x0d, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x64, 0x0a, 0x15, 0x73, 0x6e, - 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6b, - 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x48, - 0x4d, 0x41, 0x43, 0x4b, 0x65, 0x79, 0x73, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x13, 0x73, 0x6e, 0x61, - 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x4b, 0x65, 0x79, 0x73, - 0x1a, 0x61, 0x0a, 0x0d, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x4b, 0x65, 0x79, - 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x1a, 0x73, 0x0a, 0x13, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x3a, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x47, 0x65, 0x74, 0x48, 0x4d, - 0x41, 0x43, 0x4b, 0x65, 0x79, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x61, 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, - 0x70, 0x70, 0x69, 0x64, 0x22, 0x93, 0x01, 0x0a, 0x23, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x47, 0x65, 0x74, 0x48, 0x4d, 0x41, 0x43, 0x4b, - 0x65, 0x79, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x47, - 0x65, 0x74, 0x48, 0x4d, 0x41, 0x43, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x30, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x48, 0x4d, 0x41, 0x43, - 0x4b, 0x65, 0x79, 0x73, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x22, 0xda, 0x02, 0x0a, 0x20, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, - 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x22, 0x71, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x11, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x65, 0x61, 0x72, 0x6e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x52, 0x0f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x22, 0x96, 0x02, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x41, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, - 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, - 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x2a, 0x0a, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x74, 0x72, 0x61, - 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6f, 0x76, 0x65, - 0x72, 0x72, 0x69, 0x64, 0x65, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, - 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x27, - 0x0a, 0x0f, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x07, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0e, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x22, 0xfb, 0x05, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, - 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, - 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x07, 0x6f, 0x75, - 0x74, 0x70, 0x75, 0x74, 0x73, 0x1a, 0x30, 0x0a, 0x18, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, - 0x72, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, - 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x4d, 0x0a, 0x1d, 0x4d, 0x75, 0x74, 0x6c, 0x69, - 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x6f, - 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, - 0x68, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x02, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x4d, 0x0a, 0x1d, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, - 0x72, 0x69, 0x63, 0x61, 0x6c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x6f, 0x70, - 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, - 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x02, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xad, 0x03, 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, - 0x12, 0x7a, 0x0a, 0x13, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, - 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x63, - 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x42, 0x69, - 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, - 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x12, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, - 0x43, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x12, 0x89, 0x01, 0x0a, - 0x18, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x4c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, - 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, - 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x43, 0x72, 0x6f, 0x73, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, - 0x17, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x43, 0x72, 0x6f, 0x73, - 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x12, 0x8a, 0x01, 0x0a, 0x19, 0x6d, 0x75, 0x6c, - 0x74, 0x69, 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, - 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, - 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x63, 0x6b, - 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x75, 0x74, - 0x6c, 0x69, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x6f, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x17, 0x6d, 0x75, - 0x6c, 0x74, 0x69, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x6e, - 0x74, 0x72, 0x6f, 0x70, 0x79, 0x42, 0x0e, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0xcb, 0x01, 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, + 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, + 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x04, 0x52, 0x04, 0x6b, 0x65, + 0x79, 0x73, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x18, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x3b, 0x0a, 0x1a, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, + 0x61, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x7a, 0x0a, + 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, + 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0f, 0x73, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x65, 0x61, 0x72, 0x6e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0e, 0x73, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xb1, 0x02, 0x0a, 0x25, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x56, 0x0a, 0x13, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x11, 0x63, 0x61, 0x63, 0x68, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x59, 0x0a, 0x11, 0x73, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x10, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x55, 0x0a, 0x12, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, - 0x63, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x10, 0x69, - 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, + 0x63, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x11, 0x69, 0x6e, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0xbb, 0x02, + 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, + 0x5f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x14, 0x63, 0x61, 0x63, 0x68, + 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, + 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x12, 0x63, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x73, 0x12, 0x5c, 0x0a, 0x12, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x11, + 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x73, 0x12, 0x58, 0x0a, 0x13, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x12, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x22, 0xe3, 0x05, 0x0a, 0x1a, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x48, 0x0a, 0x21, 0x72, 0x65, + 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1d, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x6e, 0x0a, 0x18, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x64, 0x61, + 0x74, 0x61, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x15, 0x63, + 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x80, 0x01, 0x0a, 0x1e, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x2e, + 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x1b, 0x73, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x6d, 0x0a, 0x17, 0x69, 0x6e, 0x66, 0x65, 0x72, + 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x2e, 0x49, 0x6e, 0x66, 0x65, 0x72, + 0x65, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, + 0x15, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x1a, 0x5f, 0x0a, 0x14, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x24, + 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x5e, 0x0a, 0x1a, 0x53, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x58, 0x0a, 0x14, 0x49, 0x6e, 0x66, 0x65, 0x72, + 0x65, 0x6e, 0x63, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, + 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x21, + 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0x3e, 0x0a, 0x26, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x5f, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, + 0x70, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x61, 0x70, 0x70, 0x69, + 0x64, 0x22, 0xb0, 0x01, 0x0a, 0x27, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, + 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, + 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x45, 0x0a, + 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x73, 0x22, 0x98, 0x02, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, + 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x6f, 0x76, 0x65, 0x72, + 0x72, 0x69, 0x64, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x54, 0x72, 0x61, + 0x69, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x03, 0x28, 0x02, 0x52, + 0x0e, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x22, + 0xc5, 0x01, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, + 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, + 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, + 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2b, + 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x6f, + 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, + 0x54, 0x72, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0x6b, 0x0a, 0x2f, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x61, 0x63, 0x6b, 0x65, + 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x65, 0x74, + 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x65, 0x74, + 0x63, 0x68, 0x49, 0x64, 0x22, 0xcb, 0x0f, 0x0a, 0x29, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x64, 0x0a, 0x19, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, - 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0f, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, - 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x59, 0x0a, 0x10, 0x62, 0x61, 0x63, 0x6b, - 0x65, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, + 0x17, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x55, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, + 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x6f, 0x77, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, + 0x4d, 0x0a, 0x06, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x06, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x51, + 0x0a, 0x08, 0x73, 0x74, 0x64, 0x5f, 0x64, 0x65, 0x76, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x53, 0x74, 0x64, 0x44, 0x65, 0x76, 0x52, 0x07, 0x73, 0x74, 0x64, 0x44, 0x65, 0x76, + 0x73, 0x12, 0x63, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, + 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x63, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x06, 0x6b, 0x6d, 0x65, 0x61, 0x6e, 0x73, + 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4b, 0x4d, 0x65, 0x61, 0x6e, 0x73, 0x52, 0x06, + 0x6b, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x12, 0x70, 0x0a, 0x12, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x11, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x1a, 0x3c, 0x0a, 0x08, 0x52, 0x6f, 0x77, 0x52, + 0x61, 0x6e, 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x6f, 0x77, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x52, 0x6f, 0x77, 0x12, 0x17, 0x0a, + 0x07, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x6f, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, + 0x6d, 0x61, 0x78, 0x52, 0x6f, 0x77, 0x1a, 0x6d, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, + 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, + 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x6d, + 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, + 0x6d, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6d, 0x61, 0x78, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x61, 0x0a, 0x06, 0x53, 0x74, 0x64, 0x44, 0x65, 0x76, 0x12, + 0x2a, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, + 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6d, + 0x65, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x12, + 0x17, 0x0a, 0x07, 0x73, 0x74, 0x64, 0x5f, 0x64, 0x65, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x06, 0x73, 0x74, 0x64, 0x44, 0x65, 0x76, 0x1a, 0xcd, 0x04, 0x0a, 0x0c, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x63, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x6a, 0x0a, + 0x0a, 0x6d, 0x61, 0x70, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x4b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x2e, + 0x4d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, + 0x6d, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x70, 0x0a, 0x0c, 0x6d, 0x61, 0x70, + 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x4d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x4d, 0x61, + 0x70, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, + 0x6d, 0x61, 0x70, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x4d, 0x0a, 0x05, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, + 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6d, 0x61, 0x70, + 0x70, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x7c, 0x0a, 0x0e, 0x4d, 0x61, + 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x58, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, + 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x7e, 0x0a, 0x10, 0x4d, 0x61, 0x70, 0x4d, + 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x58, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, + 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xa1, 0x02, 0x0a, 0x06, 0x4b, 0x4d, 0x65, + 0x61, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x5a, 0x0a, 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, + 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4b, 0x4d, 0x65, 0x61, 0x6e, + 0x73, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x73, 0x1a, 0xa6, 0x01, 0x0a, 0x07, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, + 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, + 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, + 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x72, 0x61, 0x64, + 0x69, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x5f, 0x37, 0x35, + 0x70, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x72, 0x61, 0x64, 0x69, 0x75, + 0x73, 0x37, 0x35, 0x70, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, + 0x5f, 0x35, 0x30, 0x70, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x72, 0x61, + 0x64, 0x69, 0x75, 0x73, 0x35, 0x30, 0x70, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x61, 0x64, + 0x69, 0x75, 0x73, 0x5f, 0x32, 0x35, 0x70, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x0b, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x32, 0x35, 0x70, 0x63, 0x74, 0x1a, 0x93, 0x01, 0x0a, + 0x11, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x6e, 0x75, 0x6d, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x23, 0x0a, + 0x0d, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x73, 0x22, 0x88, 0x07, 0x0a, 0x28, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, + 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x4f, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, + 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, + 0x1a, 0x28, 0x0a, 0x10, 0x52, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4f, 0x75, + 0x74, 0x70, 0x75, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x30, 0x0a, 0x18, 0x42, 0x69, + 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, + 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x4d, 0x0a, 0x1d, + 0x4d, 0x75, 0x74, 0x6c, 0x69, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, 0x73, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x16, 0x0a, + 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x77, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x4d, 0x0a, 0x1d, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, + 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x02, 0x52, 0x06, 0x77, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x90, 0x04, 0x0a, 0x06, 0x4f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x7a, 0x0a, 0x13, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x5f, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x52, 0x0f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x2a, 0xd4, 0x01, 0x0a, 0x13, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, - 0x61, 0x72, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x53, - 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, - 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x53, - 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x33, 0x32, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, - 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x54, - 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x54, - 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x05, 0x2a, 0xbc, 0x05, 0x0a, 0x24, 0x45, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x67, 0x69, 0x73, - 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x30, 0x0a, 0x2c, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, - 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, - 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, - 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x3a, 0x0a, 0x36, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, - 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, - 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, - 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, - 0x01, 0x12, 0x38, 0x0a, 0x34, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, + 0x73, 0x65, 0x2e, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x6f, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x12, 0x62, + 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, + 0x79, 0x12, 0x89, 0x01, 0x0a, 0x18, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, + 0x6c, 0x5f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, + 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, + 0x43, 0x72, 0x6f, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, + 0x75, 0x74, 0x48, 0x00, 0x52, 0x17, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x63, 0x61, + 0x6c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x12, 0x8a, 0x01, + 0x0a, 0x19, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x4c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x4d, 0x75, 0x74, 0x6c, 0x69, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, 0x6f, + 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, + 0x00, 0x52, 0x17, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x72, + 0x6f, 0x73, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, 0x12, 0x61, 0x0a, 0x0a, 0x72, 0x65, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, + 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, + 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, + 0x00, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, + 0x0c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0xdf, 0x01, + 0x0a, 0x21, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, + 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x10, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, + 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, + 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, + 0x0f, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x59, 0x0a, 0x10, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, + 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, + 0x64, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0f, 0x62, 0x61, 0x63, 0x6b, + 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, + 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x04, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x2a, + 0xd4, 0x01, 0x0a, 0x13, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x44, + 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x53, 0x54, 0x45, 0x41, 0x4d, + 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, + 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x54, 0x45, 0x41, + 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x53, 0x54, 0x45, 0x41, 0x4d, + 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, + 0x4c, 0x4f, 0x41, 0x54, 0x33, 0x32, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x53, 0x54, 0x45, 0x41, + 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, + 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, + 0x52, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, + 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x42, + 0x4a, 0x45, 0x43, 0x54, 0x10, 0x05, 0x2a, 0xbc, 0x05, 0x0a, 0x24, 0x45, 0x53, 0x74, 0x65, 0x61, + 0x6d, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, + 0x30, 0x0a, 0x2c, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, + 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, + 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, + 0x00, 0x12, 0x3a, 0x0a, 0x36, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x53, 0x55, 0x43, 0x43, - 0x45, 0x53, 0x53, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x38, 0x0a, 0x34, 0x53, - 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, - 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, - 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x47, 0x45, 0x4e, 0x45, - 0x52, 0x49, 0x43, 0x10, 0x03, 0x12, 0x3d, 0x0a, 0x39, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, - 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, - 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4e, 0x41, - 0x4d, 0x45, 0x10, 0x04, 0x12, 0x40, 0x0a, 0x3c, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, - 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, - 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x56, 0x45, 0x52, - 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x3d, 0x0a, 0x39, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, - 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, - 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x43, 0x48, 0x41, 0x4e, - 0x47, 0x45, 0x44, 0x10, 0x06, 0x12, 0x3d, 0x0a, 0x39, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, - 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, - 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, - 0x49, 0x44, 0x10, 0x07, 0x12, 0x3a, 0x0a, 0x36, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, - 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, - 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x08, - 0x12, 0x42, 0x0a, 0x3e, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, + 0x45, 0x53, 0x53, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x38, 0x0a, + 0x34, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, + 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, + 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, + 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x38, 0x0a, 0x34, 0x53, 0x54, 0x45, 0x41, 0x4d, + 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, + 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, + 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x10, + 0x03, 0x12, 0x3d, 0x0a, 0x39, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, + 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, + 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x10, 0x04, + 0x12, 0x40, 0x0a, 0x3c, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, + 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, + 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, + 0x10, 0x05, 0x12, 0x3d, 0x0a, 0x39, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, + 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, + 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x10, + 0x06, 0x12, 0x3d, 0x0a, 0x39, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, + 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, + 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x07, + 0x12, 0x3a, 0x0a, 0x36, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, - 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, - 0x4d, 0x50, 0x10, 0x09, 0x12, 0x33, 0x0a, 0x2f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, - 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, - 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x44, - 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x0a, 0x2a, 0xfb, 0x02, 0x0a, 0x1a, 0x45, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1f, 0x0a, 0x1b, 0x53, 0x54, 0x45, 0x41, + 0x5f, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x08, 0x12, 0x42, 0x0a, 0x3e, + 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, + 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, + 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, + 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x09, + 0x12, 0x33, 0x0a, 0x2f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x52, + 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, + 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, + 0x4c, 0x45, 0x44, 0x10, 0x0a, 0x2a, 0xfb, 0x02, 0x0a, 0x1a, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1f, 0x0a, 0x1b, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, + 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, + 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, + 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x33, 0x0a, 0x2f, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, - 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x54, 0x45, - 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, - 0x54, 0x41, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x33, 0x0a, 0x2f, - 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, - 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, - 0x4f, 0x57, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x10, - 0x02, 0x12, 0x34, 0x0a, 0x30, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, + 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, + 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x10, 0x02, 0x12, 0x34, 0x0a, + 0x30, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, + 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x43, + 0x41, 0x43, 0x48, 0x45, 0x44, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, + 0x45, 0x10, 0x03, 0x12, 0x2c, 0x0a, 0x28, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, + 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10, + 0x04, 0x12, 0x29, 0x0a, 0x25, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, - 0x5f, 0x55, 0x4e, 0x43, 0x41, 0x43, 0x48, 0x45, 0x44, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, - 0x4f, 0x55, 0x52, 0x43, 0x45, 0x10, 0x03, 0x12, 0x2c, 0x0a, 0x28, 0x53, 0x54, 0x45, 0x41, 0x4d, - 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4b, - 0x45, 0x59, 0x53, 0x10, 0x04, 0x12, 0x29, 0x0a, 0x25, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, - 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x05, - 0x12, 0x31, 0x0a, 0x2d, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, - 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, - 0x50, 0x10, 0x06, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, - 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x44, 0x49, 0x53, - 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x07, 0x2a, 0xed, 0x05, 0x0a, 0x20, 0x45, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x21, - 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, - 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x10, 0x00, 0x12, 0x2e, 0x0a, 0x2a, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, - 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x45, - 0x44, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, - 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x51, 0x55, 0x45, 0x55, 0x45, - 0x44, 0x10, 0x02, 0x12, 0x38, 0x0a, 0x34, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, - 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, - 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, - 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x44, 0x10, 0x03, 0x12, 0x39, 0x0a, - 0x35, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, - 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, - 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, - 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x10, 0x04, 0x12, 0x3d, 0x0a, 0x39, 0x53, 0x54, 0x45, 0x41, + 0x5f, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x05, 0x12, 0x31, 0x0a, 0x2d, + 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, + 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x06, 0x12, + 0x22, 0x0a, 0x1e, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x43, 0x41, + 0x43, 0x48, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, + 0x44, 0x10, 0x07, 0x2a, 0xed, 0x05, 0x0a, 0x20, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x21, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, - 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, - 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, - 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x10, 0x05, 0x12, 0x3c, 0x0a, 0x38, 0x53, 0x54, 0x45, 0x41, 0x4d, - 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, - 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4d, 0x49, 0x53, - 0x53, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x55, 0x52, 0x41, 0x54, - 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, 0x39, 0x0a, 0x35, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, - 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, - 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x55, - 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x07, - 0x12, 0x2f, 0x0a, 0x2b, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, - 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, - 0x08, 0x12, 0x37, 0x0a, 0x33, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, + 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, + 0x2e, 0x0a, 0x2a, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, + 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, + 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, + 0x2e, 0x0a, 0x2a, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, + 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, + 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x51, 0x55, 0x45, 0x55, 0x45, 0x44, 0x10, 0x02, 0x12, + 0x38, 0x0a, 0x34, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, + 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, + 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x50, 0x52, 0x4f, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x44, 0x10, 0x03, 0x12, 0x39, 0x0a, 0x35, 0x53, 0x54, 0x45, + 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, + 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, + 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, + 0x43, 0x45, 0x10, 0x04, 0x12, 0x3d, 0x0a, 0x39, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, + 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, + 0x44, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x45, + 0x59, 0x10, 0x05, 0x12, 0x3c, 0x0a, 0x38, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, + 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, + 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4e, 0x47, + 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x44, 0x55, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, + 0x06, 0x12, 0x39, 0x0a, 0x35, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, - 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x09, 0x12, 0x40, 0x0a, 0x3c, 0x53, 0x54, - 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, - 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, - 0x55, 0x52, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x0a, 0x12, 0x28, 0x0a, 0x24, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, + 0x48, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x07, 0x12, 0x2f, 0x0a, 0x2b, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, - 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x41, - 0x42, 0x4c, 0x45, 0x44, 0x10, 0x0b, 0x12, 0x3f, 0x0a, 0x3b, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, + 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x08, 0x12, 0x37, 0x0a, + 0x33, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, + 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, + 0x54, 0x41, 0x4d, 0x50, 0x10, 0x09, 0x12, 0x40, 0x0a, 0x3c, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, - 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, - 0x4c, 0x49, 0x44, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x56, 0x45, - 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x0c, 0x2a, 0x44, 0x0a, 0x1c, 0x45, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x47, 0x65, 0x74, 0x48, 0x4d, 0x41, 0x43, 0x4b, 0x65, 0x79, - 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x24, 0x0a, 0x20, 0x53, 0x54, 0x45, 0x41, 0x4d, - 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x47, 0x45, 0x54, 0x5f, 0x48, 0x4d, 0x41, 0x43, 0x5f, 0x4b, - 0x45, 0x59, 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x2a, 0xc8, 0x03, - 0x0a, 0x1a, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x49, 0x6e, 0x66, - 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1e, 0x0a, 0x1a, - 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, - 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, - 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, - 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x31, - 0x0a, 0x2d, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, - 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, - 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x44, 0x10, - 0x02, 0x12, 0x39, 0x0a, 0x35, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, - 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x44, 0x5f, 0x53, - 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x10, 0x03, 0x12, 0x32, 0x0a, 0x2e, - 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, - 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x55, - 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x04, - 0x12, 0x28, 0x0a, 0x24, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, - 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, - 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x05, 0x12, 0x30, 0x0a, 0x2c, 0x53, 0x54, + 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x54, 0x45, + 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x0a, 0x12, 0x28, 0x0a, 0x24, 0x53, 0x54, 0x45, 0x41, + 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, + 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, + 0x10, 0x0b, 0x12, 0x3f, 0x0a, 0x3b, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, + 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, + 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, + 0x4e, 0x10, 0x0c, 0x2a, 0x74, 0x0a, 0x20, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, + 0x72, 0x6e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x26, 0x0a, 0x22, 0x53, 0x54, 0x45, 0x41, 0x4d, + 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x47, 0x45, 0x54, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, + 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, + 0x28, 0x0a, 0x24, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x47, 0x45, + 0x54, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x53, 0x5f, + 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x2a, 0xf1, 0x03, 0x0a, 0x1a, 0x45, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, + 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x54, 0x45, 0x41, + 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x53, 0x54, 0x45, 0x41, + 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, + 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x31, 0x0a, 0x2d, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, - 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x06, 0x12, 0x38, 0x0a, 0x34, + 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x49, 0x44, 0x10, 0x02, 0x12, 0x39, 0x0a, + 0x35, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, + 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4d, 0x49, 0x53, 0x53, + 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x41, 0x43, 0x48, 0x45, 0x44, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, + 0x41, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x10, 0x03, 0x12, 0x32, 0x0a, 0x2e, 0x53, 0x54, 0x45, 0x41, + 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, + 0x48, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x04, 0x12, 0x28, 0x0a, 0x24, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, - 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, - 0x49, 0x44, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x56, 0x45, 0x52, - 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x07, 0x12, 0x30, 0x0a, 0x2c, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, + 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x4f, 0x52, 0x42, 0x49, + 0x44, 0x44, 0x45, 0x4e, 0x10, 0x05, 0x12, 0x30, 0x0a, 0x2c, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x46, 0x45, 0x54, 0x43, 0x48, 0x5f, 0x49, 0x44, - 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x08, 0x32, 0x8c, 0x09, 0x0a, 0x0a, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x12, 0xc5, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x67, 0x69, - 0x73, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2f, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, - 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, - 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x61, - 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x4c, 0x82, 0xb5, 0x18, 0x48, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x73, - 0x20, 0x61, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x64, 0x65, 0x73, 0x63, 0x20, 0x28, 0x6f, 0x72, - 0x20, 0x66, 0x69, 0x6e, 0x64, 0x73, 0x20, 0x61, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x64, 0x65, - 0x73, 0x63, 0x20, 0x69, 0x66, 0x20, 0x69, 0x74, 0x27, 0x73, 0x20, 0x61, 0x6c, 0x72, 0x65, 0x61, - 0x64, 0x79, 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x29, 0x2e, 0x12, - 0x7e, 0x0a, 0x09, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x12, 0x26, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, - 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, - 0xb5, 0x18, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x64, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x2e, 0x12, - 0x9d, 0x01, 0x0a, 0x0f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x12, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, - 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x20, - 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x64, 0x61, 0x74, 0x61, - 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x12, - 0xc4, 0x01, 0x0a, 0x0e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x57, 0x82, - 0xb5, 0x18, 0x53, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, - 0x70, 0x6c, 0x65, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, - 0x2c, 0x20, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x2c, 0x20, 0x61, 0x6e, 0x64, - 0x20, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, - 0x65, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0xd2, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x48, 0x4d, - 0x41, 0x43, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x47, 0x65, 0x74, - 0x48, 0x4d, 0x41, 0x43, 0x4b, 0x65, 0x79, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x47, 0x65, 0x74, 0x48, 0x4d, 0x41, 0x43, 0x4b, 0x65, - 0x79, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6e, 0x82, 0xb5, 0x18, - 0x6a, 0x47, 0x65, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x48, 0x4d, 0x41, 0x43, 0x20, 0x6b, - 0x65, 0x79, 0x73, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, - 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, - 0x69, 0x6e, 0x67, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x6d, - 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x74, 0x69, - 0x6e, 0x67, 0x20, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0xac, 0x01, 0x0a, 0x09, - 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x49, 0x4d, + 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x06, 0x12, 0x38, 0x0a, 0x34, 0x53, 0x54, 0x45, 0x41, + 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, + 0x10, 0x07, 0x12, 0x30, 0x0a, 0x2c, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, + 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x5f, 0x4e, 0x4f, 0x5f, 0x46, 0x45, 0x54, 0x43, 0x48, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x4f, 0x55, + 0x4e, 0x44, 0x10, 0x08, 0x12, 0x27, 0x0a, 0x23, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, + 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x42, 0x55, 0x53, 0x59, 0x10, 0x09, 0x2a, 0xdd, 0x03, + 0x0a, 0x22, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x49, 0x6e, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x27, 0x0a, 0x23, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, + 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x54, + 0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x29, 0x0a, + 0x25, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, + 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x53, + 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x3a, 0x0a, 0x36, 0x53, 0x54, 0x45, 0x41, + 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, + 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, + 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x49, 0x44, 0x10, 0x02, 0x12, 0x3b, 0x0a, 0x37, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, + 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x54, + 0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, + 0x03, 0x12, 0x31, 0x0a, 0x2d, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, + 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, + 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, + 0x45, 0x4e, 0x10, 0x04, 0x12, 0x39, 0x0a, 0x35, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, + 0x52, 0x4e, 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x54, + 0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x05, 0x12, + 0x41, 0x0a, 0x3d, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, 0x5f, 0x49, 0x4e, + 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, 0x41, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x50, + 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, + 0x10, 0x06, 0x12, 0x39, 0x0a, 0x35, 0x53, 0x54, 0x45, 0x41, 0x4d, 0x4c, 0x45, 0x41, 0x52, 0x4e, + 0x5f, 0x49, 0x4e, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, + 0x41, 0x54, 0x41, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x4e, 0x4f, 0x5f, 0x46, 0x45, 0x54, + 0x43, 0x48, 0x5f, 0x49, 0x44, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x07, 0x32, 0xd9, 0x0a, + 0x0a, 0x0a, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x12, 0xc5, 0x01, 0x0a, + 0x12, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x12, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4c, 0x82, 0xb5, 0x18, 0x48, 0x52, 0x65, 0x67, 0x69, + 0x73, 0x74, 0x65, 0x72, 0x73, 0x20, 0x61, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x64, 0x65, 0x73, + 0x63, 0x20, 0x28, 0x6f, 0x72, 0x20, 0x66, 0x69, 0x6e, 0x64, 0x73, 0x20, 0x61, 0x20, 0x64, 0x61, + 0x74, 0x61, 0x20, 0x64, 0x65, 0x73, 0x63, 0x20, 0x69, 0x66, 0x20, 0x69, 0x74, 0x27, 0x73, 0x20, + 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, + 0x65, 0x64, 0x29, 0x2e, 0x12, 0x7e, 0x0a, 0x09, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x26, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, + 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, + 0x61, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, - 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, - 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x82, 0xb5, 0x18, 0x4a, - 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, - 0x20, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2c, 0x20, - 0x6f, 0x72, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, - 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, - 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6b, 0x65, 0x79, 0x2e, 0x1a, 0x4b, 0x82, 0xb5, 0x18, 0x47, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2c, 0x20, 0x74, 0x72, 0x61, - 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x66, 0x65, 0x72, - 0x65, 0x6e, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x2e, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, - 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, - 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x43, 0x61, 0x63, 0x68, 0x65, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x20, 0x82, 0xb5, 0x18, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x20, + 0x61, 0x20, 0x63, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x65, 0x6e, + 0x74, 0x72, 0x79, 0x2e, 0x12, 0x9d, 0x01, 0x0a, 0x0f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2d, 0x82, 0xb5, 0x18, 0x29, 0x53, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, + 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x12, 0xc4, 0x01, 0x0a, 0x0e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x57, 0x82, 0xb5, 0x18, 0x53, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x20, + 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x73, + 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, 0x20, + 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0xe2, 0x01, 0x0a, 0x0f, + 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, + 0x2c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, + 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, + 0x61, 0x72, 0x6e, 0x5f, 0x47, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x73, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x72, 0x82, 0xb5, + 0x18, 0x6e, 0x47, 0x65, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x20, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x20, + 0x64, 0x61, 0x74, 0x61, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x74, 0x6f, + 0x20, 0x74, 0x68, 0x65, 0x6d, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, + 0x12, 0xac, 0x01, 0x0a, 0x09, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x26, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, + 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x4e, 0x82, 0xb5, 0x18, 0x4a, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x20, + 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x20, 0x64, + 0x61, 0x74, 0x61, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x61, 0x73, 0x73, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x6b, 0x65, 0x79, 0x2e, 0x12, + 0xba, 0x01, 0x0a, 0x11, 0x49, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x49, 0x6e, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x44, 0x82, 0xb5, 0x18, 0x40, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x77, 0x61, 0x73, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, + 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x66, 0x65, 0x74, 0x63, 0x68, 0x2e, 0x1a, 0x4b, 0x82, 0xb5, + 0x18, 0x47, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2c, 0x20, 0x74, + 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x2e, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, + 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -2774,96 +3951,125 @@ func file_steammessages_steamlearn_steamworkssdk_proto_rawDescGZIP() []byte { return file_steammessages_steamlearn_steamworkssdk_proto_rawDescData } -var file_steammessages_steamlearn_steamworkssdk_proto_enumTypes = make([]protoimpl.EnumInfo, 6) -var file_steammessages_steamlearn_steamworkssdk_proto_msgTypes = make([]protoimpl.MessageInfo, 28) +var file_steammessages_steamlearn_steamworkssdk_proto_enumTypes = make([]protoimpl.EnumInfo, 7) +var file_steammessages_steamlearn_steamworkssdk_proto_msgTypes = make([]protoimpl.MessageInfo, 42) var file_steammessages_steamlearn_steamworkssdk_proto_goTypes = []interface{}{ - (ESteamLearnDataType)(0), // 0: dota.ESteamLearnDataType - (ESteammLearnRegisterDataSourceResult)(0), // 1: dota.ESteammLearnRegisterDataSourceResult - (ESteamLearnCacheDataResult)(0), // 2: dota.ESteamLearnCacheDataResult - (ESteamLearnSnapshotProjectResult)(0), // 3: dota.ESteamLearnSnapshotProjectResult - (ESteamLearnGetHMACKeysResult)(0), // 4: dota.ESteamLearnGetHMACKeysResult - (ESteamLearnInferenceResult)(0), // 5: dota.ESteamLearnInferenceResult - (*CMsgSteamLearnDataSourceDescObject)(nil), // 6: dota.CMsgSteamLearnDataSourceDescObject - (*CMsgSteamLearnDataSourceDescElement)(nil), // 7: dota.CMsgSteamLearnDataSourceDescElement - (*CMsgSteamLearnDataSource)(nil), // 8: dota.CMsgSteamLearnDataSource - (*CMsgSteamLearnDataObject)(nil), // 9: dota.CMsgSteamLearnDataObject - (*CMsgSteamLearnDataElement)(nil), // 10: dota.CMsgSteamLearnDataElement - (*CMsgSteamLearnData)(nil), // 11: dota.CMsgSteamLearnData - (*CMsgSteamLearnDataList)(nil), // 12: dota.CMsgSteamLearnDataList - (*CMsgSteamLearn_AccessData)(nil), // 13: dota.CMsgSteamLearn_AccessData - (*CMsgSteamLearn_RegisterDataSource_Request)(nil), // 14: dota.CMsgSteamLearn_RegisterDataSource_Request - (*CMsgSteamLearn_RegisterDataSource_Response)(nil), // 15: dota.CMsgSteamLearn_RegisterDataSource_Response - (*CMsgSteamLearn_CacheData_Request)(nil), // 16: dota.CMsgSteamLearn_CacheData_Request - (*CMsgSteamLearn_CacheData_Response)(nil), // 17: dota.CMsgSteamLearn_CacheData_Response - (*CMsgSteamLearn_SnapshotProject_Request)(nil), // 18: dota.CMsgSteamLearn_SnapshotProject_Request - (*CMsgSteamLearn_SnapshotProject_Response)(nil), // 19: dota.CMsgSteamLearn_SnapshotProject_Response - (*CMsgSteamLearn_BatchOperation_Request)(nil), // 20: dota.CMsgSteamLearn_BatchOperation_Request - (*CMsgSteamLearn_BatchOperation_Response)(nil), // 21: dota.CMsgSteamLearn_BatchOperation_Response - (*CMsgSteamLearnHMACKeys)(nil), // 22: dota.CMsgSteamLearnHMACKeys - (*CMsgSteamLearn_GetHMACKeys_Request)(nil), // 23: dota.CMsgSteamLearn_GetHMACKeys_Request - (*CMsgSteamLearn_GetHMACKeys_Response)(nil), // 24: dota.CMsgSteamLearn_GetHMACKeys_Response - (*CMsgSteamLearn_Inference_Request)(nil), // 25: dota.CMsgSteamLearn_Inference_Request - (*CMsgSteamLearn_InferenceBackend_Response)(nil), // 26: dota.CMsgSteamLearn_InferenceBackend_Response - (*CMsgSteamLearn_Inference_Response)(nil), // 27: dota.CMsgSteamLearn_Inference_Response - (*CMsgSteamLearnHMACKeys_CacheDataKeys)(nil), // 28: dota.CMsgSteamLearnHMACKeys.CacheDataKeys - (*CMsgSteamLearnHMACKeys_SnapshotProjectKeys)(nil), // 29: dota.CMsgSteamLearnHMACKeys.SnapshotProjectKeys - (*CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput)(nil), // 30: dota.CMsgSteamLearn_InferenceBackend_Response.BinaryCrossEntropyOutput - (*CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput)(nil), // 31: dota.CMsgSteamLearn_InferenceBackend_Response.MutliBinaryCrossEntropyOutput - (*CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput)(nil), // 32: dota.CMsgSteamLearn_InferenceBackend_Response.CategoricalCrossEntropyOutput - (*CMsgSteamLearn_InferenceBackend_Response_Output)(nil), // 33: dota.CMsgSteamLearn_InferenceBackend_Response.Output + (ESteamLearnDataType)(0), // 0: dota.ESteamLearnDataType + (ESteammLearnRegisterDataSourceResult)(0), // 1: dota.ESteammLearnRegisterDataSourceResult + (ESteamLearnCacheDataResult)(0), // 2: dota.ESteamLearnCacheDataResult + (ESteamLearnSnapshotProjectResult)(0), // 3: dota.ESteamLearnSnapshotProjectResult + (ESteamLearnGetAccessTokensResult)(0), // 4: dota.ESteamLearnGetAccessTokensResult + (ESteamLearnInferenceResult)(0), // 5: dota.ESteamLearnInferenceResult + (ESteamLearnInferenceMetadataResult)(0), // 6: dota.ESteamLearnInferenceMetadataResult + (*CMsgSteamLearnDataSourceDescObject)(nil), // 7: dota.CMsgSteamLearnDataSourceDescObject + (*CMsgSteamLearnDataSourceDescElement)(nil), // 8: dota.CMsgSteamLearnDataSourceDescElement + (*CMsgSteamLearnDataSource)(nil), // 9: dota.CMsgSteamLearnDataSource + (*CMsgSteamLearnDataObject)(nil), // 10: dota.CMsgSteamLearnDataObject + (*CMsgSteamLearnDataElement)(nil), // 11: dota.CMsgSteamLearnDataElement + (*CMsgSteamLearnData)(nil), // 12: dota.CMsgSteamLearnData + (*CMsgSteamLearnDataList)(nil), // 13: dota.CMsgSteamLearnDataList + (*CMsgSteamLearn_RegisterDataSource_Request)(nil), // 14: dota.CMsgSteamLearn_RegisterDataSource_Request + (*CMsgSteamLearn_RegisterDataSource_Response)(nil), // 15: dota.CMsgSteamLearn_RegisterDataSource_Response + (*CMsgSteamLearn_CacheData_Request)(nil), // 16: dota.CMsgSteamLearn_CacheData_Request + (*CMsgSteamLearn_CacheData_Response)(nil), // 17: dota.CMsgSteamLearn_CacheData_Response + (*CMsgSteamLearn_SnapshotProject_Request)(nil), // 18: dota.CMsgSteamLearn_SnapshotProject_Request + (*CMsgSteamLearn_SnapshotProject_Response)(nil), // 19: dota.CMsgSteamLearn_SnapshotProject_Response + (*CMsgSteamLearn_BatchOperation_Request)(nil), // 20: dota.CMsgSteamLearn_BatchOperation_Request + (*CMsgSteamLearn_BatchOperation_Response)(nil), // 21: dota.CMsgSteamLearn_BatchOperation_Response + (*CMsgSteamLearnAccessTokens)(nil), // 22: dota.CMsgSteamLearnAccessTokens + (*CMsgSteamLearn_GetAccessTokens_Request)(nil), // 23: dota.CMsgSteamLearn_GetAccessTokens_Request + (*CMsgSteamLearn_GetAccessTokens_Response)(nil), // 24: dota.CMsgSteamLearn_GetAccessTokens_Response + (*CMsgSteamLearn_Inference_Request)(nil), // 25: dota.CMsgSteamLearn_Inference_Request + (*CMsgSteamLearn_InferenceMetadata_Request)(nil), // 26: dota.CMsgSteamLearn_InferenceMetadata_Request + (*CMsgSteamLearn_InferenceMetadataBackend_Request)(nil), // 27: dota.CMsgSteamLearn_InferenceMetadataBackend_Request + (*CMsgSteamLearn_InferenceMetadata_Response)(nil), // 28: dota.CMsgSteamLearn_InferenceMetadata_Response + (*CMsgSteamLearn_InferenceBackend_Response)(nil), // 29: dota.CMsgSteamLearn_InferenceBackend_Response + (*CMsgSteamLearn_Inference_Response)(nil), // 30: dota.CMsgSteamLearn_Inference_Response + (*CMsgSteamLearnAccessTokens_CacheDataAccessToken)(nil), // 31: dota.CMsgSteamLearnAccessTokens.CacheDataAccessToken + (*CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken)(nil), // 32: dota.CMsgSteamLearnAccessTokens.SnapshotProjectAccessToken + (*CMsgSteamLearnAccessTokens_InferenceAccessToken)(nil), // 33: dota.CMsgSteamLearnAccessTokens.InferenceAccessToken + (*CMsgSteamLearn_InferenceMetadata_Response_RowRange)(nil), // 34: dota.CMsgSteamLearn_InferenceMetadata_Response.RowRange + (*CMsgSteamLearn_InferenceMetadata_Response_Range)(nil), // 35: dota.CMsgSteamLearn_InferenceMetadata_Response.Range + (*CMsgSteamLearn_InferenceMetadata_Response_StdDev)(nil), // 36: dota.CMsgSteamLearn_InferenceMetadata_Response.StdDev + (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable)(nil), // 37: dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable + (*CMsgSteamLearn_InferenceMetadata_Response_KMeans)(nil), // 38: dota.CMsgSteamLearn_InferenceMetadata_Response.KMeans + (*CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram)(nil), // 39: dota.CMsgSteamLearn_InferenceMetadata_Response.SnapshotHistogram + (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry)(nil), // 40: dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry + (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry)(nil), // 41: dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapValuesEntry + (*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry)(nil), // 42: dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapMappingsEntry + (*CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster)(nil), // 43: dota.CMsgSteamLearn_InferenceMetadata_Response.KMeans.Cluster + (*CMsgSteamLearn_InferenceBackend_Response_RegressionOutput)(nil), // 44: dota.CMsgSteamLearn_InferenceBackend_Response.RegressionOutput + (*CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput)(nil), // 45: dota.CMsgSteamLearn_InferenceBackend_Response.BinaryCrossEntropyOutput + (*CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput)(nil), // 46: dota.CMsgSteamLearn_InferenceBackend_Response.MutliBinaryCrossEntropyOutput + (*CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput)(nil), // 47: dota.CMsgSteamLearn_InferenceBackend_Response.CategoricalCrossEntropyOutput + (*CMsgSteamLearn_InferenceBackend_Response_Output)(nil), // 48: dota.CMsgSteamLearn_InferenceBackend_Response.Output } var file_steammessages_steamlearn_steamworkssdk_proto_depIdxs = []int32{ - 7, // 0: dota.CMsgSteamLearnDataSourceDescObject.elements:type_name -> dota.CMsgSteamLearnDataSourceDescElement + 8, // 0: dota.CMsgSteamLearnDataSourceDescObject.elements:type_name -> dota.CMsgSteamLearnDataSourceDescElement 0, // 1: dota.CMsgSteamLearnDataSourceDescElement.data_type:type_name -> dota.ESteamLearnDataType - 6, // 2: dota.CMsgSteamLearnDataSourceDescElement.object:type_name -> dota.CMsgSteamLearnDataSourceDescObject - 6, // 3: dota.CMsgSteamLearnDataSource.structure:type_name -> dota.CMsgSteamLearnDataSourceDescObject - 10, // 4: dota.CMsgSteamLearnDataObject.elements:type_name -> dota.CMsgSteamLearnDataElement - 9, // 5: dota.CMsgSteamLearnDataElement.data_objects:type_name -> dota.CMsgSteamLearnDataObject - 9, // 6: dota.CMsgSteamLearnData.data_object:type_name -> dota.CMsgSteamLearnDataObject - 11, // 7: dota.CMsgSteamLearnDataList.data:type_name -> dota.CMsgSteamLearnData - 13, // 8: dota.CMsgSteamLearn_RegisterDataSource_Request.access_data:type_name -> dota.CMsgSteamLearn_AccessData - 8, // 9: dota.CMsgSteamLearn_RegisterDataSource_Request.data_source:type_name -> dota.CMsgSteamLearnDataSource - 1, // 10: dota.CMsgSteamLearn_RegisterDataSource_Response.result:type_name -> dota.ESteammLearnRegisterDataSourceResult - 8, // 11: dota.CMsgSteamLearn_RegisterDataSource_Response.data_source:type_name -> dota.CMsgSteamLearnDataSource - 13, // 12: dota.CMsgSteamLearn_CacheData_Request.access_data:type_name -> dota.CMsgSteamLearn_AccessData - 11, // 13: dota.CMsgSteamLearn_CacheData_Request.data:type_name -> dota.CMsgSteamLearnData - 2, // 14: dota.CMsgSteamLearn_CacheData_Response.cache_data_result:type_name -> dota.ESteamLearnCacheDataResult - 13, // 15: dota.CMsgSteamLearn_SnapshotProject_Request.access_data:type_name -> dota.CMsgSteamLearn_AccessData - 11, // 16: dota.CMsgSteamLearn_SnapshotProject_Request.data:type_name -> dota.CMsgSteamLearnData - 3, // 17: dota.CMsgSteamLearn_SnapshotProject_Response.snapshot_result:type_name -> dota.ESteamLearnSnapshotProjectResult - 16, // 18: dota.CMsgSteamLearn_BatchOperation_Request.cache_data_requests:type_name -> dota.CMsgSteamLearn_CacheData_Request - 18, // 19: dota.CMsgSteamLearn_BatchOperation_Request.snapshot_requests:type_name -> dota.CMsgSteamLearn_SnapshotProject_Request - 17, // 20: dota.CMsgSteamLearn_BatchOperation_Response.cache_data_responses:type_name -> dota.CMsgSteamLearn_CacheData_Response - 19, // 21: dota.CMsgSteamLearn_BatchOperation_Response.snapshot_responses:type_name -> dota.CMsgSteamLearn_SnapshotProject_Response - 28, // 22: dota.CMsgSteamLearnHMACKeys.cache_data_keys:type_name -> dota.CMsgSteamLearnHMACKeys.CacheDataKeys - 29, // 23: dota.CMsgSteamLearnHMACKeys.snapshot_project_keys:type_name -> dota.CMsgSteamLearnHMACKeys.SnapshotProjectKeys - 4, // 24: dota.CMsgSteamLearn_GetHMACKeys_Response.result:type_name -> dota.ESteamLearnGetHMACKeysResult - 22, // 25: dota.CMsgSteamLearn_GetHMACKeys_Response.keys:type_name -> dota.CMsgSteamLearnHMACKeys - 13, // 26: dota.CMsgSteamLearn_Inference_Request.access_data:type_name -> dota.CMsgSteamLearn_AccessData - 12, // 27: dota.CMsgSteamLearn_Inference_Request.data:type_name -> dota.CMsgSteamLearnDataList - 33, // 28: dota.CMsgSteamLearn_InferenceBackend_Response.outputs:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.Output - 5, // 29: dota.CMsgSteamLearn_Inference_Response.inference_result:type_name -> dota.ESteamLearnInferenceResult - 26, // 30: dota.CMsgSteamLearn_Inference_Response.backend_response:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response - 30, // 31: dota.CMsgSteamLearn_InferenceBackend_Response.Output.binary_crossentropy:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.BinaryCrossEntropyOutput - 32, // 32: dota.CMsgSteamLearn_InferenceBackend_Response.Output.categorical_crossentropy:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.CategoricalCrossEntropyOutput - 31, // 33: dota.CMsgSteamLearn_InferenceBackend_Response.Output.multi_binary_crossentropy:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.MutliBinaryCrossEntropyOutput - 14, // 34: dota.SteamLearn.RegisterDataSource:input_type -> dota.CMsgSteamLearn_RegisterDataSource_Request - 16, // 35: dota.SteamLearn.CacheData:input_type -> dota.CMsgSteamLearn_CacheData_Request - 18, // 36: dota.SteamLearn.SnapshotProject:input_type -> dota.CMsgSteamLearn_SnapshotProject_Request - 20, // 37: dota.SteamLearn.BatchOperation:input_type -> dota.CMsgSteamLearn_BatchOperation_Request - 23, // 38: dota.SteamLearn.GetHMACKeys:input_type -> dota.CMsgSteamLearn_GetHMACKeys_Request - 25, // 39: dota.SteamLearn.Inference:input_type -> dota.CMsgSteamLearn_Inference_Request - 15, // 40: dota.SteamLearn.RegisterDataSource:output_type -> dota.CMsgSteamLearn_RegisterDataSource_Response - 17, // 41: dota.SteamLearn.CacheData:output_type -> dota.CMsgSteamLearn_CacheData_Response - 19, // 42: dota.SteamLearn.SnapshotProject:output_type -> dota.CMsgSteamLearn_SnapshotProject_Response - 21, // 43: dota.SteamLearn.BatchOperation:output_type -> dota.CMsgSteamLearn_BatchOperation_Response - 24, // 44: dota.SteamLearn.GetHMACKeys:output_type -> dota.CMsgSteamLearn_GetHMACKeys_Response - 27, // 45: dota.SteamLearn.Inference:output_type -> dota.CMsgSteamLearn_Inference_Response - 40, // [40:46] is the sub-list for method output_type - 34, // [34:40] is the sub-list for method input_type - 34, // [34:34] is the sub-list for extension type_name - 34, // [34:34] is the sub-list for extension extendee - 0, // [0:34] is the sub-list for field type_name + 7, // 2: dota.CMsgSteamLearnDataSourceDescElement.object:type_name -> dota.CMsgSteamLearnDataSourceDescObject + 7, // 3: dota.CMsgSteamLearnDataSource.structure:type_name -> dota.CMsgSteamLearnDataSourceDescObject + 11, // 4: dota.CMsgSteamLearnDataObject.elements:type_name -> dota.CMsgSteamLearnDataElement + 10, // 5: dota.CMsgSteamLearnDataElement.data_objects:type_name -> dota.CMsgSteamLearnDataObject + 10, // 6: dota.CMsgSteamLearnData.data_object:type_name -> dota.CMsgSteamLearnDataObject + 12, // 7: dota.CMsgSteamLearnDataList.data:type_name -> dota.CMsgSteamLearnData + 9, // 8: dota.CMsgSteamLearn_RegisterDataSource_Request.data_source:type_name -> dota.CMsgSteamLearnDataSource + 1, // 9: dota.CMsgSteamLearn_RegisterDataSource_Response.result:type_name -> dota.ESteammLearnRegisterDataSourceResult + 9, // 10: dota.CMsgSteamLearn_RegisterDataSource_Response.data_source:type_name -> dota.CMsgSteamLearnDataSource + 12, // 11: dota.CMsgSteamLearn_CacheData_Request.data:type_name -> dota.CMsgSteamLearnData + 2, // 12: dota.CMsgSteamLearn_CacheData_Response.cache_data_result:type_name -> dota.ESteamLearnCacheDataResult + 12, // 13: dota.CMsgSteamLearn_SnapshotProject_Request.data:type_name -> dota.CMsgSteamLearnData + 3, // 14: dota.CMsgSteamLearn_SnapshotProject_Response.snapshot_result:type_name -> dota.ESteamLearnSnapshotProjectResult + 16, // 15: dota.CMsgSteamLearn_BatchOperation_Request.cache_data_requests:type_name -> dota.CMsgSteamLearn_CacheData_Request + 18, // 16: dota.CMsgSteamLearn_BatchOperation_Request.snapshot_requests:type_name -> dota.CMsgSteamLearn_SnapshotProject_Request + 25, // 17: dota.CMsgSteamLearn_BatchOperation_Request.inference_requests:type_name -> dota.CMsgSteamLearn_Inference_Request + 17, // 18: dota.CMsgSteamLearn_BatchOperation_Response.cache_data_responses:type_name -> dota.CMsgSteamLearn_CacheData_Response + 19, // 19: dota.CMsgSteamLearn_BatchOperation_Response.snapshot_responses:type_name -> dota.CMsgSteamLearn_SnapshotProject_Response + 30, // 20: dota.CMsgSteamLearn_BatchOperation_Response.inference_responses:type_name -> dota.CMsgSteamLearn_Inference_Response + 31, // 21: dota.CMsgSteamLearnAccessTokens.cache_data_access_tokens:type_name -> dota.CMsgSteamLearnAccessTokens.CacheDataAccessToken + 32, // 22: dota.CMsgSteamLearnAccessTokens.snapshot_project_access_tokens:type_name -> dota.CMsgSteamLearnAccessTokens.SnapshotProjectAccessToken + 33, // 23: dota.CMsgSteamLearnAccessTokens.inference_access_tokens:type_name -> dota.CMsgSteamLearnAccessTokens.InferenceAccessToken + 4, // 24: dota.CMsgSteamLearn_GetAccessTokens_Response.result:type_name -> dota.ESteamLearnGetAccessTokensResult + 22, // 25: dota.CMsgSteamLearn_GetAccessTokens_Response.access_tokens:type_name -> dota.CMsgSteamLearnAccessTokens + 13, // 26: dota.CMsgSteamLearn_Inference_Request.data:type_name -> dota.CMsgSteamLearnDataList + 6, // 27: dota.CMsgSteamLearn_InferenceMetadata_Response.inference_metadata_result:type_name -> dota.ESteamLearnInferenceMetadataResult + 34, // 28: dota.CMsgSteamLearn_InferenceMetadata_Response.row_range:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.RowRange + 35, // 29: dota.CMsgSteamLearn_InferenceMetadata_Response.ranges:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.Range + 36, // 30: dota.CMsgSteamLearn_InferenceMetadata_Response.std_devs:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.StdDev + 37, // 31: dota.CMsgSteamLearn_InferenceMetadata_Response.compact_tables:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable + 38, // 32: dota.CMsgSteamLearn_InferenceMetadata_Response.kmeans:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.KMeans + 39, // 33: dota.CMsgSteamLearn_InferenceMetadata_Response.snapshot_histogram:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.SnapshotHistogram + 48, // 34: dota.CMsgSteamLearn_InferenceBackend_Response.outputs:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.Output + 5, // 35: dota.CMsgSteamLearn_Inference_Response.inference_result:type_name -> dota.ESteamLearnInferenceResult + 29, // 36: dota.CMsgSteamLearn_Inference_Response.backend_response:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response + 41, // 37: dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.map_values:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapValuesEntry + 42, // 38: dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.map_mappings:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapMappingsEntry + 43, // 39: dota.CMsgSteamLearn_InferenceMetadata_Response.KMeans.clusters:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.KMeans.Cluster + 40, // 40: dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapValuesEntry.value:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry + 40, // 41: dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapMappingsEntry.value:type_name -> dota.CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry + 45, // 42: dota.CMsgSteamLearn_InferenceBackend_Response.Output.binary_crossentropy:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.BinaryCrossEntropyOutput + 47, // 43: dota.CMsgSteamLearn_InferenceBackend_Response.Output.categorical_crossentropy:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.CategoricalCrossEntropyOutput + 46, // 44: dota.CMsgSteamLearn_InferenceBackend_Response.Output.multi_binary_crossentropy:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.MutliBinaryCrossEntropyOutput + 44, // 45: dota.CMsgSteamLearn_InferenceBackend_Response.Output.regression:type_name -> dota.CMsgSteamLearn_InferenceBackend_Response.RegressionOutput + 14, // 46: dota.SteamLearn.RegisterDataSource:input_type -> dota.CMsgSteamLearn_RegisterDataSource_Request + 16, // 47: dota.SteamLearn.CacheData:input_type -> dota.CMsgSteamLearn_CacheData_Request + 18, // 48: dota.SteamLearn.SnapshotProject:input_type -> dota.CMsgSteamLearn_SnapshotProject_Request + 20, // 49: dota.SteamLearn.BatchOperation:input_type -> dota.CMsgSteamLearn_BatchOperation_Request + 23, // 50: dota.SteamLearn.GetAccessTokens:input_type -> dota.CMsgSteamLearn_GetAccessTokens_Request + 25, // 51: dota.SteamLearn.Inference:input_type -> dota.CMsgSteamLearn_Inference_Request + 26, // 52: dota.SteamLearn.InferenceMetadata:input_type -> dota.CMsgSteamLearn_InferenceMetadata_Request + 15, // 53: dota.SteamLearn.RegisterDataSource:output_type -> dota.CMsgSteamLearn_RegisterDataSource_Response + 17, // 54: dota.SteamLearn.CacheData:output_type -> dota.CMsgSteamLearn_CacheData_Response + 19, // 55: dota.SteamLearn.SnapshotProject:output_type -> dota.CMsgSteamLearn_SnapshotProject_Response + 21, // 56: dota.SteamLearn.BatchOperation:output_type -> dota.CMsgSteamLearn_BatchOperation_Response + 24, // 57: dota.SteamLearn.GetAccessTokens:output_type -> dota.CMsgSteamLearn_GetAccessTokens_Response + 30, // 58: dota.SteamLearn.Inference:output_type -> dota.CMsgSteamLearn_Inference_Response + 28, // 59: dota.SteamLearn.InferenceMetadata:output_type -> dota.CMsgSteamLearn_InferenceMetadata_Response + 53, // [53:60] is the sub-list for method output_type + 46, // [46:53] is the sub-list for method input_type + 46, // [46:46] is the sub-list for extension type_name + 46, // [46:46] is the sub-list for extension extendee + 0, // [0:46] is the sub-list for field type_name } func init() { file_steammessages_steamlearn_steamworkssdk_proto_init() } @@ -2958,7 +4164,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_AccessData); i { + switch v := v.(*CMsgSteamLearn_RegisterDataSource_Request); i { case 0: return &v.state case 1: @@ -2970,7 +4176,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_RegisterDataSource_Request); i { + switch v := v.(*CMsgSteamLearn_RegisterDataSource_Response); i { case 0: return &v.state case 1: @@ -2982,7 +4188,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_RegisterDataSource_Response); i { + switch v := v.(*CMsgSteamLearn_CacheData_Request); i { case 0: return &v.state case 1: @@ -2994,7 +4200,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_CacheData_Request); i { + switch v := v.(*CMsgSteamLearn_CacheData_Response); i { case 0: return &v.state case 1: @@ -3006,7 +4212,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_CacheData_Response); i { + switch v := v.(*CMsgSteamLearn_SnapshotProject_Request); i { case 0: return &v.state case 1: @@ -3018,7 +4224,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_SnapshotProject_Request); i { + switch v := v.(*CMsgSteamLearn_SnapshotProject_Response); i { case 0: return &v.state case 1: @@ -3030,7 +4236,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_SnapshotProject_Response); i { + switch v := v.(*CMsgSteamLearn_BatchOperation_Request); i { case 0: return &v.state case 1: @@ -3042,7 +4248,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_BatchOperation_Request); i { + switch v := v.(*CMsgSteamLearn_BatchOperation_Response); i { case 0: return &v.state case 1: @@ -3054,7 +4260,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_BatchOperation_Response); i { + switch v := v.(*CMsgSteamLearnAccessTokens); i { case 0: return &v.state case 1: @@ -3066,7 +4272,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnHMACKeys); i { + switch v := v.(*CMsgSteamLearn_GetAccessTokens_Request); i { case 0: return &v.state case 1: @@ -3078,7 +4284,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_GetHMACKeys_Request); i { + switch v := v.(*CMsgSteamLearn_GetAccessTokens_Response); i { case 0: return &v.state case 1: @@ -3090,7 +4296,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_GetHMACKeys_Response); i { + switch v := v.(*CMsgSteamLearn_Inference_Request); i { case 0: return &v.state case 1: @@ -3102,7 +4308,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_Inference_Request); i { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Request); i { case 0: return &v.state case 1: @@ -3114,7 +4320,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_InferenceBackend_Response); i { + switch v := v.(*CMsgSteamLearn_InferenceMetadataBackend_Request); i { case 0: return &v.state case 1: @@ -3126,7 +4332,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_Inference_Response); i { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response); i { case 0: return &v.state case 1: @@ -3138,7 +4344,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnHMACKeys_CacheDataKeys); i { + switch v := v.(*CMsgSteamLearn_InferenceBackend_Response); i { case 0: return &v.state case 1: @@ -3150,7 +4356,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearnHMACKeys_SnapshotProjectKeys); i { + switch v := v.(*CMsgSteamLearn_Inference_Response); i { case 0: return &v.state case 1: @@ -3162,7 +4368,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput); i { + switch v := v.(*CMsgSteamLearnAccessTokens_CacheDataAccessToken); i { case 0: return &v.state case 1: @@ -3174,7 +4380,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput); i { + switch v := v.(*CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken); i { case 0: return &v.state case 1: @@ -3186,7 +4392,7 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput); i { + switch v := v.(*CMsgSteamLearnAccessTokens_InferenceAccessToken); i { case 0: return &v.state case 1: @@ -3198,6 +4404,174 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_RowRange); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_Range); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_StdDev); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_CompactTable); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_KMeans); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceBackend_Response_RegressionOutput); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CMsgSteamLearn_InferenceBackend_Response_Output); i { case 0: return &v.state @@ -3210,18 +4584,19 @@ func file_steammessages_steamlearn_steamworkssdk_proto_init() { } } } - file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[27].OneofWrappers = []interface{}{ + file_steammessages_steamlearn_steamworkssdk_proto_msgTypes[41].OneofWrappers = []interface{}{ (*CMsgSteamLearn_InferenceBackend_Response_Output_BinaryCrossentropy)(nil), (*CMsgSteamLearn_InferenceBackend_Response_Output_CategoricalCrossentropy)(nil), (*CMsgSteamLearn_InferenceBackend_Response_Output_MultiBinaryCrossentropy)(nil), + (*CMsgSteamLearn_InferenceBackend_Response_Output_Regression)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_steammessages_steamlearn_steamworkssdk_proto_rawDesc, - NumEnums: 6, - NumMessages: 28, + NumEnums: 7, + NumMessages: 42, NumExtensions: 0, NumServices: 1, }, diff --git a/dota/steammessages_steamlearn.steamworkssdk.proto b/dota/steammessages_steamlearn.steamworkssdk.proto index 47de90da..ebabd854 100644 --- a/dota/steammessages_steamlearn.steamworkssdk.proto +++ b/dota/steammessages_steamlearn.steamworkssdk.proto @@ -55,8 +55,9 @@ enum ESteamLearnSnapshotProjectResult { STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_PUBLISHED_VERSION = 12; } -enum ESteamLearnGetHMACKeysResult { - STEAMLEARN_GET_HMAC_KEYS_SUCCESS = 0; +enum ESteamLearnGetAccessTokensResult { + STEAMLEARN_GET_ACCESS_TOKENS_ERROR = 0; + STEAMLEARN_GET_ACCESS_TOKENS_SUCCESS = 1; } enum ESteamLearnInferenceResult { @@ -69,6 +70,18 @@ enum ESteamLearnInferenceResult { STEAMLEARN_INFERENCE_ERROR_INVALID_TIMESTAMP = 6; STEAMLEARN_INFERENCE_ERROR_INVALID_PUBLISHED_VERSION = 7; STEAMLEARN_INFERENCE_ERROR_NO_FETCH_ID_FOUND = 8; + STEAMLEARN_INFERENCE_ERROR_TOO_BUSY = 9; +} + +enum ESteamLearnInferenceMetadataResult { + STEAMLEARN_INFERENCE_METADATA_ERROR = 0; + STEAMLEARN_INFERENCE_METADATA_SUCCESS = 1; + STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PROJECT_ID = 2; + STEAMLEARN_INFERENCE_METADATA_ERROR_NO_PUBLISHED_CONFIG = 3; + STEAMLEARN_INFERENCE_METADATA_ERROR_FORBIDDEN = 4; + STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_TIMESTAMP = 5; + STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PUBLISHED_VERSION = 6; + STEAMLEARN_INFERENCE_METADATA_ERROR_NO_FETCH_ID_FOUND = 7; } message CMsgSteamLearnDataSourceDescObject { @@ -115,15 +128,8 @@ message CMsgSteamLearnDataList { repeated CMsgSteamLearnData data = 1; } -message CMsgSteamLearn_AccessData { - optional uint32 publisher_id = 1; - optional uint32 timestamp = 2; - optional uint64 random_value = 3; -} - message CMsgSteamLearn_RegisterDataSource_Request { optional string access_token = 1; - optional CMsgSteamLearn_AccessData access_data = 2; optional CMsgSteamLearnDataSource data_source = 3; } @@ -134,7 +140,6 @@ message CMsgSteamLearn_RegisterDataSource_Response { message CMsgSteamLearn_CacheData_Request { optional string access_token = 1; - optional CMsgSteamLearn_AccessData access_data = 2; optional CMsgSteamLearnData data = 3; } @@ -144,7 +149,6 @@ message CMsgSteamLearn_CacheData_Response { message CMsgSteamLearn_SnapshotProject_Request { optional string access_token = 1; - optional CMsgSteamLearn_AccessData access_data = 2; optional uint32 project_id = 3; optional uint32 published_version = 7; repeated uint64 keys = 4; @@ -159,43 +163,48 @@ message CMsgSteamLearn_SnapshotProject_Response { message CMsgSteamLearn_BatchOperation_Request { repeated CMsgSteamLearn_CacheData_Request cache_data_requests = 1; repeated CMsgSteamLearn_SnapshotProject_Request snapshot_requests = 2; + repeated CMsgSteamLearn_Inference_Request inference_requests = 3; } message CMsgSteamLearn_BatchOperation_Response { repeated CMsgSteamLearn_CacheData_Response cache_data_responses = 1; repeated CMsgSteamLearn_SnapshotProject_Response snapshot_responses = 2; + repeated CMsgSteamLearn_Inference_Response inference_responses = 3; } -message CMsgSteamLearnHMACKeys { - message CacheDataKeys { +message CMsgSteamLearnAccessTokens { + message CacheDataAccessToken { optional uint32 data_source_id = 1; - optional uint32 version = 3; - optional string key = 2; + optional string access_token = 2; } - message SnapshotProjectKeys { + message SnapshotProjectAccessToken { optional uint32 project_id = 1; - optional uint32 published_version = 3; - optional string key = 2; + optional string access_token = 2; } - optional string register_data_source_key = 1; - repeated CMsgSteamLearnHMACKeys.CacheDataKeys cache_data_keys = 2; - repeated CMsgSteamLearnHMACKeys.SnapshotProjectKeys snapshot_project_keys = 3; + message InferenceAccessToken { + optional uint32 project_id = 1; + optional string access_token = 2; + } + + optional string register_data_source_access_token = 1; + repeated CMsgSteamLearnAccessTokens.CacheDataAccessToken cache_data_access_tokens = 2; + repeated CMsgSteamLearnAccessTokens.SnapshotProjectAccessToken snapshot_project_access_tokens = 3; + repeated CMsgSteamLearnAccessTokens.InferenceAccessToken inference_access_tokens = 4; } -message CMsgSteamLearn_GetHMACKeys_Request { +message CMsgSteamLearn_GetAccessTokens_Request { optional uint32 appid = 1; } -message CMsgSteamLearn_GetHMACKeys_Response { - optional ESteamLearnGetHMACKeysResult result = 1; - optional CMsgSteamLearnHMACKeys keys = 2; +message CMsgSteamLearn_GetAccessTokens_Response { + optional ESteamLearnGetAccessTokensResult result = 1; + optional CMsgSteamLearnAccessTokens access_tokens = 2; } message CMsgSteamLearn_Inference_Request { optional string access_token = 1; - optional CMsgSteamLearn_AccessData access_data = 2; optional uint32 project_id = 3; optional uint32 published_version = 4; optional uint32 override_train_id = 5; @@ -203,7 +212,93 @@ message CMsgSteamLearn_Inference_Request { repeated float additional_data = 7; } +message CMsgSteamLearn_InferenceMetadata_Request { + optional string access_token = 1; + optional uint32 project_id = 3; + optional uint32 published_version = 4; + optional uint32 override_train_id = 5; +} + +message CMsgSteamLearn_InferenceMetadataBackend_Request { + optional uint32 project_id = 1; + optional uint32 fetch_id = 2; +} + +message CMsgSteamLearn_InferenceMetadata_Response { + message RowRange { + optional uint64 min_row = 1; + optional uint64 max_row = 2; + } + + message Range { + optional string data_element_path = 1; + optional float min_value = 2; + optional float max_value = 3; + } + + message StdDev { + optional string data_element_path = 1; + optional float mean = 2; + optional float std_dev = 3; + } + + message CompactTable { + message Entry { + optional uint32 value = 1; + optional uint32 mapping = 2; + optional uint64 count = 3; + } + + message MapValuesEntry { + optional uint32 key = 1; + optional CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry value = 2; + } + + message MapMappingsEntry { + optional uint32 key = 1; + optional CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry value = 2; + } + + optional string name = 1; + repeated CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapValuesEntry map_values = 2; + repeated CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapMappingsEntry map_mappings = 3; + } + + message KMeans { + message Cluster { + optional float x = 1; + optional float y = 2; + optional float radius = 3; + optional float radius_75pct = 4; + optional float radius_50pct = 5; + optional float radius_25pct = 6; + } + + optional string name = 1; + repeated CMsgSteamLearn_InferenceMetadata_Response.KMeans.Cluster clusters = 2; + } + + message SnapshotHistogram { + optional float min_value = 1; + optional float max_value = 2; + optional uint32 num_buckets = 3; + repeated uint32 bucket_counts = 4; + } + + optional ESteamLearnInferenceMetadataResult inference_metadata_result = 1; + optional CMsgSteamLearn_InferenceMetadata_Response.RowRange row_range = 2; + repeated CMsgSteamLearn_InferenceMetadata_Response.Range ranges = 3; + repeated CMsgSteamLearn_InferenceMetadata_Response.StdDev std_devs = 4; + repeated CMsgSteamLearn_InferenceMetadata_Response.CompactTable compact_tables = 5; + repeated CMsgSteamLearn_InferenceMetadata_Response.KMeans kmeans = 6; + optional CMsgSteamLearn_InferenceMetadata_Response.SnapshotHistogram snapshot_histogram = 7; +} + message CMsgSteamLearn_InferenceBackend_Response { + message RegressionOutput { + optional float value = 1; + } + message BinaryCrossEntropyOutput { optional float value = 1; } @@ -223,6 +318,7 @@ message CMsgSteamLearn_InferenceBackend_Response { CMsgSteamLearn_InferenceBackend_Response.BinaryCrossEntropyOutput binary_crossentropy = 1; CMsgSteamLearn_InferenceBackend_Response.CategoricalCrossEntropyOutput categorical_crossentropy = 2; CMsgSteamLearn_InferenceBackend_Response.MutliBinaryCrossEntropyOutput multi_binary_crossentropy = 3; + CMsgSteamLearn_InferenceBackend_Response.RegressionOutput regression = 4; } } @@ -232,6 +328,7 @@ message CMsgSteamLearn_InferenceBackend_Response { message CMsgSteamLearn_Inference_Response { optional ESteamLearnInferenceResult inference_result = 1; optional CMsgSteamLearn_InferenceBackend_Response backend_response = 2; + repeated uint64 keys = 3; } service SteamLearn { @@ -253,11 +350,15 @@ rpc BatchOperation (CMsgSteamLearn_BatchOperation_Request) returns (CMsgSteamLea option (method_description) = "Batches multiple data updates, snapshots, and inference requests into a single call"; } -rpc GetHMACKeys (CMsgSteamLearn_GetHMACKeys_Request) returns (CMsgSteamLearn_GetHMACKeys_Response) { - option (method_description) = "Gets the HMAC keys needed for registering data sources, submitting data to them, and snapshotting projects"; +rpc GetAccessTokens (CMsgSteamLearn_GetAccessTokens_Request) returns (CMsgSteamLearn_GetAccessTokens_Response) { + option (method_description) = "Gets the access tokens needed for registering data sources, submitting data to them, and snapshotting projects"; } rpc Inference (CMsgSteamLearn_Inference_Request) returns (CMsgSteamLearn_Inference_Response) { option (method_description) = "Inferences using supplied data, or data associated with the specified key."; } + +rpc InferenceMetadata (CMsgSteamLearn_InferenceMetadata_Request) returns (CMsgSteamLearn_InferenceMetadata_Response) { + option (method_description) = "Requests the metadata that was generated from a specified fetch."; + } } diff --git a/dota/steammessages_unified_base.steamworkssdk.pb.go b/dota/steammessages_unified_base.steamworkssdk.pb.go index a5fac4ed..ba874382 100644 --- a/dota/steammessages_unified_base.steamworkssdk.pb.go +++ b/dota/steammessages_unified_base.steamworkssdk.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steammessages_unified_base.steamworkssdk.proto diff --git a/dota/steamnetworkingsockets_messages.pb.go b/dota/steamnetworkingsockets_messages.pb.go index 5a717aee..df29cdb7 100644 --- a/dota/steamnetworkingsockets_messages.pb.go +++ b/dota/steamnetworkingsockets_messages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steamnetworkingsockets_messages.proto @@ -432,80 +432,81 @@ type CMsgSteamDatagramLinkLifetimeStats struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ConnectedSeconds *uint32 `protobuf:"varint,2,opt,name=connected_seconds,json=connectedSeconds" json:"connected_seconds,omitempty"` - PacketsSent *uint64 `protobuf:"varint,3,opt,name=packets_sent,json=packetsSent" json:"packets_sent,omitempty"` - KbSent *uint64 `protobuf:"varint,4,opt,name=kb_sent,json=kbSent" json:"kb_sent,omitempty"` - PacketsRecv *uint64 `protobuf:"varint,5,opt,name=packets_recv,json=packetsRecv" json:"packets_recv,omitempty"` - KbRecv *uint64 `protobuf:"varint,6,opt,name=kb_recv,json=kbRecv" json:"kb_recv,omitempty"` - PacketsRecvSequenced *uint64 `protobuf:"varint,7,opt,name=packets_recv_sequenced,json=packetsRecvSequenced" json:"packets_recv_sequenced,omitempty"` - PacketsRecvDropped *uint64 `protobuf:"varint,8,opt,name=packets_recv_dropped,json=packetsRecvDropped" json:"packets_recv_dropped,omitempty"` - PacketsRecvOutOfOrder *uint64 `protobuf:"varint,9,opt,name=packets_recv_out_of_order,json=packetsRecvOutOfOrder" json:"packets_recv_out_of_order,omitempty"` - PacketsRecvDuplicate *uint64 `protobuf:"varint,10,opt,name=packets_recv_duplicate,json=packetsRecvDuplicate" json:"packets_recv_duplicate,omitempty"` - PacketsRecvLurch *uint64 `protobuf:"varint,11,opt,name=packets_recv_lurch,json=packetsRecvLurch" json:"packets_recv_lurch,omitempty"` - MultipathPacketsRecvSequenced []uint64 `protobuf:"varint,12,rep,name=multipath_packets_recv_sequenced,json=multipathPacketsRecvSequenced" json:"multipath_packets_recv_sequenced,omitempty"` - MultipathPacketsRecvLater []uint64 `protobuf:"varint,13,rep,name=multipath_packets_recv_later,json=multipathPacketsRecvLater" json:"multipath_packets_recv_later,omitempty"` - MultipathSendEnabled *uint32 `protobuf:"varint,14,opt,name=multipath_send_enabled,json=multipathSendEnabled" json:"multipath_send_enabled,omitempty"` - QualityHistogram_100 *uint32 `protobuf:"varint,21,opt,name=quality_histogram_100,json=qualityHistogram100" json:"quality_histogram_100,omitempty"` - QualityHistogram_99 *uint32 `protobuf:"varint,22,opt,name=quality_histogram_99,json=qualityHistogram99" json:"quality_histogram_99,omitempty"` - QualityHistogram_97 *uint32 `protobuf:"varint,23,opt,name=quality_histogram_97,json=qualityHistogram97" json:"quality_histogram_97,omitempty"` - QualityHistogram_95 *uint32 `protobuf:"varint,24,opt,name=quality_histogram_95,json=qualityHistogram95" json:"quality_histogram_95,omitempty"` - QualityHistogram_90 *uint32 `protobuf:"varint,25,opt,name=quality_histogram_90,json=qualityHistogram90" json:"quality_histogram_90,omitempty"` - QualityHistogram_75 *uint32 `protobuf:"varint,26,opt,name=quality_histogram_75,json=qualityHistogram75" json:"quality_histogram_75,omitempty"` - QualityHistogram_50 *uint32 `protobuf:"varint,27,opt,name=quality_histogram_50,json=qualityHistogram50" json:"quality_histogram_50,omitempty"` - QualityHistogram_1 *uint32 `protobuf:"varint,28,opt,name=quality_histogram_1,json=qualityHistogram1" json:"quality_histogram_1,omitempty"` - QualityHistogramDead *uint32 `protobuf:"varint,29,opt,name=quality_histogram_dead,json=qualityHistogramDead" json:"quality_histogram_dead,omitempty"` - QualityNtile_2Nd *uint32 `protobuf:"varint,30,opt,name=quality_ntile_2nd,json=qualityNtile2nd" json:"quality_ntile_2nd,omitempty"` - QualityNtile_5Th *uint32 `protobuf:"varint,31,opt,name=quality_ntile_5th,json=qualityNtile5th" json:"quality_ntile_5th,omitempty"` - QualityNtile_25Th *uint32 `protobuf:"varint,32,opt,name=quality_ntile_25th,json=qualityNtile25th" json:"quality_ntile_25th,omitempty"` - QualityNtile_50Th *uint32 `protobuf:"varint,33,opt,name=quality_ntile_50th,json=qualityNtile50th" json:"quality_ntile_50th,omitempty"` - PingHistogram_25 *uint32 `protobuf:"varint,41,opt,name=ping_histogram_25,json=pingHistogram25" json:"ping_histogram_25,omitempty"` - PingHistogram_50 *uint32 `protobuf:"varint,42,opt,name=ping_histogram_50,json=pingHistogram50" json:"ping_histogram_50,omitempty"` - PingHistogram_75 *uint32 `protobuf:"varint,43,opt,name=ping_histogram_75,json=pingHistogram75" json:"ping_histogram_75,omitempty"` - PingHistogram_100 *uint32 `protobuf:"varint,44,opt,name=ping_histogram_100,json=pingHistogram100" json:"ping_histogram_100,omitempty"` - PingHistogram_125 *uint32 `protobuf:"varint,45,opt,name=ping_histogram_125,json=pingHistogram125" json:"ping_histogram_125,omitempty"` - PingHistogram_150 *uint32 `protobuf:"varint,46,opt,name=ping_histogram_150,json=pingHistogram150" json:"ping_histogram_150,omitempty"` - PingHistogram_200 *uint32 `protobuf:"varint,47,opt,name=ping_histogram_200,json=pingHistogram200" json:"ping_histogram_200,omitempty"` - PingHistogram_300 *uint32 `protobuf:"varint,48,opt,name=ping_histogram_300,json=pingHistogram300" json:"ping_histogram_300,omitempty"` - PingHistogramMax *uint32 `protobuf:"varint,49,opt,name=ping_histogram_max,json=pingHistogramMax" json:"ping_histogram_max,omitempty"` - PingNtile_5Th *uint32 `protobuf:"varint,50,opt,name=ping_ntile_5th,json=pingNtile5th" json:"ping_ntile_5th,omitempty"` - PingNtile_50Th *uint32 `protobuf:"varint,51,opt,name=ping_ntile_50th,json=pingNtile50th" json:"ping_ntile_50th,omitempty"` - PingNtile_75Th *uint32 `protobuf:"varint,52,opt,name=ping_ntile_75th,json=pingNtile75th" json:"ping_ntile_75th,omitempty"` - PingNtile_95Th *uint32 `protobuf:"varint,53,opt,name=ping_ntile_95th,json=pingNtile95th" json:"ping_ntile_95th,omitempty"` - PingNtile_98Th *uint32 `protobuf:"varint,54,opt,name=ping_ntile_98th,json=pingNtile98th" json:"ping_ntile_98th,omitempty"` - JitterHistogramNegligible *uint32 `protobuf:"varint,61,opt,name=jitter_histogram_negligible,json=jitterHistogramNegligible" json:"jitter_histogram_negligible,omitempty"` - JitterHistogram_1 *uint32 `protobuf:"varint,62,opt,name=jitter_histogram_1,json=jitterHistogram1" json:"jitter_histogram_1,omitempty"` - JitterHistogram_2 *uint32 `protobuf:"varint,63,opt,name=jitter_histogram_2,json=jitterHistogram2" json:"jitter_histogram_2,omitempty"` - JitterHistogram_5 *uint32 `protobuf:"varint,64,opt,name=jitter_histogram_5,json=jitterHistogram5" json:"jitter_histogram_5,omitempty"` - JitterHistogram_10 *uint32 `protobuf:"varint,65,opt,name=jitter_histogram_10,json=jitterHistogram10" json:"jitter_histogram_10,omitempty"` - JitterHistogram_20 *uint32 `protobuf:"varint,66,opt,name=jitter_histogram_20,json=jitterHistogram20" json:"jitter_histogram_20,omitempty"` - TxspeedMax *uint32 `protobuf:"varint,67,opt,name=txspeed_max,json=txspeedMax" json:"txspeed_max,omitempty"` - TxspeedHistogram_16 *uint32 `protobuf:"varint,68,opt,name=txspeed_histogram_16,json=txspeedHistogram16" json:"txspeed_histogram_16,omitempty"` - TxspeedHistogram_32 *uint32 `protobuf:"varint,69,opt,name=txspeed_histogram_32,json=txspeedHistogram32" json:"txspeed_histogram_32,omitempty"` - TxspeedHistogram_64 *uint32 `protobuf:"varint,70,opt,name=txspeed_histogram_64,json=txspeedHistogram64" json:"txspeed_histogram_64,omitempty"` - TxspeedHistogram_128 *uint32 `protobuf:"varint,71,opt,name=txspeed_histogram_128,json=txspeedHistogram128" json:"txspeed_histogram_128,omitempty"` - TxspeedHistogram_256 *uint32 `protobuf:"varint,72,opt,name=txspeed_histogram_256,json=txspeedHistogram256" json:"txspeed_histogram_256,omitempty"` - TxspeedHistogram_512 *uint32 `protobuf:"varint,73,opt,name=txspeed_histogram_512,json=txspeedHistogram512" json:"txspeed_histogram_512,omitempty"` - TxspeedHistogram_1024 *uint32 `protobuf:"varint,74,opt,name=txspeed_histogram_1024,json=txspeedHistogram1024" json:"txspeed_histogram_1024,omitempty"` - TxspeedHistogramMax *uint32 `protobuf:"varint,75,opt,name=txspeed_histogram_max,json=txspeedHistogramMax" json:"txspeed_histogram_max,omitempty"` - TxspeedNtile_5Th *uint32 `protobuf:"varint,76,opt,name=txspeed_ntile_5th,json=txspeedNtile5th" json:"txspeed_ntile_5th,omitempty"` - TxspeedNtile_50Th *uint32 `protobuf:"varint,77,opt,name=txspeed_ntile_50th,json=txspeedNtile50th" json:"txspeed_ntile_50th,omitempty"` - TxspeedNtile_75Th *uint32 `protobuf:"varint,78,opt,name=txspeed_ntile_75th,json=txspeedNtile75th" json:"txspeed_ntile_75th,omitempty"` - TxspeedNtile_95Th *uint32 `protobuf:"varint,79,opt,name=txspeed_ntile_95th,json=txspeedNtile95th" json:"txspeed_ntile_95th,omitempty"` - TxspeedNtile_98Th *uint32 `protobuf:"varint,80,opt,name=txspeed_ntile_98th,json=txspeedNtile98th" json:"txspeed_ntile_98th,omitempty"` - RxspeedMax *uint32 `protobuf:"varint,81,opt,name=rxspeed_max,json=rxspeedMax" json:"rxspeed_max,omitempty"` - RxspeedHistogram_16 *uint32 `protobuf:"varint,82,opt,name=rxspeed_histogram_16,json=rxspeedHistogram16" json:"rxspeed_histogram_16,omitempty"` - RxspeedHistogram_32 *uint32 `protobuf:"varint,83,opt,name=rxspeed_histogram_32,json=rxspeedHistogram32" json:"rxspeed_histogram_32,omitempty"` - RxspeedHistogram_64 *uint32 `protobuf:"varint,84,opt,name=rxspeed_histogram_64,json=rxspeedHistogram64" json:"rxspeed_histogram_64,omitempty"` - RxspeedHistogram_128 *uint32 `protobuf:"varint,85,opt,name=rxspeed_histogram_128,json=rxspeedHistogram128" json:"rxspeed_histogram_128,omitempty"` - RxspeedHistogram_256 *uint32 `protobuf:"varint,86,opt,name=rxspeed_histogram_256,json=rxspeedHistogram256" json:"rxspeed_histogram_256,omitempty"` - RxspeedHistogram_512 *uint32 `protobuf:"varint,87,opt,name=rxspeed_histogram_512,json=rxspeedHistogram512" json:"rxspeed_histogram_512,omitempty"` - RxspeedHistogram_1024 *uint32 `protobuf:"varint,88,opt,name=rxspeed_histogram_1024,json=rxspeedHistogram1024" json:"rxspeed_histogram_1024,omitempty"` - RxspeedHistogramMax *uint32 `protobuf:"varint,89,opt,name=rxspeed_histogram_max,json=rxspeedHistogramMax" json:"rxspeed_histogram_max,omitempty"` - RxspeedNtile_5Th *uint32 `protobuf:"varint,90,opt,name=rxspeed_ntile_5th,json=rxspeedNtile5th" json:"rxspeed_ntile_5th,omitempty"` - RxspeedNtile_50Th *uint32 `protobuf:"varint,91,opt,name=rxspeed_ntile_50th,json=rxspeedNtile50th" json:"rxspeed_ntile_50th,omitempty"` - RxspeedNtile_75Th *uint32 `protobuf:"varint,92,opt,name=rxspeed_ntile_75th,json=rxspeedNtile75th" json:"rxspeed_ntile_75th,omitempty"` - RxspeedNtile_95Th *uint32 `protobuf:"varint,93,opt,name=rxspeed_ntile_95th,json=rxspeedNtile95th" json:"rxspeed_ntile_95th,omitempty"` - RxspeedNtile_98Th *uint32 `protobuf:"varint,94,opt,name=rxspeed_ntile_98th,json=rxspeedNtile98th" json:"rxspeed_ntile_98th,omitempty"` + ConnectedSeconds *uint32 `protobuf:"varint,2,opt,name=connected_seconds,json=connectedSeconds" json:"connected_seconds,omitempty"` + PacketsSent *uint64 `protobuf:"varint,3,opt,name=packets_sent,json=packetsSent" json:"packets_sent,omitempty"` + KbSent *uint64 `protobuf:"varint,4,opt,name=kb_sent,json=kbSent" json:"kb_sent,omitempty"` + PacketsRecv *uint64 `protobuf:"varint,5,opt,name=packets_recv,json=packetsRecv" json:"packets_recv,omitempty"` + KbRecv *uint64 `protobuf:"varint,6,opt,name=kb_recv,json=kbRecv" json:"kb_recv,omitempty"` + PacketsRecvSequenced *uint64 `protobuf:"varint,7,opt,name=packets_recv_sequenced,json=packetsRecvSequenced" json:"packets_recv_sequenced,omitempty"` + PacketsRecvDropped *uint64 `protobuf:"varint,8,opt,name=packets_recv_dropped,json=packetsRecvDropped" json:"packets_recv_dropped,omitempty"` + PacketsRecvOutOfOrder *uint64 `protobuf:"varint,9,opt,name=packets_recv_out_of_order,json=packetsRecvOutOfOrder" json:"packets_recv_out_of_order,omitempty"` + PacketsRecvOutOfOrderCorrected *uint64 `protobuf:"varint,15,opt,name=packets_recv_out_of_order_corrected,json=packetsRecvOutOfOrderCorrected" json:"packets_recv_out_of_order_corrected,omitempty"` + PacketsRecvDuplicate *uint64 `protobuf:"varint,10,opt,name=packets_recv_duplicate,json=packetsRecvDuplicate" json:"packets_recv_duplicate,omitempty"` + PacketsRecvLurch *uint64 `protobuf:"varint,11,opt,name=packets_recv_lurch,json=packetsRecvLurch" json:"packets_recv_lurch,omitempty"` + MultipathPacketsRecvSequenced []uint64 `protobuf:"varint,12,rep,name=multipath_packets_recv_sequenced,json=multipathPacketsRecvSequenced" json:"multipath_packets_recv_sequenced,omitempty"` + MultipathPacketsRecvLater []uint64 `protobuf:"varint,13,rep,name=multipath_packets_recv_later,json=multipathPacketsRecvLater" json:"multipath_packets_recv_later,omitempty"` + MultipathSendEnabled *uint32 `protobuf:"varint,14,opt,name=multipath_send_enabled,json=multipathSendEnabled" json:"multipath_send_enabled,omitempty"` + QualityHistogram_100 *uint32 `protobuf:"varint,21,opt,name=quality_histogram_100,json=qualityHistogram100" json:"quality_histogram_100,omitempty"` + QualityHistogram_99 *uint32 `protobuf:"varint,22,opt,name=quality_histogram_99,json=qualityHistogram99" json:"quality_histogram_99,omitempty"` + QualityHistogram_97 *uint32 `protobuf:"varint,23,opt,name=quality_histogram_97,json=qualityHistogram97" json:"quality_histogram_97,omitempty"` + QualityHistogram_95 *uint32 `protobuf:"varint,24,opt,name=quality_histogram_95,json=qualityHistogram95" json:"quality_histogram_95,omitempty"` + QualityHistogram_90 *uint32 `protobuf:"varint,25,opt,name=quality_histogram_90,json=qualityHistogram90" json:"quality_histogram_90,omitempty"` + QualityHistogram_75 *uint32 `protobuf:"varint,26,opt,name=quality_histogram_75,json=qualityHistogram75" json:"quality_histogram_75,omitempty"` + QualityHistogram_50 *uint32 `protobuf:"varint,27,opt,name=quality_histogram_50,json=qualityHistogram50" json:"quality_histogram_50,omitempty"` + QualityHistogram_1 *uint32 `protobuf:"varint,28,opt,name=quality_histogram_1,json=qualityHistogram1" json:"quality_histogram_1,omitempty"` + QualityHistogramDead *uint32 `protobuf:"varint,29,opt,name=quality_histogram_dead,json=qualityHistogramDead" json:"quality_histogram_dead,omitempty"` + QualityNtile_2Nd *uint32 `protobuf:"varint,30,opt,name=quality_ntile_2nd,json=qualityNtile2nd" json:"quality_ntile_2nd,omitempty"` + QualityNtile_5Th *uint32 `protobuf:"varint,31,opt,name=quality_ntile_5th,json=qualityNtile5th" json:"quality_ntile_5th,omitempty"` + QualityNtile_25Th *uint32 `protobuf:"varint,32,opt,name=quality_ntile_25th,json=qualityNtile25th" json:"quality_ntile_25th,omitempty"` + QualityNtile_50Th *uint32 `protobuf:"varint,33,opt,name=quality_ntile_50th,json=qualityNtile50th" json:"quality_ntile_50th,omitempty"` + PingHistogram_25 *uint32 `protobuf:"varint,41,opt,name=ping_histogram_25,json=pingHistogram25" json:"ping_histogram_25,omitempty"` + PingHistogram_50 *uint32 `protobuf:"varint,42,opt,name=ping_histogram_50,json=pingHistogram50" json:"ping_histogram_50,omitempty"` + PingHistogram_75 *uint32 `protobuf:"varint,43,opt,name=ping_histogram_75,json=pingHistogram75" json:"ping_histogram_75,omitempty"` + PingHistogram_100 *uint32 `protobuf:"varint,44,opt,name=ping_histogram_100,json=pingHistogram100" json:"ping_histogram_100,omitempty"` + PingHistogram_125 *uint32 `protobuf:"varint,45,opt,name=ping_histogram_125,json=pingHistogram125" json:"ping_histogram_125,omitempty"` + PingHistogram_150 *uint32 `protobuf:"varint,46,opt,name=ping_histogram_150,json=pingHistogram150" json:"ping_histogram_150,omitempty"` + PingHistogram_200 *uint32 `protobuf:"varint,47,opt,name=ping_histogram_200,json=pingHistogram200" json:"ping_histogram_200,omitempty"` + PingHistogram_300 *uint32 `protobuf:"varint,48,opt,name=ping_histogram_300,json=pingHistogram300" json:"ping_histogram_300,omitempty"` + PingHistogramMax *uint32 `protobuf:"varint,49,opt,name=ping_histogram_max,json=pingHistogramMax" json:"ping_histogram_max,omitempty"` + PingNtile_5Th *uint32 `protobuf:"varint,50,opt,name=ping_ntile_5th,json=pingNtile5th" json:"ping_ntile_5th,omitempty"` + PingNtile_50Th *uint32 `protobuf:"varint,51,opt,name=ping_ntile_50th,json=pingNtile50th" json:"ping_ntile_50th,omitempty"` + PingNtile_75Th *uint32 `protobuf:"varint,52,opt,name=ping_ntile_75th,json=pingNtile75th" json:"ping_ntile_75th,omitempty"` + PingNtile_95Th *uint32 `protobuf:"varint,53,opt,name=ping_ntile_95th,json=pingNtile95th" json:"ping_ntile_95th,omitempty"` + PingNtile_98Th *uint32 `protobuf:"varint,54,opt,name=ping_ntile_98th,json=pingNtile98th" json:"ping_ntile_98th,omitempty"` + JitterHistogramNegligible *uint32 `protobuf:"varint,61,opt,name=jitter_histogram_negligible,json=jitterHistogramNegligible" json:"jitter_histogram_negligible,omitempty"` + JitterHistogram_1 *uint32 `protobuf:"varint,62,opt,name=jitter_histogram_1,json=jitterHistogram1" json:"jitter_histogram_1,omitempty"` + JitterHistogram_2 *uint32 `protobuf:"varint,63,opt,name=jitter_histogram_2,json=jitterHistogram2" json:"jitter_histogram_2,omitempty"` + JitterHistogram_5 *uint32 `protobuf:"varint,64,opt,name=jitter_histogram_5,json=jitterHistogram5" json:"jitter_histogram_5,omitempty"` + JitterHistogram_10 *uint32 `protobuf:"varint,65,opt,name=jitter_histogram_10,json=jitterHistogram10" json:"jitter_histogram_10,omitempty"` + JitterHistogram_20 *uint32 `protobuf:"varint,66,opt,name=jitter_histogram_20,json=jitterHistogram20" json:"jitter_histogram_20,omitempty"` + TxspeedMax *uint32 `protobuf:"varint,67,opt,name=txspeed_max,json=txspeedMax" json:"txspeed_max,omitempty"` + TxspeedHistogram_16 *uint32 `protobuf:"varint,68,opt,name=txspeed_histogram_16,json=txspeedHistogram16" json:"txspeed_histogram_16,omitempty"` + TxspeedHistogram_32 *uint32 `protobuf:"varint,69,opt,name=txspeed_histogram_32,json=txspeedHistogram32" json:"txspeed_histogram_32,omitempty"` + TxspeedHistogram_64 *uint32 `protobuf:"varint,70,opt,name=txspeed_histogram_64,json=txspeedHistogram64" json:"txspeed_histogram_64,omitempty"` + TxspeedHistogram_128 *uint32 `protobuf:"varint,71,opt,name=txspeed_histogram_128,json=txspeedHistogram128" json:"txspeed_histogram_128,omitempty"` + TxspeedHistogram_256 *uint32 `protobuf:"varint,72,opt,name=txspeed_histogram_256,json=txspeedHistogram256" json:"txspeed_histogram_256,omitempty"` + TxspeedHistogram_512 *uint32 `protobuf:"varint,73,opt,name=txspeed_histogram_512,json=txspeedHistogram512" json:"txspeed_histogram_512,omitempty"` + TxspeedHistogram_1024 *uint32 `protobuf:"varint,74,opt,name=txspeed_histogram_1024,json=txspeedHistogram1024" json:"txspeed_histogram_1024,omitempty"` + TxspeedHistogramMax *uint32 `protobuf:"varint,75,opt,name=txspeed_histogram_max,json=txspeedHistogramMax" json:"txspeed_histogram_max,omitempty"` + TxspeedNtile_5Th *uint32 `protobuf:"varint,76,opt,name=txspeed_ntile_5th,json=txspeedNtile5th" json:"txspeed_ntile_5th,omitempty"` + TxspeedNtile_50Th *uint32 `protobuf:"varint,77,opt,name=txspeed_ntile_50th,json=txspeedNtile50th" json:"txspeed_ntile_50th,omitempty"` + TxspeedNtile_75Th *uint32 `protobuf:"varint,78,opt,name=txspeed_ntile_75th,json=txspeedNtile75th" json:"txspeed_ntile_75th,omitempty"` + TxspeedNtile_95Th *uint32 `protobuf:"varint,79,opt,name=txspeed_ntile_95th,json=txspeedNtile95th" json:"txspeed_ntile_95th,omitempty"` + TxspeedNtile_98Th *uint32 `protobuf:"varint,80,opt,name=txspeed_ntile_98th,json=txspeedNtile98th" json:"txspeed_ntile_98th,omitempty"` + RxspeedMax *uint32 `protobuf:"varint,81,opt,name=rxspeed_max,json=rxspeedMax" json:"rxspeed_max,omitempty"` + RxspeedHistogram_16 *uint32 `protobuf:"varint,82,opt,name=rxspeed_histogram_16,json=rxspeedHistogram16" json:"rxspeed_histogram_16,omitempty"` + RxspeedHistogram_32 *uint32 `protobuf:"varint,83,opt,name=rxspeed_histogram_32,json=rxspeedHistogram32" json:"rxspeed_histogram_32,omitempty"` + RxspeedHistogram_64 *uint32 `protobuf:"varint,84,opt,name=rxspeed_histogram_64,json=rxspeedHistogram64" json:"rxspeed_histogram_64,omitempty"` + RxspeedHistogram_128 *uint32 `protobuf:"varint,85,opt,name=rxspeed_histogram_128,json=rxspeedHistogram128" json:"rxspeed_histogram_128,omitempty"` + RxspeedHistogram_256 *uint32 `protobuf:"varint,86,opt,name=rxspeed_histogram_256,json=rxspeedHistogram256" json:"rxspeed_histogram_256,omitempty"` + RxspeedHistogram_512 *uint32 `protobuf:"varint,87,opt,name=rxspeed_histogram_512,json=rxspeedHistogram512" json:"rxspeed_histogram_512,omitempty"` + RxspeedHistogram_1024 *uint32 `protobuf:"varint,88,opt,name=rxspeed_histogram_1024,json=rxspeedHistogram1024" json:"rxspeed_histogram_1024,omitempty"` + RxspeedHistogramMax *uint32 `protobuf:"varint,89,opt,name=rxspeed_histogram_max,json=rxspeedHistogramMax" json:"rxspeed_histogram_max,omitempty"` + RxspeedNtile_5Th *uint32 `protobuf:"varint,90,opt,name=rxspeed_ntile_5th,json=rxspeedNtile5th" json:"rxspeed_ntile_5th,omitempty"` + RxspeedNtile_50Th *uint32 `protobuf:"varint,91,opt,name=rxspeed_ntile_50th,json=rxspeedNtile50th" json:"rxspeed_ntile_50th,omitempty"` + RxspeedNtile_75Th *uint32 `protobuf:"varint,92,opt,name=rxspeed_ntile_75th,json=rxspeedNtile75th" json:"rxspeed_ntile_75th,omitempty"` + RxspeedNtile_95Th *uint32 `protobuf:"varint,93,opt,name=rxspeed_ntile_95th,json=rxspeedNtile95th" json:"rxspeed_ntile_95th,omitempty"` + RxspeedNtile_98Th *uint32 `protobuf:"varint,94,opt,name=rxspeed_ntile_98th,json=rxspeedNtile98th" json:"rxspeed_ntile_98th,omitempty"` } func (x *CMsgSteamDatagramLinkLifetimeStats) Reset() { @@ -596,6 +597,13 @@ func (x *CMsgSteamDatagramLinkLifetimeStats) GetPacketsRecvOutOfOrder() uint64 { return 0 } +func (x *CMsgSteamDatagramLinkLifetimeStats) GetPacketsRecvOutOfOrderCorrected() uint64 { + if x != nil && x.PacketsRecvOutOfOrderCorrected != nil { + return *x.PacketsRecvOutOfOrderCorrected + } + return 0 +} + func (x *CMsgSteamDatagramLinkLifetimeStats) GetPacketsRecvDuplicate() uint64 { if x != nil && x.PacketsRecvDuplicate != nil { return *x.PacketsRecvDuplicate @@ -1951,7 +1959,7 @@ var file_steamnetworkingsockets_messages_proto_rawDesc = []byte{ 0x72, 0x64, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x50, 0x63, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x70, 0x65, 0x61, 0x6b, 0x5f, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x75, 0x73, 0x65, 0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, 0x61, 0x6b, 0x4a, 0x69, 0x74, - 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x63, 0x22, 0xd3, 0x1b, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, + 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x63, 0x22, 0xa0, 0x1c, 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4c, 0x69, 0x6e, 0x6b, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, @@ -1974,387 +1982,391 @@ var file_steamnetworkingsockets_messages_proto_rawDesc = []byte{ 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x63, 0x76, 0x4f, 0x75, 0x74, 0x4f, 0x66, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, - 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, - 0x63, 0x76, 0x44, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x70, - 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x6c, 0x75, 0x72, 0x63, - 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, - 0x52, 0x65, 0x63, 0x76, 0x4c, 0x75, 0x72, 0x63, 0x68, 0x12, 0x47, 0x0a, 0x20, 0x6d, 0x75, 0x6c, - 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x72, - 0x65, 0x63, 0x76, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x18, 0x0c, 0x20, - 0x03, 0x28, 0x04, 0x52, 0x1d, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x50, 0x61, - 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x63, 0x76, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, - 0x65, 0x64, 0x12, 0x3f, 0x0a, 0x1c, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x5f, - 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x6c, 0x61, 0x74, - 0x65, 0x72, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x04, 0x52, 0x19, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, - 0x61, 0x74, 0x68, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x63, 0x76, 0x4c, 0x61, - 0x74, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x16, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, - 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x53, 0x65, - 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x71, 0x75, 0x61, - 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, - 0x30, 0x30, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, - 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x30, 0x30, 0x12, 0x30, 0x0a, - 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, - 0x61, 0x6d, 0x5f, 0x39, 0x39, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x71, 0x75, 0x61, - 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x39, 0x39, 0x12, - 0x30, 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, - 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x39, 0x37, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x71, - 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x39, - 0x37, 0x12, 0x30, 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, - 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x39, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, - 0x6d, 0x39, 0x35, 0x12, 0x30, 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, - 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x39, 0x30, 0x18, 0x19, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x6d, 0x39, 0x30, 0x12, 0x30, 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x37, 0x35, 0x18, 0x1a, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x37, 0x35, 0x12, 0x30, 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x35, 0x30, 0x18, - 0x1b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x30, 0x12, 0x2e, 0x0a, 0x13, 0x71, 0x75, 0x61, - 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, - 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x34, 0x0a, 0x16, 0x71, 0x75, 0x61, - 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x64, - 0x65, 0x61, 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x61, 0x64, 0x12, - 0x2a, 0x0a, 0x11, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, - 0x5f, 0x32, 0x6e, 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x71, 0x75, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x32, 0x6e, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x71, - 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x74, 0x68, - 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, - 0x74, 0x69, 0x6c, 0x65, 0x35, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x32, 0x35, 0x74, 0x68, 0x18, 0x20, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x10, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x74, 0x69, 0x6c, - 0x65, 0x32, 0x35, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, - 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x30, 0x74, 0x68, 0x18, 0x21, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, - 0x30, 0x74, 0x68, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x32, 0x35, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, - 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x35, 0x12, - 0x2a, 0x0a, 0x11, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, - 0x6d, 0x5f, 0x35, 0x30, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x69, 0x6e, 0x67, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x30, 0x12, 0x2a, 0x0a, 0x11, 0x70, - 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x37, 0x35, - 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x37, 0x35, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x30, 0x30, 0x18, 0x2c, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, - 0x61, 0x6d, 0x31, 0x30, 0x30, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, - 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x32, 0x35, 0x18, 0x2d, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, - 0x31, 0x32, 0x35, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x35, 0x30, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x10, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x35, - 0x30, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x6d, 0x5f, 0x32, 0x30, 0x30, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, - 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x30, 0x30, 0x12, - 0x2c, 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, - 0x6d, 0x5f, 0x33, 0x30, 0x30, 0x18, 0x30, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x69, 0x6e, - 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x33, 0x30, 0x30, 0x12, 0x2c, 0x0a, - 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, - 0x6d, 0x61, 0x78, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x69, 0x6e, 0x67, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, - 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x74, 0x68, 0x18, 0x32, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, 0x74, - 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, - 0x35, 0x30, 0x74, 0x68, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x69, 0x6e, 0x67, - 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, 0x30, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x69, 0x6e, - 0x67, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x37, 0x35, 0x74, 0x68, 0x18, 0x34, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x69, 0x6e, 0x67, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x37, 0x35, 0x74, - 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, - 0x39, 0x35, 0x74, 0x68, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x69, 0x6e, 0x67, - 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x35, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x69, 0x6e, - 0x67, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x39, 0x38, 0x74, 0x68, 0x18, 0x36, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x69, 0x6e, 0x67, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x38, 0x74, - 0x68, 0x12, 0x3e, 0x0a, 0x1b, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6e, 0x65, 0x67, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, - 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x4e, 0x65, 0x67, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, - 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6a, - 0x69, 0x74, 0x74, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x12, - 0x2c, 0x0a, 0x12, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x6d, 0x5f, 0x32, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6a, 0x69, 0x74, - 0x74, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x12, 0x2c, 0x0a, - 0x12, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, - 0x6d, 0x5f, 0x35, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6a, 0x69, 0x74, 0x74, 0x65, - 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x12, 0x2e, 0x0a, 0x13, 0x6a, - 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, - 0x31, 0x30, 0x18, 0x41, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x30, 0x12, 0x2e, 0x0a, 0x13, 0x6a, - 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, - 0x32, 0x30, 0x18, 0x42, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x30, 0x12, 0x1f, 0x0a, 0x0b, 0x74, - 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x12, 0x30, 0x0a, 0x14, - 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, - 0x6d, 0x5f, 0x31, 0x36, 0x18, 0x44, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x78, 0x73, 0x70, - 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x36, 0x12, 0x30, - 0x0a, 0x14, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x6d, 0x5f, 0x33, 0x32, 0x18, 0x45, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x78, - 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x33, 0x32, - 0x12, 0x30, 0x0a, 0x14, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x36, 0x34, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, - 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, - 0x36, 0x34, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, - 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x32, 0x38, 0x18, 0x47, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x13, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x6d, 0x31, 0x32, 0x38, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, - 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x32, 0x35, 0x36, 0x18, - 0x48, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x35, 0x36, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x78, - 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, - 0x35, 0x31, 0x32, 0x18, 0x49, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x78, 0x73, 0x70, 0x65, - 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x31, 0x32, 0x12, 0x34, - 0x0a, 0x16, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, - 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x30, 0x32, 0x34, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, + 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x4b, 0x0a, 0x23, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, + 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x1e, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x63, 0x76, 0x4f, + 0x75, 0x74, 0x4f, 0x66, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x72, 0x65, + 0x63, 0x76, 0x5f, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x14, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x63, 0x76, 0x44, + 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x6c, 0x75, 0x72, 0x63, 0x68, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x63, + 0x76, 0x4c, 0x75, 0x72, 0x63, 0x68, 0x12, 0x47, 0x0a, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, + 0x61, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x76, + 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x04, + 0x52, 0x1d, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x50, 0x61, 0x63, 0x6b, 0x65, + 0x74, 0x73, 0x52, 0x65, 0x63, 0x76, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x12, + 0x3f, 0x0a, 0x1c, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x18, + 0x0d, 0x20, 0x03, 0x28, 0x04, 0x52, 0x19, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, + 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x63, 0x76, 0x4c, 0x61, 0x74, 0x65, 0x72, + 0x12, 0x34, 0x0a, 0x16, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x73, 0x65, + 0x6e, 0x64, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x14, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x53, 0x65, 0x6e, 0x64, 0x45, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x30, 0x30, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, + 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x30, 0x30, 0x12, 0x30, 0x0a, 0x14, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, + 0x39, 0x39, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x39, 0x39, 0x12, 0x30, 0x0a, 0x14, + 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, + 0x6d, 0x5f, 0x39, 0x37, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x71, 0x75, 0x61, 0x6c, + 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x39, 0x37, 0x12, 0x30, + 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, + 0x72, 0x61, 0x6d, 0x5f, 0x39, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x39, 0x35, + 0x12, 0x30, 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x39, 0x30, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, + 0x39, 0x30, 0x12, 0x30, 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x69, + 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x37, 0x35, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x37, 0x35, 0x12, 0x30, 0x0a, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x35, 0x30, 0x18, 0x1b, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x35, 0x30, 0x12, 0x2e, 0x0a, 0x13, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x18, 0x1c, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x11, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x34, 0x0a, 0x16, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x64, 0x65, 0x61, 0x64, + 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x61, 0x64, 0x12, 0x2a, 0x0a, 0x11, + 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x32, 0x6e, + 0x64, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, + 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x32, 0x6e, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x71, 0x75, 0x61, 0x6c, + 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x74, 0x68, 0x18, 0x1f, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x74, 0x69, 0x6c, + 0x65, 0x35, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, + 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x32, 0x35, 0x74, 0x68, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x10, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x32, 0x35, + 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x74, + 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x30, 0x74, 0x68, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, 0x30, 0x74, 0x68, + 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x5f, 0x32, 0x35, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x69, 0x6e, + 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x35, 0x12, 0x2a, 0x0a, 0x11, + 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x35, + 0x30, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x30, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x69, 0x6e, 0x67, + 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x37, 0x35, 0x18, 0x2b, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x37, 0x35, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, + 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x30, 0x30, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x10, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, + 0x30, 0x30, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x32, 0x35, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x32, 0x35, + 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x5f, 0x31, 0x35, 0x30, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x69, + 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x35, 0x30, 0x12, 0x2c, + 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, + 0x5f, 0x32, 0x30, 0x30, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x69, 0x6e, 0x67, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x30, 0x30, 0x12, 0x2c, 0x0a, 0x12, + 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x33, + 0x30, 0x30, 0x18, 0x30, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, + 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x33, 0x30, 0x30, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x69, + 0x6e, 0x67, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6d, 0x61, 0x78, + 0x18, 0x31, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x61, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x69, 0x6e, 0x67, + 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x74, 0x68, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, 0x74, 0x68, 0x12, 0x26, + 0x0a, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x30, 0x74, + 0x68, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x69, 0x6e, 0x67, 0x4e, 0x74, 0x69, + 0x6c, 0x65, 0x35, 0x30, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6e, + 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x37, 0x35, 0x74, 0x68, 0x18, 0x34, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x70, 0x69, 0x6e, 0x67, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x37, 0x35, 0x74, 0x68, 0x12, 0x26, + 0x0a, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x39, 0x35, 0x74, + 0x68, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x69, 0x6e, 0x67, 0x4e, 0x74, 0x69, + 0x6c, 0x65, 0x39, 0x35, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6e, + 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x39, 0x38, 0x74, 0x68, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x70, 0x69, 0x6e, 0x67, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x38, 0x74, 0x68, 0x12, 0x3e, + 0x0a, 0x1b, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x5f, 0x6e, 0x65, 0x67, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x18, 0x3d, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x19, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x4e, 0x65, 0x67, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x12, 0x2c, + 0x0a, 0x12, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x5f, 0x31, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6a, 0x69, 0x74, 0x74, + 0x65, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x2c, 0x0a, 0x12, + 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, + 0x5f, 0x32, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x12, 0x2c, 0x0a, 0x12, 0x6a, 0x69, + 0x74, 0x74, 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x35, + 0x18, 0x40, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x48, 0x69, + 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x12, 0x2e, 0x0a, 0x13, 0x6a, 0x69, 0x74, 0x74, + 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x30, 0x18, + 0x41, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x30, 0x12, 0x2e, 0x0a, 0x13, 0x6a, 0x69, 0x74, 0x74, + 0x65, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x32, 0x30, 0x18, + 0x42, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x48, 0x69, 0x73, + 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x30, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x78, 0x73, 0x70, + 0x65, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, + 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x78, 0x73, + 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, + 0x36, 0x18, 0x44, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x36, 0x12, 0x30, 0x0a, 0x14, 0x74, + 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, + 0x5f, 0x33, 0x32, 0x18, 0x45, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, + 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x33, 0x32, 0x12, 0x30, 0x0a, + 0x14, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x5f, 0x36, 0x34, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x74, 0x78, 0x73, + 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x36, 0x34, 0x12, + 0x32, 0x0a, 0x15, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x32, 0x38, 0x18, 0x47, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, - 0x31, 0x30, 0x32, 0x34, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x4b, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x61, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x78, 0x73, 0x70, - 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x74, 0x68, 0x18, 0x4c, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, - 0x65, 0x35, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, - 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x30, 0x74, 0x68, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x10, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, 0x30, - 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, - 0x69, 0x6c, 0x65, 0x5f, 0x37, 0x35, 0x74, 0x68, 0x18, 0x4e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, - 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x37, 0x35, 0x74, 0x68, - 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, - 0x65, 0x5f, 0x39, 0x35, 0x74, 0x68, 0x18, 0x4f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x78, - 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x35, 0x74, 0x68, 0x12, 0x2c, - 0x0a, 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, - 0x39, 0x38, 0x74, 0x68, 0x18, 0x50, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x78, 0x73, 0x70, - 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x38, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, - 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x51, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x12, 0x30, 0x0a, - 0x14, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, - 0x61, 0x6d, 0x5f, 0x31, 0x36, 0x18, 0x52, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x72, 0x78, 0x73, - 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x36, 0x12, - 0x30, 0x0a, 0x14, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, - 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x33, 0x32, 0x18, 0x53, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x72, - 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x33, - 0x32, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, - 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x36, 0x34, 0x18, 0x54, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, - 0x6d, 0x36, 0x34, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, - 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x32, 0x38, 0x18, 0x55, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x13, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x67, 0x72, 0x61, 0x6d, 0x31, 0x32, 0x38, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x78, 0x73, 0x70, 0x65, - 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x32, 0x35, 0x36, - 0x18, 0x56, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x35, 0x36, 0x12, 0x32, 0x0a, 0x15, 0x72, + 0x31, 0x32, 0x38, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, + 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x32, 0x35, 0x36, 0x18, 0x48, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x13, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x32, 0x35, 0x36, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x78, 0x73, 0x70, 0x65, + 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x35, 0x31, 0x32, + 0x18, 0x49, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x31, 0x32, 0x12, 0x34, 0x0a, 0x16, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, - 0x5f, 0x35, 0x31, 0x32, 0x18, 0x57, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x72, 0x78, 0x73, 0x70, - 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x31, 0x32, 0x12, - 0x34, 0x0a, 0x16, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, - 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x30, 0x32, 0x34, 0x18, 0x58, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x14, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, - 0x6d, 0x31, 0x30, 0x32, 0x34, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, - 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x59, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, - 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x61, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x78, 0x73, - 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x74, 0x68, 0x18, 0x5a, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, - 0x6c, 0x65, 0x35, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, - 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x30, 0x74, 0x68, 0x18, 0x5b, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, - 0x30, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, - 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x37, 0x35, 0x74, 0x68, 0x18, 0x5c, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x10, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x37, 0x35, 0x74, - 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, - 0x6c, 0x65, 0x5f, 0x39, 0x35, 0x74, 0x68, 0x18, 0x5d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, - 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x35, 0x74, 0x68, 0x12, - 0x2c, 0x0a, 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, - 0x5f, 0x39, 0x38, 0x74, 0x68, 0x18, 0x5e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x78, 0x73, - 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x38, 0x74, 0x68, 0x22, 0xbf, 0x01, - 0x0a, 0x22, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, - 0x6c, 0x69, 0x74, 0x79, 0x12, 0x53, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x61, - 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, - 0x67, 0x72, 0x61, 0x6d, 0x4c, 0x69, 0x6e, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x61, - 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0d, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x6e, 0x74, 0x61, 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x12, 0x44, 0x0a, 0x08, 0x6c, 0x69, 0x66, - 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, - 0x67, 0x72, 0x61, 0x6d, 0x4c, 0x69, 0x6e, 0x6b, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x22, - 0x30, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, 0x45, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, 0x45, 0x52, 0x65, 0x6e, - 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x12, 0x30, 0x0a, 0x04, 0x61, 0x75, 0x74, 0x68, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x49, 0x43, 0x45, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x2e, 0x41, - 0x75, 0x74, 0x68, 0x52, 0x04, 0x61, 0x75, 0x74, 0x68, 0x12, 0x3b, 0x0a, 0x0d, 0x61, 0x64, 0x64, - 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, 0x45, 0x43, - 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x61, 0x64, 0x64, 0x43, 0x61, 0x6e, - 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x1a, 0x21, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x19, - 0x0a, 0x08, 0x70, 0x77, 0x64, 0x5f, 0x66, 0x72, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x70, 0x77, 0x64, 0x46, 0x72, 0x61, 0x67, 0x22, 0xc6, 0x0c, 0x0a, 0x20, 0x43, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, - 0x67, 0x50, 0x32, 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x12, 0x23, - 0x0a, 0x0d, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x10, 0x66, 0x72, 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x6f, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x74, 0x6f, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, - 0x73, 0x64, 0x72, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x09, 0x73, 0x64, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x61, - 0x63, 0x6b, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x5f, 0x72, - 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, - 0x63, 0x6b, 0x50, 0x65, 0x65, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x76, 0x69, - 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x63, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x63, 0x65, 0x45, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x5f, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x12, 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5e, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, + 0x5f, 0x31, 0x30, 0x32, 0x34, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x74, 0x78, 0x73, + 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x30, 0x32, + 0x34, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, + 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x4b, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x13, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, + 0x61, 0x6d, 0x4d, 0x61, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, + 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x74, 0x68, 0x18, 0x4c, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0f, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, 0x74, + 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, + 0x6c, 0x65, 0x5f, 0x35, 0x30, 0x74, 0x68, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, + 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, 0x30, 0x74, 0x68, 0x12, + 0x2c, 0x0a, 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, + 0x5f, 0x37, 0x35, 0x74, 0x68, 0x18, 0x4e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x78, 0x73, + 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x37, 0x35, 0x74, 0x68, 0x12, 0x2c, 0x0a, + 0x12, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x39, + 0x35, 0x74, 0x68, 0x18, 0x4f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x78, 0x73, 0x70, 0x65, + 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x35, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x74, + 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x39, 0x38, 0x74, + 0x68, 0x18, 0x50, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, + 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x38, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x78, 0x73, + 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x51, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x78, + 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, + 0x31, 0x36, 0x18, 0x52, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, + 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x36, 0x12, 0x30, 0x0a, 0x14, + 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, + 0x6d, 0x5f, 0x33, 0x32, 0x18, 0x53, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x72, 0x78, 0x73, 0x70, + 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x33, 0x32, 0x12, 0x30, + 0x0a, 0x14, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, + 0x72, 0x61, 0x6d, 0x5f, 0x36, 0x34, 0x18, 0x54, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x72, 0x78, + 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x36, 0x34, + 0x12, 0x32, 0x0a, 0x15, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x31, 0x32, 0x38, 0x18, 0x55, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x13, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, + 0x6d, 0x31, 0x32, 0x38, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, + 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x32, 0x35, 0x36, 0x18, 0x56, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x13, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x32, 0x35, 0x36, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x78, 0x73, 0x70, + 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x35, 0x31, + 0x32, 0x18, 0x57, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x35, 0x31, 0x32, 0x12, 0x34, 0x0a, 0x16, + 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, + 0x6d, 0x5f, 0x31, 0x30, 0x32, 0x34, 0x18, 0x58, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x72, 0x78, + 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x31, 0x30, + 0x32, 0x34, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x68, 0x69, + 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x59, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x13, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, + 0x72, 0x61, 0x6d, 0x4d, 0x61, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, + 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x74, 0x68, 0x18, 0x5a, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, + 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, + 0x69, 0x6c, 0x65, 0x5f, 0x35, 0x30, 0x74, 0x68, 0x18, 0x5b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x35, 0x30, 0x74, 0x68, + 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, + 0x65, 0x5f, 0x37, 0x35, 0x74, 0x68, 0x18, 0x5c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x78, + 0x73, 0x70, 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x37, 0x35, 0x74, 0x68, 0x12, 0x2c, + 0x0a, 0x12, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, + 0x39, 0x35, 0x74, 0x68, 0x18, 0x5d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x78, 0x73, 0x70, + 0x65, 0x65, 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x35, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, + 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x6e, 0x74, 0x69, 0x6c, 0x65, 0x5f, 0x39, 0x38, + 0x74, 0x68, 0x18, 0x5e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x78, 0x73, 0x70, 0x65, 0x65, + 0x64, 0x4e, 0x74, 0x69, 0x6c, 0x65, 0x39, 0x38, 0x74, 0x68, 0x22, 0xbf, 0x01, 0x0a, 0x22, 0x43, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, + 0x79, 0x12, 0x53, 0x0a, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x61, 0x6e, 0x65, 0x6f, + 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x4c, 0x69, 0x6e, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x61, 0x6e, 0x65, 0x6f, + 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, + 0x61, 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x12, 0x44, 0x0a, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x4c, 0x69, 0x6e, 0x6b, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x30, 0x0a, 0x10, + 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, 0x45, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x22, 0xa5, + 0x01, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, 0x45, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, + 0x76, 0x6f, 0x75, 0x73, 0x12, 0x30, 0x0a, 0x04, 0x61, 0x75, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, + 0x45, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x2e, 0x41, 0x75, 0x74, 0x68, + 0x52, 0x04, 0x61, 0x75, 0x74, 0x68, 0x12, 0x3b, 0x0a, 0x0d, 0x61, 0x64, 0x64, 0x5f, 0x63, 0x61, + 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, 0x45, 0x43, 0x61, 0x6e, 0x64, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x61, 0x64, 0x64, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x1a, 0x21, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x19, 0x0a, 0x08, 0x70, + 0x77, 0x64, 0x5f, 0x66, 0x72, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, + 0x77, 0x64, 0x46, 0x72, 0x61, 0x67, 0x22, 0xc6, 0x0c, 0x0a, 0x20, 0x43, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, + 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x66, + 0x72, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x07, 0x52, 0x10, 0x66, 0x72, + 0x6f, 0x6d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x6f, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, + 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x0e, 0x74, 0x6f, 0x43, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x64, 0x72, + 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, + 0x64, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x18, 0x61, 0x63, 0x6b, 0x5f, + 0x70, 0x65, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x76, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x61, 0x63, 0x6b, 0x50, + 0x65, 0x65, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x63, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x12, 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x54, 0x69, + 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5e, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, + 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, + 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, + 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4f, 0x4b, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x4f, 0x6b, 0x12, 0x64, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x5f, 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, - 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, - 0x6f, 0x75, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4f, 0x4b, 0x52, 0x09, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4f, 0x6b, 0x12, 0x64, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, - 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x52, 0x10, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x12, 0x28, - 0x0a, 0x10, 0x61, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, - 0x73, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, - 0x69, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x69, 0x72, 0x73, - 0x74, 0x5f, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x69, 0x61, - 0x62, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x63, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, - 0x6c, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x52, - 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, - 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x10, 0x72, 0x65, 0x6c, 0x69, 0x61, - 0x62, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x6c, 0x0a, 0x14, 0x61, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, - 0x73, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x52, 0x13, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x88, 0x02, 0x0a, 0x0e, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x05, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, - 0x67, 0x72, 0x61, 0x6d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, - 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x05, 0x63, 0x72, 0x79, 0x70, - 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, - 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, - 0x26, 0x0a, 0x0f, 0x74, 0x6f, 0x5f, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x70, 0x6f, - 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x6f, 0x56, 0x69, 0x72, 0x74, - 0x75, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x72, 0x6f, 0x6d, 0x5f, - 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0f, 0x66, 0x72, 0x6f, 0x6d, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x50, - 0x6f, 0x72, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x66, 0x61, 0x6b, 0x65, - 0x69, 0x70, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x46, 0x61, - 0x6b, 0x65, 0x69, 0x70, 0x1a, 0x8e, 0x01, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x4f, 0x4b, 0x12, 0x43, 0x0a, 0x05, 0x63, 0x72, 0x79, 0x70, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, - 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, - 0x52, 0x05, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, - 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, - 0x04, 0x63, 0x65, 0x72, 0x74, 0x1a, 0x49, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x62, - 0x75, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x12, - 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, - 0x1a, 0x3c, 0x0a, 0x0f, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x12, 0x29, 0x0a, 0x03, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x17, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, 0x45, 0x52, - 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x52, 0x03, 0x69, 0x63, 0x65, 0x1a, 0x72, - 0x0a, 0x12, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x5f, - 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6d, 0x73, 0x67, 0x4e, 0x75, - 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x65, 0x5f, - 0x69, 0x64, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6c, 0x61, 0x6e, 0x65, 0x49, - 0x64, 0x78, 0x22, 0x97, 0x05, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, - 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x43, 0x45, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x2e, 0x0a, 0x13, 0x66, - 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, - 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, - 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x6c, - 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6c, 0x6f, 0x63, 0x61, - 0x6c, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, - 0x34, 0x0a, 0x16, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x14, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, - 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x4b, - 0x69, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, - 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x6c, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, - 0x6c, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, - 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6e, - 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4d, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, - 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x65, 0x73, - 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x65, - 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, - 0x65, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x5f, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62, 0x65, 0x73, - 0x74, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x65, 0x73, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, - 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x23, - 0x0a, 0x0d, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, - 0x6e, 0x67, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x63, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x5f, 0x76, 0x61, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x63, 0x65, - 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x72, 0x12, 0x41, 0x0a, 0x1d, 0x6c, 0x6f, 0x63, - 0x61, 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x73, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x1a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x73, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x2a, 0xa7, 0x01, 0x0a, - 0x1d, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, - 0x67, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x12, 0x2b, - 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x43, 0x69, 0x70, 0x68, 0x65, - 0x72, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x28, 0x0a, 0x24, 0x6b, + 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x61, + 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, + 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x72, + 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, + 0x4d, 0x73, 0x67, 0x12, 0x63, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x5f, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x32, 0x50, 0x52, 0x65, 0x6e, 0x64, + 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x10, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x6c, 0x0a, 0x14, 0x61, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, + 0x67, 0x50, 0x32, 0x50, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x2e, 0x41, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x52, 0x13, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x88, 0x02, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x05, 0x63, 0x72, 0x79, + 0x70, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x05, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x3c, + 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, + 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, + 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0f, + 0x74, 0x6f, 0x5f, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x6f, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, + 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x76, 0x69, 0x72, + 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x66, 0x72, 0x6f, 0x6d, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, + 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x66, 0x61, 0x6b, 0x65, 0x69, 0x70, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x46, 0x61, 0x6b, 0x65, 0x69, + 0x70, 0x1a, 0x8e, 0x01, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4f, 0x4b, 0x12, + 0x43, 0x0a, 0x05, 0x63, 0x72, 0x79, 0x70, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, + 0x79, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x05, 0x63, + 0x72, 0x79, 0x70, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x65, 0x61, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, + 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x04, 0x63, 0x65, + 0x72, 0x74, 0x1a, 0x49, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x12, 0x1f, 0x0a, 0x0b, + 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x1a, 0x3c, 0x0a, + 0x0f, 0x52, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x12, 0x29, 0x0a, 0x03, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x49, 0x43, 0x45, 0x52, 0x65, 0x6e, 0x64, + 0x65, 0x7a, 0x76, 0x6f, 0x75, 0x73, 0x52, 0x03, 0x69, 0x63, 0x65, 0x1a, 0x72, 0x0a, 0x12, 0x41, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x5f, 0x6e, 0x75, 0x6d, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6d, 0x73, 0x67, 0x4e, 0x75, 0x6d, 0x12, 0x14, + 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, + 0x6c, 0x61, 0x67, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x78, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6c, 0x61, 0x6e, 0x65, 0x49, 0x64, 0x78, 0x22, + 0x97, 0x05, 0x0a, 0x24, 0x43, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x43, 0x45, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x61, 0x69, 0x6c, + 0x75, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x6c, 0x6f, 0x63, 0x61, + 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, + 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x16, + 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x72, 0x65, + 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x72, 0x6f, + 0x75, 0x74, 0x65, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x4b, 0x69, 0x6e, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x6e, 0x67, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x50, + 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, + 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, + 0x69, 0x61, 0x6c, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6e, 0x65, 0x67, 0x6f, + 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x12, + 0x26, 0x0a, 0x0f, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x6b, 0x69, + 0x6e, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x65, 0x73, 0x74, 0x52, 0x6f, + 0x75, 0x74, 0x65, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x65, 0x73, 0x74, 0x5f, + 0x70, 0x69, 0x6e, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x65, 0x73, 0x74, + 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x6f, + 0x72, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62, 0x65, 0x73, 0x74, 0x53, 0x63, + 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x65, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x75, + 0x73, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, + 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x63, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x76, + 0x61, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x56, 0x61, 0x72, 0x12, 0x41, 0x0a, 0x1d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, + 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x5f, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x6c, + 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x73, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x2a, 0xa7, 0x01, 0x0a, 0x1d, 0x45, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x6f, + 0x63, 0x6b, 0x65, 0x74, 0x73, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x27, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, - 0x67, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x5f, 0x4e, - 0x55, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, - 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x6f, 0x63, 0x6b, 0x65, - 0x74, 0x73, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x32, 0x35, 0x36, - 0x5f, 0x47, 0x43, 0x4d, 0x10, 0x02, 0x42, 0x2a, 0x48, 0x01, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, - 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, - 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, 0x80, - 0x01, 0x00, + 0x67, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x5f, 0x49, + 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x28, 0x0a, 0x24, 0x6b, 0x5f, 0x45, 0x53, + 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x6f, + 0x63, 0x6b, 0x65, 0x74, 0x73, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, + 0x10, 0x01, 0x12, 0x2f, 0x0a, 0x2b, 0x6b, 0x5f, 0x45, 0x53, 0x74, 0x65, 0x61, 0x6d, 0x4e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x43, + 0x69, 0x70, 0x68, 0x65, 0x72, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x32, 0x35, 0x36, 0x5f, 0x47, 0x43, + 0x4d, 0x10, 0x02, 0x42, 0x2a, 0x48, 0x01, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, + 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, 0x80, 0x01, 0x00, } var ( diff --git a/dota/steamnetworkingsockets_messages.proto b/dota/steamnetworkingsockets_messages.proto index badc4354..0ebefb99 100644 --- a/dota/steamnetworkingsockets_messages.proto +++ b/dota/steamnetworkingsockets_messages.proto @@ -57,6 +57,7 @@ message CMsgSteamDatagramLinkLifetimeStats { optional uint64 packets_recv_sequenced = 7; optional uint64 packets_recv_dropped = 8; optional uint64 packets_recv_out_of_order = 9; + optional uint64 packets_recv_out_of_order_corrected = 15; optional uint64 packets_recv_duplicate = 10; optional uint64 packets_recv_lurch = 11; repeated uint64 multipath_packets_recv_sequenced = 12; diff --git a/dota/steamnetworkingsockets_messages_certs.pb.go b/dota/steamnetworkingsockets_messages_certs.pb.go index 7b7acd58..523c10d9 100644 --- a/dota/steamnetworkingsockets_messages_certs.pb.go +++ b/dota/steamnetworkingsockets_messages_certs.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steamnetworkingsockets_messages_certs.proto diff --git a/dota/steamnetworkingsockets_messages_udp.pb.go b/dota/steamnetworkingsockets_messages_udp.pb.go index 7c471281..3dcf285d 100644 --- a/dota/steamnetworkingsockets_messages_udp.pb.go +++ b/dota/steamnetworkingsockets_messages_udp.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: steamnetworkingsockets_messages_udp.proto diff --git a/dota/te.pb.go b/dota/te.pb.go index 2048d009..956c3f1f 100644 --- a/dota/te.pb.go +++ b/dota/te.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: te.proto @@ -2020,6 +2020,9 @@ type CMsgTEPhysicsProp struct { Modelindex *uint64 `protobuf:"fixed64,8,opt,name=modelindex" json:"modelindex,omitempty"` UnusedBreakmodelsnottomake *uint32 `protobuf:"varint,9,opt,name=unused_breakmodelsnottomake,json=unusedBreakmodelsnottomake" json:"unused_breakmodelsnottomake,omitempty"` Scale *float32 `protobuf:"fixed32,10,opt,name=scale" json:"scale,omitempty"` + Dmgpos *CMsgVector `protobuf:"bytes,11,opt,name=dmgpos" json:"dmgpos,omitempty"` + Dmgdir *CMsgVector `protobuf:"bytes,12,opt,name=dmgdir" json:"dmgdir,omitempty"` + Dmgtype *int32 `protobuf:"varint,13,opt,name=dmgtype" json:"dmgtype,omitempty"` } func (x *CMsgTEPhysicsProp) Reset() { @@ -2124,6 +2127,27 @@ func (x *CMsgTEPhysicsProp) GetScale() float32 { return 0 } +func (x *CMsgTEPhysicsProp) GetDmgpos() *CMsgVector { + if x != nil { + return x.Dmgpos + } + return nil +} + +func (x *CMsgTEPhysicsProp) GetDmgdir() *CMsgVector { + if x != nil { + return x.Dmgdir + } + return nil +} + +func (x *CMsgTEPhysicsProp) GetDmgtype() int32 { + if x != nil && x.Dmgtype != nil { + return *x.Dmgtype + } + return 0 +} + type CMsgTEPlayerDecal struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2653,7 +2677,7 @@ var file_te_proto_rawDesc = []byte{ 0x12, 0x2e, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0xe6, 0x02, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x45, 0x50, 0x68, 0x79, 0x73, 0x69, + 0x22, 0xd4, 0x03, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x45, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x73, 0x50, 0x72, 0x6f, 0x70, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, @@ -2675,75 +2699,82 @@ var file_te_proto_rawDesc = []byte{ 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x75, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x42, 0x72, 0x65, 0x61, 0x6b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x6e, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x61, 0x6b, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x22, 0x6d, 0x0a, 0x11, 0x43, 0x4d, 0x73, - 0x67, 0x54, 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x12, 0x28, - 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x9c, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x73, - 0x67, 0x54, 0x45, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x65, 0x63, 0x61, - 0x6c, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x06, 0x61, - 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x06, 0x61, - 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x64, - 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, - 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x4d, 0x0a, 0x0b, 0x43, 0x4d, 0x73, 0x67, 0x54, - 0x45, 0x53, 0x6d, 0x6f, 0x6b, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, - 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, - 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x22, 0x7c, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x45, - 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, - 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, - 0x69, 0x67, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x06, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x18, 0x02, + 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x64, 0x6d, 0x67, + 0x70, 0x6f, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x64, 0x6d, 0x67, + 0x70, 0x6f, 0x73, 0x12, 0x28, 0x0a, 0x06, 0x64, 0x6d, 0x67, 0x64, 0x69, 0x72, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x64, 0x6d, 0x67, 0x64, 0x69, 0x72, 0x12, 0x18, 0x0a, + 0x07, 0x64, 0x6d, 0x67, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x64, 0x6d, 0x67, 0x74, 0x79, 0x70, 0x65, 0x22, 0x6d, 0x0a, 0x11, 0x43, 0x4d, 0x73, 0x67, 0x54, + 0x45, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x12, 0x28, 0x0a, 0x06, + 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, + 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x16, + 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x9c, 0x01, 0x0a, 0x14, 0x43, 0x4d, 0x73, 0x67, 0x54, + 0x45, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x12, + 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x06, 0x61, 0x6e, 0x67, + 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x06, 0x61, 0x6e, 0x67, + 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x69, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x4d, 0x0a, 0x0b, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x45, 0x53, + 0x6d, 0x6f, 0x6b, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, - 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x12, 0x14, - 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x2a, 0xbd, 0x04, 0x0a, 0x0e, 0x45, 0x54, 0x45, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x49, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x45, 0x5f, 0x45, 0x66, - 0x66, 0x65, 0x63, 0x74, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x10, 0x90, - 0x03, 0x12, 0x17, 0x0a, 0x12, 0x54, 0x45, 0x5f, 0x41, 0x72, 0x6d, 0x6f, 0x72, 0x52, 0x69, 0x63, - 0x6f, 0x63, 0x68, 0x65, 0x74, 0x49, 0x64, 0x10, 0x91, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x45, - 0x5f, 0x42, 0x65, 0x61, 0x6d, 0x45, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x10, - 0x92, 0x03, 0x12, 0x12, 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x42, 0x65, 0x61, 0x6d, 0x45, 0x6e, 0x74, - 0x73, 0x49, 0x64, 0x10, 0x93, 0x03, 0x12, 0x14, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x42, 0x65, 0x61, - 0x6d, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x49, 0x64, 0x10, 0x94, 0x03, 0x12, 0x12, 0x0a, 0x0d, - 0x54, 0x45, 0x5f, 0x42, 0x65, 0x61, 0x6d, 0x52, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x10, 0x95, 0x03, - 0x12, 0x12, 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x42, 0x53, 0x50, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x49, - 0x64, 0x10, 0x97, 0x03, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x45, 0x5f, 0x42, 0x75, 0x62, 0x62, 0x6c, - 0x65, 0x73, 0x49, 0x64, 0x10, 0x98, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x42, 0x75, - 0x62, 0x62, 0x6c, 0x65, 0x54, 0x72, 0x61, 0x69, 0x6c, 0x49, 0x64, 0x10, 0x99, 0x03, 0x12, 0x0f, - 0x0a, 0x0a, 0x54, 0x45, 0x5f, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x10, 0x9a, 0x03, 0x12, - 0x14, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x44, 0x65, 0x63, 0x61, 0x6c, - 0x49, 0x64, 0x10, 0x9b, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x45, 0x5f, 0x45, 0x6e, 0x65, 0x72, - 0x67, 0x79, 0x53, 0x70, 0x6c, 0x61, 0x73, 0x68, 0x49, 0x64, 0x10, 0x9c, 0x03, 0x12, 0x0e, 0x0a, - 0x09, 0x54, 0x45, 0x5f, 0x46, 0x69, 0x7a, 0x7a, 0x49, 0x64, 0x10, 0x9d, 0x03, 0x12, 0x18, 0x0a, - 0x13, 0x54, 0x45, 0x5f, 0x53, 0x68, 0x61, 0x74, 0x74, 0x65, 0x72, 0x53, 0x75, 0x72, 0x66, 0x61, - 0x63, 0x65, 0x49, 0x64, 0x10, 0x9e, 0x03, 0x12, 0x14, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x47, 0x6c, - 0x6f, 0x77, 0x53, 0x70, 0x72, 0x69, 0x74, 0x65, 0x49, 0x64, 0x10, 0x9f, 0x03, 0x12, 0x10, 0x0a, - 0x0b, 0x54, 0x45, 0x5f, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x49, 0x64, 0x10, 0xa0, 0x03, 0x12, - 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x4d, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x46, 0x6c, 0x61, 0x73, - 0x68, 0x49, 0x64, 0x10, 0xa1, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x42, 0x6c, 0x6f, - 0x6f, 0x64, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x10, 0xa2, 0x03, 0x12, 0x13, 0x0a, - 0x0e, 0x54, 0x45, 0x5f, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x10, - 0xa3, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x45, 0x5f, 0x44, 0x75, 0x73, 0x74, 0x49, 0x64, 0x10, - 0xa4, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x46, 0x75, - 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x10, 0xa5, 0x03, 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x45, 0x5f, - 0x53, 0x70, 0x61, 0x72, 0x6b, 0x73, 0x49, 0x64, 0x10, 0xa6, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x54, - 0x45, 0x5f, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x73, 0x50, 0x72, 0x6f, 0x70, 0x49, 0x64, 0x10, - 0xa7, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, - 0x65, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x10, 0xa8, 0x03, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x45, 0x5f, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x49, 0x64, - 0x10, 0xa9, 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x54, 0x45, 0x5f, 0x53, 0x6d, 0x6f, 0x6b, 0x65, 0x49, - 0x64, 0x10, 0xaa, 0x03, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, - 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x14, + 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, + 0x63, 0x61, 0x6c, 0x65, 0x22, 0x7c, 0x0a, 0x10, 0x43, 0x4d, 0x73, 0x67, 0x54, 0x45, 0x57, 0x6f, + 0x72, 0x6c, 0x64, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x12, 0x28, 0x0a, 0x06, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x2a, 0xbd, 0x04, 0x0a, 0x0e, 0x45, 0x54, 0x45, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x49, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x45, 0x5f, 0x45, 0x66, 0x66, 0x65, + 0x63, 0x74, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x10, 0x90, 0x03, 0x12, + 0x17, 0x0a, 0x12, 0x54, 0x45, 0x5f, 0x41, 0x72, 0x6d, 0x6f, 0x72, 0x52, 0x69, 0x63, 0x6f, 0x63, + 0x68, 0x65, 0x74, 0x49, 0x64, 0x10, 0x91, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x45, 0x5f, 0x42, + 0x65, 0x61, 0x6d, 0x45, 0x6e, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x10, 0x92, 0x03, + 0x12, 0x12, 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x42, 0x65, 0x61, 0x6d, 0x45, 0x6e, 0x74, 0x73, 0x49, + 0x64, 0x10, 0x93, 0x03, 0x12, 0x14, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x42, 0x65, 0x61, 0x6d, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x49, 0x64, 0x10, 0x94, 0x03, 0x12, 0x12, 0x0a, 0x0d, 0x54, 0x45, + 0x5f, 0x42, 0x65, 0x61, 0x6d, 0x52, 0x69, 0x6e, 0x67, 0x49, 0x64, 0x10, 0x95, 0x03, 0x12, 0x12, + 0x0a, 0x0d, 0x54, 0x45, 0x5f, 0x42, 0x53, 0x50, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x10, + 0x97, 0x03, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x45, 0x5f, 0x42, 0x75, 0x62, 0x62, 0x6c, 0x65, 0x73, + 0x49, 0x64, 0x10, 0x98, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x42, 0x75, 0x62, 0x62, + 0x6c, 0x65, 0x54, 0x72, 0x61, 0x69, 0x6c, 0x49, 0x64, 0x10, 0x99, 0x03, 0x12, 0x0f, 0x0a, 0x0a, + 0x54, 0x45, 0x5f, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x10, 0x9a, 0x03, 0x12, 0x14, 0x0a, + 0x0f, 0x54, 0x45, 0x5f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x49, 0x64, + 0x10, 0x9b, 0x03, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x45, 0x5f, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, + 0x53, 0x70, 0x6c, 0x61, 0x73, 0x68, 0x49, 0x64, 0x10, 0x9c, 0x03, 0x12, 0x0e, 0x0a, 0x09, 0x54, + 0x45, 0x5f, 0x46, 0x69, 0x7a, 0x7a, 0x49, 0x64, 0x10, 0x9d, 0x03, 0x12, 0x18, 0x0a, 0x13, 0x54, + 0x45, 0x5f, 0x53, 0x68, 0x61, 0x74, 0x74, 0x65, 0x72, 0x53, 0x75, 0x72, 0x66, 0x61, 0x63, 0x65, + 0x49, 0x64, 0x10, 0x9e, 0x03, 0x12, 0x14, 0x0a, 0x0f, 0x54, 0x45, 0x5f, 0x47, 0x6c, 0x6f, 0x77, + 0x53, 0x70, 0x72, 0x69, 0x74, 0x65, 0x49, 0x64, 0x10, 0x9f, 0x03, 0x12, 0x10, 0x0a, 0x0b, 0x54, + 0x45, 0x5f, 0x49, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x49, 0x64, 0x10, 0xa0, 0x03, 0x12, 0x15, 0x0a, + 0x10, 0x54, 0x45, 0x5f, 0x4d, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x46, 0x6c, 0x61, 0x73, 0x68, 0x49, + 0x64, 0x10, 0xa1, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x42, 0x6c, 0x6f, 0x6f, 0x64, + 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x10, 0xa2, 0x03, 0x12, 0x13, 0x0a, 0x0e, 0x54, + 0x45, 0x5f, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x10, 0xa3, 0x03, + 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x45, 0x5f, 0x44, 0x75, 0x73, 0x74, 0x49, 0x64, 0x10, 0xa4, 0x03, + 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x46, 0x75, 0x6e, 0x6e, + 0x65, 0x6c, 0x49, 0x64, 0x10, 0xa5, 0x03, 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x45, 0x5f, 0x53, 0x70, + 0x61, 0x72, 0x6b, 0x73, 0x49, 0x64, 0x10, 0xa6, 0x03, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, + 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x73, 0x50, 0x72, 0x6f, 0x70, 0x49, 0x64, 0x10, 0xa7, 0x03, + 0x12, 0x15, 0x0a, 0x10, 0x54, 0x45, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x65, 0x63, + 0x61, 0x6c, 0x49, 0x64, 0x10, 0xa8, 0x03, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x45, 0x5f, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x10, 0xa9, + 0x03, 0x12, 0x0f, 0x0a, 0x0a, 0x54, 0x45, 0x5f, 0x53, 0x6d, 0x6f, 0x6b, 0x65, 0x49, 0x64, 0x10, + 0xaa, 0x03, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, + 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( @@ -2841,17 +2872,19 @@ var file_te_proto_depIdxs = []int32{ 29, // 44: dota.CMsgTEPhysicsProp.origin:type_name -> dota.CMsgVector 29, // 45: dota.CMsgTEPhysicsProp.velocity:type_name -> dota.CMsgVector 30, // 46: dota.CMsgTEPhysicsProp.angles:type_name -> dota.CMsgQAngle - 29, // 47: dota.CMsgTEPlayerDecal.origin:type_name -> dota.CMsgVector - 29, // 48: dota.CMsgTEProjectedDecal.origin:type_name -> dota.CMsgVector - 30, // 49: dota.CMsgTEProjectedDecal.angles:type_name -> dota.CMsgQAngle - 29, // 50: dota.CMsgTESmoke.origin:type_name -> dota.CMsgVector - 29, // 51: dota.CMsgTEWorldDecal.origin:type_name -> dota.CMsgVector - 29, // 52: dota.CMsgTEWorldDecal.normal:type_name -> dota.CMsgVector - 53, // [53:53] is the sub-list for method output_type - 53, // [53:53] is the sub-list for method input_type - 53, // [53:53] is the sub-list for extension type_name - 53, // [53:53] is the sub-list for extension extendee - 0, // [0:53] is the sub-list for field type_name + 29, // 47: dota.CMsgTEPhysicsProp.dmgpos:type_name -> dota.CMsgVector + 29, // 48: dota.CMsgTEPhysicsProp.dmgdir:type_name -> dota.CMsgVector + 29, // 49: dota.CMsgTEPlayerDecal.origin:type_name -> dota.CMsgVector + 29, // 50: dota.CMsgTEProjectedDecal.origin:type_name -> dota.CMsgVector + 30, // 51: dota.CMsgTEProjectedDecal.angles:type_name -> dota.CMsgQAngle + 29, // 52: dota.CMsgTESmoke.origin:type_name -> dota.CMsgVector + 29, // 53: dota.CMsgTEWorldDecal.origin:type_name -> dota.CMsgVector + 29, // 54: dota.CMsgTEWorldDecal.normal:type_name -> dota.CMsgVector + 55, // [55:55] is the sub-list for method output_type + 55, // [55:55] is the sub-list for method input_type + 55, // [55:55] is the sub-list for extension type_name + 55, // [55:55] is the sub-list for extension extendee + 0, // [0:55] is the sub-list for field type_name } func init() { file_te_proto_init() } diff --git a/dota/te.proto b/dota/te.proto index 802a55fa..49d662cc 100644 --- a/dota/te.proto +++ b/dota/te.proto @@ -234,6 +234,9 @@ message CMsgTEPhysicsProp { optional fixed64 modelindex = 8; optional uint32 unused_breakmodelsnottomake = 9; optional float scale = 10; + optional CMsgVector dmgpos = 11; + optional CMsgVector dmgdir = 12; + optional int32 dmgtype = 13; } message CMsgTEPlayerDecal { diff --git a/dota/uifontfile_format.pb.go b/dota/uifontfile_format.pb.go index 9ddb2ac2..e52aaa0b 100644 --- a/dota/uifontfile_format.pb.go +++ b/dota/uifontfile_format.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: uifontfile_format.proto diff --git a/dota/usercmd.pb.go b/dota/usercmd.pb.go index e3f0e5da..2edf435d 100644 --- a/dota/usercmd.pb.go +++ b/dota/usercmd.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: usercmd.proto @@ -88,9 +88,11 @@ type CSubtickMoveStep struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Button *uint64 `protobuf:"varint,1,opt,name=button" json:"button,omitempty"` - Pressed *bool `protobuf:"varint,2,opt,name=pressed" json:"pressed,omitempty"` - When *float32 `protobuf:"fixed32,3,opt,name=when" json:"when,omitempty"` + Button *uint64 `protobuf:"varint,1,opt,name=button" json:"button,omitempty"` + Pressed *bool `protobuf:"varint,2,opt,name=pressed" json:"pressed,omitempty"` + When *float32 `protobuf:"fixed32,3,opt,name=when" json:"when,omitempty"` + AnalogForwardDelta *float32 `protobuf:"fixed32,4,opt,name=analog_forward_delta,json=analogForwardDelta" json:"analog_forward_delta,omitempty"` + AnalogLeftDelta *float32 `protobuf:"fixed32,5,opt,name=analog_left_delta,json=analogLeftDelta" json:"analog_left_delta,omitempty"` } func (x *CSubtickMoveStep) Reset() { @@ -146,28 +148,42 @@ func (x *CSubtickMoveStep) GetWhen() float32 { return 0 } +func (x *CSubtickMoveStep) GetAnalogForwardDelta() float32 { + if x != nil && x.AnalogForwardDelta != nil { + return *x.AnalogForwardDelta + } + return 0 +} + +func (x *CSubtickMoveStep) GetAnalogLeftDelta() float32 { + if x != nil && x.AnalogLeftDelta != nil { + return *x.AnalogLeftDelta + } + return 0 +} + type CBaseUserCmdPB struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - CommandNumber *int32 `protobuf:"varint,1,opt,name=command_number,json=commandNumber" json:"command_number,omitempty"` - TickCount *int32 `protobuf:"varint,2,opt,name=tick_count,json=tickCount" json:"tick_count,omitempty"` - ButtonsPb *CInButtonStatePB `protobuf:"bytes,3,opt,name=buttons_pb,json=buttonsPb" json:"buttons_pb,omitempty"` - Viewangles *CMsgQAngle `protobuf:"bytes,4,opt,name=viewangles" json:"viewangles,omitempty"` - Forwardmove *float32 `protobuf:"fixed32,5,opt,name=forwardmove" json:"forwardmove,omitempty"` - Leftmove *float32 `protobuf:"fixed32,6,opt,name=leftmove" json:"leftmove,omitempty"` - Upmove *float32 `protobuf:"fixed32,7,opt,name=upmove" json:"upmove,omitempty"` - Impulse *int32 `protobuf:"varint,8,opt,name=impulse" json:"impulse,omitempty"` - Weaponselect *int32 `protobuf:"varint,9,opt,name=weaponselect" json:"weaponselect,omitempty"` - RandomSeed *int32 `protobuf:"varint,10,opt,name=random_seed,json=randomSeed" json:"random_seed,omitempty"` - Mousedx *int32 `protobuf:"varint,11,opt,name=mousedx" json:"mousedx,omitempty"` - Mousedy *int32 `protobuf:"varint,12,opt,name=mousedy" json:"mousedy,omitempty"` - Hasbeenpredicted *bool `protobuf:"varint,13,opt,name=hasbeenpredicted" json:"hasbeenpredicted,omitempty"` - PawnEntityHandle *uint32 `protobuf:"varint,14,opt,name=pawn_entity_handle,json=pawnEntityHandle" json:"pawn_entity_handle,omitempty"` - SubtickMoves []*CSubtickMoveStep `protobuf:"bytes,18,rep,name=subtick_moves,json=subtickMoves" json:"subtick_moves,omitempty"` - MoveCrc []byte `protobuf:"bytes,19,opt,name=move_crc,json=moveCrc" json:"move_crc,omitempty"` - FixangleTick *int32 `protobuf:"varint,20,opt,name=fixangle_tick,json=fixangleTick" json:"fixangle_tick,omitempty"` + CommandNumber *int32 `protobuf:"varint,1,opt,name=command_number,json=commandNumber" json:"command_number,omitempty"` + TickCount *int32 `protobuf:"varint,2,opt,name=tick_count,json=tickCount" json:"tick_count,omitempty"` + ButtonsPb *CInButtonStatePB `protobuf:"bytes,3,opt,name=buttons_pb,json=buttonsPb" json:"buttons_pb,omitempty"` + Viewangles *CMsgQAngle `protobuf:"bytes,4,opt,name=viewangles" json:"viewangles,omitempty"` + Forwardmove *float32 `protobuf:"fixed32,5,opt,name=forwardmove" json:"forwardmove,omitempty"` + Leftmove *float32 `protobuf:"fixed32,6,opt,name=leftmove" json:"leftmove,omitempty"` + Upmove *float32 `protobuf:"fixed32,7,opt,name=upmove" json:"upmove,omitempty"` + Impulse *int32 `protobuf:"varint,8,opt,name=impulse" json:"impulse,omitempty"` + Weaponselect *int32 `protobuf:"varint,9,opt,name=weaponselect" json:"weaponselect,omitempty"` + RandomSeed *int32 `protobuf:"varint,10,opt,name=random_seed,json=randomSeed" json:"random_seed,omitempty"` + Mousedx *int32 `protobuf:"varint,11,opt,name=mousedx" json:"mousedx,omitempty"` + Mousedy *int32 `protobuf:"varint,12,opt,name=mousedy" json:"mousedy,omitempty"` + PawnEntityHandle *uint32 `protobuf:"varint,14,opt,name=pawn_entity_handle,json=pawnEntityHandle" json:"pawn_entity_handle,omitempty"` + SubtickMoves []*CSubtickMoveStep `protobuf:"bytes,18,rep,name=subtick_moves,json=subtickMoves" json:"subtick_moves,omitempty"` + MoveCrc []byte `protobuf:"bytes,19,opt,name=move_crc,json=moveCrc" json:"move_crc,omitempty"` + ConsumedServerAngleChanges *uint32 `protobuf:"varint,20,opt,name=consumed_server_angle_changes,json=consumedServerAngleChanges" json:"consumed_server_angle_changes,omitempty"` + CmdFlags *int32 `protobuf:"varint,21,opt,name=cmd_flags,json=cmdFlags" json:"cmd_flags,omitempty"` } func (x *CBaseUserCmdPB) Reset() { @@ -286,13 +302,6 @@ func (x *CBaseUserCmdPB) GetMousedy() int32 { return 0 } -func (x *CBaseUserCmdPB) GetHasbeenpredicted() bool { - if x != nil && x.Hasbeenpredicted != nil { - return *x.Hasbeenpredicted - } - return false -} - func (x *CBaseUserCmdPB) GetPawnEntityHandle() uint32 { if x != nil && x.PawnEntityHandle != nil { return *x.PawnEntityHandle @@ -314,9 +323,16 @@ func (x *CBaseUserCmdPB) GetMoveCrc() []byte { return nil } -func (x *CBaseUserCmdPB) GetFixangleTick() int32 { - if x != nil && x.FixangleTick != nil { - return *x.FixangleTick +func (x *CBaseUserCmdPB) GetConsumedServerAngleChanges() uint32 { + if x != nil && x.ConsumedServerAngleChanges != nil { + return *x.ConsumedServerAngleChanges + } + return 0 +} + +func (x *CBaseUserCmdPB) GetCmdFlags() int32 { + if x != nil && x.CmdFlags != nil { + return *x.CmdFlags } return 0 } @@ -381,59 +397,66 @@ var file_usercmd_proto_rawDesc = []byte{ 0x74, 0x61, 0x74, 0x65, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x32, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x33, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x33, 0x22, 0x58, 0x0a, - 0x10, 0x43, 0x53, 0x75, 0x62, 0x74, 0x69, 0x63, 0x6b, 0x4d, 0x6f, 0x76, 0x65, 0x53, 0x74, 0x65, - 0x70, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x06, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x65, - 0x73, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, - 0x73, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x68, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x04, 0x77, 0x68, 0x65, 0x6e, 0x22, 0xff, 0x04, 0x0a, 0x0e, 0x43, 0x42, 0x61, 0x73, - 0x65, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6d, 0x64, 0x50, 0x42, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, - 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x35, 0x0a, 0x0a, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x5f, 0x70, 0x62, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x49, 0x6e, 0x42, - 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x50, 0x42, 0x52, 0x09, 0x62, 0x75, - 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x50, 0x62, 0x12, 0x30, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x61, - 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x0a, 0x76, - 0x69, 0x65, 0x77, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x66, 0x6f, 0x72, - 0x77, 0x61, 0x72, 0x64, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, - 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, - 0x65, 0x66, 0x74, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, - 0x65, 0x66, 0x74, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x70, 0x6d, 0x6f, 0x76, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x75, 0x70, 0x6d, 0x6f, 0x76, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x69, 0x6d, 0x70, 0x75, 0x6c, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x69, 0x6d, 0x70, 0x75, 0x6c, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x65, 0x61, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x77, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x1f, 0x0a, - 0x0b, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x5f, 0x73, 0x65, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x65, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x78, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x75, 0x73, - 0x65, 0x64, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x6f, 0x75, 0x73, 0x65, - 0x64, 0x79, 0x12, 0x2a, 0x0a, 0x10, 0x68, 0x61, 0x73, 0x62, 0x65, 0x65, 0x6e, 0x70, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x68, 0x61, - 0x73, 0x62, 0x65, 0x65, 0x6e, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x12, 0x2c, - 0x0a, 0x12, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x61, 0x77, 0x6e, - 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x3b, 0x0a, 0x0d, - 0x73, 0x75, 0x62, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x18, 0x12, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, 0x75, 0x62, 0x74, - 0x69, 0x63, 0x6b, 0x4d, 0x6f, 0x76, 0x65, 0x53, 0x74, 0x65, 0x70, 0x52, 0x0c, 0x73, 0x75, 0x62, - 0x74, 0x69, 0x63, 0x6b, 0x4d, 0x6f, 0x76, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x6f, 0x76, - 0x65, 0x5f, 0x63, 0x72, 0x63, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x6f, 0x76, - 0x65, 0x43, 0x72, 0x63, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x69, 0x78, 0x61, 0x6e, 0x67, 0x6c, 0x65, - 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x66, 0x69, 0x78, - 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x69, 0x63, 0x6b, 0x22, 0x3a, 0x0a, 0x0e, 0x43, 0x55, 0x73, - 0x65, 0x72, 0x43, 0x6d, 0x64, 0x42, 0x61, 0x73, 0x65, 0x50, 0x42, 0x12, 0x28, 0x0a, 0x04, 0x62, - 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6d, 0x64, 0x50, 0x42, 0x52, - 0x04, 0x62, 0x61, 0x73, 0x65, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, - 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x0c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x33, 0x22, 0xb6, 0x01, + 0x0a, 0x10, 0x43, 0x53, 0x75, 0x62, 0x74, 0x69, 0x63, 0x6b, 0x4d, 0x6f, 0x76, 0x65, 0x53, 0x74, + 0x65, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x06, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, + 0x65, 0x73, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x68, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x04, 0x77, 0x68, 0x65, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x6e, 0x61, 0x6c, + 0x6f, 0x67, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x61, 0x6e, 0x61, 0x6c, 0x6f, 0x67, 0x46, 0x6f, + 0x72, 0x77, 0x61, 0x72, 0x64, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x6e, + 0x61, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x6e, 0x61, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x66, + 0x74, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x22, 0x8e, 0x05, 0x0a, 0x0e, 0x43, 0x42, 0x61, 0x73, 0x65, + 0x55, 0x73, 0x65, 0x72, 0x43, 0x6d, 0x64, 0x50, 0x42, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, + 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x69, 0x63, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x35, 0x0a, 0x0a, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x5f, 0x70, 0x62, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x49, 0x6e, 0x42, 0x75, + 0x74, 0x74, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x50, 0x42, 0x52, 0x09, 0x62, 0x75, 0x74, + 0x74, 0x6f, 0x6e, 0x73, 0x50, 0x62, 0x12, 0x30, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x61, 0x6e, + 0x67, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x0a, 0x76, 0x69, + 0x65, 0x77, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x66, 0x6f, 0x72, 0x77, + 0x61, 0x72, 0x64, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x66, + 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x65, + 0x66, 0x74, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6c, 0x65, + 0x66, 0x74, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x70, 0x6d, 0x6f, 0x76, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x75, 0x70, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x69, 0x6d, 0x70, 0x75, 0x6c, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x69, 0x6d, 0x70, 0x75, 0x6c, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x65, 0x61, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, + 0x77, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x1f, 0x0a, 0x0b, + 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x5f, 0x73, 0x65, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x65, 0x64, 0x12, 0x18, 0x0a, + 0x07, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x78, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x75, 0x73, 0x65, + 0x64, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, + 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x61, 0x77, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, + 0x61, 0x77, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, + 0x3b, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x74, 0x69, 0x63, 0x6b, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x73, + 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x53, + 0x75, 0x62, 0x74, 0x69, 0x63, 0x6b, 0x4d, 0x6f, 0x76, 0x65, 0x53, 0x74, 0x65, 0x70, 0x52, 0x0c, + 0x73, 0x75, 0x62, 0x74, 0x69, 0x63, 0x6b, 0x4d, 0x6f, 0x76, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, + 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x63, 0x72, 0x63, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, + 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x72, 0x63, 0x12, 0x41, 0x0a, 0x1d, 0x63, 0x6f, 0x6e, 0x73, 0x75, + 0x6d, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x6e, 0x67, 0x6c, 0x65, + 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, + 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x6e, + 0x67, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6d, + 0x64, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, + 0x6d, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x3a, 0x0a, 0x0e, 0x43, 0x55, 0x73, 0x65, 0x72, + 0x43, 0x6d, 0x64, 0x42, 0x61, 0x73, 0x65, 0x50, 0x42, 0x12, 0x28, 0x0a, 0x04, 0x62, 0x61, 0x73, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6d, 0x64, 0x50, 0x42, 0x52, 0x04, 0x62, + 0x61, 0x73, 0x65, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, + 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var ( diff --git a/dota/usercmd.proto b/dota/usercmd.proto index 9cb1aadf..512490cb 100644 --- a/dota/usercmd.proto +++ b/dota/usercmd.proto @@ -15,6 +15,8 @@ message CSubtickMoveStep { optional uint64 button = 1; optional bool pressed = 2; optional float when = 3; + optional float analog_forward_delta = 4; + optional float analog_left_delta = 5; } message CBaseUserCmdPB { @@ -30,11 +32,11 @@ message CBaseUserCmdPB { optional int32 random_seed = 10; optional int32 mousedx = 11; optional int32 mousedy = 12; - optional bool hasbeenpredicted = 13; optional uint32 pawn_entity_handle = 14; repeated CSubtickMoveStep subtick_moves = 18; optional bytes move_crc = 19; - optional int32 fixangle_tick = 20; + optional uint32 consumed_server_angle_changes = 20; + optional int32 cmd_flags = 21; } message CUserCmdBasePB { diff --git a/dota/usermessages.pb.go b/dota/usermessages.pb.go index 7bd19c0d..f5702a25 100644 --- a/dota/usermessages.pb.go +++ b/dota/usermessages.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: usermessages.proto @@ -41,6 +41,7 @@ const ( EBaseUserMessages_UM_SayTextChannel EBaseUserMessages = 119 EBaseUserMessages_UM_Shake EBaseUserMessages = 120 EBaseUserMessages_UM_ShakeDir EBaseUserMessages = 121 + EBaseUserMessages_UM_WaterShake EBaseUserMessages = 122 EBaseUserMessages_UM_TextMsg EBaseUserMessages = 124 EBaseUserMessages_UM_ScreenTilt EBaseUserMessages = 125 EBaseUserMessages_UM_VoiceMask EBaseUserMessages = 128 @@ -68,6 +69,9 @@ const ( EBaseUserMessages_UM_DllStatusResponse EBaseUserMessages = 159 EBaseUserMessages_UM_RequestInventory EBaseUserMessages = 160 EBaseUserMessages_UM_InventoryResponse EBaseUserMessages = 161 + EBaseUserMessages_UM_RequestDiagnostic EBaseUserMessages = 162 + EBaseUserMessages_UM_DiagnosticResponse EBaseUserMessages = 163 + EBaseUserMessages_UM_ExtraUserData EBaseUserMessages = 164 EBaseUserMessages_UM_MAX_BASE EBaseUserMessages = 200 ) @@ -92,6 +96,7 @@ var ( 119: "UM_SayTextChannel", 120: "UM_Shake", 121: "UM_ShakeDir", + 122: "UM_WaterShake", 124: "UM_TextMsg", 125: "UM_ScreenTilt", 128: "UM_VoiceMask", @@ -119,6 +124,9 @@ var ( 159: "UM_DllStatusResponse", 160: "UM_RequestInventory", 161: "UM_InventoryResponse", + 162: "UM_RequestDiagnostic", + 163: "UM_DiagnosticResponse", + 164: "UM_ExtraUserData", 200: "UM_MAX_BASE", } EBaseUserMessages_value = map[string]int32{ @@ -140,6 +148,7 @@ var ( "UM_SayTextChannel": 119, "UM_Shake": 120, "UM_ShakeDir": 121, + "UM_WaterShake": 122, "UM_TextMsg": 124, "UM_ScreenTilt": 125, "UM_VoiceMask": 128, @@ -167,6 +176,9 @@ var ( "UM_DllStatusResponse": 159, "UM_RequestInventory": 160, "UM_InventoryResponse": 161, + "UM_RequestDiagnostic": 162, + "UM_DiagnosticResponse": 163, + "UM_ExtraUserData": 164, "UM_MAX_BASE": 200, } ) @@ -373,6 +385,7 @@ const ( PARTICLE_MESSAGE_GAME_PARTICLE_MANAGER_EVENT_SET_NAMED_VALUE_CONTEXT PARTICLE_MESSAGE = 26 PARTICLE_MESSAGE_GAME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSFORM PARTICLE_MESSAGE = 27 PARTICLE_MESSAGE_GAME_PARTICLE_MANAGER_EVENT_FREEZE_TRANSITION_OVERRIDE PARTICLE_MESSAGE = 28 + PARTICLE_MESSAGE_GAME_PARTICLE_MANAGER_EVENT_FREEZE_INVOLVING PARTICLE_MESSAGE = 29 ) // Enum value maps for PARTICLE_MESSAGE. @@ -407,6 +420,7 @@ var ( 26: "GAME_PARTICLE_MANAGER_EVENT_SET_NAMED_VALUE_CONTEXT", 27: "GAME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSFORM", 28: "GAME_PARTICLE_MANAGER_EVENT_FREEZE_TRANSITION_OVERRIDE", + 29: "GAME_PARTICLE_MANAGER_EVENT_FREEZE_INVOLVING", } PARTICLE_MESSAGE_value = map[string]int32{ "GAME_PARTICLE_MANAGER_EVENT_CREATE": 0, @@ -438,6 +452,7 @@ var ( "GAME_PARTICLE_MANAGER_EVENT_SET_NAMED_VALUE_CONTEXT": 26, "GAME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSFORM": 27, "GAME_PARTICLE_MANAGER_EVENT_FREEZE_TRANSITION_OVERRIDE": 28, + "GAME_PARTICLE_MANAGER_EVENT_FREEZE_INVOLVING": 29, } ) @@ -1112,6 +1127,77 @@ func (x *CUserMessageShakeDir) GetDirection() *CMsgVector { return nil } +type CUserMessageWaterShake struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Command *uint32 `protobuf:"varint,1,opt,name=command" json:"command,omitempty"` + Amplitude *float32 `protobuf:"fixed32,2,opt,name=amplitude" json:"amplitude,omitempty"` + Frequency *float32 `protobuf:"fixed32,3,opt,name=frequency" json:"frequency,omitempty"` + Duration *float32 `protobuf:"fixed32,4,opt,name=duration" json:"duration,omitempty"` +} + +func (x *CUserMessageWaterShake) Reset() { + *x = CUserMessageWaterShake{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMessageWaterShake) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMessageWaterShake) ProtoMessage() {} + +func (x *CUserMessageWaterShake) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMessageWaterShake.ProtoReflect.Descriptor instead. +func (*CUserMessageWaterShake) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{9} +} + +func (x *CUserMessageWaterShake) GetCommand() uint32 { + if x != nil && x.Command != nil { + return *x.Command + } + return 0 +} + +func (x *CUserMessageWaterShake) GetAmplitude() float32 { + if x != nil && x.Amplitude != nil { + return *x.Amplitude + } + return 0 +} + +func (x *CUserMessageWaterShake) GetFrequency() float32 { + if x != nil && x.Frequency != nil { + return *x.Frequency + } + return 0 +} + +func (x *CUserMessageWaterShake) GetDuration() float32 { + if x != nil && x.Duration != nil { + return *x.Duration + } + return 0 +} + type CUserMessageScreenTilt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1127,7 +1213,7 @@ type CUserMessageScreenTilt struct { func (x *CUserMessageScreenTilt) Reset() { *x = CUserMessageScreenTilt{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[9] + mi := &file_usermessages_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1140,7 +1226,7 @@ func (x *CUserMessageScreenTilt) String() string { func (*CUserMessageScreenTilt) ProtoMessage() {} func (x *CUserMessageScreenTilt) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[9] + mi := &file_usermessages_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1153,7 +1239,7 @@ func (x *CUserMessageScreenTilt) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageScreenTilt.ProtoReflect.Descriptor instead. func (*CUserMessageScreenTilt) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{9} + return file_usermessages_proto_rawDescGZIP(), []int{10} } func (x *CUserMessageScreenTilt) GetCommand() uint32 { @@ -1204,7 +1290,7 @@ type CUserMessageSayText struct { func (x *CUserMessageSayText) Reset() { *x = CUserMessageSayText{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[10] + mi := &file_usermessages_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1217,7 +1303,7 @@ func (x *CUserMessageSayText) String() string { func (*CUserMessageSayText) ProtoMessage() {} func (x *CUserMessageSayText) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[10] + mi := &file_usermessages_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1230,7 +1316,7 @@ func (x *CUserMessageSayText) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageSayText.ProtoReflect.Descriptor instead. func (*CUserMessageSayText) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{10} + return file_usermessages_proto_rawDescGZIP(), []int{11} } func (x *CUserMessageSayText) GetPlayerindex() int32 { @@ -1271,7 +1357,7 @@ type CUserMessageSayText2 struct { func (x *CUserMessageSayText2) Reset() { *x = CUserMessageSayText2{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[11] + mi := &file_usermessages_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1284,7 +1370,7 @@ func (x *CUserMessageSayText2) String() string { func (*CUserMessageSayText2) ProtoMessage() {} func (x *CUserMessageSayText2) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[11] + mi := &file_usermessages_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1297,7 +1383,7 @@ func (x *CUserMessageSayText2) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageSayText2.ProtoReflect.Descriptor instead. func (*CUserMessageSayText2) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{11} + return file_usermessages_proto_rawDescGZIP(), []int{12} } func (x *CUserMessageSayText2) GetEntityindex() int32 { @@ -1366,7 +1452,7 @@ type CUserMessageHudMsg struct { func (x *CUserMessageHudMsg) Reset() { *x = CUserMessageHudMsg{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[12] + mi := &file_usermessages_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1379,7 +1465,7 @@ func (x *CUserMessageHudMsg) String() string { func (*CUserMessageHudMsg) ProtoMessage() {} func (x *CUserMessageHudMsg) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[12] + mi := &file_usermessages_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1392,7 +1478,7 @@ func (x *CUserMessageHudMsg) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageHudMsg.ProtoReflect.Descriptor instead. func (*CUserMessageHudMsg) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{12} + return file_usermessages_proto_rawDescGZIP(), []int{13} } func (x *CUserMessageHudMsg) GetChannel() uint32 { @@ -1455,7 +1541,7 @@ type CUserMessageHudText struct { func (x *CUserMessageHudText) Reset() { *x = CUserMessageHudText{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[13] + mi := &file_usermessages_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1468,7 +1554,7 @@ func (x *CUserMessageHudText) String() string { func (*CUserMessageHudText) ProtoMessage() {} func (x *CUserMessageHudText) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[13] + mi := &file_usermessages_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1481,7 +1567,7 @@ func (x *CUserMessageHudText) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageHudText.ProtoReflect.Descriptor instead. func (*CUserMessageHudText) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{13} + return file_usermessages_proto_rawDescGZIP(), []int{14} } func (x *CUserMessageHudText) GetMessage() string { @@ -1503,7 +1589,7 @@ type CUserMessageTextMsg struct { func (x *CUserMessageTextMsg) Reset() { *x = CUserMessageTextMsg{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[14] + mi := &file_usermessages_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1516,7 +1602,7 @@ func (x *CUserMessageTextMsg) String() string { func (*CUserMessageTextMsg) ProtoMessage() {} func (x *CUserMessageTextMsg) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[14] + mi := &file_usermessages_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1529,7 +1615,7 @@ func (x *CUserMessageTextMsg) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageTextMsg.ProtoReflect.Descriptor instead. func (*CUserMessageTextMsg) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{14} + return file_usermessages_proto_rawDescGZIP(), []int{15} } func (x *CUserMessageTextMsg) GetDest() uint32 { @@ -1555,7 +1641,7 @@ type CUserMessageGameTitle struct { func (x *CUserMessageGameTitle) Reset() { *x = CUserMessageGameTitle{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[15] + mi := &file_usermessages_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1568,7 +1654,7 @@ func (x *CUserMessageGameTitle) String() string { func (*CUserMessageGameTitle) ProtoMessage() {} func (x *CUserMessageGameTitle) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[15] + mi := &file_usermessages_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1581,7 +1667,7 @@ func (x *CUserMessageGameTitle) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageGameTitle.ProtoReflect.Descriptor instead. func (*CUserMessageGameTitle) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{15} + return file_usermessages_proto_rawDescGZIP(), []int{16} } type CUserMessageResetHUD struct { @@ -1593,7 +1679,7 @@ type CUserMessageResetHUD struct { func (x *CUserMessageResetHUD) Reset() { *x = CUserMessageResetHUD{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[16] + mi := &file_usermessages_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1606,7 +1692,7 @@ func (x *CUserMessageResetHUD) String() string { func (*CUserMessageResetHUD) ProtoMessage() {} func (x *CUserMessageResetHUD) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[16] + mi := &file_usermessages_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1619,7 +1705,7 @@ func (x *CUserMessageResetHUD) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageResetHUD.ProtoReflect.Descriptor instead. func (*CUserMessageResetHUD) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{16} + return file_usermessages_proto_rawDescGZIP(), []int{17} } type CUserMessageSendAudio struct { @@ -1634,7 +1720,7 @@ type CUserMessageSendAudio struct { func (x *CUserMessageSendAudio) Reset() { *x = CUserMessageSendAudio{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[17] + mi := &file_usermessages_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1647,7 +1733,7 @@ func (x *CUserMessageSendAudio) String() string { func (*CUserMessageSendAudio) ProtoMessage() {} func (x *CUserMessageSendAudio) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[17] + mi := &file_usermessages_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1660,7 +1746,7 @@ func (x *CUserMessageSendAudio) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageSendAudio.ProtoReflect.Descriptor instead. func (*CUserMessageSendAudio) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{17} + return file_usermessages_proto_rawDescGZIP(), []int{18} } func (x *CUserMessageSendAudio) GetSoundname() string { @@ -1691,7 +1777,7 @@ type CUserMessageAudioParameter struct { func (x *CUserMessageAudioParameter) Reset() { *x = CUserMessageAudioParameter{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[18] + mi := &file_usermessages_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1704,7 +1790,7 @@ func (x *CUserMessageAudioParameter) String() string { func (*CUserMessageAudioParameter) ProtoMessage() {} func (x *CUserMessageAudioParameter) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[18] + mi := &file_usermessages_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1717,7 +1803,7 @@ func (x *CUserMessageAudioParameter) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageAudioParameter.ProtoReflect.Descriptor instead. func (*CUserMessageAudioParameter) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{18} + return file_usermessages_proto_rawDescGZIP(), []int{19} } func (x *CUserMessageAudioParameter) GetParameterType() uint32 { @@ -1761,7 +1847,7 @@ type CUserMessageVoiceMask struct { func (x *CUserMessageVoiceMask) Reset() { *x = CUserMessageVoiceMask{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[19] + mi := &file_usermessages_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1774,7 +1860,7 @@ func (x *CUserMessageVoiceMask) String() string { func (*CUserMessageVoiceMask) ProtoMessage() {} func (x *CUserMessageVoiceMask) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[19] + mi := &file_usermessages_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1787,7 +1873,7 @@ func (x *CUserMessageVoiceMask) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageVoiceMask.ProtoReflect.Descriptor instead. func (*CUserMessageVoiceMask) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{19} + return file_usermessages_proto_rawDescGZIP(), []int{20} } func (x *CUserMessageVoiceMask) GetGamerulesMasks() []uint32 { @@ -1820,7 +1906,7 @@ type CUserMessageRequestState struct { func (x *CUserMessageRequestState) Reset() { *x = CUserMessageRequestState{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[20] + mi := &file_usermessages_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1833,7 +1919,7 @@ func (x *CUserMessageRequestState) String() string { func (*CUserMessageRequestState) ProtoMessage() {} func (x *CUserMessageRequestState) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[20] + mi := &file_usermessages_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1846,7 +1932,7 @@ func (x *CUserMessageRequestState) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageRequestState.ProtoReflect.Descriptor instead. func (*CUserMessageRequestState) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{20} + return file_usermessages_proto_rawDescGZIP(), []int{21} } type CUserMessageRumble struct { @@ -1862,7 +1948,7 @@ type CUserMessageRumble struct { func (x *CUserMessageRumble) Reset() { *x = CUserMessageRumble{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[21] + mi := &file_usermessages_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1875,7 +1961,7 @@ func (x *CUserMessageRumble) String() string { func (*CUserMessageRumble) ProtoMessage() {} func (x *CUserMessageRumble) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[21] + mi := &file_usermessages_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1888,7 +1974,7 @@ func (x *CUserMessageRumble) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageRumble.ProtoReflect.Descriptor instead. func (*CUserMessageRumble) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{21} + return file_usermessages_proto_rawDescGZIP(), []int{22} } func (x *CUserMessageRumble) GetIndex() int32 { @@ -1925,7 +2011,7 @@ type CUserMessageSayTextChannel struct { func (x *CUserMessageSayTextChannel) Reset() { *x = CUserMessageSayTextChannel{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[22] + mi := &file_usermessages_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1938,7 +2024,7 @@ func (x *CUserMessageSayTextChannel) String() string { func (*CUserMessageSayTextChannel) ProtoMessage() {} func (x *CUserMessageSayTextChannel) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[22] + mi := &file_usermessages_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1951,7 +2037,7 @@ func (x *CUserMessageSayTextChannel) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageSayTextChannel.ProtoReflect.Descriptor instead. func (*CUserMessageSayTextChannel) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{22} + return file_usermessages_proto_rawDescGZIP(), []int{23} } func (x *CUserMessageSayTextChannel) GetPlayer() int32 { @@ -1991,7 +2077,7 @@ type CUserMessageColoredText struct { func (x *CUserMessageColoredText) Reset() { *x = CUserMessageColoredText{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[23] + mi := &file_usermessages_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2004,7 +2090,7 @@ func (x *CUserMessageColoredText) String() string { func (*CUserMessageColoredText) ProtoMessage() {} func (x *CUserMessageColoredText) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[23] + mi := &file_usermessages_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2017,7 +2103,7 @@ func (x *CUserMessageColoredText) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageColoredText.ProtoReflect.Descriptor instead. func (*CUserMessageColoredText) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{23} + return file_usermessages_proto_rawDescGZIP(), []int{24} } func (x *CUserMessageColoredText) GetColor() uint32 { @@ -2073,7 +2159,7 @@ type CUserMessageItemPickup struct { func (x *CUserMessageItemPickup) Reset() { *x = CUserMessageItemPickup{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[24] + mi := &file_usermessages_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2086,7 +2172,7 @@ func (x *CUserMessageItemPickup) String() string { func (*CUserMessageItemPickup) ProtoMessage() {} func (x *CUserMessageItemPickup) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[24] + mi := &file_usermessages_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2099,7 +2185,7 @@ func (x *CUserMessageItemPickup) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageItemPickup.ProtoReflect.Descriptor instead. func (*CUserMessageItemPickup) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{24} + return file_usermessages_proto_rawDescGZIP(), []int{25} } func (x *CUserMessageItemPickup) GetItemname() string { @@ -2120,7 +2206,7 @@ type CUserMessageAmmoDenied struct { func (x *CUserMessageAmmoDenied) Reset() { *x = CUserMessageAmmoDenied{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[25] + mi := &file_usermessages_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2133,7 +2219,7 @@ func (x *CUserMessageAmmoDenied) String() string { func (*CUserMessageAmmoDenied) ProtoMessage() {} func (x *CUserMessageAmmoDenied) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[25] + mi := &file_usermessages_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2146,7 +2232,7 @@ func (x *CUserMessageAmmoDenied) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageAmmoDenied.ProtoReflect.Descriptor instead. func (*CUserMessageAmmoDenied) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{25} + return file_usermessages_proto_rawDescGZIP(), []int{26} } func (x *CUserMessageAmmoDenied) GetAmmoId() uint32 { @@ -2170,7 +2256,7 @@ type CUserMessageShowMenu struct { func (x *CUserMessageShowMenu) Reset() { *x = CUserMessageShowMenu{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[26] + mi := &file_usermessages_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2183,7 +2269,7 @@ func (x *CUserMessageShowMenu) String() string { func (*CUserMessageShowMenu) ProtoMessage() {} func (x *CUserMessageShowMenu) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[26] + mi := &file_usermessages_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2196,7 +2282,7 @@ func (x *CUserMessageShowMenu) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageShowMenu.ProtoReflect.Descriptor instead. func (*CUserMessageShowMenu) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{26} + return file_usermessages_proto_rawDescGZIP(), []int{27} } func (x *CUserMessageShowMenu) GetValidslots() uint32 { @@ -2239,7 +2325,7 @@ type CUserMessageCreditsMsg struct { func (x *CUserMessageCreditsMsg) Reset() { *x = CUserMessageCreditsMsg{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[27] + mi := &file_usermessages_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2252,7 +2338,7 @@ func (x *CUserMessageCreditsMsg) String() string { func (*CUserMessageCreditsMsg) ProtoMessage() {} func (x *CUserMessageCreditsMsg) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[27] + mi := &file_usermessages_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2265,7 +2351,7 @@ func (x *CUserMessageCreditsMsg) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageCreditsMsg.ProtoReflect.Descriptor instead. func (*CUserMessageCreditsMsg) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{27} + return file_usermessages_proto_rawDescGZIP(), []int{28} } func (x *CUserMessageCreditsMsg) GetRolltype() ERollType { @@ -2293,7 +2379,7 @@ type CEntityMessagePlayJingle struct { func (x *CEntityMessagePlayJingle) Reset() { *x = CEntityMessagePlayJingle{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[28] + mi := &file_usermessages_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2306,7 +2392,7 @@ func (x *CEntityMessagePlayJingle) String() string { func (*CEntityMessagePlayJingle) ProtoMessage() {} func (x *CEntityMessagePlayJingle) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[28] + mi := &file_usermessages_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2319,7 +2405,7 @@ func (x *CEntityMessagePlayJingle) ProtoReflect() protoreflect.Message { // Deprecated: Use CEntityMessagePlayJingle.ProtoReflect.Descriptor instead. func (*CEntityMessagePlayJingle) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{28} + return file_usermessages_proto_rawDescGZIP(), []int{29} } func (x *CEntityMessagePlayJingle) GetEntityMsg() *CEntityMsg { @@ -2341,7 +2427,7 @@ type CEntityMessageScreenOverlay struct { func (x *CEntityMessageScreenOverlay) Reset() { *x = CEntityMessageScreenOverlay{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[29] + mi := &file_usermessages_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2354,7 +2440,7 @@ func (x *CEntityMessageScreenOverlay) String() string { func (*CEntityMessageScreenOverlay) ProtoMessage() {} func (x *CEntityMessageScreenOverlay) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[29] + mi := &file_usermessages_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2367,7 +2453,7 @@ func (x *CEntityMessageScreenOverlay) ProtoReflect() protoreflect.Message { // Deprecated: Use CEntityMessageScreenOverlay.ProtoReflect.Descriptor instead. func (*CEntityMessageScreenOverlay) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{29} + return file_usermessages_proto_rawDescGZIP(), []int{30} } func (x *CEntityMessageScreenOverlay) GetStartEffect() bool { @@ -2396,7 +2482,7 @@ type CEntityMessageRemoveAllDecals struct { func (x *CEntityMessageRemoveAllDecals) Reset() { *x = CEntityMessageRemoveAllDecals{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[30] + mi := &file_usermessages_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2409,7 +2495,7 @@ func (x *CEntityMessageRemoveAllDecals) String() string { func (*CEntityMessageRemoveAllDecals) ProtoMessage() {} func (x *CEntityMessageRemoveAllDecals) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[30] + mi := &file_usermessages_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2422,7 +2508,7 @@ func (x *CEntityMessageRemoveAllDecals) ProtoReflect() protoreflect.Message { // Deprecated: Use CEntityMessageRemoveAllDecals.ProtoReflect.Descriptor instead. func (*CEntityMessageRemoveAllDecals) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{30} + return file_usermessages_proto_rawDescGZIP(), []int{31} } func (x *CEntityMessageRemoveAllDecals) GetRemoveDecals() bool { @@ -2451,7 +2537,7 @@ type CEntityMessagePropagateForce struct { func (x *CEntityMessagePropagateForce) Reset() { *x = CEntityMessagePropagateForce{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[31] + mi := &file_usermessages_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2464,7 +2550,7 @@ func (x *CEntityMessagePropagateForce) String() string { func (*CEntityMessagePropagateForce) ProtoMessage() {} func (x *CEntityMessagePropagateForce) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[31] + mi := &file_usermessages_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2477,7 +2563,7 @@ func (x *CEntityMessagePropagateForce) ProtoReflect() protoreflect.Message { // Deprecated: Use CEntityMessagePropagateForce.ProtoReflect.Descriptor instead. func (*CEntityMessagePropagateForce) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{31} + return file_usermessages_proto_rawDescGZIP(), []int{32} } func (x *CEntityMessagePropagateForce) GetImpulse() *CMsgVector { @@ -2512,7 +2598,7 @@ type CEntityMessageDoSpark struct { func (x *CEntityMessageDoSpark) Reset() { *x = CEntityMessageDoSpark{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[32] + mi := &file_usermessages_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2525,7 +2611,7 @@ func (x *CEntityMessageDoSpark) String() string { func (*CEntityMessageDoSpark) ProtoMessage() {} func (x *CEntityMessageDoSpark) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[32] + mi := &file_usermessages_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2538,7 +2624,7 @@ func (x *CEntityMessageDoSpark) ProtoReflect() protoreflect.Message { // Deprecated: Use CEntityMessageDoSpark.ProtoReflect.Descriptor instead. func (*CEntityMessageDoSpark) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{32} + return file_usermessages_proto_rawDescGZIP(), []int{33} } func (x *CEntityMessageDoSpark) GetOrigin() *CMsgVector { @@ -2610,7 +2696,7 @@ type CEntityMessageFixAngle struct { func (x *CEntityMessageFixAngle) Reset() { *x = CEntityMessageFixAngle{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[33] + mi := &file_usermessages_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2623,7 +2709,7 @@ func (x *CEntityMessageFixAngle) String() string { func (*CEntityMessageFixAngle) ProtoMessage() {} func (x *CEntityMessageFixAngle) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[33] + mi := &file_usermessages_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2636,7 +2722,7 @@ func (x *CEntityMessageFixAngle) ProtoReflect() protoreflect.Message { // Deprecated: Use CEntityMessageFixAngle.ProtoReflect.Descriptor instead. func (*CEntityMessageFixAngle) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{33} + return file_usermessages_proto_rawDescGZIP(), []int{34} } func (x *CEntityMessageFixAngle) GetRelative() bool { @@ -2673,7 +2759,7 @@ type CUserMessageCameraTransition struct { func (x *CUserMessageCameraTransition) Reset() { *x = CUserMessageCameraTransition{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[34] + mi := &file_usermessages_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2686,7 +2772,7 @@ func (x *CUserMessageCameraTransition) String() string { func (*CUserMessageCameraTransition) ProtoMessage() {} func (x *CUserMessageCameraTransition) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[34] + mi := &file_usermessages_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2699,7 +2785,7 @@ func (x *CUserMessageCameraTransition) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageCameraTransition.ProtoReflect.Descriptor instead. func (*CUserMessageCameraTransition) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{34} + return file_usermessages_proto_rawDescGZIP(), []int{35} } func (x *CUserMessageCameraTransition) GetCameraType() uint32 { @@ -2759,12 +2845,13 @@ type CUserMsg_ParticleManager struct { SetNamedValueContext *CUserMsg_ParticleManager_SetParticleNamedValueContext `protobuf:"bytes,29,opt,name=set_named_value_context,json=setNamedValueContext" json:"set_named_value_context,omitempty"` UpdateParticleTransform *CUserMsg_ParticleManager_UpdateParticleTransform `protobuf:"bytes,30,opt,name=update_particle_transform,json=updateParticleTransform" json:"update_particle_transform,omitempty"` ParticleFreezeTransitionOverride *CUserMsg_ParticleManager_ParticleFreezeTransitionOverride `protobuf:"bytes,31,opt,name=particle_freeze_transition_override,json=particleFreezeTransitionOverride" json:"particle_freeze_transition_override,omitempty"` + FreezeParticleInvolving *CUserMsg_ParticleManager_FreezeParticleInvolving `protobuf:"bytes,32,opt,name=freeze_particle_involving,json=freezeParticleInvolving" json:"freeze_particle_involving,omitempty"` } func (x *CUserMsg_ParticleManager) Reset() { *x = CUserMsg_ParticleManager{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[35] + mi := &file_usermessages_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2777,7 +2864,7 @@ func (x *CUserMsg_ParticleManager) String() string { func (*CUserMsg_ParticleManager) ProtoMessage() {} func (x *CUserMsg_ParticleManager) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[35] + mi := &file_usermessages_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2790,7 +2877,7 @@ func (x *CUserMsg_ParticleManager) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMsg_ParticleManager.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35} + return file_usermessages_proto_rawDescGZIP(), []int{36} } func (x *CUserMsg_ParticleManager) GetType() PARTICLE_MESSAGE { @@ -3003,6 +3090,13 @@ func (x *CUserMsg_ParticleManager) GetParticleFreezeTransitionOverride() *CUserM return nil } +func (x *CUserMsg_ParticleManager) GetFreezeParticleInvolving() *CUserMsg_ParticleManager_FreezeParticleInvolving { + if x != nil { + return x.FreezeParticleInvolving + } + return nil +} + type CUserMsg_HudError struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3014,7 +3108,7 @@ type CUserMsg_HudError struct { func (x *CUserMsg_HudError) Reset() { *x = CUserMsg_HudError{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[36] + mi := &file_usermessages_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3027,7 +3121,7 @@ func (x *CUserMsg_HudError) String() string { func (*CUserMsg_HudError) ProtoMessage() {} func (x *CUserMsg_HudError) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[36] + mi := &file_usermessages_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3040,7 +3134,7 @@ func (x *CUserMsg_HudError) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMsg_HudError.ProtoReflect.Descriptor instead. func (*CUserMsg_HudError) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{36} + return file_usermessages_proto_rawDescGZIP(), []int{37} } func (x *CUserMsg_HudError) GetOrderId() int32 { @@ -3062,7 +3156,7 @@ type CUserMsg_CustomGameEvent struct { func (x *CUserMsg_CustomGameEvent) Reset() { *x = CUserMsg_CustomGameEvent{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[37] + mi := &file_usermessages_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3075,7 +3169,7 @@ func (x *CUserMsg_CustomGameEvent) String() string { func (*CUserMsg_CustomGameEvent) ProtoMessage() {} func (x *CUserMsg_CustomGameEvent) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[37] + mi := &file_usermessages_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3088,7 +3182,7 @@ func (x *CUserMsg_CustomGameEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMsg_CustomGameEvent.ProtoReflect.Descriptor instead. func (*CUserMsg_CustomGameEvent) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{37} + return file_usermessages_proto_rawDescGZIP(), []int{38} } func (x *CUserMsg_CustomGameEvent) GetEventName() string { @@ -3119,7 +3213,7 @@ type CUserMessageHapticsManagerPulse struct { func (x *CUserMessageHapticsManagerPulse) Reset() { *x = CUserMessageHapticsManagerPulse{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[38] + mi := &file_usermessages_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3132,7 +3226,7 @@ func (x *CUserMessageHapticsManagerPulse) String() string { func (*CUserMessageHapticsManagerPulse) ProtoMessage() {} func (x *CUserMessageHapticsManagerPulse) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[38] + mi := &file_usermessages_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3145,7 +3239,7 @@ func (x *CUserMessageHapticsManagerPulse) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageHapticsManagerPulse.ProtoReflect.Descriptor instead. func (*CUserMessageHapticsManagerPulse) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{38} + return file_usermessages_proto_rawDescGZIP(), []int{39} } func (x *CUserMessageHapticsManagerPulse) GetHandId() int32 { @@ -3189,7 +3283,7 @@ type CUserMessageHapticsManagerEffect struct { func (x *CUserMessageHapticsManagerEffect) Reset() { *x = CUserMessageHapticsManagerEffect{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[39] + mi := &file_usermessages_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3202,7 +3296,7 @@ func (x *CUserMessageHapticsManagerEffect) String() string { func (*CUserMessageHapticsManagerEffect) ProtoMessage() {} func (x *CUserMessageHapticsManagerEffect) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[39] + mi := &file_usermessages_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3215,7 +3309,7 @@ func (x *CUserMessageHapticsManagerEffect) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageHapticsManagerEffect.ProtoReflect.Descriptor instead. func (*CUserMessageHapticsManagerEffect) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{39} + return file_usermessages_proto_rawDescGZIP(), []int{40} } func (x *CUserMessageHapticsManagerEffect) GetHandId() int32 { @@ -3251,7 +3345,7 @@ type CUserMessageAnimStateGraphState struct { func (x *CUserMessageAnimStateGraphState) Reset() { *x = CUserMessageAnimStateGraphState{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[40] + mi := &file_usermessages_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3264,7 +3358,7 @@ func (x *CUserMessageAnimStateGraphState) String() string { func (*CUserMessageAnimStateGraphState) ProtoMessage() {} func (x *CUserMessageAnimStateGraphState) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[40] + mi := &file_usermessages_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3277,7 +3371,7 @@ func (x *CUserMessageAnimStateGraphState) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageAnimStateGraphState.ProtoReflect.Descriptor instead. func (*CUserMessageAnimStateGraphState) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{40} + return file_usermessages_proto_rawDescGZIP(), []int{41} } func (x *CUserMessageAnimStateGraphState) GetEntityIndex() int32 { @@ -3306,7 +3400,7 @@ type CUserMessageCommandQueueState struct { func (x *CUserMessageCommandQueueState) Reset() { *x = CUserMessageCommandQueueState{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[41] + mi := &file_usermessages_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3319,7 +3413,7 @@ func (x *CUserMessageCommandQueueState) String() string { func (*CUserMessageCommandQueueState) ProtoMessage() {} func (x *CUserMessageCommandQueueState) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[41] + mi := &file_usermessages_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3332,7 +3426,7 @@ func (x *CUserMessageCommandQueueState) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageCommandQueueState.ProtoReflect.Descriptor instead. func (*CUserMessageCommandQueueState) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{41} + return file_usermessages_proto_rawDescGZIP(), []int{42} } func (x *CUserMessageCommandQueueState) GetPlayerSlot() int32 { @@ -3362,7 +3456,7 @@ type CUserMessageUpdateCssClasses struct { func (x *CUserMessageUpdateCssClasses) Reset() { *x = CUserMessageUpdateCssClasses{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[42] + mi := &file_usermessages_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3375,7 +3469,7 @@ func (x *CUserMessageUpdateCssClasses) String() string { func (*CUserMessageUpdateCssClasses) ProtoMessage() {} func (x *CUserMessageUpdateCssClasses) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[42] + mi := &file_usermessages_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3388,7 +3482,7 @@ func (x *CUserMessageUpdateCssClasses) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageUpdateCssClasses.ProtoReflect.Descriptor instead. func (*CUserMessageUpdateCssClasses) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{42} + return file_usermessages_proto_rawDescGZIP(), []int{43} } func (x *CUserMessageUpdateCssClasses) GetTargetWorldPanel() int32 { @@ -3423,7 +3517,7 @@ type CUserMessageServerFrameTime struct { func (x *CUserMessageServerFrameTime) Reset() { *x = CUserMessageServerFrameTime{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[43] + mi := &file_usermessages_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3436,7 +3530,7 @@ func (x *CUserMessageServerFrameTime) String() string { func (*CUserMessageServerFrameTime) ProtoMessage() {} func (x *CUserMessageServerFrameTime) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[43] + mi := &file_usermessages_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3449,7 +3543,7 @@ func (x *CUserMessageServerFrameTime) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageServerFrameTime.ProtoReflect.Descriptor instead. func (*CUserMessageServerFrameTime) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{43} + return file_usermessages_proto_rawDescGZIP(), []int{44} } func (x *CUserMessageServerFrameTime) GetFrameTime() float32 { @@ -3470,7 +3564,7 @@ type CUserMessageLagCompensationError struct { func (x *CUserMessageLagCompensationError) Reset() { *x = CUserMessageLagCompensationError{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[44] + mi := &file_usermessages_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3483,7 +3577,7 @@ func (x *CUserMessageLagCompensationError) String() string { func (*CUserMessageLagCompensationError) ProtoMessage() {} func (x *CUserMessageLagCompensationError) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[44] + mi := &file_usermessages_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3496,7 +3590,7 @@ func (x *CUserMessageLagCompensationError) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageLagCompensationError.ProtoReflect.Descriptor instead. func (*CUserMessageLagCompensationError) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{44} + return file_usermessages_proto_rawDescGZIP(), []int{45} } func (x *CUserMessageLagCompensationError) GetDistance() float32 { @@ -3518,7 +3612,7 @@ type CUserMessageRequestDllStatus struct { func (x *CUserMessageRequestDllStatus) Reset() { *x = CUserMessageRequestDllStatus{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[45] + mi := &file_usermessages_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3531,7 +3625,7 @@ func (x *CUserMessageRequestDllStatus) String() string { func (*CUserMessageRequestDllStatus) ProtoMessage() {} func (x *CUserMessageRequestDllStatus) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[45] + mi := &file_usermessages_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3544,7 +3638,7 @@ func (x *CUserMessageRequestDllStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageRequestDllStatus.ProtoReflect.Descriptor instead. func (*CUserMessageRequestDllStatus) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{45} + return file_usermessages_proto_rawDescGZIP(), []int{46} } func (x *CUserMessageRequestDllStatus) GetDllAction() string { @@ -3576,7 +3670,7 @@ type CUserMessageRequestUtilAction struct { func (x *CUserMessageRequestUtilAction) Reset() { *x = CUserMessageRequestUtilAction{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[46] + mi := &file_usermessages_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3589,7 +3683,7 @@ func (x *CUserMessageRequestUtilAction) String() string { func (*CUserMessageRequestUtilAction) ProtoMessage() {} func (x *CUserMessageRequestUtilAction) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[46] + mi := &file_usermessages_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3602,7 +3696,7 @@ func (x *CUserMessageRequestUtilAction) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageRequestUtilAction.ProtoReflect.Descriptor instead. func (*CUserMessageRequestUtilAction) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{46} + return file_usermessages_proto_rawDescGZIP(), []int{47} } func (x *CUserMessageRequestUtilAction) GetUtil1() int32 { @@ -3662,7 +3756,7 @@ type CUserMessage_UtilMsg_Response struct { func (x *CUserMessage_UtilMsg_Response) Reset() { *x = CUserMessage_UtilMsg_Response{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[47] + mi := &file_usermessages_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3675,7 +3769,7 @@ func (x *CUserMessage_UtilMsg_Response) String() string { func (*CUserMessage_UtilMsg_Response) ProtoMessage() {} func (x *CUserMessage_UtilMsg_Response) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[47] + mi := &file_usermessages_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3688,7 +3782,7 @@ func (x *CUserMessage_UtilMsg_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessage_UtilMsg_Response.ProtoReflect.Descriptor instead. func (*CUserMessage_UtilMsg_Response) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{47} + return file_usermessages_proto_rawDescGZIP(), []int{48} } func (x *CUserMessage_UtilMsg_Response) GetCrc() uint32 { @@ -3787,12 +3881,13 @@ type CUserMessage_DllStatus struct { Osversion *int32 `protobuf:"varint,5,opt,name=osversion" json:"osversion,omitempty"` ClientTime *uint64 `protobuf:"varint,6,opt,name=client_time,json=clientTime" json:"client_time,omitempty"` Diagnostics []*CUserMessage_DllStatus_CVDiagnostic `protobuf:"bytes,7,rep,name=diagnostics" json:"diagnostics,omitempty"` + Modules []*CUserMessage_DllStatus_CModule `protobuf:"bytes,8,rep,name=modules" json:"modules,omitempty"` } func (x *CUserMessage_DllStatus) Reset() { *x = CUserMessage_DllStatus{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[48] + mi := &file_usermessages_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3805,7 +3900,7 @@ func (x *CUserMessage_DllStatus) String() string { func (*CUserMessage_DllStatus) ProtoMessage() {} func (x *CUserMessage_DllStatus) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[48] + mi := &file_usermessages_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3818,7 +3913,7 @@ func (x *CUserMessage_DllStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessage_DllStatus.ProtoReflect.Descriptor instead. func (*CUserMessage_DllStatus) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{48} + return file_usermessages_proto_rawDescGZIP(), []int{49} } func (x *CUserMessage_DllStatus) GetFileReport() string { @@ -3870,6 +3965,13 @@ func (x *CUserMessage_DllStatus) GetDiagnostics() []*CUserMessage_DllStatus_CVDi return nil } +func (x *CUserMessage_DllStatus) GetModules() []*CUserMessage_DllStatus_CModule { + if x != nil { + return x.Modules + } + return nil +} + type CUserMessageRequestInventory struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3883,7 +3985,7 @@ type CUserMessageRequestInventory struct { func (x *CUserMessageRequestInventory) Reset() { *x = CUserMessageRequestInventory{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[49] + mi := &file_usermessages_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3896,7 +3998,7 @@ func (x *CUserMessageRequestInventory) String() string { func (*CUserMessageRequestInventory) ProtoMessage() {} func (x *CUserMessageRequestInventory) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[49] + mi := &file_usermessages_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3909,7 +4011,7 @@ func (x *CUserMessageRequestInventory) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessageRequestInventory.ProtoReflect.Descriptor instead. func (*CUserMessageRequestInventory) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{49} + return file_usermessages_proto_rawDescGZIP(), []int{50} } func (x *CUserMessageRequestInventory) GetInventory() int32 { @@ -3946,15 +4048,17 @@ type CUserMessage_Inventory_Response struct { Platform *int32 `protobuf:"varint,8,opt,name=platform" json:"platform,omitempty"` Inventories []*CUserMessage_Inventory_Response_InventoryDetail `protobuf:"bytes,9,rep,name=inventories" json:"inventories,omitempty"` Inventories2 []*CUserMessage_Inventory_Response_InventoryDetail `protobuf:"bytes,10,rep,name=inventories2" json:"inventories2,omitempty"` + Inventories3 []*CUserMessage_Inventory_Response_InventoryDetail `protobuf:"bytes,14,rep,name=inventories3" json:"inventories3,omitempty"` InvType *int32 `protobuf:"varint,11,opt,name=inv_type,json=invType" json:"inv_type,omitempty"` BuildVersion *int32 `protobuf:"varint,12,opt,name=build_version,json=buildVersion" json:"build_version,omitempty"` Instance *int32 `protobuf:"varint,13,opt,name=instance" json:"instance,omitempty"` + StartTime *int64 `protobuf:"varint,15,opt,name=start_time,json=startTime" json:"start_time,omitempty"` } func (x *CUserMessage_Inventory_Response) Reset() { *x = CUserMessage_Inventory_Response{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[50] + mi := &file_usermessages_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3967,7 +4071,7 @@ func (x *CUserMessage_Inventory_Response) String() string { func (*CUserMessage_Inventory_Response) ProtoMessage() {} func (x *CUserMessage_Inventory_Response) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[50] + mi := &file_usermessages_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3980,7 +4084,7 @@ func (x *CUserMessage_Inventory_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use CUserMessage_Inventory_Response.ProtoReflect.Descriptor instead. func (*CUserMessage_Inventory_Response) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{50} + return file_usermessages_proto_rawDescGZIP(), []int{51} } func (x *CUserMessage_Inventory_Response) GetCrc() uint32 { @@ -4039,6 +4143,13 @@ func (x *CUserMessage_Inventory_Response) GetInventories2() []*CUserMessage_Inve return nil } +func (x *CUserMessage_Inventory_Response) GetInventories3() []*CUserMessage_Inventory_Response_InventoryDetail { + if x != nil { + return x.Inventories3 + } + return nil +} + func (x *CUserMessage_Inventory_Response) GetInvType() int32 { if x != nil && x.InvType != nil { return *x.InvType @@ -4060,6 +4171,226 @@ func (x *CUserMessage_Inventory_Response) GetInstance() int32 { return 0 } +func (x *CUserMessage_Inventory_Response) GetStartTime() int64 { + if x != nil && x.StartTime != nil { + return *x.StartTime + } + return 0 +} + +type CUserMessageRequestDiagnostic struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Diagnostics []*CUserMessageRequestDiagnostic_Diagnostic `protobuf:"bytes,1,rep,name=diagnostics" json:"diagnostics,omitempty"` +} + +func (x *CUserMessageRequestDiagnostic) Reset() { + *x = CUserMessageRequestDiagnostic{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMessageRequestDiagnostic) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMessageRequestDiagnostic) ProtoMessage() {} + +func (x *CUserMessageRequestDiagnostic) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[52] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMessageRequestDiagnostic.ProtoReflect.Descriptor instead. +func (*CUserMessageRequestDiagnostic) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{52} +} + +func (x *CUserMessageRequestDiagnostic) GetDiagnostics() []*CUserMessageRequestDiagnostic_Diagnostic { + if x != nil { + return x.Diagnostics + } + return nil +} + +type CUserMessage_Diagnostic_Response struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Diagnostics []*CUserMessage_Diagnostic_Response_Diagnostic `protobuf:"bytes,1,rep,name=diagnostics" json:"diagnostics,omitempty"` + BuildVersion *int32 `protobuf:"varint,2,opt,name=build_version,json=buildVersion" json:"build_version,omitempty"` + Instance *int32 `protobuf:"varint,3,opt,name=instance" json:"instance,omitempty"` + StartTime *int64 `protobuf:"varint,4,opt,name=start_time,json=startTime" json:"start_time,omitempty"` + Osversion *int32 `protobuf:"varint,5,opt,name=osversion" json:"osversion,omitempty"` + Platform *int32 `protobuf:"varint,6,opt,name=platform" json:"platform,omitempty"` +} + +func (x *CUserMessage_Diagnostic_Response) Reset() { + *x = CUserMessage_Diagnostic_Response{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[53] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMessage_Diagnostic_Response) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMessage_Diagnostic_Response) ProtoMessage() {} + +func (x *CUserMessage_Diagnostic_Response) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[53] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMessage_Diagnostic_Response.ProtoReflect.Descriptor instead. +func (*CUserMessage_Diagnostic_Response) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{53} +} + +func (x *CUserMessage_Diagnostic_Response) GetDiagnostics() []*CUserMessage_Diagnostic_Response_Diagnostic { + if x != nil { + return x.Diagnostics + } + return nil +} + +func (x *CUserMessage_Diagnostic_Response) GetBuildVersion() int32 { + if x != nil && x.BuildVersion != nil { + return *x.BuildVersion + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response) GetInstance() int32 { + if x != nil && x.Instance != nil { + return *x.Instance + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response) GetStartTime() int64 { + if x != nil && x.StartTime != nil { + return *x.StartTime + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response) GetOsversion() int32 { + if x != nil && x.Osversion != nil { + return *x.Osversion + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response) GetPlatform() int32 { + if x != nil && x.Platform != nil { + return *x.Platform + } + return 0 +} + +type CUserMessage_ExtraUserData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Item *int32 `protobuf:"varint,1,opt,name=item" json:"item,omitempty"` + Value1 *int64 `protobuf:"varint,2,opt,name=value1" json:"value1,omitempty"` + Value2 *int64 `protobuf:"varint,3,opt,name=value2" json:"value2,omitempty"` + Detail1 [][]byte `protobuf:"bytes,4,rep,name=detail1" json:"detail1,omitempty"` + Detail2 [][]byte `protobuf:"bytes,5,rep,name=detail2" json:"detail2,omitempty"` +} + +func (x *CUserMessage_ExtraUserData) Reset() { + *x = CUserMessage_ExtraUserData{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[54] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMessage_ExtraUserData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMessage_ExtraUserData) ProtoMessage() {} + +func (x *CUserMessage_ExtraUserData) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[54] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMessage_ExtraUserData.ProtoReflect.Descriptor instead. +func (*CUserMessage_ExtraUserData) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{54} +} + +func (x *CUserMessage_ExtraUserData) GetItem() int32 { + if x != nil && x.Item != nil { + return *x.Item + } + return 0 +} + +func (x *CUserMessage_ExtraUserData) GetValue1() int64 { + if x != nil && x.Value1 != nil { + return *x.Value1 + } + return 0 +} + +func (x *CUserMessage_ExtraUserData) GetValue2() int64 { + if x != nil && x.Value2 != nil { + return *x.Value2 + } + return 0 +} + +func (x *CUserMessage_ExtraUserData) GetDetail1() [][]byte { + if x != nil { + return x.Detail1 + } + return nil +} + +func (x *CUserMessage_ExtraUserData) GetDetail2() [][]byte { + if x != nil { + return x.Detail2 + } + return nil +} + type CUserMessageCameraTransition_Transition_DataDriven struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4073,7 +4404,7 @@ type CUserMessageCameraTransition_Transition_DataDriven struct { func (x *CUserMessageCameraTransition_Transition_DataDriven) Reset() { *x = CUserMessageCameraTransition_Transition_DataDriven{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[51] + mi := &file_usermessages_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4086,7 +4417,7 @@ func (x *CUserMessageCameraTransition_Transition_DataDriven) String() string { func (*CUserMessageCameraTransition_Transition_DataDriven) ProtoMessage() {} func (x *CUserMessageCameraTransition_Transition_DataDriven) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[51] + mi := &file_usermessages_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4099,7 +4430,7 @@ func (x *CUserMessageCameraTransition_Transition_DataDriven) ProtoReflect() prot // Deprecated: Use CUserMessageCameraTransition_Transition_DataDriven.ProtoReflect.Descriptor instead. func (*CUserMessageCameraTransition_Transition_DataDriven) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{34, 0} + return file_usermessages_proto_rawDescGZIP(), []int{35, 0} } func (x *CUserMessageCameraTransition_Transition_DataDriven) GetFilename() string { @@ -4132,7 +4463,7 @@ type CUserMsg_ParticleManager_ReleaseParticleIndex struct { func (x *CUserMsg_ParticleManager_ReleaseParticleIndex) Reset() { *x = CUserMsg_ParticleManager_ReleaseParticleIndex{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[52] + mi := &file_usermessages_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4145,7 +4476,7 @@ func (x *CUserMsg_ParticleManager_ReleaseParticleIndex) String() string { func (*CUserMsg_ParticleManager_ReleaseParticleIndex) ProtoMessage() {} func (x *CUserMsg_ParticleManager_ReleaseParticleIndex) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[52] + mi := &file_usermessages_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4158,7 +4489,7 @@ func (x *CUserMsg_ParticleManager_ReleaseParticleIndex) ProtoReflect() protorefl // Deprecated: Use CUserMsg_ParticleManager_ReleaseParticleIndex.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_ReleaseParticleIndex) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 0} + return file_usermessages_proto_rawDescGZIP(), []int{36, 0} } type CUserMsg_ParticleManager_CreateParticle struct { @@ -4166,19 +4497,21 @@ type CUserMsg_ParticleManager_CreateParticle struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ParticleNameIndex *uint64 `protobuf:"fixed64,1,opt,name=particle_name_index,json=particleNameIndex" json:"particle_name_index,omitempty"` - AttachType *int32 `protobuf:"varint,2,opt,name=attach_type,json=attachType" json:"attach_type,omitempty"` - EntityHandle *uint32 `protobuf:"varint,3,opt,name=entity_handle,json=entityHandle" json:"entity_handle,omitempty"` - EntityHandleForModifiers *uint32 `protobuf:"varint,4,opt,name=entity_handle_for_modifiers,json=entityHandleForModifiers" json:"entity_handle_for_modifiers,omitempty"` - ApplyVoiceBanRules *bool `protobuf:"varint,5,opt,name=apply_voice_ban_rules,json=applyVoiceBanRules" json:"apply_voice_ban_rules,omitempty"` - TeamBehavior *int32 `protobuf:"varint,6,opt,name=team_behavior,json=teamBehavior" json:"team_behavior,omitempty"` - ControlPointConfiguration *string `protobuf:"bytes,7,opt,name=control_point_configuration,json=controlPointConfiguration" json:"control_point_configuration,omitempty"` + ParticleNameIndex *uint64 `protobuf:"fixed64,1,opt,name=particle_name_index,json=particleNameIndex" json:"particle_name_index,omitempty"` + AttachType *int32 `protobuf:"varint,2,opt,name=attach_type,json=attachType" json:"attach_type,omitempty"` + EntityHandle *uint32 `protobuf:"varint,3,opt,name=entity_handle,json=entityHandle" json:"entity_handle,omitempty"` + EntityHandleForModifiers *uint32 `protobuf:"varint,4,opt,name=entity_handle_for_modifiers,json=entityHandleForModifiers" json:"entity_handle_for_modifiers,omitempty"` + ApplyVoiceBanRules *bool `protobuf:"varint,5,opt,name=apply_voice_ban_rules,json=applyVoiceBanRules" json:"apply_voice_ban_rules,omitempty"` + TeamBehavior *int32 `protobuf:"varint,6,opt,name=team_behavior,json=teamBehavior" json:"team_behavior,omitempty"` + ControlPointConfiguration *string `protobuf:"bytes,7,opt,name=control_point_configuration,json=controlPointConfiguration" json:"control_point_configuration,omitempty"` + Cluster *bool `protobuf:"varint,8,opt,name=cluster" json:"cluster,omitempty"` + EndcapTime *float32 `protobuf:"fixed32,9,opt,name=endcap_time,json=endcapTime" json:"endcap_time,omitempty"` } func (x *CUserMsg_ParticleManager_CreateParticle) Reset() { *x = CUserMsg_ParticleManager_CreateParticle{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[53] + mi := &file_usermessages_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4191,7 +4524,7 @@ func (x *CUserMsg_ParticleManager_CreateParticle) String() string { func (*CUserMsg_ParticleManager_CreateParticle) ProtoMessage() {} func (x *CUserMsg_ParticleManager_CreateParticle) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[53] + mi := &file_usermessages_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4204,7 +4537,7 @@ func (x *CUserMsg_ParticleManager_CreateParticle) ProtoReflect() protoreflect.Me // Deprecated: Use CUserMsg_ParticleManager_CreateParticle.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_CreateParticle) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 1} + return file_usermessages_proto_rawDescGZIP(), []int{36, 1} } func (x *CUserMsg_ParticleManager_CreateParticle) GetParticleNameIndex() uint64 { @@ -4256,6 +4589,20 @@ func (x *CUserMsg_ParticleManager_CreateParticle) GetControlPointConfiguration() return "" } +func (x *CUserMsg_ParticleManager_CreateParticle) GetCluster() bool { + if x != nil && x.Cluster != nil { + return *x.Cluster + } + return false +} + +func (x *CUserMsg_ParticleManager_CreateParticle) GetEndcapTime() float32 { + if x != nil && x.EndcapTime != nil { + return *x.EndcapTime + } + return 0 +} + type CUserMsg_ParticleManager_DestroyParticle struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4267,7 +4614,7 @@ type CUserMsg_ParticleManager_DestroyParticle struct { func (x *CUserMsg_ParticleManager_DestroyParticle) Reset() { *x = CUserMsg_ParticleManager_DestroyParticle{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[54] + mi := &file_usermessages_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4280,7 +4627,7 @@ func (x *CUserMsg_ParticleManager_DestroyParticle) String() string { func (*CUserMsg_ParticleManager_DestroyParticle) ProtoMessage() {} func (x *CUserMsg_ParticleManager_DestroyParticle) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[54] + mi := &file_usermessages_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4293,7 +4640,7 @@ func (x *CUserMsg_ParticleManager_DestroyParticle) ProtoReflect() protoreflect.M // Deprecated: Use CUserMsg_ParticleManager_DestroyParticle.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_DestroyParticle) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 2} + return file_usermessages_proto_rawDescGZIP(), []int{36, 2} } func (x *CUserMsg_ParticleManager_DestroyParticle) GetDestroyImmediately() bool { @@ -4315,7 +4662,7 @@ type CUserMsg_ParticleManager_DestroyParticleInvolving struct { func (x *CUserMsg_ParticleManager_DestroyParticleInvolving) Reset() { *x = CUserMsg_ParticleManager_DestroyParticleInvolving{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[55] + mi := &file_usermessages_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4328,7 +4675,7 @@ func (x *CUserMsg_ParticleManager_DestroyParticleInvolving) String() string { func (*CUserMsg_ParticleManager_DestroyParticleInvolving) ProtoMessage() {} func (x *CUserMsg_ParticleManager_DestroyParticleInvolving) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[55] + mi := &file_usermessages_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4341,7 +4688,7 @@ func (x *CUserMsg_ParticleManager_DestroyParticleInvolving) ProtoReflect() proto // Deprecated: Use CUserMsg_ParticleManager_DestroyParticleInvolving.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_DestroyParticleInvolving) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 3} + return file_usermessages_proto_rawDescGZIP(), []int{36, 3} } func (x *CUserMsg_ParticleManager_DestroyParticleInvolving) GetDestroyImmediately() bool { @@ -4372,7 +4719,7 @@ type CUserMsg_ParticleManager_DestroyParticleNamed struct { func (x *CUserMsg_ParticleManager_DestroyParticleNamed) Reset() { *x = CUserMsg_ParticleManager_DestroyParticleNamed{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[56] + mi := &file_usermessages_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4385,7 +4732,7 @@ func (x *CUserMsg_ParticleManager_DestroyParticleNamed) String() string { func (*CUserMsg_ParticleManager_DestroyParticleNamed) ProtoMessage() {} func (x *CUserMsg_ParticleManager_DestroyParticleNamed) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[56] + mi := &file_usermessages_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4398,7 +4745,7 @@ func (x *CUserMsg_ParticleManager_DestroyParticleNamed) ProtoReflect() protorefl // Deprecated: Use CUserMsg_ParticleManager_DestroyParticleNamed.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_DestroyParticleNamed) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 4} + return file_usermessages_proto_rawDescGZIP(), []int{36, 4} } func (x *CUserMsg_ParticleManager_DestroyParticleNamed) GetParticleNameIndex() uint64 { @@ -4441,7 +4788,7 @@ type CUserMsg_ParticleManager_UpdateParticle_OBSOLETE struct { func (x *CUserMsg_ParticleManager_UpdateParticle_OBSOLETE) Reset() { *x = CUserMsg_ParticleManager_UpdateParticle_OBSOLETE{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[57] + mi := &file_usermessages_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4454,7 +4801,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticle_OBSOLETE) String() string { func (*CUserMsg_ParticleManager_UpdateParticle_OBSOLETE) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticle_OBSOLETE) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[57] + mi := &file_usermessages_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4467,7 +4814,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticle_OBSOLETE) ProtoReflect() protor // Deprecated: Use CUserMsg_ParticleManager_UpdateParticle_OBSOLETE.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticle_OBSOLETE) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 5} + return file_usermessages_proto_rawDescGZIP(), []int{36, 5} } func (x *CUserMsg_ParticleManager_UpdateParticle_OBSOLETE) GetControlPoint() int32 { @@ -4496,7 +4843,7 @@ type CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE struct { func (x *CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE) Reset() { *x = CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[58] + mi := &file_usermessages_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4509,7 +4856,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE) String() string { func (*CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[58] + mi := &file_usermessages_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4522,7 +4869,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE) ProtoReflect() pro // Deprecated: Use CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 6} + return file_usermessages_proto_rawDescGZIP(), []int{36, 6} } func (x *CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE) GetControlPoint() int32 { @@ -4554,7 +4901,7 @@ type CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE struct { func (x *CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE) Reset() { *x = CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[59] + mi := &file_usermessages_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4567,7 +4914,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE) String() string func (*CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[59] + mi := &file_usermessages_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4580,7 +4927,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE) ProtoReflect() // Deprecated: Use CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 7} + return file_usermessages_proto_rawDescGZIP(), []int{36, 7} } func (x *CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE) GetControlPoint() int32 { @@ -4632,7 +4979,7 @@ type CUserMsg_ParticleManager_UpdateParticleTransform struct { func (x *CUserMsg_ParticleManager_UpdateParticleTransform) Reset() { *x = CUserMsg_ParticleManager_UpdateParticleTransform{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[60] + mi := &file_usermessages_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4645,7 +4992,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleTransform) String() string { func (*CUserMsg_ParticleManager_UpdateParticleTransform) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticleTransform) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[60] + mi := &file_usermessages_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4658,7 +5005,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleTransform) ProtoReflect() protor // Deprecated: Use CUserMsg_ParticleManager_UpdateParticleTransform.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticleTransform) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 8} + return file_usermessages_proto_rawDescGZIP(), []int{36, 8} } func (x *CUserMsg_ParticleManager_UpdateParticleTransform) GetControlPoint() int32 { @@ -4701,7 +5048,7 @@ type CUserMsg_ParticleManager_UpdateParticleFallback struct { func (x *CUserMsg_ParticleManager_UpdateParticleFallback) Reset() { *x = CUserMsg_ParticleManager_UpdateParticleFallback{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[61] + mi := &file_usermessages_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4714,7 +5061,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleFallback) String() string { func (*CUserMsg_ParticleManager_UpdateParticleFallback) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticleFallback) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[61] + mi := &file_usermessages_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4727,7 +5074,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleFallback) ProtoReflect() protore // Deprecated: Use CUserMsg_ParticleManager_UpdateParticleFallback.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticleFallback) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 9} + return file_usermessages_proto_rawDescGZIP(), []int{36, 9} } func (x *CUserMsg_ParticleManager_UpdateParticleFallback) GetControlPoint() int32 { @@ -4757,7 +5104,7 @@ type CUserMsg_ParticleManager_UpdateParticleOffset struct { func (x *CUserMsg_ParticleManager_UpdateParticleOffset) Reset() { *x = CUserMsg_ParticleManager_UpdateParticleOffset{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[62] + mi := &file_usermessages_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4770,7 +5117,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleOffset) String() string { func (*CUserMsg_ParticleManager_UpdateParticleOffset) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticleOffset) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[62] + mi := &file_usermessages_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4783,7 +5130,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleOffset) ProtoReflect() protorefl // Deprecated: Use CUserMsg_ParticleManager_UpdateParticleOffset.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticleOffset) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 10} + return file_usermessages_proto_rawDescGZIP(), []int{36, 10} } func (x *CUserMsg_ParticleManager_UpdateParticleOffset) GetControlPoint() int32 { @@ -4825,7 +5172,7 @@ type CUserMsg_ParticleManager_UpdateParticleEnt struct { func (x *CUserMsg_ParticleManager_UpdateParticleEnt) Reset() { *x = CUserMsg_ParticleManager_UpdateParticleEnt{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[63] + mi := &file_usermessages_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4838,7 +5185,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleEnt) String() string { func (*CUserMsg_ParticleManager_UpdateParticleEnt) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticleEnt) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[63] + mi := &file_usermessages_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4851,7 +5198,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleEnt) ProtoReflect() protoreflect // Deprecated: Use CUserMsg_ParticleManager_UpdateParticleEnt.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticleEnt) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 11} + return file_usermessages_proto_rawDescGZIP(), []int{36, 11} } func (x *CUserMsg_ParticleManager_UpdateParticleEnt) GetControlPoint() int32 { @@ -4922,7 +5269,7 @@ type CUserMsg_ParticleManager_UpdateParticleSetFrozen struct { func (x *CUserMsg_ParticleManager_UpdateParticleSetFrozen) Reset() { *x = CUserMsg_ParticleManager_UpdateParticleSetFrozen{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[64] + mi := &file_usermessages_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4935,7 +5282,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleSetFrozen) String() string { func (*CUserMsg_ParticleManager_UpdateParticleSetFrozen) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticleSetFrozen) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[64] + mi := &file_usermessages_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4948,7 +5295,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleSetFrozen) ProtoReflect() protor // Deprecated: Use CUserMsg_ParticleManager_UpdateParticleSetFrozen.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticleSetFrozen) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 12} + return file_usermessages_proto_rawDescGZIP(), []int{36, 12} } func (x *CUserMsg_ParticleManager_UpdateParticleSetFrozen) GetSetFrozen() bool { @@ -4976,7 +5323,7 @@ type CUserMsg_ParticleManager_UpdateParticleShouldDraw struct { func (x *CUserMsg_ParticleManager_UpdateParticleShouldDraw) Reset() { *x = CUserMsg_ParticleManager_UpdateParticleShouldDraw{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[65] + mi := &file_usermessages_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4989,7 +5336,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleShouldDraw) String() string { func (*CUserMsg_ParticleManager_UpdateParticleShouldDraw) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateParticleShouldDraw) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[65] + mi := &file_usermessages_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5002,7 +5349,7 @@ func (x *CUserMsg_ParticleManager_UpdateParticleShouldDraw) ProtoReflect() proto // Deprecated: Use CUserMsg_ParticleManager_UpdateParticleShouldDraw.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateParticleShouldDraw) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 13} + return file_usermessages_proto_rawDescGZIP(), []int{36, 13} } func (x *CUserMsg_ParticleManager_UpdateParticleShouldDraw) GetShouldDraw() bool { @@ -5025,7 +5372,7 @@ type CUserMsg_ParticleManager_ChangeControlPointAttachment struct { func (x *CUserMsg_ParticleManager_ChangeControlPointAttachment) Reset() { *x = CUserMsg_ParticleManager_ChangeControlPointAttachment{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[66] + mi := &file_usermessages_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5038,7 +5385,7 @@ func (x *CUserMsg_ParticleManager_ChangeControlPointAttachment) String() string func (*CUserMsg_ParticleManager_ChangeControlPointAttachment) ProtoMessage() {} func (x *CUserMsg_ParticleManager_ChangeControlPointAttachment) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[66] + mi := &file_usermessages_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5051,7 +5398,7 @@ func (x *CUserMsg_ParticleManager_ChangeControlPointAttachment) ProtoReflect() p // Deprecated: Use CUserMsg_ParticleManager_ChangeControlPointAttachment.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_ChangeControlPointAttachment) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 14} + return file_usermessages_proto_rawDescGZIP(), []int{36, 14} } func (x *CUserMsg_ParticleManager_ChangeControlPointAttachment) GetAttachmentOld() int32 { @@ -5087,7 +5434,7 @@ type CUserMsg_ParticleManager_UpdateEntityPosition struct { func (x *CUserMsg_ParticleManager_UpdateEntityPosition) Reset() { *x = CUserMsg_ParticleManager_UpdateEntityPosition{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[67] + mi := &file_usermessages_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5100,7 +5447,7 @@ func (x *CUserMsg_ParticleManager_UpdateEntityPosition) String() string { func (*CUserMsg_ParticleManager_UpdateEntityPosition) ProtoMessage() {} func (x *CUserMsg_ParticleManager_UpdateEntityPosition) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[67] + mi := &file_usermessages_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5113,7 +5460,7 @@ func (x *CUserMsg_ParticleManager_UpdateEntityPosition) ProtoReflect() protorefl // Deprecated: Use CUserMsg_ParticleManager_UpdateEntityPosition.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_UpdateEntityPosition) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 15} + return file_usermessages_proto_rawDescGZIP(), []int{36, 15} } func (x *CUserMsg_ParticleManager_UpdateEntityPosition) GetEntityHandle() uint32 { @@ -5143,7 +5490,7 @@ type CUserMsg_ParticleManager_SetParticleFoWProperties struct { func (x *CUserMsg_ParticleManager_SetParticleFoWProperties) Reset() { *x = CUserMsg_ParticleManager_SetParticleFoWProperties{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[68] + mi := &file_usermessages_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5156,7 +5503,7 @@ func (x *CUserMsg_ParticleManager_SetParticleFoWProperties) String() string { func (*CUserMsg_ParticleManager_SetParticleFoWProperties) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetParticleFoWProperties) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[68] + mi := &file_usermessages_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5169,7 +5516,7 @@ func (x *CUserMsg_ParticleManager_SetParticleFoWProperties) ProtoReflect() proto // Deprecated: Use CUserMsg_ParticleManager_SetParticleFoWProperties.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetParticleFoWProperties) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 16} + return file_usermessages_proto_rawDescGZIP(), []int{36, 16} } func (x *CUserMsg_ParticleManager_SetParticleFoWProperties) GetFowControlPoint() int32 { @@ -5204,7 +5551,7 @@ type CUserMsg_ParticleManager_SetParticleShouldCheckFoW struct { func (x *CUserMsg_ParticleManager_SetParticleShouldCheckFoW) Reset() { *x = CUserMsg_ParticleManager_SetParticleShouldCheckFoW{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[69] + mi := &file_usermessages_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5217,7 +5564,7 @@ func (x *CUserMsg_ParticleManager_SetParticleShouldCheckFoW) String() string { func (*CUserMsg_ParticleManager_SetParticleShouldCheckFoW) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetParticleShouldCheckFoW) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[69] + mi := &file_usermessages_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5230,7 +5577,7 @@ func (x *CUserMsg_ParticleManager_SetParticleShouldCheckFoW) ProtoReflect() prot // Deprecated: Use CUserMsg_ParticleManager_SetParticleShouldCheckFoW.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetParticleShouldCheckFoW) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 17} + return file_usermessages_proto_rawDescGZIP(), []int{36, 17} } func (x *CUserMsg_ParticleManager_SetParticleShouldCheckFoW) GetCheckFow() bool { @@ -5252,7 +5599,7 @@ type CUserMsg_ParticleManager_SetControlPointModel struct { func (x *CUserMsg_ParticleManager_SetControlPointModel) Reset() { *x = CUserMsg_ParticleManager_SetControlPointModel{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[70] + mi := &file_usermessages_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5265,7 +5612,7 @@ func (x *CUserMsg_ParticleManager_SetControlPointModel) String() string { func (*CUserMsg_ParticleManager_SetControlPointModel) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetControlPointModel) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[70] + mi := &file_usermessages_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5278,7 +5625,7 @@ func (x *CUserMsg_ParticleManager_SetControlPointModel) ProtoReflect() protorefl // Deprecated: Use CUserMsg_ParticleManager_SetControlPointModel.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetControlPointModel) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 18} + return file_usermessages_proto_rawDescGZIP(), []int{36, 18} } func (x *CUserMsg_ParticleManager_SetControlPointModel) GetControlPoint() int32 { @@ -5307,7 +5654,7 @@ type CUserMsg_ParticleManager_SetControlPointSnapshot struct { func (x *CUserMsg_ParticleManager_SetControlPointSnapshot) Reset() { *x = CUserMsg_ParticleManager_SetControlPointSnapshot{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[71] + mi := &file_usermessages_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5320,7 +5667,7 @@ func (x *CUserMsg_ParticleManager_SetControlPointSnapshot) String() string { func (*CUserMsg_ParticleManager_SetControlPointSnapshot) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetControlPointSnapshot) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[71] + mi := &file_usermessages_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5333,7 +5680,7 @@ func (x *CUserMsg_ParticleManager_SetControlPointSnapshot) ProtoReflect() protor // Deprecated: Use CUserMsg_ParticleManager_SetControlPointSnapshot.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetControlPointSnapshot) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 19} + return file_usermessages_proto_rawDescGZIP(), []int{36, 19} } func (x *CUserMsg_ParticleManager_SetControlPointSnapshot) GetControlPoint() int32 { @@ -5361,7 +5708,7 @@ type CUserMsg_ParticleManager_SetParticleText struct { func (x *CUserMsg_ParticleManager_SetParticleText) Reset() { *x = CUserMsg_ParticleManager_SetParticleText{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[72] + mi := &file_usermessages_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5374,7 +5721,7 @@ func (x *CUserMsg_ParticleManager_SetParticleText) String() string { func (*CUserMsg_ParticleManager_SetParticleText) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetParticleText) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[72] + mi := &file_usermessages_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5387,7 +5734,7 @@ func (x *CUserMsg_ParticleManager_SetParticleText) ProtoReflect() protoreflect.M // Deprecated: Use CUserMsg_ParticleManager_SetParticleText.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetParticleText) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 20} + return file_usermessages_proto_rawDescGZIP(), []int{36, 20} } func (x *CUserMsg_ParticleManager_SetParticleText) GetText() string { @@ -5409,7 +5756,7 @@ type CUserMsg_ParticleManager_SetTextureAttribute struct { func (x *CUserMsg_ParticleManager_SetTextureAttribute) Reset() { *x = CUserMsg_ParticleManager_SetTextureAttribute{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[73] + mi := &file_usermessages_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5422,7 +5769,7 @@ func (x *CUserMsg_ParticleManager_SetTextureAttribute) String() string { func (*CUserMsg_ParticleManager_SetTextureAttribute) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetTextureAttribute) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[73] + mi := &file_usermessages_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5435,7 +5782,7 @@ func (x *CUserMsg_ParticleManager_SetTextureAttribute) ProtoReflect() protorefle // Deprecated: Use CUserMsg_ParticleManager_SetTextureAttribute.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetTextureAttribute) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 21} + return file_usermessages_proto_rawDescGZIP(), []int{36, 21} } func (x *CUserMsg_ParticleManager_SetTextureAttribute) GetAttributeName() string { @@ -5463,7 +5810,7 @@ type CUserMsg_ParticleManager_SetSceneObjectGenericFlag struct { func (x *CUserMsg_ParticleManager_SetSceneObjectGenericFlag) Reset() { *x = CUserMsg_ParticleManager_SetSceneObjectGenericFlag{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[74] + mi := &file_usermessages_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5476,7 +5823,7 @@ func (x *CUserMsg_ParticleManager_SetSceneObjectGenericFlag) String() string { func (*CUserMsg_ParticleManager_SetSceneObjectGenericFlag) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetSceneObjectGenericFlag) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[74] + mi := &file_usermessages_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5489,7 +5836,7 @@ func (x *CUserMsg_ParticleManager_SetSceneObjectGenericFlag) ProtoReflect() prot // Deprecated: Use CUserMsg_ParticleManager_SetSceneObjectGenericFlag.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetSceneObjectGenericFlag) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 22} + return file_usermessages_proto_rawDescGZIP(), []int{36, 22} } func (x *CUserMsg_ParticleManager_SetSceneObjectGenericFlag) GetFlagValue() bool { @@ -5511,7 +5858,7 @@ type CUserMsg_ParticleManager_SetSceneObjectTintAndDesat struct { func (x *CUserMsg_ParticleManager_SetSceneObjectTintAndDesat) Reset() { *x = CUserMsg_ParticleManager_SetSceneObjectTintAndDesat{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[75] + mi := &file_usermessages_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5524,7 +5871,7 @@ func (x *CUserMsg_ParticleManager_SetSceneObjectTintAndDesat) String() string { func (*CUserMsg_ParticleManager_SetSceneObjectTintAndDesat) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetSceneObjectTintAndDesat) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[75] + mi := &file_usermessages_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5537,7 +5884,7 @@ func (x *CUserMsg_ParticleManager_SetSceneObjectTintAndDesat) ProtoReflect() pro // Deprecated: Use CUserMsg_ParticleManager_SetSceneObjectTintAndDesat.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetSceneObjectTintAndDesat) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 23} + return file_usermessages_proto_rawDescGZIP(), []int{36, 23} } func (x *CUserMsg_ParticleManager_SetSceneObjectTintAndDesat) GetTint() uint32 { @@ -5565,7 +5912,7 @@ type CUserMsg_ParticleManager_ParticleSkipToTime struct { func (x *CUserMsg_ParticleManager_ParticleSkipToTime) Reset() { *x = CUserMsg_ParticleManager_ParticleSkipToTime{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[76] + mi := &file_usermessages_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5578,7 +5925,7 @@ func (x *CUserMsg_ParticleManager_ParticleSkipToTime) String() string { func (*CUserMsg_ParticleManager_ParticleSkipToTime) ProtoMessage() {} func (x *CUserMsg_ParticleManager_ParticleSkipToTime) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[76] + mi := &file_usermessages_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5591,7 +5938,7 @@ func (x *CUserMsg_ParticleManager_ParticleSkipToTime) ProtoReflect() protoreflec // Deprecated: Use CUserMsg_ParticleManager_ParticleSkipToTime.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_ParticleSkipToTime) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 24} + return file_usermessages_proto_rawDescGZIP(), []int{36, 24} } func (x *CUserMsg_ParticleManager_ParticleSkipToTime) GetSkipToTime() float32 { @@ -5612,7 +5959,7 @@ type CUserMsg_ParticleManager_ParticleCanFreeze struct { func (x *CUserMsg_ParticleManager_ParticleCanFreeze) Reset() { *x = CUserMsg_ParticleManager_ParticleCanFreeze{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[77] + mi := &file_usermessages_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5625,7 +5972,7 @@ func (x *CUserMsg_ParticleManager_ParticleCanFreeze) String() string { func (*CUserMsg_ParticleManager_ParticleCanFreeze) ProtoMessage() {} func (x *CUserMsg_ParticleManager_ParticleCanFreeze) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[77] + mi := &file_usermessages_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5638,7 +5985,7 @@ func (x *CUserMsg_ParticleManager_ParticleCanFreeze) ProtoReflect() protoreflect // Deprecated: Use CUserMsg_ParticleManager_ParticleCanFreeze.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_ParticleCanFreeze) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 25} + return file_usermessages_proto_rawDescGZIP(), []int{36, 25} } func (x *CUserMsg_ParticleManager_ParticleCanFreeze) GetCanFreeze() bool { @@ -5659,7 +6006,7 @@ type CUserMsg_ParticleManager_ParticleFreezeTransitionOverride struct { func (x *CUserMsg_ParticleManager_ParticleFreezeTransitionOverride) Reset() { *x = CUserMsg_ParticleManager_ParticleFreezeTransitionOverride{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[78] + mi := &file_usermessages_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5672,7 +6019,7 @@ func (x *CUserMsg_ParticleManager_ParticleFreezeTransitionOverride) String() str func (*CUserMsg_ParticleManager_ParticleFreezeTransitionOverride) ProtoMessage() {} func (x *CUserMsg_ParticleManager_ParticleFreezeTransitionOverride) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[78] + mi := &file_usermessages_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5685,7 +6032,7 @@ func (x *CUserMsg_ParticleManager_ParticleFreezeTransitionOverride) ProtoReflect // Deprecated: Use CUserMsg_ParticleManager_ParticleFreezeTransitionOverride.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_ParticleFreezeTransitionOverride) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 26} + return file_usermessages_proto_rawDescGZIP(), []int{36, 26} } func (x *CUserMsg_ParticleManager_ParticleFreezeTransitionOverride) GetFreezeTransitionOverride() float32 { @@ -5695,6 +6042,69 @@ func (x *CUserMsg_ParticleManager_ParticleFreezeTransitionOverride) GetFreezeTra return 0 } +type CUserMsg_ParticleManager_FreezeParticleInvolving struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SetFrozen *bool `protobuf:"varint,1,opt,name=set_frozen,json=setFrozen" json:"set_frozen,omitempty"` + TransitionDuration *float32 `protobuf:"fixed32,2,opt,name=transition_duration,json=transitionDuration" json:"transition_duration,omitempty"` + EntityHandle *uint32 `protobuf:"varint,3,opt,name=entity_handle,json=entityHandle" json:"entity_handle,omitempty"` +} + +func (x *CUserMsg_ParticleManager_FreezeParticleInvolving) Reset() { + *x = CUserMsg_ParticleManager_FreezeParticleInvolving{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[83] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMsg_ParticleManager_FreezeParticleInvolving) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMsg_ParticleManager_FreezeParticleInvolving) ProtoMessage() {} + +func (x *CUserMsg_ParticleManager_FreezeParticleInvolving) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[83] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMsg_ParticleManager_FreezeParticleInvolving.ProtoReflect.Descriptor instead. +func (*CUserMsg_ParticleManager_FreezeParticleInvolving) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{36, 27} +} + +func (x *CUserMsg_ParticleManager_FreezeParticleInvolving) GetSetFrozen() bool { + if x != nil && x.SetFrozen != nil { + return *x.SetFrozen + } + return false +} + +func (x *CUserMsg_ParticleManager_FreezeParticleInvolving) GetTransitionDuration() float32 { + if x != nil && x.TransitionDuration != nil { + return *x.TransitionDuration + } + return 0 +} + +func (x *CUserMsg_ParticleManager_FreezeParticleInvolving) GetEntityHandle() uint32 { + if x != nil && x.EntityHandle != nil { + return *x.EntityHandle + } + return 0 +} + type CUserMsg_ParticleManager_SetParticleNamedValueContext struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5703,12 +6113,13 @@ type CUserMsg_ParticleManager_SetParticleNamedValueContext struct { FloatValues []*CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue `protobuf:"bytes,1,rep,name=float_values,json=floatValues" json:"float_values,omitempty"` VectorValues []*CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue `protobuf:"bytes,2,rep,name=vector_values,json=vectorValues" json:"vector_values,omitempty"` TransformValues []*CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue `protobuf:"bytes,3,rep,name=transform_values,json=transformValues" json:"transform_values,omitempty"` + EhandleValues []*CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext `protobuf:"bytes,4,rep,name=ehandle_values,json=ehandleValues" json:"ehandle_values,omitempty"` } func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext) Reset() { *x = CUserMsg_ParticleManager_SetParticleNamedValueContext{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[79] + mi := &file_usermessages_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5721,7 +6132,7 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext) String() string func (*CUserMsg_ParticleManager_SetParticleNamedValueContext) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[79] + mi := &file_usermessages_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5734,7 +6145,7 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext) ProtoReflect() p // Deprecated: Use CUserMsg_ParticleManager_SetParticleNamedValueContext.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetParticleNamedValueContext) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 27} + return file_usermessages_proto_rawDescGZIP(), []int{36, 28} } func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext) GetFloatValues() []*CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue { @@ -5758,19 +6169,26 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext) GetTransformValu return nil } +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext) GetEhandleValues() []*CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext { + if x != nil { + return x.EhandleValues + } + return nil +} + type CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ValueName *string `protobuf:"bytes,1,opt,name=value_name,json=valueName" json:"value_name,omitempty"` - Value *float32 `protobuf:"fixed32,2,opt,name=value" json:"value,omitempty"` + ValueNameHash *uint32 `protobuf:"varint,1,opt,name=value_name_hash,json=valueNameHash" json:"value_name_hash,omitempty"` + Value *float32 `protobuf:"fixed32,2,opt,name=value" json:"value,omitempty"` } func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue) Reset() { *x = CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[80] + mi := &file_usermessages_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5783,7 +6201,7 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue func (*CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[80] + mi := &file_usermessages_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5796,14 +6214,14 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue // Deprecated: Use CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 27, 0} + return file_usermessages_proto_rawDescGZIP(), []int{36, 28, 0} } -func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue) GetValueName() string { - if x != nil && x.ValueName != nil { - return *x.ValueName +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue) GetValueNameHash() uint32 { + if x != nil && x.ValueNameHash != nil { + return *x.ValueNameHash } - return "" + return 0 } func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue) GetValue() float32 { @@ -5818,16 +6236,14 @@ type CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue st sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ValueName *string `protobuf:"bytes,1,opt,name=value_name,json=valueName" json:"value_name,omitempty"` - Value *CMsgVector `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` - EntIndex *uint32 `protobuf:"varint,3,opt,name=ent_index,json=entIndex" json:"ent_index,omitempty"` - AttachmentName *string `protobuf:"bytes,4,opt,name=attachment_name,json=attachmentName" json:"attachment_name,omitempty"` + ValueNameHash *uint32 `protobuf:"varint,1,opt,name=value_name_hash,json=valueNameHash" json:"value_name_hash,omitempty"` + Value *CMsgVector `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` } func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) Reset() { *x = CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[81] + mi := &file_usermessages_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5840,7 +6256,7 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValu func (*CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[81] + mi := &file_usermessages_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5853,14 +6269,14 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValu // Deprecated: Use CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 27, 1} + return file_usermessages_proto_rawDescGZIP(), []int{36, 28, 1} } -func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) GetValueName() string { - if x != nil && x.ValueName != nil { - return *x.ValueName +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) GetValueNameHash() uint32 { + if x != nil && x.ValueNameHash != nil { + return *x.ValueNameHash } - return "" + return 0 } func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) GetValue() *CMsgVector { @@ -5870,36 +6286,20 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValu return nil } -func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) GetEntIndex() uint32 { - if x != nil && x.EntIndex != nil { - return *x.EntIndex - } - return 0 -} - -func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue) GetAttachmentName() string { - if x != nil && x.AttachmentName != nil { - return *x.AttachmentName - } - return "" -} - type CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ValueName *string `protobuf:"bytes,1,opt,name=value_name,json=valueName" json:"value_name,omitempty"` - Angles *CMsgQAngle `protobuf:"bytes,2,opt,name=angles" json:"angles,omitempty"` - Translation *CMsgVector `protobuf:"bytes,3,opt,name=translation" json:"translation,omitempty"` - EntIndex *uint32 `protobuf:"varint,4,opt,name=ent_index,json=entIndex" json:"ent_index,omitempty"` - AttachmentName *string `protobuf:"bytes,5,opt,name=attachment_name,json=attachmentName" json:"attachment_name,omitempty"` + ValueNameHash *uint32 `protobuf:"varint,1,opt,name=value_name_hash,json=valueNameHash" json:"value_name_hash,omitempty"` + Angles *CMsgQAngle `protobuf:"bytes,2,opt,name=angles" json:"angles,omitempty"` + Translation *CMsgVector `protobuf:"bytes,3,opt,name=translation" json:"translation,omitempty"` } func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) Reset() { *x = CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[82] + mi := &file_usermessages_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5912,7 +6312,7 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextV func (*CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) ProtoMessage() {} func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[82] + mi := &file_usermessages_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5925,14 +6325,14 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextV // Deprecated: Use CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue.ProtoReflect.Descriptor instead. func (*CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{35, 27, 2} + return file_usermessages_proto_rawDescGZIP(), []int{36, 28, 2} } -func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) GetValueName() string { - if x != nil && x.ValueName != nil { - return *x.ValueName +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) GetValueNameHash() uint32 { + if x != nil && x.ValueNameHash != nil { + return *x.ValueNameHash } - return "" + return 0 } func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) GetAngles() *CMsgQAngle { @@ -5949,18 +6349,59 @@ func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextV return nil } -func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) GetEntIndex() uint32 { - if x != nil && x.EntIndex != nil { - return *x.EntIndex +type CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ValueNameHash *uint32 `protobuf:"varint,1,opt,name=value_name_hash,json=valueNameHash" json:"value_name_hash,omitempty"` + EntIndex *uint32 `protobuf:"varint,2,opt,name=ent_index,json=entIndex" json:"ent_index,omitempty"` +} + +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext) Reset() { + *x = CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[88] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext) ProtoMessage() {} + +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[88] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext.ProtoReflect.Descriptor instead. +func (*CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{36, 28, 3} +} + +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext) GetValueNameHash() uint32 { + if x != nil && x.ValueNameHash != nil { + return *x.ValueNameHash } return 0 } -func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue) GetAttachmentName() string { - if x != nil && x.AttachmentName != nil { - return *x.AttachmentName +func (x *CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext) GetEntIndex() uint32 { + if x != nil && x.EntIndex != nil { + return *x.EntIndex } - return "" + return 0 } type CUserMessageCommandQueueStateCommandQueueInfoT struct { @@ -5977,7 +6418,7 @@ type CUserMessageCommandQueueStateCommandQueueInfoT struct { func (x *CUserMessageCommandQueueStateCommandQueueInfoT) Reset() { *x = CUserMessageCommandQueueStateCommandQueueInfoT{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[83] + mi := &file_usermessages_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5990,7 +6431,7 @@ func (x *CUserMessageCommandQueueStateCommandQueueInfoT) String() string { func (*CUserMessageCommandQueueStateCommandQueueInfoT) ProtoMessage() {} func (x *CUserMessageCommandQueueStateCommandQueueInfoT) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[83] + mi := &file_usermessages_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6003,7 +6444,7 @@ func (x *CUserMessageCommandQueueStateCommandQueueInfoT) ProtoReflect() protoref // Deprecated: Use CUserMessageCommandQueueStateCommandQueueInfoT.ProtoReflect.Descriptor instead. func (*CUserMessageCommandQueueStateCommandQueueInfoT) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{41, 0} + return file_usermessages_proto_rawDescGZIP(), []int{42, 0} } func (x *CUserMessageCommandQueueStateCommandQueueInfoT) GetCommandsQueued() uint32 { @@ -6048,7 +6489,7 @@ type CUserMessage_UtilMsg_Response_ItemDetail struct { func (x *CUserMessage_UtilMsg_Response_ItemDetail) Reset() { *x = CUserMessage_UtilMsg_Response_ItemDetail{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[84] + mi := &file_usermessages_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6061,7 +6502,7 @@ func (x *CUserMessage_UtilMsg_Response_ItemDetail) String() string { func (*CUserMessage_UtilMsg_Response_ItemDetail) ProtoMessage() {} func (x *CUserMessage_UtilMsg_Response_ItemDetail) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[84] + mi := &file_usermessages_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6074,7 +6515,7 @@ func (x *CUserMessage_UtilMsg_Response_ItemDetail) ProtoReflect() protoreflect.M // Deprecated: Use CUserMessage_UtilMsg_Response_ItemDetail.ProtoReflect.Descriptor instead. func (*CUserMessage_UtilMsg_Response_ItemDetail) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{47, 0} + return file_usermessages_proto_rawDescGZIP(), []int{48, 0} } func (x *CUserMessage_UtilMsg_Response_ItemDetail) GetIndex() int32 { @@ -6119,7 +6560,7 @@ type CUserMessage_DllStatus_CVDiagnostic struct { func (x *CUserMessage_DllStatus_CVDiagnostic) Reset() { *x = CUserMessage_DllStatus_CVDiagnostic{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[85] + mi := &file_usermessages_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6132,7 +6573,7 @@ func (x *CUserMessage_DllStatus_CVDiagnostic) String() string { func (*CUserMessage_DllStatus_CVDiagnostic) ProtoMessage() {} func (x *CUserMessage_DllStatus_CVDiagnostic) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[85] + mi := &file_usermessages_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6145,7 +6586,7 @@ func (x *CUserMessage_DllStatus_CVDiagnostic) ProtoReflect() protoreflect.Messag // Deprecated: Use CUserMessage_DllStatus_CVDiagnostic.ProtoReflect.Descriptor instead. func (*CUserMessage_DllStatus_CVDiagnostic) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{48, 0} + return file_usermessages_proto_rawDescGZIP(), []int{49, 0} } func (x *CUserMessage_DllStatus_CVDiagnostic) GetId() uint32 { @@ -6176,40 +6617,34 @@ func (x *CUserMessage_DllStatus_CVDiagnostic) GetStringValue() string { return "" } -type CUserMessage_Inventory_Response_InventoryDetail struct { +type CUserMessage_DllStatus_CModule struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Index *int32 `protobuf:"varint,1,opt,name=index" json:"index,omitempty"` - Primary *int64 `protobuf:"varint,2,opt,name=primary" json:"primary,omitempty"` - Offset *int64 `protobuf:"varint,3,opt,name=offset" json:"offset,omitempty"` - First *int64 `protobuf:"varint,4,opt,name=first" json:"first,omitempty"` - Base *int64 `protobuf:"varint,5,opt,name=base" json:"base,omitempty"` - Name *string `protobuf:"bytes,6,opt,name=name" json:"name,omitempty"` - BaseName *string `protobuf:"bytes,7,opt,name=base_name,json=baseName" json:"base_name,omitempty"` - BaseDetail *int32 `protobuf:"varint,8,opt,name=base_detail,json=baseDetail" json:"base_detail,omitempty"` - BaseTime *int32 `protobuf:"varint,9,opt,name=base_time,json=baseTime" json:"base_time,omitempty"` - BaseHash *int32 `protobuf:"varint,10,opt,name=base_hash,json=baseHash" json:"base_hash,omitempty"` + BaseAddr *uint64 `protobuf:"varint,1,opt,name=base_addr,json=baseAddr" json:"base_addr,omitempty"` + Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + Size *uint32 `protobuf:"varint,3,opt,name=size" json:"size,omitempty"` + Timestamp *uint32 `protobuf:"varint,4,opt,name=timestamp" json:"timestamp,omitempty"` } -func (x *CUserMessage_Inventory_Response_InventoryDetail) Reset() { - *x = CUserMessage_Inventory_Response_InventoryDetail{} +func (x *CUserMessage_DllStatus_CModule) Reset() { + *x = CUserMessage_DllStatus_CModule{} if protoimpl.UnsafeEnabled { - mi := &file_usermessages_proto_msgTypes[86] + mi := &file_usermessages_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CUserMessage_Inventory_Response_InventoryDetail) String() string { +func (x *CUserMessage_DllStatus_CModule) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CUserMessage_Inventory_Response_InventoryDetail) ProtoMessage() {} +func (*CUserMessage_DllStatus_CModule) ProtoMessage() {} -func (x *CUserMessage_Inventory_Response_InventoryDetail) ProtoReflect() protoreflect.Message { - mi := &file_usermessages_proto_msgTypes[86] +func (x *CUserMessage_DllStatus_CModule) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6220,41 +6655,118 @@ func (x *CUserMessage_Inventory_Response_InventoryDetail) ProtoReflect() protore return mi.MessageOf(x) } -// Deprecated: Use CUserMessage_Inventory_Response_InventoryDetail.ProtoReflect.Descriptor instead. -func (*CUserMessage_Inventory_Response_InventoryDetail) Descriptor() ([]byte, []int) { - return file_usermessages_proto_rawDescGZIP(), []int{50, 0} +// Deprecated: Use CUserMessage_DllStatus_CModule.ProtoReflect.Descriptor instead. +func (*CUserMessage_DllStatus_CModule) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{49, 1} } -func (x *CUserMessage_Inventory_Response_InventoryDetail) GetIndex() int32 { - if x != nil && x.Index != nil { - return *x.Index +func (x *CUserMessage_DllStatus_CModule) GetBaseAddr() uint64 { + if x != nil && x.BaseAddr != nil { + return *x.BaseAddr } return 0 } -func (x *CUserMessage_Inventory_Response_InventoryDetail) GetPrimary() int64 { - if x != nil && x.Primary != nil { - return *x.Primary +func (x *CUserMessage_DllStatus_CModule) GetName() string { + if x != nil && x.Name != nil { + return *x.Name } - return 0 + return "" } -func (x *CUserMessage_Inventory_Response_InventoryDetail) GetOffset() int64 { - if x != nil && x.Offset != nil { - return *x.Offset +func (x *CUserMessage_DllStatus_CModule) GetSize() uint32 { + if x != nil && x.Size != nil { + return *x.Size } return 0 } -func (x *CUserMessage_Inventory_Response_InventoryDetail) GetFirst() int64 { - if x != nil && x.First != nil { - return *x.First +func (x *CUserMessage_DllStatus_CModule) GetTimestamp() uint32 { + if x != nil && x.Timestamp != nil { + return *x.Timestamp } return 0 } -func (x *CUserMessage_Inventory_Response_InventoryDetail) GetBase() int64 { - if x != nil && x.Base != nil { +type CUserMessage_Inventory_Response_InventoryDetail struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Index *int32 `protobuf:"varint,1,opt,name=index" json:"index,omitempty"` + Primary *int64 `protobuf:"varint,2,opt,name=primary" json:"primary,omitempty"` + Offset *int64 `protobuf:"varint,3,opt,name=offset" json:"offset,omitempty"` + First *int64 `protobuf:"varint,4,opt,name=first" json:"first,omitempty"` + Base *int64 `protobuf:"varint,5,opt,name=base" json:"base,omitempty"` + Name *string `protobuf:"bytes,6,opt,name=name" json:"name,omitempty"` + BaseName *string `protobuf:"bytes,7,opt,name=base_name,json=baseName" json:"base_name,omitempty"` + BaseDetail *int32 `protobuf:"varint,8,opt,name=base_detail,json=baseDetail" json:"base_detail,omitempty"` + BaseTime *int32 `protobuf:"varint,9,opt,name=base_time,json=baseTime" json:"base_time,omitempty"` + BaseHash *int32 `protobuf:"varint,10,opt,name=base_hash,json=baseHash" json:"base_hash,omitempty"` +} + +func (x *CUserMessage_Inventory_Response_InventoryDetail) Reset() { + *x = CUserMessage_Inventory_Response_InventoryDetail{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[93] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMessage_Inventory_Response_InventoryDetail) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMessage_Inventory_Response_InventoryDetail) ProtoMessage() {} + +func (x *CUserMessage_Inventory_Response_InventoryDetail) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[93] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMessage_Inventory_Response_InventoryDetail.ProtoReflect.Descriptor instead. +func (*CUserMessage_Inventory_Response_InventoryDetail) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{51, 0} +} + +func (x *CUserMessage_Inventory_Response_InventoryDetail) GetIndex() int32 { + if x != nil && x.Index != nil { + return *x.Index + } + return 0 +} + +func (x *CUserMessage_Inventory_Response_InventoryDetail) GetPrimary() int64 { + if x != nil && x.Primary != nil { + return *x.Primary + } + return 0 +} + +func (x *CUserMessage_Inventory_Response_InventoryDetail) GetOffset() int64 { + if x != nil && x.Offset != nil { + return *x.Offset + } + return 0 +} + +func (x *CUserMessage_Inventory_Response_InventoryDetail) GetFirst() int64 { + if x != nil && x.First != nil { + return *x.First + } + return 0 +} + +func (x *CUserMessage_Inventory_Response_InventoryDetail) GetBase() int64 { + if x != nil && x.Base != nil { return *x.Base } return 0 @@ -6295,6 +6807,308 @@ func (x *CUserMessage_Inventory_Response_InventoryDetail) GetBaseHash() int32 { return 0 } +type CUserMessageRequestDiagnostic_Diagnostic struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Index *int32 `protobuf:"varint,1,opt,name=index" json:"index,omitempty"` + Offset *int64 `protobuf:"varint,2,opt,name=offset" json:"offset,omitempty"` + Param *int32 `protobuf:"varint,3,opt,name=param" json:"param,omitempty"` + Length *int32 `protobuf:"varint,4,opt,name=length" json:"length,omitempty"` + Type *int32 `protobuf:"varint,5,opt,name=type" json:"type,omitempty"` + Base *int64 `protobuf:"varint,6,opt,name=base" json:"base,omitempty"` + Range *int64 `protobuf:"varint,7,opt,name=range" json:"range,omitempty"` + Extent *int64 `protobuf:"varint,8,opt,name=extent" json:"extent,omitempty"` + Detail *int64 `protobuf:"varint,9,opt,name=detail" json:"detail,omitempty"` + Name *string `protobuf:"bytes,10,opt,name=name" json:"name,omitempty"` + Alias *string `protobuf:"bytes,11,opt,name=alias" json:"alias,omitempty"` + Vardetail []byte `protobuf:"bytes,12,opt,name=vardetail" json:"vardetail,omitempty"` + Context *int32 `protobuf:"varint,13,opt,name=context" json:"context,omitempty"` +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) Reset() { + *x = CUserMessageRequestDiagnostic_Diagnostic{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[94] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMessageRequestDiagnostic_Diagnostic) ProtoMessage() {} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[94] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMessageRequestDiagnostic_Diagnostic.ProtoReflect.Descriptor instead. +func (*CUserMessageRequestDiagnostic_Diagnostic) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{52, 0} +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetIndex() int32 { + if x != nil && x.Index != nil { + return *x.Index + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetOffset() int64 { + if x != nil && x.Offset != nil { + return *x.Offset + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetParam() int32 { + if x != nil && x.Param != nil { + return *x.Param + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetLength() int32 { + if x != nil && x.Length != nil { + return *x.Length + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetType() int32 { + if x != nil && x.Type != nil { + return *x.Type + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetBase() int64 { + if x != nil && x.Base != nil { + return *x.Base + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetRange() int64 { + if x != nil && x.Range != nil { + return *x.Range + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetExtent() int64 { + if x != nil && x.Extent != nil { + return *x.Extent + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetDetail() int64 { + if x != nil && x.Detail != nil { + return *x.Detail + } + return 0 +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetAlias() string { + if x != nil && x.Alias != nil { + return *x.Alias + } + return "" +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetVardetail() []byte { + if x != nil { + return x.Vardetail + } + return nil +} + +func (x *CUserMessageRequestDiagnostic_Diagnostic) GetContext() int32 { + if x != nil && x.Context != nil { + return *x.Context + } + return 0 +} + +type CUserMessage_Diagnostic_Response_Diagnostic struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Index *int32 `protobuf:"varint,1,opt,name=index" json:"index,omitempty"` + Offset *int64 `protobuf:"varint,2,opt,name=offset" json:"offset,omitempty"` + Param *int32 `protobuf:"varint,3,opt,name=param" json:"param,omitempty"` + Length *int32 `protobuf:"varint,4,opt,name=length" json:"length,omitempty"` + Detail []byte `protobuf:"bytes,5,opt,name=detail" json:"detail,omitempty"` + Base *int64 `protobuf:"varint,6,opt,name=base" json:"base,omitempty"` + Range *int64 `protobuf:"varint,7,opt,name=range" json:"range,omitempty"` + Type *int32 `protobuf:"varint,8,opt,name=type" json:"type,omitempty"` + Name *string `protobuf:"bytes,10,opt,name=name" json:"name,omitempty"` + Alias *string `protobuf:"bytes,11,opt,name=alias" json:"alias,omitempty"` + Backup []byte `protobuf:"bytes,12,opt,name=backup" json:"backup,omitempty"` + Context *int32 `protobuf:"varint,13,opt,name=context" json:"context,omitempty"` + Control *int64 `protobuf:"varint,14,opt,name=control" json:"control,omitempty"` + Augment *int64 `protobuf:"varint,15,opt,name=augment" json:"augment,omitempty"` + Placebo *int64 `protobuf:"varint,16,opt,name=placebo" json:"placebo,omitempty"` +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) Reset() { + *x = CUserMessage_Diagnostic_Response_Diagnostic{} + if protoimpl.UnsafeEnabled { + mi := &file_usermessages_proto_msgTypes[95] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CUserMessage_Diagnostic_Response_Diagnostic) ProtoMessage() {} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) ProtoReflect() protoreflect.Message { + mi := &file_usermessages_proto_msgTypes[95] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CUserMessage_Diagnostic_Response_Diagnostic.ProtoReflect.Descriptor instead. +func (*CUserMessage_Diagnostic_Response_Diagnostic) Descriptor() ([]byte, []int) { + return file_usermessages_proto_rawDescGZIP(), []int{53, 0} +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetIndex() int32 { + if x != nil && x.Index != nil { + return *x.Index + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetOffset() int64 { + if x != nil && x.Offset != nil { + return *x.Offset + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetParam() int32 { + if x != nil && x.Param != nil { + return *x.Param + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetLength() int32 { + if x != nil && x.Length != nil { + return *x.Length + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetDetail() []byte { + if x != nil { + return x.Detail + } + return nil +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetBase() int64 { + if x != nil && x.Base != nil { + return *x.Base + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetRange() int64 { + if x != nil && x.Range != nil { + return *x.Range + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetType() int32 { + if x != nil && x.Type != nil { + return *x.Type + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetAlias() string { + if x != nil && x.Alias != nil { + return *x.Alias + } + return "" +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetBackup() []byte { + if x != nil { + return x.Backup + } + return nil +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetContext() int32 { + if x != nil && x.Context != nil { + return *x.Context + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetControl() int64 { + if x != nil && x.Control != nil { + return *x.Control + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetAugment() int64 { + if x != nil && x.Augment != nil { + return *x.Augment + } + return 0 +} + +func (x *CUserMessage_Diagnostic_Response_Diagnostic) GetPlacebo() int64 { + if x != nil && x.Placebo != nil { + return *x.Placebo + } + return 0 +} + var File_usermessages_proto protoreflect.FileDescriptor var file_usermessages_proto_rawDesc = []byte{ @@ -6371,1058 +7185,1197 @@ var file_usermessages_proto_rawDesc = []byte{ 0x61, 0x6b, 0x65, 0x12, 0x2e, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0xaa, 0x01, 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x54, 0x69, 0x6c, 0x74, 0x12, 0x18, + 0x69, 0x6f, 0x6e, 0x22, 0x8a, 0x01, 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x57, 0x61, 0x74, 0x65, 0x72, 0x53, 0x68, 0x61, 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x65, 0x61, 0x73, 0x65, - 0x5f, 0x69, 0x6e, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, - 0x61, 0x73, 0x65, 0x49, 0x6e, 0x4f, 0x75, 0x74, 0x12, 0x26, 0x0a, 0x05, 0x61, 0x6e, 0x67, 0x6c, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, - 0x22, 0x5f, 0x0a, 0x13, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x53, 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x63, 0x68, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x63, 0x68, 0x61, - 0x74, 0x22, 0xce, 0x01, 0x0a, 0x14, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x53, 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, 0x32, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, - 0x63, 0x68, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x63, 0x68, 0x61, 0x74, - 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x34, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x34, 0x22, 0xac, 0x01, 0x0a, 0x12, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x48, 0x75, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, - 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, - 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, - 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, - 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x32, 0x12, - 0x16, 0x0a, 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x22, 0x2f, 0x0a, 0x13, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x48, 0x75, 0x64, 0x54, 0x65, 0x78, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x22, 0x3f, 0x0a, 0x13, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, 0x73, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, - 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x22, 0x17, 0x0a, 0x15, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x16, 0x0a, 0x14, - 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x65, - 0x74, 0x48, 0x55, 0x44, 0x22, 0x49, 0x0a, 0x15, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x1c, 0x0a, - 0x09, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, - 0x74, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x73, 0x74, 0x6f, 0x70, 0x22, - 0x9c, 0x01, 0x0a, 0x1a, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x41, 0x75, 0x64, 0x69, 0x6f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x25, - 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, - 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x68, 0x61, - 0x73, 0x68, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, - 0x61, 0x6d, 0x65, 0x48, 0x61, 0x73, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x7c, - 0x0a, 0x15, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x56, 0x6f, - 0x69, 0x63, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x27, 0x0a, 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x72, - 0x75, 0x6c, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, - 0x52, 0x0e, 0x67, 0x61, 0x6d, 0x65, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x4d, 0x61, 0x73, 0x6b, 0x73, - 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x6e, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x61, 0x6e, 0x4d, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x1d, 0x0a, - 0x0a, 0x6d, 0x6f, 0x64, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x1a, 0x0a, 0x18, - 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x54, 0x0a, 0x12, 0x43, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x75, 0x6d, 0x62, 0x6c, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x62, - 0x0a, 0x1a, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x61, - 0x79, 0x54, 0x65, 0x78, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, - 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x12, - 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, - 0x78, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x17, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, - 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x73, 0x65, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x72, 0x65, 0x73, 0x65, 0x74, 0x12, 0x2e, - 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x23, - 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x74, - 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x16, 0x43, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x50, - 0x69, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x6e, 0x61, 0x6d, - 0x65, 0x22, 0x31, 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x41, 0x6d, 0x6d, 0x6f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x61, - 0x6d, 0x6d, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x6d, - 0x6d, 0x6f, 0x49, 0x64, 0x22, 0x94, 0x01, 0x0a, 0x14, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x4d, 0x65, 0x6e, 0x75, 0x12, 0x1e, 0x0a, - 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x20, 0x0a, - 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x6e, 0x65, 0x65, 0x64, 0x6d, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x08, 0x6e, 0x65, 0x65, 0x64, 0x6d, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, - 0x65, 0x6e, 0x75, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x6d, 0x65, 0x6e, 0x75, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x66, 0x0a, 0x16, 0x43, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x64, 0x69, - 0x74, 0x73, 0x4d, 0x73, 0x67, 0x12, 0x2b, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x65, - 0x52, 0x6f, 0x6c, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x6c, 0x6f, 0x67, 0x6f, 0x4c, 0x65, 0x6e, - 0x67, 0x74, 0x68, 0x22, 0x4b, 0x0a, 0x18, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x4a, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x12, - 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, + 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6d, 0x70, 0x6c, + 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x61, 0x6d, 0x70, + 0x6c, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0xaa, 0x01, 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x54, 0x69, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x6e, + 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x61, 0x73, 0x65, + 0x49, 0x6e, 0x4f, 0x75, 0x74, 0x12, 0x26, 0x0a, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x5f, 0x0a, + 0x13, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x61, 0x79, + 0x54, 0x65, 0x78, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x68, + 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x63, 0x68, 0x61, 0x74, 0x22, 0xce, + 0x01, 0x0a, 0x14, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, + 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, 0x32, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x68, 0x61, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x63, 0x68, 0x61, 0x74, 0x12, 0x20, 0x0a, + 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x12, + 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x34, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x34, 0x22, + 0xac, 0x01, 0x0a, 0x12, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x48, 0x75, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, + 0x0a, 0x01, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x16, 0x0a, 0x06, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x32, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x32, 0x12, 0x16, 0x0a, 0x06, + 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x66, + 0x66, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x2f, + 0x0a, 0x13, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x75, + 0x64, 0x54, 0x65, 0x78, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, + 0x3f, 0x0a, 0x13, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, + 0x65, 0x78, 0x74, 0x4d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, 0x73, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x64, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x22, 0x17, 0x0a, 0x15, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x47, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x43, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x48, 0x55, + 0x44, 0x22, 0x49, 0x0a, 0x15, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x53, 0x65, 0x6e, 0x64, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x6f, + 0x75, 0x6e, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, + 0x6f, 0x75, 0x6e, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, 0x6f, 0x70, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x73, 0x74, 0x6f, 0x70, 0x22, 0x9c, 0x01, 0x0a, + 0x1a, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x75, 0x64, + 0x69, 0x6f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, + 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x61, 0x6d, 0x65, + 0x48, 0x61, 0x73, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, + 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x7c, 0x0a, 0x15, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x56, 0x6f, 0x69, 0x63, 0x65, + 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x27, 0x0a, 0x0f, 0x67, 0x61, 0x6d, 0x65, 0x72, 0x75, 0x6c, 0x65, + 0x73, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x67, + 0x61, 0x6d, 0x65, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x4d, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x1b, 0x0a, + 0x09, 0x62, 0x61, 0x6e, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x08, 0x62, 0x61, 0x6e, 0x4d, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, + 0x64, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, + 0x6d, 0x6f, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x1a, 0x0a, 0x18, 0x43, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x54, 0x0a, 0x12, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x75, 0x6d, 0x62, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x22, 0x62, 0x0a, 0x1a, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x61, 0x79, 0x54, 0x65, + 0x78, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x74, + 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x22, + 0xd6, 0x01, 0x0a, 0x17, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x63, + 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, + 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x73, 0x65, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x72, 0x65, 0x73, 0x65, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, + 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, + 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x69, 0x63, 0x6b, + 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x31, + 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6d, + 0x6d, 0x6f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x6d, 0x6d, 0x6f, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x61, 0x6d, 0x6d, 0x6f, 0x49, + 0x64, 0x22, 0x94, 0x01, 0x0a, 0x14, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x4d, 0x65, 0x6e, 0x75, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x73, 0x6c, 0x6f, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, + 0x73, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x6e, 0x65, 0x65, 0x64, 0x6d, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, + 0x6e, 0x65, 0x65, 0x64, 0x6d, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x65, 0x6e, 0x75, + 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x65, + 0x6e, 0x75, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x66, 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x4d, + 0x73, 0x67, 0x12, 0x2b, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x65, 0x52, 0x6f, 0x6c, + 0x6c, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x6c, 0x6f, 0x67, 0x6f, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x22, 0x4b, 0x0a, 0x18, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x4a, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x0a, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, + 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x22, 0x71, 0x0a, + 0x1b, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, + 0x63, 0x72, 0x65, 0x65, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x12, 0x21, 0x0a, 0x0c, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x12, + 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, - 0x22, 0x71, 0x0a, 0x1b, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x12, - 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x45, 0x66, 0x66, 0x65, - 0x63, 0x74, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x4d, 0x73, 0x67, 0x22, 0x75, 0x0a, 0x1d, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x44, 0x65, - 0x63, 0x61, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x64, - 0x65, 0x63, 0x61, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x44, 0x65, 0x63, 0x61, 0x6c, 0x73, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, - 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x22, 0x7b, 0x0a, 0x1c, 0x43, 0x45, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x70, - 0x61, 0x67, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x69, 0x6d, - 0x70, 0x75, 0x6c, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x69, - 0x6d, 0x70, 0x75, 0x6c, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x22, 0x75, 0x0a, 0x1d, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x44, 0x65, 0x63, 0x61, 0x6c, + 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x64, 0x65, 0x63, 0x61, + 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x44, 0x65, 0x63, 0x61, 0x6c, 0x73, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x22, 0x8a, 0x02, 0x0a, 0x15, 0x43, 0x45, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x44, 0x6f, 0x53, 0x70, 0x61, 0x72, - 0x6b, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, - 0x06, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x72, - 0x61, 0x64, 0x69, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x07, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x62, - 0x65, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x62, 0x65, 0x61, 0x6d, - 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x68, 0x69, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, - 0x52, 0x05, 0x74, 0x68, 0x69, 0x63, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, - 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x4d, 0x73, 0x67, 0x22, 0x8d, 0x01, 0x0a, 0x16, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x69, 0x78, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x61, - 0x6e, 0x67, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x05, 0x61, 0x6e, - 0x67, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, - 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x22, 0x7b, 0x0a, 0x1c, 0x43, 0x45, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, + 0x74, 0x65, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x69, 0x6d, 0x70, 0x75, 0x6c, + 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x69, 0x6d, 0x70, 0x75, + 0x6c, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x4d, 0x73, 0x67, 0x22, 0xbe, 0x02, 0x0a, 0x1c, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x65, - 0x72, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x66, 0x0a, 0x12, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x5f, 0x64, 0x72, 0x69, 0x76, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x79, 0x4d, 0x73, 0x67, 0x22, 0x8a, 0x02, 0x0a, 0x15, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x44, 0x6f, 0x53, 0x70, 0x61, 0x72, 0x6b, 0x12, 0x28, + 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x61, + 0x64, 0x69, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x72, 0x61, 0x64, 0x69, + 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x07, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x65, 0x61, 0x6d, + 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x62, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x68, 0x69, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x74, + 0x68, 0x69, 0x63, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, + 0x67, 0x22, 0x8d, 0x01, 0x0a, 0x16, 0x43, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x46, 0x69, 0x78, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, + 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x61, 0x6e, 0x67, 0x6c, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x05, 0x61, 0x6e, 0x67, 0x6c, 0x65, + 0x12, 0x2f, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x45, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x4d, 0x73, 0x67, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x73, + 0x67, 0x22, 0xbe, 0x02, 0x0a, 0x1c, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x44, 0x61, - 0x74, 0x61, 0x44, 0x72, 0x69, 0x76, 0x65, 0x6e, 0x52, 0x10, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x44, 0x61, 0x74, 0x61, 0x44, 0x72, 0x69, 0x76, 0x65, 0x6e, 0x1a, 0x79, 0x0a, 0x15, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x44, 0x61, 0x74, 0x61, 0x44, 0x72, 0x69, - 0x76, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x28, 0x0a, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x5f, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x61, 0x74, 0x74, 0x61, 0x63, - 0x68, 0x45, 0x6e, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xae, 0x3a, 0x0a, 0x18, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0e, - 0x32, 0x16, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, - 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x05, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x12, 0x69, 0x0a, 0x16, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, - 0x61, 0x67, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x14, 0x72, 0x65, 0x6c, 0x65, 0x61, - 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, - 0x56, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, - 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x52, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x12, 0x59, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x72, - 0x6f, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x5f, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x66, 0x0a, 0x12, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x64, + 0x72, 0x69, 0x76, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, + 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x44, 0x61, 0x74, 0x61, 0x44, + 0x72, 0x69, 0x76, 0x65, 0x6e, 0x52, 0x10, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x44, 0x61, 0x74, + 0x61, 0x44, 0x72, 0x69, 0x76, 0x65, 0x6e, 0x1a, 0x79, 0x0a, 0x15, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x44, 0x61, 0x74, 0x61, 0x44, 0x72, 0x69, 0x76, 0x65, 0x6e, + 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, + 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x5f, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x45, 0x6e, + 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0xc6, 0x3d, 0x0a, 0x18, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, + 0x2a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x16, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x45, + 0x53, 0x53, 0x41, 0x47, 0x45, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x69, 0x0a, 0x16, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, - 0x72, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, - 0x65, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x12, 0x75, 0x0a, 0x1a, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, - 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x52, - 0x18, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x49, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x12, 0x5f, 0x0a, 0x0f, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x72, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, + 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x14, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x50, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x56, 0x0a, 0x0f, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x6c, 0x65, 0x52, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x6c, 0x65, 0x12, 0x59, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x44, + 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x52, 0x0f, + 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x12, + 0x75, 0x0a, 0x1a, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x52, 0x18, 0x64, 0x65, + 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x76, + 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x12, 0x5f, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x4f, + 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x52, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x12, 0x69, 0x0a, 0x13, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x66, 0x77, 0x64, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x46, 0x77, 0x64, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x52, + 0x11, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, + 0x77, 0x64, 0x12, 0x72, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, - 0x65, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x52, 0x0e, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x12, 0x69, 0x0a, 0x13, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x66, 0x77, - 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x65, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, + 0x52, 0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, + 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x6f, 0x0a, 0x18, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, + 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, + 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, + 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, + 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x69, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x77, 0x64, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, - 0x54, 0x45, 0x52, 0x11, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x46, 0x77, 0x64, 0x12, 0x72, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, - 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, - 0x45, 0x54, 0x45, 0x52, 0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x6f, 0x0a, 0x18, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x66, 0x61, 0x6c, - 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, - 0x63, 0x6b, 0x52, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x69, 0x0a, 0x16, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6f, 0x66, - 0x66, 0x73, 0x65, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x52, - 0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4f, - 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x60, 0x0a, 0x13, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, - 0x65, 0x45, 0x6e, 0x74, 0x52, 0x11, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x45, 0x6e, 0x74, 0x12, 0x76, 0x0a, 0x1b, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x75, 0x6c, - 0x64, 0x5f, 0x64, 0x72, 0x61, 0x77, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, - 0x64, 0x44, 0x72, 0x61, 0x77, 0x52, 0x18, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x44, 0x72, 0x61, 0x77, 0x12, - 0x73, 0x0a, 0x1a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, - 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x53, 0x65, 0x74, 0x46, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x52, 0x17, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x46, 0x72, - 0x6f, 0x7a, 0x65, 0x6e, 0x12, 0x82, 0x01, 0x0a, 0x1f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x74, - 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, - 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x1c, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, - 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x69, 0x0a, 0x16, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x52, 0x14, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x12, 0x60, 0x0a, 0x13, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x45, 0x6e, + 0x74, 0x52, 0x11, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, + 0x65, 0x45, 0x6e, 0x74, 0x12, 0x76, 0x0a, 0x1b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x64, + 0x72, 0x61, 0x77, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x76, 0x0a, 0x1b, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, - 0x69, 0x65, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x6f, 0x57, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, - 0x65, 0x73, 0x52, 0x18, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, - 0x6f, 0x77, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x5a, 0x0a, 0x11, - 0x73, 0x65, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x74, 0x65, 0x78, - 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x54, 0x65, 0x78, 0x74, 0x52, 0x0f, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x54, 0x65, 0x78, 0x74, 0x12, 0x7a, 0x0a, 0x1d, 0x73, 0x65, 0x74, 0x5f, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, - 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x77, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, - 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, - 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x6f, 0x57, 0x52, 0x19, 0x73, 0x65, 0x74, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x46, 0x6f, 0x77, 0x12, 0x6a, 0x0a, 0x17, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, - 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, - 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x14, 0x73, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, - 0x12, 0x73, 0x0a, 0x1a, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x18, 0x16, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, - 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x17, 0x73, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x6e, 0x61, - 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x66, 0x0a, 0x15, 0x73, 0x65, 0x74, 0x5f, 0x74, 0x65, 0x78, - 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x18, 0x17, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, - 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x41, - 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x13, 0x73, 0x65, 0x74, 0x54, 0x65, 0x78, - 0x74, 0x75, 0x72, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x7a, 0x0a, - 0x1d, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x18, 0x18, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x44, 0x72, + 0x61, 0x77, 0x52, 0x18, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x44, 0x72, 0x61, 0x77, 0x12, 0x73, 0x0a, 0x1a, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, + 0x73, 0x65, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, + 0x65, 0x74, 0x46, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x52, 0x17, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x46, 0x72, 0x6f, 0x7a, 0x65, + 0x6e, 0x12, 0x82, 0x01, 0x0a, 0x1f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, + 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x74, + 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x1c, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, + 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x69, 0x0a, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x76, 0x0a, 0x1b, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, + 0x65, 0x5f, 0x66, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, + 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x6c, 0x65, 0x46, 0x6f, 0x57, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x52, + 0x18, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x6f, 0x77, 0x50, + 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x5a, 0x0a, 0x11, 0x73, 0x65, 0x74, + 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x13, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, - 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x46, 0x6c, 0x61, 0x67, 0x52, 0x19, - 0x73, 0x65, 0x74, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x69, 0x63, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x7e, 0x0a, 0x1f, 0x73, 0x65, 0x74, - 0x5f, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x69, - 0x6e, 0x74, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x64, 0x65, 0x73, 0x61, 0x74, 0x18, 0x19, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x54, 0x69, 0x6e, 0x74, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x73, 0x61, 0x74, 0x52, 0x1a, 0x73, - 0x65, 0x74, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6e, - 0x74, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x73, 0x61, 0x74, 0x12, 0x69, 0x0a, 0x16, 0x64, 0x65, 0x73, - 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, - 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x52, 0x14, - 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, - 0x61, 0x6d, 0x65, 0x64, 0x12, 0x64, 0x0a, 0x15, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x74, 0x6f, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x1b, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, - 0x67, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x6b, 0x69, 0x70, - 0x54, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x12, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x53, 0x6b, 0x69, 0x70, 0x54, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x61, 0x6e, 0x5f, 0x66, 0x72, 0x65, 0x65, 0x7a, - 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x43, 0x61, 0x6e, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x52, 0x11, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x43, 0x61, 0x6e, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x12, 0x72, 0x0a, 0x17, - 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, - 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, - 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x14, 0x73, 0x65, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x12, 0x72, 0x0a, 0x19, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x1e, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, - 0x67, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x17, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x8e, 0x01, 0x0a, 0x23, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, - 0x65, 0x5f, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x1f, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, + 0x54, 0x65, 0x78, 0x74, 0x52, 0x0f, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, + 0x65, 0x54, 0x65, 0x78, 0x74, 0x12, 0x7a, 0x0a, 0x1d, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x63, 0x68, 0x65, + 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x77, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x46, 0x6f, 0x57, 0x52, 0x19, 0x73, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x6f, + 0x77, 0x12, 0x6a, 0x0a, 0x17, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x15, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x72, 0x65, 0x65, 0x7a, - 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, - 0x69, 0x64, 0x65, 0x52, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x72, 0x65, - 0x65, 0x7a, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, 0x65, - 0x72, 0x72, 0x69, 0x64, 0x65, 0x1a, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x1a, 0xdd, 0x02, - 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, - 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x3d, 0x0a, 0x1b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x69, - 0x66, 0x69, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x4d, 0x6f, 0x64, 0x69, - 0x66, 0x69, 0x65, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x76, - 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x6e, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x56, 0x6f, 0x69, 0x63, 0x65, - 0x42, 0x61, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x6d, - 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x3e, 0x0a, - 0x1b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x19, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x42, 0x0a, - 0x0f, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x69, 0x6d, 0x6d, 0x65, - 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, - 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, - 0x79, 0x1a, 0x70, 0x0a, 0x18, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, + 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x14, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x73, 0x0a, + 0x1a, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, + 0x6e, 0x74, 0x5f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x17, 0x73, 0x65, 0x74, 0x43, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x12, 0x66, 0x0a, 0x15, 0x73, 0x65, 0x74, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, + 0x65, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x32, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x2e, 0x53, 0x65, 0x74, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x13, 0x73, 0x65, 0x74, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, + 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x7a, 0x0a, 0x1d, 0x73, 0x65, + 0x74, 0x5f, 0x73, 0x63, 0x65, 0x6e, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x18, 0x18, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, + 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x2e, 0x53, 0x65, 0x74, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x46, 0x6c, 0x61, 0x67, 0x52, 0x19, 0x73, 0x65, 0x74, + 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x69, 0x63, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x7e, 0x0a, 0x1f, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x63, + 0x65, 0x6e, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x69, 0x6e, 0x74, 0x5f, + 0x61, 0x6e, 0x64, 0x5f, 0x64, 0x65, 0x73, 0x61, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x39, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, + 0x53, 0x65, 0x74, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x69, + 0x6e, 0x74, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x73, 0x61, 0x74, 0x52, 0x1a, 0x73, 0x65, 0x74, 0x53, + 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6e, 0x74, 0x41, 0x6e, + 0x64, 0x44, 0x65, 0x73, 0x61, 0x74, 0x12, 0x69, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, + 0x79, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x64, + 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x52, 0x14, 0x64, 0x65, 0x73, + 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x64, 0x12, 0x64, 0x0a, 0x15, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x6b, + 0x69, 0x70, 0x5f, 0x74, 0x6f, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, + 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x6b, 0x69, 0x70, 0x54, 0x6f, 0x54, + 0x69, 0x6d, 0x65, 0x52, 0x12, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x6b, 0x69, + 0x70, 0x54, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x5f, 0x63, 0x61, 0x6e, 0x5f, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x18, 0x1c, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x43, 0x61, 0x6e, + 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x52, 0x11, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, + 0x43, 0x61, 0x6e, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x12, 0x72, 0x0a, 0x17, 0x73, 0x65, 0x74, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x14, 0x73, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x72, 0x0a, + 0x19, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, + 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, + 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x17, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, + 0x6d, 0x12, 0x8e, 0x01, 0x0a, 0x23, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x66, + 0x72, 0x65, 0x65, 0x7a, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x3f, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, + 0x52, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, + 0x64, 0x65, 0x12, 0x72, 0x0a, 0x19, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x5f, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x18, + 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, + 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x52, 0x17, 0x66, + 0x72, 0x65, 0x65, 0x7a, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x76, + 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x1a, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, + 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x1a, 0x98, + 0x03, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, + 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, + 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x3d, 0x0a, 0x1b, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x6d, 0x6f, 0x64, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x4d, 0x6f, 0x64, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, + 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x6e, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x56, 0x6f, 0x69, 0x63, + 0x65, 0x42, 0x61, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x65, 0x61, + 0x6d, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x3e, + 0x0a, 0x1b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x19, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x64, 0x63, + 0x61, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x65, + 0x6e, 0x64, 0x63, 0x61, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x42, 0x0a, 0x0f, 0x44, 0x65, 0x73, + 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x13, + 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, + 0x65, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, 0x65, 0x73, 0x74, 0x72, + 0x6f, 0x79, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x1a, 0x70, 0x0a, + 0x18, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, + 0x49, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x65, 0x73, + 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x49, + 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x1a, + 0xbd, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, - 0x74, 0x65, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, 0x65, 0x73, 0x74, - 0x72, 0x6f, 0x79, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x12, 0x23, - 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, - 0x64, 0x6c, 0x65, 0x1a, 0xbd, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x06, 0x52, 0x11, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x23, 0x0a, 0x0d, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x69, 0x6d, 0x6d, - 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, - 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, - 0x6c, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x65, 0x6e, 0x64, 0x63, 0x61, - 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x45, 0x6e, 0x64, - 0x63, 0x61, 0x70, 0x1a, 0x6c, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x12, 0x23, + 0x74, 0x65, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, 0x65, 0x73, 0x74, + 0x72, 0x6f, 0x79, 0x49, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x12, 0x1f, + 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x65, 0x6e, 0x64, 0x63, 0x61, 0x70, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x45, 0x6e, 0x64, 0x63, 0x61, 0x70, 0x1a, + 0x6c, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, + 0x65, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, + 0x2c, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x6d, 0x0a, + 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, + 0x77, 0x64, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x12, 0x2a, 0x0a, 0x07, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x52, 0x07, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x1a, 0xf5, 0x01, 0x0a, + 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4f, + 0x72, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x1a, 0x6d, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x46, 0x77, 0x64, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, 0x54, 0x45, 0x12, - 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, - 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, - 0x1a, 0xf5, 0x01, 0x0a, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x4f, 0x42, 0x53, 0x4f, 0x4c, 0x45, - 0x54, 0x45, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x66, 0x6f, 0x72, 0x77, 0x61, - 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x66, 0x6f, 0x72, 0x77, - 0x61, 0x72, 0x64, 0x12, 0x3b, 0x0a, 0x10, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, - 0x64, 0x5f, 0x72, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, - 0x0f, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x52, 0x69, 0x67, 0x68, 0x74, - 0x12, 0x20, 0x0a, 0x02, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x02, - 0x75, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x6c, 0x65, 0x66, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x52, 0x04, 0x6c, 0x65, 0x66, 0x74, 0x1a, 0xdb, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x0b, 0x6f, 0x72, 0x69, 0x65, 0x6e, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x75, 0x61, 0x74, 0x65, 0x72, 0x6e, 0x69, - 0x6f, 0x6e, 0x52, 0x0b, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x35, 0x0a, 0x16, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, - 0x15, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, - 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x1a, 0x6b, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, + 0x69, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x12, + 0x3b, 0x0a, 0x10, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x69, + 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0f, 0x64, 0x65, 0x70, + 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x52, 0x69, 0x67, 0x68, 0x74, 0x12, 0x20, 0x0a, 0x02, + 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x02, 0x75, 0x70, 0x12, 0x24, + 0x0a, 0x04, 0x6c, 0x65, 0x66, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x04, + 0x6c, 0x65, 0x66, 0x74, 0x1a, 0xdb, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x1a, 0xa7, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x23, 0x0a, 0x0d, + 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x0b, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x51, 0x75, 0x61, 0x74, 0x65, 0x72, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x0b, + 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x16, 0x69, + 0x6e, 0x74, 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x15, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x70, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, + 0x61, 0x6c, 0x1a, 0x6b, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x6c, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, - 0x74, 0x12, 0x35, 0x0a, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x73, - 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0c, 0x6f, 0x72, 0x69, 0x67, - 0x69, 0x6e, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x33, 0x0a, 0x0c, 0x61, 0x6e, 0x67, 0x6c, - 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, - 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, - 0x52, 0x0b, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1a, 0xfc, 0x02, - 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x45, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, - 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1f, 0x0a, - 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, - 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3d, - 0x0a, 0x11, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, - 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x10, 0x66, 0x61, 0x6c, - 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, - 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x77, 0x65, 0x61, 0x72, 0x61, 0x62, 0x6c, - 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, - 0x65, 0x57, 0x65, 0x61, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0f, 0x6f, 0x66, - 0x66, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, + 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0e, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x50, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0d, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x5f, - 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, - 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x0c, - 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x1a, 0x69, 0x0a, 0x17, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x65, - 0x74, 0x46, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x74, 0x5f, 0x66, - 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x65, 0x74, - 0x46, 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x12, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x3b, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x44, - 0x72, 0x61, 0x77, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x64, 0x72, - 0x61, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, - 0x44, 0x72, 0x61, 0x77, 0x1a, 0x91, 0x01, 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, - 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, - 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x61, - 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x6c, 0x64, 0x12, 0x25, 0x0a, 0x0e, - 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x65, 0x77, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, - 0x4e, 0x65, 0x77, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x1a, 0x69, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, - 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x1a, 0x93, 0x01, 0x0a, 0x18, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x46, 0x6f, 0x57, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, - 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x66, 0x6f, 0x77, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x1a, + 0xa7, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x35, 0x0a, + 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0c, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x4f, 0x66, + 0x66, 0x73, 0x65, 0x74, 0x12, 0x33, 0x0a, 0x0c, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x6f, 0x66, + 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, + 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x0b, 0x61, 0x6e, + 0x67, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1a, 0xfc, 0x02, 0x0a, 0x11, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x45, 0x6e, 0x74, 0x12, + 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, 0x74, + 0x61, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x11, 0x66, 0x61, + 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, + 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x10, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, + 0x6b, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x63, + 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x77, 0x65, 0x61, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x57, 0x65, 0x61, + 0x72, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x52, 0x0e, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x35, 0x0a, 0x0d, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x5f, 0x61, 0x6e, 0x67, 0x6c, + 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x0c, 0x6f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x1a, 0x69, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x46, 0x72, 0x6f, + 0x7a, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x7a, 0x65, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x65, 0x74, 0x46, 0x72, 0x6f, 0x7a, + 0x65, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x12, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x1a, 0x3b, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x44, 0x72, 0x61, 0x77, 0x12, + 0x1f, 0x0a, 0x0b, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x64, 0x72, 0x61, 0x77, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x44, 0x72, 0x61, 0x77, + 0x1a, 0x91, 0x01, 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, + 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x61, 0x74, 0x74, 0x61, 0x63, + 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x6c, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x74, 0x74, 0x61, + 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x65, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0d, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x77, 0x12, + 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, + 0x6e, 0x64, 0x6c, 0x65, 0x1a, 0x69, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, + 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x1a, + 0x93, 0x01, 0x0a, 0x18, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, + 0x6f, 0x57, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, - 0x74, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x66, 0x6f, 0x77, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x32, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x6f, - 0x77, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, - 0x66, 0x6f, 0x77, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 0x1a, 0x38, 0x0a, 0x19, 0x53, 0x65, 0x74, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x46, 0x6f, 0x57, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, - 0x66, 0x6f, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, - 0x46, 0x6f, 0x77, 0x1a, 0x5a, 0x0a, 0x14, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x63, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, - 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x1a, - 0x63, 0x0a, 0x17, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, - 0x6e, 0x74, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, - 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, - 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x25, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x6c, 0x65, 0x54, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x1a, 0x5f, 0x0a, 0x13, 0x53, - 0x65, 0x74, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, - 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x74, 0x74, 0x72, - 0x69, 0x62, 0x75, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x65, 0x78, - 0x74, 0x75, 0x72, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x3a, 0x0a, 0x19, - 0x53, 0x65, 0x74, 0x53, 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x69, 0x63, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x6c, 0x61, - 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x66, - 0x6c, 0x61, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x46, 0x0a, 0x1a, 0x53, 0x65, 0x74, 0x53, - 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6e, 0x74, 0x41, 0x6e, - 0x64, 0x44, 0x65, 0x73, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6e, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x74, 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, - 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x64, 0x65, 0x73, 0x61, 0x74, - 0x1a, 0x36, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x6b, 0x69, 0x70, - 0x54, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x74, - 0x6f, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x73, 0x6b, - 0x69, 0x70, 0x54, 0x6f, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x32, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x43, 0x61, 0x6e, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x63, 0x61, 0x6e, 0x5f, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x1a, 0x60, 0x0a, 0x20, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, - 0x12, 0x3c, 0x0a, 0x1a, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x18, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x1a, 0xce, - 0x06, 0x0a, 0x1c, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, - 0x6d, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, - 0x70, 0x0a, 0x0c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x66, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x6f, 0x77, 0x5f, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x32, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x66, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x32, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x6f, 0x77, 0x5f, 0x72, 0x61, + 0x64, 0x69, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x6f, 0x77, 0x52, + 0x61, 0x64, 0x69, 0x75, 0x73, 0x1a, 0x38, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x6c, 0x65, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, + 0x6f, 0x57, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x77, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x6f, 0x77, 0x1a, + 0x5a, 0x0a, 0x14, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x63, 0x0a, 0x17, 0x53, + 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x1a, 0x25, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x54, + 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x1a, 0x5f, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x54, 0x65, + 0x78, 0x74, 0x75, 0x72, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x25, + 0x0a, 0x0e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x78, + 0x74, 0x75, 0x72, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x3a, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x53, + 0x63, 0x65, 0x6e, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, + 0x63, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x6c, 0x61, 0x67, 0x5f, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x66, 0x6c, 0x61, 0x67, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x46, 0x0a, 0x1a, 0x53, 0x65, 0x74, 0x53, 0x63, 0x65, 0x6e, 0x65, + 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6e, 0x74, 0x41, 0x6e, 0x64, 0x44, 0x65, 0x73, + 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, + 0x52, 0x04, 0x74, 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x73, 0x61, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x64, 0x65, 0x73, 0x61, 0x74, 0x1a, 0x36, 0x0a, 0x12, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x6b, 0x69, 0x70, 0x54, 0x6f, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x74, 0x6f, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x73, 0x6b, 0x69, 0x70, 0x54, 0x6f, + 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x32, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, + 0x43, 0x61, 0x6e, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x61, 0x6e, + 0x5f, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, + 0x61, 0x6e, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x1a, 0x60, 0x0a, 0x20, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x6c, 0x65, 0x46, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x3c, 0x0a, 0x1a, + 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x18, 0x66, 0x72, 0x65, 0x65, 0x7a, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x1a, 0x8e, 0x01, 0x0a, 0x17, 0x46, + 0x72, 0x65, 0x65, 0x7a, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x6e, 0x76, + 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x74, 0x5f, 0x66, 0x72, + 0x6f, 0x7a, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x65, 0x74, 0x46, + 0x72, 0x6f, 0x7a, 0x65, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x02, 0x52, 0x12, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x1a, 0xa6, 0x07, 0x0a, 0x1c, + 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x70, 0x0a, 0x0c, + 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, + 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x52, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x73, + 0x0a, 0x0d, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x78, 0x74, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x73, 0x12, 0x73, 0x0a, 0x0d, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, - 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, - 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x7c, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x6f, 0x72, 0x6d, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x51, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, - 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x54, 0x72, - 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x48, 0x0a, 0x11, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xa1, - 0x01, 0x0a, 0x12, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, - 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x74, 0x74, - 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x61, - 0x6d, 0x65, 0x1a, 0xda, 0x01, 0x0a, 0x15, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x61, - 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x06, 0x61, - 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, - 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0b, 0x74, 0x72, - 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x6e, - 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, - 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x2a, - 0x05, 0x08, 0x64, 0x10, 0xca, 0x01, 0x22, 0x2e, 0x0a, 0x11, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x48, 0x75, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, - 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x22, 0x4d, 0x0a, 0x18, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x73, 0x67, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb9, 0x01, 0x0a, 0x1f, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x61, 0x70, 0x74, 0x69, 0x63, 0x73, 0x4d, 0x61, 0x6e, - 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, 0x6c, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x61, 0x6e, - 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, - 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6d, 0x70, - 0x6c, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x65, 0x66, - 0x66, 0x65, 0x63, 0x74, 0x41, 0x6d, 0x70, 0x6c, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x29, 0x0a, - 0x10, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x46, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x66, 0x66, 0x65, - 0x63, 0x74, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x02, 0x52, 0x0e, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0x91, 0x01, 0x0a, 0x20, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x48, 0x61, 0x70, 0x74, 0x69, 0x63, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, - 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x61, 0x6e, 0x64, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x12, - 0x31, 0x0a, 0x15, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x68, - 0x61, 0x73, 0x68, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, - 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x61, 0x73, 0x68, 0x43, 0x6f, - 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x63, 0x61, - 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, - 0x53, 0x63, 0x61, 0x6c, 0x65, 0x22, 0x58, 0x0a, 0x1f, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x69, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x47, 0x72, - 0x61, 0x70, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, - 0x8f, 0x03, 0x0a, 0x1d, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x6c, 0x6f, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x6c, - 0x6f, 0x74, 0x12, 0x66, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, - 0x65, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, + 0x78, 0x74, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x73, 0x12, 0x7c, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, + 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x51, 0x2e, + 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, + 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x52, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x12, 0x71, 0x0a, 0x0e, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x64, 0x6f, 0x74, 0x61, + 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x45, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, 0x65, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x51, 0x0a, 0x11, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x61, 0x73, + 0x68, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x64, 0x0a, 0x12, 0x56, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x26, 0x0a, + 0x0f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, 0x26, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, + 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x9d, 0x01, + 0x0a, 0x15, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x78, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, + 0x28, 0x0a, 0x06, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x10, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x51, 0x41, 0x6e, 0x67, 0x6c, + 0x65, 0x52, 0x06, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x0b, 0x74, 0x72, 0x61, + 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x4d, 0x73, 0x67, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x55, 0x0a, + 0x0e, 0x45, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, + 0x26, 0x0a, 0x0f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x68, 0x61, + 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x2a, 0x05, 0x08, 0x64, 0x10, 0xca, 0x01, 0x22, 0x2e, 0x0a, 0x11, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x48, 0x75, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x64, 0x22, 0x4d, 0x0a, 0x18, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, + 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb9, 0x01, 0x0a, 0x1f, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x61, 0x70, 0x74, 0x69, + 0x63, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, 0x6c, 0x73, 0x65, 0x12, 0x17, + 0x0a, 0x07, 0x68, 0x61, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x68, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x66, 0x66, 0x65, 0x63, + 0x74, 0x5f, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x0f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x41, 0x6d, 0x70, 0x6c, 0x69, 0x74, 0x75, + 0x64, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x66, 0x72, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x65, 0x66, + 0x66, 0x65, 0x63, 0x74, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x27, 0x0a, + 0x0f, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x44, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x91, 0x01, 0x0a, 0x20, 0x43, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x61, 0x70, 0x74, 0x69, 0x63, 0x73, 0x4d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x72, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x68, + 0x61, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x61, + 0x6e, 0x64, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x12, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x48, + 0x61, 0x73, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x66, 0x66, 0x65, 0x63, + 0x74, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x65, + 0x66, 0x66, 0x65, 0x63, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x22, 0x58, 0x0a, 0x1f, 0x43, 0x55, + 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x69, 0x6d, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x22, 0x8f, 0x03, 0x0a, 0x1d, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x66, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x61, + 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, + 0x65, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, + 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x74, 0x52, 0x10, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1a, + 0xe4, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, + 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x73, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, + 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, + 0x75, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, + 0x65, 0x75, 0x65, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x32, + 0x0a, 0x15, 0x73, 0x74, 0x61, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, + 0x64, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, + 0x74, 0x61, 0x72, 0x76, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x69, 0x63, + 0x6b, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x13, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x69, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, + 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x22, 0x84, 0x01, 0x0a, 0x1c, 0x43, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x73, 0x73, + 0x43, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, + 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6c, 0x64, + 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x73, 0x73, 0x5f, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x73, 0x73, 0x43, + 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x61, 0x64, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x41, 0x64, 0x64, 0x22, 0x3c, 0x0a, + 0x1b, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x09, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4c, 0x61, 0x67, 0x43, 0x6f, + 0x6d, 0x70, 0x65, 0x6e, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, + 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x5e, 0x0a, 0x1c, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x44, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, + 0x6c, 0x6c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x64, 0x6c, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x75, + 0x6c, 0x6c, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0a, 0x66, 0x75, 0x6c, 0x6c, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x1d, + 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x55, 0x74, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, + 0x05, 0x75, 0x74, 0x69, 0x6c, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x74, + 0x69, 0x6c, 0x31, 0x12, 0x14, 0x0a, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x32, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x32, 0x12, 0x14, 0x0a, 0x05, 0x75, 0x74, 0x69, + 0x6c, 0x33, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x33, 0x12, + 0x14, 0x0a, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x34, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x75, 0x74, 0x69, 0x6c, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x35, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x35, 0x22, 0x96, 0x04, 0x0a, 0x1d, + 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x55, 0x74, 0x69, + 0x6c, 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x63, 0x72, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x03, 0x63, 0x72, 0x63, 0x12, + 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x63, 0x72, 0x63, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x63, 0x72, + 0x63, 0x32, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x32, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x72, 0x63, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x63, 0x72, 0x63, 0x50, 0x61, 0x72, 0x74, 0x12, 0x1b, + 0x0a, 0x09, 0x63, 0x72, 0x63, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x32, 0x18, 0x06, 0x20, 0x03, 0x28, + 0x05, 0x52, 0x08, 0x63, 0x72, 0x63, 0x50, 0x61, 0x72, 0x74, 0x32, 0x12, 0x29, 0x0a, 0x10, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x12, 0x50, 0x0a, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x55, 0x74, 0x69, 0x6c, + 0x4d, 0x73, 0x67, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x74, 0x65, + 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x64, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x32, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0x1a, 0x5c, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, + 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x10, + 0x0a, 0x03, 0x63, 0x72, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x63, 0x72, 0x63, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xcb, 0x04, 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x44, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x6c, 0x69, 0x6e, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, + 0x69, 0x6e, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x6c, + 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, + 0x69, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6f, 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x44, 0x6c, 0x6c, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x43, 0x56, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, + 0x69, 0x63, 0x52, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x12, + 0x3e, 0x0a, 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x24, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x44, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x43, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x07, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x73, 0x1a, + 0x73, 0x0a, 0x0c, 0x43, 0x56, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x6c, 0x0a, 0x07, 0x43, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x41, 0x64, 0x64, 0x72, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x22, 0x6e, 0x0a, 0x1c, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x22, 0xf0, 0x06, 0x0a, 0x1f, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x72, 0x63, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x07, 0x52, 0x03, 0x63, 0x72, 0x63, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, + 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x74, + 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x73, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6f, 0x73, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x65, 0x72, 0x66, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x65, 0x72, 0x66, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x57, 0x0a, 0x0b, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, + 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0b, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x59, 0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x65, + 0x73, 0x32, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, + 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x49, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, + 0x0c, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x32, 0x12, 0x59, 0x0a, + 0x0c, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x33, 0x18, 0x0e, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0c, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x33, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x76, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, + 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x1a, 0x8f, 0x02, 0x0a, 0x0f, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x18, 0x0a, + 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, + 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, + 0x14, 0x0a, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x66, 0x69, 0x72, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, + 0x73, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x62, + 0x61, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x62, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, + 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x61, 0x73, + 0x65, 0x48, 0x61, 0x73, 0x68, 0x22, 0xac, 0x03, 0x0a, 0x1d, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x69, 0x61, + 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x12, 0x50, 0x0a, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, + 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, + 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, + 0x63, 0x2e, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x52, 0x0b, 0x64, 0x69, + 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x1a, 0xb8, 0x02, 0x0a, 0x0a, 0x44, 0x69, + 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, + 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x16, + 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, + 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x06, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x76, 0x61, 0x72, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x09, 0x76, 0x61, 0x72, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x22, 0xfc, 0x04, 0x0a, 0x20, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, + 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x0b, 0x64, 0x69, 0x61, + 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, - 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x74, 0x52, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, - 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0xe4, 0x01, 0x0a, 0x14, 0x63, - 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x66, - 0x6f, 0x5f, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x5f, - 0x71, 0x75, 0x65, 0x75, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x6f, - 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x51, 0x75, 0x65, 0x75, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x1a, - 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x64, 0x65, - 0x73, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x17, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, - 0x73, 0x69, 0x72, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x74, 0x61, - 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x63, - 0x6b, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x73, 0x74, 0x61, 0x72, 0x76, 0x65, - 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x32, 0x0a, - 0x15, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x64, 0x69, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, - 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x74, 0x69, - 0x6d, 0x65, 0x44, 0x69, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, - 0x74, 0x22, 0x84, 0x01, 0x0a, 0x1c, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x73, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, - 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x77, 0x6f, 0x72, - 0x6c, 0x64, 0x5f, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x50, 0x61, 0x6e, 0x65, 0x6c, - 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x73, 0x73, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x73, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x65, - 0x73, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x05, 0x69, 0x73, 0x41, 0x64, 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x43, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x46, 0x72, - 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x6d, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x66, 0x72, 0x61, - 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4c, 0x61, 0x67, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x69, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x5e, 0x0a, 0x1c, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x6c, 0x6c, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6c, 0x6c, 0x5f, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6c, 0x6c, 0x41, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x72, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x66, 0x75, 0x6c, 0x6c, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x1d, 0x43, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x55, 0x74, - 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x75, 0x74, 0x69, 0x6c, - 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x31, 0x12, 0x14, - 0x0a, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, - 0x74, 0x69, 0x6c, 0x32, 0x12, 0x14, 0x0a, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x33, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x33, 0x12, 0x14, 0x0a, 0x05, 0x75, 0x74, - 0x69, 0x6c, 0x34, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x34, - 0x12, 0x14, 0x0a, 0x05, 0x75, 0x74, 0x69, 0x6c, 0x35, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x05, 0x75, 0x74, 0x69, 0x6c, 0x35, 0x22, 0x96, 0x04, 0x0a, 0x1d, 0x43, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x55, 0x74, 0x69, 0x6c, 0x4d, 0x73, 0x67, 0x5f, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x72, 0x63, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x03, 0x63, 0x72, 0x63, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, - 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x72, 0x63, - 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x63, 0x72, 0x63, 0x32, 0x12, 0x1f, 0x0a, - 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0x12, 0x19, - 0x0a, 0x08, 0x63, 0x72, 0x63, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, - 0x52, 0x07, 0x63, 0x72, 0x63, 0x50, 0x61, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x72, 0x63, - 0x5f, 0x70, 0x61, 0x72, 0x74, 0x32, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x63, 0x72, - 0x63, 0x50, 0x61, 0x72, 0x74, 0x32, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x50, 0x0a, - 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x55, 0x74, 0x69, 0x6c, 0x4d, 0x73, 0x67, 0x5f, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x52, 0x0b, 0x69, 0x74, 0x65, 0x6d, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, - 0x1c, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1f, 0x0a, - 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x21, - 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x32, 0x1a, 0x5c, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, - 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x72, 0x63, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x63, 0x72, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, - 0x9d, 0x03, 0x0a, 0x16, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x5f, 0x44, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, - 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, - 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, - 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x64, 0x12, 0x1c, + 0x67, 0x65, 0x5f, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x5f, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, + 0x63, 0x52, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x12, 0x23, + 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x6f, 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4b, 0x0a, - 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x07, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x44, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x2e, 0x43, 0x56, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x52, 0x0b, 0x64, - 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x1a, 0x73, 0x0a, 0x0c, 0x43, 0x56, - 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, - 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, 0x78, - 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, - 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, - 0x6e, 0x0a, 0x1c, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x12, - 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x16, 0x0a, - 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, - 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, - 0xf6, 0x05, 0x0a, 0x1f, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x5f, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x72, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, - 0x52, 0x03, 0x63, 0x72, 0x63, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6f, 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x65, 0x72, 0x66, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x65, 0x72, 0x66, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x29, 0x0a, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x57, 0x0a, 0x0b, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, - 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, - 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x52, 0x0b, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, - 0x59, 0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x32, 0x18, - 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x6f, 0x74, 0x61, 0x2e, 0x43, 0x55, 0x73, - 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x5f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0c, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x32, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, - 0x76, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x6e, - 0x76, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x75, - 0x69, 0x6c, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x1a, 0x8f, 0x02, 0x0a, 0x0f, 0x49, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, - 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, - 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, - 0x0b, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1b, - 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x62, - 0x61, 0x73, 0x65, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x62, 0x61, 0x73, 0x65, 0x48, 0x61, 0x73, 0x68, 0x2a, 0x8d, 0x08, 0x0a, 0x11, 0x45, 0x42, 0x61, - 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x17, - 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x55, 0x4d, 0x5f, 0x43, 0x6c, - 0x6f, 0x73, 0x65, 0x43, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x66, 0x12, 0x19, 0x0a, 0x15, - 0x55, 0x4d, 0x5f, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x44, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x10, 0x67, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x43, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x10, 0x68, - 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x10, 0x69, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4d, 0x5f, - 0x46, 0x61, 0x64, 0x65, 0x10, 0x6a, 0x12, 0x10, 0x0a, 0x0c, 0x55, 0x4d, 0x5f, 0x47, 0x61, 0x6d, - 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x10, 0x6b, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4d, 0x5f, 0x48, - 0x75, 0x64, 0x4d, 0x73, 0x67, 0x10, 0x6e, 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x4d, 0x5f, 0x48, 0x75, - 0x64, 0x54, 0x65, 0x78, 0x74, 0x10, 0x6f, 0x12, 0x12, 0x0a, 0x0e, 0x55, 0x4d, 0x5f, 0x43, 0x6f, - 0x6c, 0x6f, 0x72, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x10, 0x71, 0x12, 0x13, 0x0a, 0x0f, 0x55, - 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x72, - 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x48, 0x55, 0x44, 0x10, - 0x73, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4d, 0x5f, 0x52, 0x75, 0x6d, 0x62, 0x6c, 0x65, 0x10, 0x74, - 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x4d, 0x5f, 0x53, 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, 0x10, 0x75, - 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x53, 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, 0x32, 0x10, - 0x76, 0x12, 0x15, 0x0a, 0x11, 0x55, 0x4d, 0x5f, 0x53, 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, 0x43, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x10, 0x77, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4d, 0x5f, 0x53, - 0x68, 0x61, 0x6b, 0x65, 0x10, 0x78, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x53, 0x68, 0x61, - 0x6b, 0x65, 0x44, 0x69, 0x72, 0x10, 0x79, 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x4d, 0x5f, 0x54, 0x65, - 0x78, 0x74, 0x4d, 0x73, 0x67, 0x10, 0x7c, 0x12, 0x11, 0x0a, 0x0d, 0x55, 0x4d, 0x5f, 0x53, 0x63, - 0x72, 0x65, 0x65, 0x6e, 0x54, 0x69, 0x6c, 0x74, 0x10, 0x7d, 0x12, 0x11, 0x0a, 0x0c, 0x55, 0x4d, - 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x10, 0x80, 0x01, 0x12, 0x11, 0x0a, - 0x0c, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x10, 0x82, 0x01, - 0x12, 0x12, 0x0a, 0x0d, 0x55, 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x69, 0x63, 0x6b, 0x75, - 0x70, 0x10, 0x83, 0x01, 0x12, 0x12, 0x0a, 0x0d, 0x55, 0x4d, 0x5f, 0x41, 0x6d, 0x6d, 0x6f, 0x44, - 0x65, 0x6e, 0x69, 0x65, 0x64, 0x10, 0x84, 0x01, 0x12, 0x10, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x53, - 0x68, 0x6f, 0x77, 0x4d, 0x65, 0x6e, 0x75, 0x10, 0x86, 0x01, 0x12, 0x12, 0x0a, 0x0d, 0x55, 0x4d, - 0x5f, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x4d, 0x73, 0x67, 0x10, 0x87, 0x01, 0x12, 0x1f, - 0x0a, 0x1a, 0x55, 0x4d, 0x5f, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x61, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x10, 0x8e, 0x01, 0x12, - 0x18, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x8f, 0x01, 0x12, 0x16, 0x0a, 0x11, 0x55, 0x4d, 0x5f, - 0x41, 0x75, 0x64, 0x69, 0x6f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x10, 0x90, - 0x01, 0x12, 0x17, 0x0a, 0x12, 0x55, 0x4d, 0x5f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, - 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x10, 0x91, 0x01, 0x12, 0x10, 0x0a, 0x0b, 0x55, 0x4d, - 0x5f, 0x48, 0x75, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x92, 0x01, 0x12, 0x17, 0x0a, 0x12, - 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x10, 0x94, 0x01, 0x12, 0x17, 0x0a, 0x12, 0x55, 0x4d, 0x5f, 0x41, 0x6e, 0x69, 0x6d, - 0x47, 0x72, 0x61, 0x70, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x10, 0x95, 0x01, 0x12, 0x1b, - 0x0a, 0x16, 0x55, 0x4d, 0x5f, 0x48, 0x61, 0x70, 0x74, 0x69, 0x63, 0x73, 0x4d, 0x61, 0x6e, 0x61, - 0x67, 0x65, 0x72, 0x50, 0x75, 0x6c, 0x73, 0x65, 0x10, 0x96, 0x01, 0x12, 0x1c, 0x0a, 0x17, 0x55, - 0x4d, 0x5f, 0x48, 0x61, 0x70, 0x74, 0x69, 0x63, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, - 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x10, 0x97, 0x01, 0x12, 0x19, 0x0a, 0x14, 0x55, 0x4d, 0x5f, - 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x10, 0x98, 0x01, 0x12, 0x18, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x43, 0x73, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x10, 0x99, 0x01, 0x12, 0x17, - 0x0a, 0x12, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x46, 0x72, 0x61, 0x6d, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x10, 0x9a, 0x01, 0x12, 0x1c, 0x0a, 0x17, 0x55, 0x4d, 0x5f, 0x4c, 0x61, - 0x67, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x10, 0x9b, 0x01, 0x12, 0x18, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x44, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x9c, 0x01, 0x12, - 0x19, 0x0a, 0x14, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x55, 0x74, 0x69, - 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x9d, 0x01, 0x12, 0x1a, 0x0a, 0x15, 0x55, 0x4d, - 0x5f, 0x55, 0x74, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x01, 0x12, 0x19, 0x0a, 0x14, 0x55, 0x4d, 0x5f, 0x44, 0x6c, 0x6c, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9f, - 0x01, 0x12, 0x18, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xa0, 0x01, 0x12, 0x19, 0x0a, 0x14, 0x55, - 0x4d, 0x5f, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x01, 0x12, 0x10, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x4d, 0x41, 0x58, - 0x5f, 0x42, 0x41, 0x53, 0x45, 0x10, 0xc8, 0x01, 0x2a, 0x94, 0x01, 0x0a, 0x13, 0x45, 0x42, 0x61, - 0x73, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, - 0x12, 0x12, 0x0a, 0x0d, 0x45, 0x4d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x4a, 0x69, 0x6e, 0x67, 0x6c, - 0x65, 0x10, 0x88, 0x01, 0x12, 0x15, 0x0a, 0x10, 0x45, 0x4d, 0x5f, 0x53, 0x63, 0x72, 0x65, 0x65, - 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x10, 0x89, 0x01, 0x12, 0x17, 0x0a, 0x12, 0x45, - 0x4d, 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x44, 0x65, 0x63, 0x61, 0x6c, - 0x73, 0x10, 0x8a, 0x01, 0x12, 0x16, 0x0a, 0x11, 0x45, 0x4d, 0x5f, 0x50, 0x72, 0x6f, 0x70, 0x61, - 0x67, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x10, 0x8b, 0x01, 0x12, 0x0f, 0x0a, 0x0a, - 0x45, 0x4d, 0x5f, 0x44, 0x6f, 0x53, 0x70, 0x61, 0x72, 0x6b, 0x10, 0x8c, 0x01, 0x12, 0x10, 0x0a, - 0x0b, 0x45, 0x4d, 0x5f, 0x46, 0x69, 0x78, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x10, 0x8d, 0x01, 0x2a, - 0x6f, 0x0a, 0x09, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x09, - 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x53, 0x54, 0x41, - 0x54, 0x53, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x43, 0x52, 0x45, - 0x44, 0x49, 0x54, 0x53, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4c, - 0x41, 0x54, 0x45, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x4c, 0x4f, 0x47, 0x4f, 0x10, 0x02, 0x12, - 0x0f, 0x0a, 0x0b, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4f, 0x55, 0x54, 0x54, 0x52, 0x4f, 0x10, 0x03, - 0x2a, 0xbe, 0x0b, 0x0a, 0x10, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x45, - 0x53, 0x53, 0x41, 0x47, 0x45, 0x12, 0x26, 0x0a, 0x22, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, - 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x26, 0x0a, - 0x22, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, - 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, - 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, - 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x4f, 0x52, 0x57, - 0x41, 0x52, 0x44, 0x10, 0x02, 0x12, 0x32, 0x0a, 0x2e, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, - 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52, 0x49, 0x45, - 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x2f, 0x0a, 0x2b, 0x47, 0x41, 0x4d, - 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, - 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, - 0x46, 0x41, 0x4c, 0x4c, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x04, 0x12, 0x2a, 0x0a, 0x26, 0x47, 0x41, - 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, - 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, - 0x5f, 0x45, 0x4e, 0x54, 0x10, 0x05, 0x12, 0x2d, 0x0a, 0x29, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, - 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, - 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x46, 0x46, - 0x53, 0x45, 0x54, 0x10, 0x06, 0x12, 0x27, 0x0a, 0x23, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, - 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x10, 0x07, 0x12, 0x31, - 0x0a, 0x2d, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, - 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, - 0x53, 0x54, 0x52, 0x4f, 0x59, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x4c, 0x56, 0x49, 0x4e, 0x47, 0x10, - 0x08, 0x12, 0x27, 0x0a, 0x23, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, - 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x52, 0x45, 0x4c, 0x45, 0x41, 0x53, 0x45, 0x10, 0x09, 0x12, 0x27, 0x0a, 0x23, 0x47, 0x41, - 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, - 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4c, 0x41, 0x54, 0x45, 0x4e, 0x43, - 0x59, 0x10, 0x0a, 0x12, 0x2b, 0x0a, 0x27, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, - 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, - 0x4e, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x55, 0x4c, 0x44, 0x5f, 0x44, 0x52, 0x41, 0x57, 0x10, 0x0b, + 0x05, 0x52, 0x09, 0x6f, 0x73, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0xe8, 0x02, 0x0a, 0x0a, 0x44, 0x69, 0x61, + 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, + 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, + 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x6c, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x62, + 0x61, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, + 0x14, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x72, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, + 0x69, 0x61, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x06, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, + 0x18, 0x0a, 0x07, 0x61, 0x75, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x07, 0x61, 0x75, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6c, 0x61, + 0x63, 0x65, 0x62, 0x6f, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x62, 0x6f, 0x22, 0x94, 0x01, 0x0a, 0x1a, 0x43, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x31, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x31, 0x12, 0x16, + 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x32, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x31, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x31, + 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x32, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x0c, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x32, 0x2a, 0xee, 0x08, 0x0a, 0x11, 0x45, + 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x41, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x55, 0x4d, 0x5f, + 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x66, 0x12, 0x19, + 0x0a, 0x15, 0x55, 0x4d, 0x5f, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x61, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x10, 0x67, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4d, 0x5f, + 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x65, + 0x10, 0x68, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x10, 0x69, 0x12, 0x0b, 0x0a, 0x07, 0x55, + 0x4d, 0x5f, 0x46, 0x61, 0x64, 0x65, 0x10, 0x6a, 0x12, 0x10, 0x0a, 0x0c, 0x55, 0x4d, 0x5f, 0x47, + 0x61, 0x6d, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x10, 0x6b, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4d, + 0x5f, 0x48, 0x75, 0x64, 0x4d, 0x73, 0x67, 0x10, 0x6e, 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x4d, 0x5f, + 0x48, 0x75, 0x64, 0x54, 0x65, 0x78, 0x74, 0x10, 0x6f, 0x12, 0x12, 0x0a, 0x0e, 0x55, 0x4d, 0x5f, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x10, 0x71, 0x12, 0x13, 0x0a, + 0x0f, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x10, 0x72, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x73, 0x65, 0x74, 0x48, 0x55, + 0x44, 0x10, 0x73, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4d, 0x5f, 0x52, 0x75, 0x6d, 0x62, 0x6c, 0x65, + 0x10, 0x74, 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x4d, 0x5f, 0x53, 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, + 0x10, 0x75, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x53, 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, + 0x32, 0x10, 0x76, 0x12, 0x15, 0x0a, 0x11, 0x55, 0x4d, 0x5f, 0x53, 0x61, 0x79, 0x54, 0x65, 0x78, + 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x10, 0x77, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4d, + 0x5f, 0x53, 0x68, 0x61, 0x6b, 0x65, 0x10, 0x78, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x53, + 0x68, 0x61, 0x6b, 0x65, 0x44, 0x69, 0x72, 0x10, 0x79, 0x12, 0x11, 0x0a, 0x0d, 0x55, 0x4d, 0x5f, + 0x57, 0x61, 0x74, 0x65, 0x72, 0x53, 0x68, 0x61, 0x6b, 0x65, 0x10, 0x7a, 0x12, 0x0e, 0x0a, 0x0a, + 0x55, 0x4d, 0x5f, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x73, 0x67, 0x10, 0x7c, 0x12, 0x11, 0x0a, 0x0d, + 0x55, 0x4d, 0x5f, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x54, 0x69, 0x6c, 0x74, 0x10, 0x7d, 0x12, + 0x11, 0x0a, 0x0c, 0x55, 0x4d, 0x5f, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x10, + 0x80, 0x01, 0x12, 0x11, 0x0a, 0x0c, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x6e, 0x64, 0x41, 0x75, 0x64, + 0x69, 0x6f, 0x10, 0x82, 0x01, 0x12, 0x12, 0x0a, 0x0d, 0x55, 0x4d, 0x5f, 0x49, 0x74, 0x65, 0x6d, + 0x50, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x10, 0x83, 0x01, 0x12, 0x12, 0x0a, 0x0d, 0x55, 0x4d, 0x5f, + 0x41, 0x6d, 0x6d, 0x6f, 0x44, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x10, 0x84, 0x01, 0x12, 0x10, 0x0a, + 0x0b, 0x55, 0x4d, 0x5f, 0x53, 0x68, 0x6f, 0x77, 0x4d, 0x65, 0x6e, 0x75, 0x10, 0x86, 0x01, 0x12, + 0x12, 0x0a, 0x0d, 0x55, 0x4d, 0x5f, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x4d, 0x73, 0x67, + 0x10, 0x87, 0x01, 0x12, 0x1f, 0x0a, 0x1a, 0x55, 0x4d, 0x5f, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, + 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, + 0x72, 0x10, 0x8e, 0x01, 0x12, 0x18, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x43, 0x61, 0x6d, 0x65, 0x72, + 0x61, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x8f, 0x01, 0x12, 0x16, + 0x0a, 0x11, 0x55, 0x4d, 0x5f, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x10, 0x90, 0x01, 0x12, 0x17, 0x0a, 0x12, 0x55, 0x4d, 0x5f, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x10, 0x91, 0x01, 0x12, + 0x10, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, 0x48, 0x75, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x92, + 0x01, 0x12, 0x17, 0x0a, 0x12, 0x55, 0x4d, 0x5f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x47, 0x61, + 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x94, 0x01, 0x12, 0x17, 0x0a, 0x12, 0x55, 0x4d, + 0x5f, 0x41, 0x6e, 0x69, 0x6d, 0x47, 0x72, 0x61, 0x70, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x10, 0x95, 0x01, 0x12, 0x1b, 0x0a, 0x16, 0x55, 0x4d, 0x5f, 0x48, 0x61, 0x70, 0x74, 0x69, 0x63, + 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x75, 0x6c, 0x73, 0x65, 0x10, 0x96, 0x01, + 0x12, 0x1c, 0x0a, 0x17, 0x55, 0x4d, 0x5f, 0x48, 0x61, 0x70, 0x74, 0x69, 0x63, 0x73, 0x4d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x72, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x10, 0x97, 0x01, 0x12, 0x19, + 0x0a, 0x14, 0x55, 0x4d, 0x5f, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x51, 0x75, 0x65, 0x75, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x98, 0x01, 0x12, 0x18, 0x0a, 0x13, 0x55, 0x4d, 0x5f, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x73, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, + 0x10, 0x99, 0x01, 0x12, 0x17, 0x0a, 0x12, 0x55, 0x4d, 0x5f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x46, 0x72, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x10, 0x9a, 0x01, 0x12, 0x1c, 0x0a, 0x17, + 0x55, 0x4d, 0x5f, 0x4c, 0x61, 0x67, 0x43, 0x6f, 0x6d, 0x70, 0x65, 0x6e, 0x73, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x9b, 0x01, 0x12, 0x18, 0x0a, 0x13, 0x55, 0x4d, + 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x10, 0x9c, 0x01, 0x12, 0x19, 0x0a, 0x14, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x55, 0x74, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x9d, 0x01, 0x12, + 0x1a, 0x0a, 0x15, 0x55, 0x4d, 0x5f, 0x55, 0x74, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x9e, 0x01, 0x12, 0x19, 0x0a, 0x14, 0x55, + 0x4d, 0x5f, 0x44, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x10, 0x9f, 0x01, 0x12, 0x18, 0x0a, 0x13, 0x55, 0x4d, 0x5f, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xa0, 0x01, + 0x12, 0x19, 0x0a, 0x14, 0x55, 0x4d, 0x5f, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0xa1, 0x01, 0x12, 0x19, 0x0a, 0x14, 0x55, + 0x4d, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, + 0x74, 0x69, 0x63, 0x10, 0xa2, 0x01, 0x12, 0x1a, 0x0a, 0x15, 0x55, 0x4d, 0x5f, 0x44, 0x69, 0x61, + 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, + 0xa3, 0x01, 0x12, 0x15, 0x0a, 0x10, 0x55, 0x4d, 0x5f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x55, 0x73, + 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0xa4, 0x01, 0x12, 0x10, 0x0a, 0x0b, 0x55, 0x4d, 0x5f, + 0x4d, 0x41, 0x58, 0x5f, 0x42, 0x41, 0x53, 0x45, 0x10, 0xc8, 0x01, 0x2a, 0x94, 0x01, 0x0a, 0x13, + 0x45, 0x42, 0x61, 0x73, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x0d, 0x45, 0x4d, 0x5f, 0x50, 0x6c, 0x61, 0x79, 0x4a, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x10, 0x88, 0x01, 0x12, 0x15, 0x0a, 0x10, 0x45, 0x4d, 0x5f, 0x53, 0x63, + 0x72, 0x65, 0x65, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x10, 0x89, 0x01, 0x12, 0x17, + 0x0a, 0x12, 0x45, 0x4d, 0x5f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x6c, 0x6c, 0x44, 0x65, + 0x63, 0x61, 0x6c, 0x73, 0x10, 0x8a, 0x01, 0x12, 0x16, 0x0a, 0x11, 0x45, 0x4d, 0x5f, 0x50, 0x72, + 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x10, 0x8b, 0x01, 0x12, + 0x0f, 0x0a, 0x0a, 0x45, 0x4d, 0x5f, 0x44, 0x6f, 0x53, 0x70, 0x61, 0x72, 0x6b, 0x10, 0x8c, 0x01, + 0x12, 0x10, 0x0a, 0x0b, 0x45, 0x4d, 0x5f, 0x46, 0x69, 0x78, 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x10, + 0x8d, 0x01, 0x2a, 0x6f, 0x0a, 0x09, 0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x16, 0x0a, 0x09, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, + 0x43, 0x52, 0x45, 0x44, 0x49, 0x54, 0x53, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x4f, 0x4c, + 0x4c, 0x5f, 0x4c, 0x41, 0x54, 0x45, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x4c, 0x4f, 0x47, 0x4f, + 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4f, 0x55, 0x54, 0x54, 0x52, + 0x4f, 0x10, 0x03, 0x2a, 0xf0, 0x0b, 0x0a, 0x10, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, + 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x12, 0x26, 0x0a, 0x22, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, + 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, - 0x46, 0x52, 0x4f, 0x5a, 0x45, 0x4e, 0x10, 0x0c, 0x12, 0x3f, 0x0a, 0x3b, 0x47, 0x41, 0x4d, 0x45, + 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, - 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x43, - 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x54, 0x54, - 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x0d, 0x12, 0x36, 0x0a, 0x32, 0x47, 0x41, 0x4d, + 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x46, + 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x10, 0x02, 0x12, 0x32, 0x0a, 0x2e, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, + 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x4f, + 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x2f, 0x0a, 0x2b, + 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, + 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, + 0x54, 0x45, 0x5f, 0x46, 0x41, 0x4c, 0x4c, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x04, 0x12, 0x2a, 0x0a, + 0x26, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, + 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, + 0x41, 0x54, 0x45, 0x5f, 0x45, 0x4e, 0x54, 0x10, 0x05, 0x12, 0x2d, 0x0a, 0x29, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, - 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, - 0x0e, 0x12, 0x32, 0x0a, 0x2e, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, - 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x46, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x4f, 0x50, 0x45, 0x52, 0x54, - 0x49, 0x45, 0x53, 0x10, 0x0f, 0x12, 0x28, 0x0a, 0x24, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, - 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x10, 0x10, 0x12, - 0x34, 0x0a, 0x30, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, - 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, - 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x55, 0x4c, 0x44, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, - 0x46, 0x4f, 0x57, 0x10, 0x11, 0x12, 0x37, 0x0a, 0x33, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, - 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, - 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x10, 0x12, 0x12, 0x3a, - 0x0a, 0x36, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, - 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, - 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, - 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x10, 0x13, 0x12, 0x35, 0x0a, 0x31, 0x47, 0x41, - 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, - 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x45, - 0x58, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x10, - 0x14, 0x12, 0x3d, 0x0a, 0x39, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, + 0x4f, 0x46, 0x46, 0x53, 0x45, 0x54, 0x10, 0x06, 0x12, 0x27, 0x0a, 0x23, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, + 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x10, + 0x07, 0x12, 0x31, 0x0a, 0x2d, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, - 0x54, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x5f, 0x46, 0x4c, 0x41, 0x47, 0x10, 0x15, - 0x12, 0x3f, 0x0a, 0x3b, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, - 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, - 0x53, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x54, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x4e, 0x44, 0x5f, 0x44, 0x45, 0x53, 0x41, 0x54, 0x10, - 0x16, 0x12, 0x2d, 0x0a, 0x29, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, + 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x4c, 0x56, 0x49, + 0x4e, 0x47, 0x10, 0x08, 0x12, 0x27, 0x0a, 0x23, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, + 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x4c, 0x45, 0x41, 0x53, 0x45, 0x10, 0x09, 0x12, 0x27, 0x0a, + 0x23, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, + 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4c, 0x41, 0x54, + 0x45, 0x4e, 0x43, 0x59, 0x10, 0x0a, 0x12, 0x2b, 0x0a, 0x27, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, + 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, + 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x55, 0x4c, 0x44, 0x5f, 0x44, 0x52, 0x41, + 0x57, 0x10, 0x0b, 0x12, 0x26, 0x0a, 0x22, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, + 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x5f, 0x46, 0x52, 0x4f, 0x5a, 0x45, 0x4e, 0x10, 0x0c, 0x12, 0x3f, 0x0a, 0x3b, 0x47, + 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, + 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, + 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, + 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x0d, 0x12, 0x36, 0x0a, 0x32, + 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, + 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, + 0x54, 0x45, 0x5f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, + 0x4f, 0x4e, 0x10, 0x0e, 0x12, 0x32, 0x0a, 0x2e, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, + 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x46, 0x4f, 0x57, 0x5f, 0x50, 0x52, 0x4f, 0x50, + 0x45, 0x52, 0x54, 0x49, 0x45, 0x53, 0x10, 0x0f, 0x12, 0x28, 0x0a, 0x24, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, + 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x54, 0x45, 0x58, 0x54, + 0x10, 0x10, 0x12, 0x34, 0x0a, 0x30, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, + 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, + 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x4f, 0x55, 0x4c, 0x44, 0x5f, 0x43, 0x48, 0x45, + 0x43, 0x4b, 0x5f, 0x46, 0x4f, 0x57, 0x10, 0x11, 0x12, 0x37, 0x0a, 0x33, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, + 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, + 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x10, + 0x12, 0x12, 0x3a, 0x0a, 0x36, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, - 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x44, 0x10, 0x17, - 0x12, 0x2c, 0x0a, 0x28, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, - 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, - 0x53, 0x4b, 0x49, 0x50, 0x5f, 0x54, 0x4f, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x18, 0x12, 0x2a, - 0x0a, 0x26, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, - 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x41, - 0x4e, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5a, 0x45, 0x10, 0x19, 0x12, 0x37, 0x0a, 0x33, 0x47, 0x41, - 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, - 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x4e, 0x41, - 0x4d, 0x45, 0x44, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x58, - 0x54, 0x10, 0x1a, 0x12, 0x30, 0x0a, 0x2c, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, + 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x4f, 0x49, + 0x4e, 0x54, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x10, 0x13, 0x12, 0x35, 0x0a, + 0x31, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, + 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, + 0x5f, 0x54, 0x45, 0x58, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, + 0x54, 0x45, 0x10, 0x14, 0x12, 0x3d, 0x0a, 0x39, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, + 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x5f, 0x4f, 0x42, + 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x47, 0x45, 0x4e, 0x45, 0x52, 0x49, 0x43, 0x5f, 0x46, 0x4c, 0x41, + 0x47, 0x10, 0x15, 0x12, 0x3f, 0x0a, 0x3b, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, - 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x46, - 0x4f, 0x52, 0x4d, 0x10, 0x1b, 0x12, 0x3a, 0x0a, 0x36, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, - 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, - 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5a, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, - 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x45, 0x10, - 0x1c, 0x2a, 0x74, 0x0a, 0x10, 0x45, 0x48, 0x61, 0x70, 0x74, 0x69, 0x63, 0x50, 0x75, 0x6c, 0x73, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x56, 0x52, 0x5f, 0x48, 0x41, 0x4e, 0x44, - 0x5f, 0x48, 0x41, 0x50, 0x54, 0x49, 0x43, 0x5f, 0x50, 0x55, 0x4c, 0x53, 0x45, 0x5f, 0x4c, 0x49, - 0x47, 0x48, 0x54, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x56, 0x52, 0x5f, 0x48, 0x41, 0x4e, 0x44, - 0x5f, 0x48, 0x41, 0x50, 0x54, 0x49, 0x43, 0x5f, 0x50, 0x55, 0x4c, 0x53, 0x45, 0x5f, 0x4d, 0x45, - 0x44, 0x49, 0x55, 0x4d, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x56, 0x52, 0x5f, 0x48, 0x41, 0x4e, - 0x44, 0x5f, 0x48, 0x41, 0x50, 0x54, 0x49, 0x43, 0x5f, 0x50, 0x55, 0x4c, 0x53, 0x45, 0x5f, 0x53, - 0x54, 0x52, 0x4f, 0x4e, 0x47, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, - 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, - 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x53, 0x43, 0x45, 0x4e, 0x45, 0x5f, 0x4f, 0x42, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x54, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x4e, 0x44, 0x5f, 0x44, 0x45, 0x53, + 0x41, 0x54, 0x10, 0x16, 0x12, 0x2d, 0x0a, 0x29, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, + 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x5f, 0x4e, 0x41, 0x4d, 0x45, + 0x44, 0x10, 0x17, 0x12, 0x2c, 0x0a, 0x28, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, + 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, + 0x4e, 0x54, 0x5f, 0x53, 0x4b, 0x49, 0x50, 0x5f, 0x54, 0x4f, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, + 0x18, 0x12, 0x2a, 0x0a, 0x26, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, + 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, + 0x5f, 0x43, 0x41, 0x4e, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5a, 0x45, 0x10, 0x19, 0x12, 0x37, 0x0a, + 0x33, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, + 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x54, + 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x44, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x43, 0x4f, 0x4e, + 0x54, 0x45, 0x58, 0x54, 0x10, 0x1a, 0x12, 0x30, 0x0a, 0x2c, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, + 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, + 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x54, 0x52, 0x41, + 0x4e, 0x53, 0x46, 0x4f, 0x52, 0x4d, 0x10, 0x1b, 0x12, 0x3a, 0x0a, 0x36, 0x47, 0x41, 0x4d, 0x45, + 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, + 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5a, 0x45, 0x5f, 0x54, + 0x52, 0x41, 0x4e, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, + 0x44, 0x45, 0x10, 0x1c, 0x12, 0x30, 0x0a, 0x2c, 0x47, 0x41, 0x4d, 0x45, 0x5f, 0x50, 0x41, 0x52, + 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, 0x45, 0x52, 0x5f, 0x45, 0x56, + 0x45, 0x4e, 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5a, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x4c, + 0x56, 0x49, 0x4e, 0x47, 0x10, 0x1d, 0x2a, 0x74, 0x0a, 0x10, 0x45, 0x48, 0x61, 0x70, 0x74, 0x69, + 0x63, 0x50, 0x75, 0x6c, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x56, 0x52, + 0x5f, 0x48, 0x41, 0x4e, 0x44, 0x5f, 0x48, 0x41, 0x50, 0x54, 0x49, 0x43, 0x5f, 0x50, 0x55, 0x4c, + 0x53, 0x45, 0x5f, 0x4c, 0x49, 0x47, 0x48, 0x54, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x56, 0x52, + 0x5f, 0x48, 0x41, 0x4e, 0x44, 0x5f, 0x48, 0x41, 0x50, 0x54, 0x49, 0x43, 0x5f, 0x50, 0x55, 0x4c, + 0x53, 0x45, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x55, 0x4d, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x56, + 0x52, 0x5f, 0x48, 0x41, 0x4e, 0x44, 0x5f, 0x48, 0x41, 0x50, 0x54, 0x49, 0x43, 0x5f, 0x50, 0x55, + 0x4c, 0x53, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x4f, 0x4e, 0x47, 0x10, 0x02, 0x42, 0x25, 0x5a, 0x23, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, + 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, + 0x6f, 0x74, 0x61, } var ( @@ -7438,7 +8391,7 @@ func file_usermessages_proto_rawDescGZIP() []byte { } var file_usermessages_proto_enumTypes = make([]protoimpl.EnumInfo, 5) -var file_usermessages_proto_msgTypes = make([]protoimpl.MessageInfo, 87) +var file_usermessages_proto_msgTypes = make([]protoimpl.MessageInfo, 96) var file_usermessages_proto_goTypes = []interface{}{ (EBaseUserMessages)(0), // 0: dota.EBaseUserMessages (EBaseEntityMessages)(0), // 1: dota.EBaseEntityMessages @@ -7454,164 +8407,179 @@ var file_usermessages_proto_goTypes = []interface{}{ (*CUserMessageFade)(nil), // 11: dota.CUserMessageFade (*CUserMessageShake)(nil), // 12: dota.CUserMessageShake (*CUserMessageShakeDir)(nil), // 13: dota.CUserMessageShakeDir - (*CUserMessageScreenTilt)(nil), // 14: dota.CUserMessageScreenTilt - (*CUserMessageSayText)(nil), // 15: dota.CUserMessageSayText - (*CUserMessageSayText2)(nil), // 16: dota.CUserMessageSayText2 - (*CUserMessageHudMsg)(nil), // 17: dota.CUserMessageHudMsg - (*CUserMessageHudText)(nil), // 18: dota.CUserMessageHudText - (*CUserMessageTextMsg)(nil), // 19: dota.CUserMessageTextMsg - (*CUserMessageGameTitle)(nil), // 20: dota.CUserMessageGameTitle - (*CUserMessageResetHUD)(nil), // 21: dota.CUserMessageResetHUD - (*CUserMessageSendAudio)(nil), // 22: dota.CUserMessageSendAudio - (*CUserMessageAudioParameter)(nil), // 23: dota.CUserMessageAudioParameter - (*CUserMessageVoiceMask)(nil), // 24: dota.CUserMessageVoiceMask - (*CUserMessageRequestState)(nil), // 25: dota.CUserMessageRequestState - (*CUserMessageRumble)(nil), // 26: dota.CUserMessageRumble - (*CUserMessageSayTextChannel)(nil), // 27: dota.CUserMessageSayTextChannel - (*CUserMessageColoredText)(nil), // 28: dota.CUserMessageColoredText - (*CUserMessageItemPickup)(nil), // 29: dota.CUserMessageItemPickup - (*CUserMessageAmmoDenied)(nil), // 30: dota.CUserMessageAmmoDenied - (*CUserMessageShowMenu)(nil), // 31: dota.CUserMessageShowMenu - (*CUserMessageCreditsMsg)(nil), // 32: dota.CUserMessageCreditsMsg - (*CEntityMessagePlayJingle)(nil), // 33: dota.CEntityMessagePlayJingle - (*CEntityMessageScreenOverlay)(nil), // 34: dota.CEntityMessageScreenOverlay - (*CEntityMessageRemoveAllDecals)(nil), // 35: dota.CEntityMessageRemoveAllDecals - (*CEntityMessagePropagateForce)(nil), // 36: dota.CEntityMessagePropagateForce - (*CEntityMessageDoSpark)(nil), // 37: dota.CEntityMessageDoSpark - (*CEntityMessageFixAngle)(nil), // 38: dota.CEntityMessageFixAngle - (*CUserMessageCameraTransition)(nil), // 39: dota.CUserMessageCameraTransition - (*CUserMsg_ParticleManager)(nil), // 40: dota.CUserMsg_ParticleManager - (*CUserMsg_HudError)(nil), // 41: dota.CUserMsg_HudError - (*CUserMsg_CustomGameEvent)(nil), // 42: dota.CUserMsg_CustomGameEvent - (*CUserMessageHapticsManagerPulse)(nil), // 43: dota.CUserMessageHapticsManagerPulse - (*CUserMessageHapticsManagerEffect)(nil), // 44: dota.CUserMessageHapticsManagerEffect - (*CUserMessageAnimStateGraphState)(nil), // 45: dota.CUserMessageAnimStateGraphState - (*CUserMessageCommandQueueState)(nil), // 46: dota.CUserMessageCommandQueueState - (*CUserMessageUpdateCssClasses)(nil), // 47: dota.CUserMessageUpdateCssClasses - (*CUserMessageServerFrameTime)(nil), // 48: dota.CUserMessageServerFrameTime - (*CUserMessageLagCompensationError)(nil), // 49: dota.CUserMessageLagCompensationError - (*CUserMessageRequestDllStatus)(nil), // 50: dota.CUserMessageRequestDllStatus - (*CUserMessageRequestUtilAction)(nil), // 51: dota.CUserMessageRequestUtilAction - (*CUserMessage_UtilMsg_Response)(nil), // 52: dota.CUserMessage_UtilMsg_Response - (*CUserMessage_DllStatus)(nil), // 53: dota.CUserMessage_DllStatus - (*CUserMessageRequestInventory)(nil), // 54: dota.CUserMessageRequestInventory - (*CUserMessage_Inventory_Response)(nil), // 55: dota.CUserMessage_Inventory_Response - (*CUserMessageCameraTransition_Transition_DataDriven)(nil), // 56: dota.CUserMessageCameraTransition.Transition_DataDriven - (*CUserMsg_ParticleManager_ReleaseParticleIndex)(nil), // 57: dota.CUserMsg_ParticleManager.ReleaseParticleIndex - (*CUserMsg_ParticleManager_CreateParticle)(nil), // 58: dota.CUserMsg_ParticleManager.CreateParticle - (*CUserMsg_ParticleManager_DestroyParticle)(nil), // 59: dota.CUserMsg_ParticleManager.DestroyParticle - (*CUserMsg_ParticleManager_DestroyParticleInvolving)(nil), // 60: dota.CUserMsg_ParticleManager.DestroyParticleInvolving - (*CUserMsg_ParticleManager_DestroyParticleNamed)(nil), // 61: dota.CUserMsg_ParticleManager.DestroyParticleNamed - (*CUserMsg_ParticleManager_UpdateParticle_OBSOLETE)(nil), // 62: dota.CUserMsg_ParticleManager.UpdateParticle_OBSOLETE - (*CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE)(nil), // 63: dota.CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE - (*CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE)(nil), // 64: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE - (*CUserMsg_ParticleManager_UpdateParticleTransform)(nil), // 65: dota.CUserMsg_ParticleManager.UpdateParticleTransform - (*CUserMsg_ParticleManager_UpdateParticleFallback)(nil), // 66: dota.CUserMsg_ParticleManager.UpdateParticleFallback - (*CUserMsg_ParticleManager_UpdateParticleOffset)(nil), // 67: dota.CUserMsg_ParticleManager.UpdateParticleOffset - (*CUserMsg_ParticleManager_UpdateParticleEnt)(nil), // 68: dota.CUserMsg_ParticleManager.UpdateParticleEnt - (*CUserMsg_ParticleManager_UpdateParticleSetFrozen)(nil), // 69: dota.CUserMsg_ParticleManager.UpdateParticleSetFrozen - (*CUserMsg_ParticleManager_UpdateParticleShouldDraw)(nil), // 70: dota.CUserMsg_ParticleManager.UpdateParticleShouldDraw - (*CUserMsg_ParticleManager_ChangeControlPointAttachment)(nil), // 71: dota.CUserMsg_ParticleManager.ChangeControlPointAttachment - (*CUserMsg_ParticleManager_UpdateEntityPosition)(nil), // 72: dota.CUserMsg_ParticleManager.UpdateEntityPosition - (*CUserMsg_ParticleManager_SetParticleFoWProperties)(nil), // 73: dota.CUserMsg_ParticleManager.SetParticleFoWProperties - (*CUserMsg_ParticleManager_SetParticleShouldCheckFoW)(nil), // 74: dota.CUserMsg_ParticleManager.SetParticleShouldCheckFoW - (*CUserMsg_ParticleManager_SetControlPointModel)(nil), // 75: dota.CUserMsg_ParticleManager.SetControlPointModel - (*CUserMsg_ParticleManager_SetControlPointSnapshot)(nil), // 76: dota.CUserMsg_ParticleManager.SetControlPointSnapshot - (*CUserMsg_ParticleManager_SetParticleText)(nil), // 77: dota.CUserMsg_ParticleManager.SetParticleText - (*CUserMsg_ParticleManager_SetTextureAttribute)(nil), // 78: dota.CUserMsg_ParticleManager.SetTextureAttribute - (*CUserMsg_ParticleManager_SetSceneObjectGenericFlag)(nil), // 79: dota.CUserMsg_ParticleManager.SetSceneObjectGenericFlag - (*CUserMsg_ParticleManager_SetSceneObjectTintAndDesat)(nil), // 80: dota.CUserMsg_ParticleManager.SetSceneObjectTintAndDesat - (*CUserMsg_ParticleManager_ParticleSkipToTime)(nil), // 81: dota.CUserMsg_ParticleManager.ParticleSkipToTime - (*CUserMsg_ParticleManager_ParticleCanFreeze)(nil), // 82: dota.CUserMsg_ParticleManager.ParticleCanFreeze - (*CUserMsg_ParticleManager_ParticleFreezeTransitionOverride)(nil), // 83: dota.CUserMsg_ParticleManager.ParticleFreezeTransitionOverride - (*CUserMsg_ParticleManager_SetParticleNamedValueContext)(nil), // 84: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext - (*CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue)(nil), // 85: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue - (*CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue)(nil), // 86: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue - (*CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue)(nil), // 87: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue - (*CUserMessageCommandQueueStateCommandQueueInfoT)(nil), // 88: dota.CUserMessageCommandQueueState.command_queue_info_t - (*CUserMessage_UtilMsg_Response_ItemDetail)(nil), // 89: dota.CUserMessage_UtilMsg_Response.ItemDetail - (*CUserMessage_DllStatus_CVDiagnostic)(nil), // 90: dota.CUserMessage_DllStatus.CVDiagnostic - (*CUserMessage_Inventory_Response_InventoryDetail)(nil), // 91: dota.CUserMessage_Inventory_Response.InventoryDetail - (*CMsgVector)(nil), // 92: dota.CMsgVector - (*CEntityMsg)(nil), // 93: dota.CEntityMsg - (*CMsgQAngle)(nil), // 94: dota.CMsgQAngle - (*CMsgQuaternion)(nil), // 95: dota.CMsgQuaternion + (*CUserMessageWaterShake)(nil), // 14: dota.CUserMessageWaterShake + (*CUserMessageScreenTilt)(nil), // 15: dota.CUserMessageScreenTilt + (*CUserMessageSayText)(nil), // 16: dota.CUserMessageSayText + (*CUserMessageSayText2)(nil), // 17: dota.CUserMessageSayText2 + (*CUserMessageHudMsg)(nil), // 18: dota.CUserMessageHudMsg + (*CUserMessageHudText)(nil), // 19: dota.CUserMessageHudText + (*CUserMessageTextMsg)(nil), // 20: dota.CUserMessageTextMsg + (*CUserMessageGameTitle)(nil), // 21: dota.CUserMessageGameTitle + (*CUserMessageResetHUD)(nil), // 22: dota.CUserMessageResetHUD + (*CUserMessageSendAudio)(nil), // 23: dota.CUserMessageSendAudio + (*CUserMessageAudioParameter)(nil), // 24: dota.CUserMessageAudioParameter + (*CUserMessageVoiceMask)(nil), // 25: dota.CUserMessageVoiceMask + (*CUserMessageRequestState)(nil), // 26: dota.CUserMessageRequestState + (*CUserMessageRumble)(nil), // 27: dota.CUserMessageRumble + (*CUserMessageSayTextChannel)(nil), // 28: dota.CUserMessageSayTextChannel + (*CUserMessageColoredText)(nil), // 29: dota.CUserMessageColoredText + (*CUserMessageItemPickup)(nil), // 30: dota.CUserMessageItemPickup + (*CUserMessageAmmoDenied)(nil), // 31: dota.CUserMessageAmmoDenied + (*CUserMessageShowMenu)(nil), // 32: dota.CUserMessageShowMenu + (*CUserMessageCreditsMsg)(nil), // 33: dota.CUserMessageCreditsMsg + (*CEntityMessagePlayJingle)(nil), // 34: dota.CEntityMessagePlayJingle + (*CEntityMessageScreenOverlay)(nil), // 35: dota.CEntityMessageScreenOverlay + (*CEntityMessageRemoveAllDecals)(nil), // 36: dota.CEntityMessageRemoveAllDecals + (*CEntityMessagePropagateForce)(nil), // 37: dota.CEntityMessagePropagateForce + (*CEntityMessageDoSpark)(nil), // 38: dota.CEntityMessageDoSpark + (*CEntityMessageFixAngle)(nil), // 39: dota.CEntityMessageFixAngle + (*CUserMessageCameraTransition)(nil), // 40: dota.CUserMessageCameraTransition + (*CUserMsg_ParticleManager)(nil), // 41: dota.CUserMsg_ParticleManager + (*CUserMsg_HudError)(nil), // 42: dota.CUserMsg_HudError + (*CUserMsg_CustomGameEvent)(nil), // 43: dota.CUserMsg_CustomGameEvent + (*CUserMessageHapticsManagerPulse)(nil), // 44: dota.CUserMessageHapticsManagerPulse + (*CUserMessageHapticsManagerEffect)(nil), // 45: dota.CUserMessageHapticsManagerEffect + (*CUserMessageAnimStateGraphState)(nil), // 46: dota.CUserMessageAnimStateGraphState + (*CUserMessageCommandQueueState)(nil), // 47: dota.CUserMessageCommandQueueState + (*CUserMessageUpdateCssClasses)(nil), // 48: dota.CUserMessageUpdateCssClasses + (*CUserMessageServerFrameTime)(nil), // 49: dota.CUserMessageServerFrameTime + (*CUserMessageLagCompensationError)(nil), // 50: dota.CUserMessageLagCompensationError + (*CUserMessageRequestDllStatus)(nil), // 51: dota.CUserMessageRequestDllStatus + (*CUserMessageRequestUtilAction)(nil), // 52: dota.CUserMessageRequestUtilAction + (*CUserMessage_UtilMsg_Response)(nil), // 53: dota.CUserMessage_UtilMsg_Response + (*CUserMessage_DllStatus)(nil), // 54: dota.CUserMessage_DllStatus + (*CUserMessageRequestInventory)(nil), // 55: dota.CUserMessageRequestInventory + (*CUserMessage_Inventory_Response)(nil), // 56: dota.CUserMessage_Inventory_Response + (*CUserMessageRequestDiagnostic)(nil), // 57: dota.CUserMessageRequestDiagnostic + (*CUserMessage_Diagnostic_Response)(nil), // 58: dota.CUserMessage_Diagnostic_Response + (*CUserMessage_ExtraUserData)(nil), // 59: dota.CUserMessage_ExtraUserData + (*CUserMessageCameraTransition_Transition_DataDriven)(nil), // 60: dota.CUserMessageCameraTransition.Transition_DataDriven + (*CUserMsg_ParticleManager_ReleaseParticleIndex)(nil), // 61: dota.CUserMsg_ParticleManager.ReleaseParticleIndex + (*CUserMsg_ParticleManager_CreateParticle)(nil), // 62: dota.CUserMsg_ParticleManager.CreateParticle + (*CUserMsg_ParticleManager_DestroyParticle)(nil), // 63: dota.CUserMsg_ParticleManager.DestroyParticle + (*CUserMsg_ParticleManager_DestroyParticleInvolving)(nil), // 64: dota.CUserMsg_ParticleManager.DestroyParticleInvolving + (*CUserMsg_ParticleManager_DestroyParticleNamed)(nil), // 65: dota.CUserMsg_ParticleManager.DestroyParticleNamed + (*CUserMsg_ParticleManager_UpdateParticle_OBSOLETE)(nil), // 66: dota.CUserMsg_ParticleManager.UpdateParticle_OBSOLETE + (*CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE)(nil), // 67: dota.CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE + (*CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE)(nil), // 68: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE + (*CUserMsg_ParticleManager_UpdateParticleTransform)(nil), // 69: dota.CUserMsg_ParticleManager.UpdateParticleTransform + (*CUserMsg_ParticleManager_UpdateParticleFallback)(nil), // 70: dota.CUserMsg_ParticleManager.UpdateParticleFallback + (*CUserMsg_ParticleManager_UpdateParticleOffset)(nil), // 71: dota.CUserMsg_ParticleManager.UpdateParticleOffset + (*CUserMsg_ParticleManager_UpdateParticleEnt)(nil), // 72: dota.CUserMsg_ParticleManager.UpdateParticleEnt + (*CUserMsg_ParticleManager_UpdateParticleSetFrozen)(nil), // 73: dota.CUserMsg_ParticleManager.UpdateParticleSetFrozen + (*CUserMsg_ParticleManager_UpdateParticleShouldDraw)(nil), // 74: dota.CUserMsg_ParticleManager.UpdateParticleShouldDraw + (*CUserMsg_ParticleManager_ChangeControlPointAttachment)(nil), // 75: dota.CUserMsg_ParticleManager.ChangeControlPointAttachment + (*CUserMsg_ParticleManager_UpdateEntityPosition)(nil), // 76: dota.CUserMsg_ParticleManager.UpdateEntityPosition + (*CUserMsg_ParticleManager_SetParticleFoWProperties)(nil), // 77: dota.CUserMsg_ParticleManager.SetParticleFoWProperties + (*CUserMsg_ParticleManager_SetParticleShouldCheckFoW)(nil), // 78: dota.CUserMsg_ParticleManager.SetParticleShouldCheckFoW + (*CUserMsg_ParticleManager_SetControlPointModel)(nil), // 79: dota.CUserMsg_ParticleManager.SetControlPointModel + (*CUserMsg_ParticleManager_SetControlPointSnapshot)(nil), // 80: dota.CUserMsg_ParticleManager.SetControlPointSnapshot + (*CUserMsg_ParticleManager_SetParticleText)(nil), // 81: dota.CUserMsg_ParticleManager.SetParticleText + (*CUserMsg_ParticleManager_SetTextureAttribute)(nil), // 82: dota.CUserMsg_ParticleManager.SetTextureAttribute + (*CUserMsg_ParticleManager_SetSceneObjectGenericFlag)(nil), // 83: dota.CUserMsg_ParticleManager.SetSceneObjectGenericFlag + (*CUserMsg_ParticleManager_SetSceneObjectTintAndDesat)(nil), // 84: dota.CUserMsg_ParticleManager.SetSceneObjectTintAndDesat + (*CUserMsg_ParticleManager_ParticleSkipToTime)(nil), // 85: dota.CUserMsg_ParticleManager.ParticleSkipToTime + (*CUserMsg_ParticleManager_ParticleCanFreeze)(nil), // 86: dota.CUserMsg_ParticleManager.ParticleCanFreeze + (*CUserMsg_ParticleManager_ParticleFreezeTransitionOverride)(nil), // 87: dota.CUserMsg_ParticleManager.ParticleFreezeTransitionOverride + (*CUserMsg_ParticleManager_FreezeParticleInvolving)(nil), // 88: dota.CUserMsg_ParticleManager.FreezeParticleInvolving + (*CUserMsg_ParticleManager_SetParticleNamedValueContext)(nil), // 89: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext + (*CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue)(nil), // 90: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue + (*CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue)(nil), // 91: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue + (*CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue)(nil), // 92: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue + (*CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext)(nil), // 93: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext + (*CUserMessageCommandQueueStateCommandQueueInfoT)(nil), // 94: dota.CUserMessageCommandQueueState.command_queue_info_t + (*CUserMessage_UtilMsg_Response_ItemDetail)(nil), // 95: dota.CUserMessage_UtilMsg_Response.ItemDetail + (*CUserMessage_DllStatus_CVDiagnostic)(nil), // 96: dota.CUserMessage_DllStatus.CVDiagnostic + (*CUserMessage_DllStatus_CModule)(nil), // 97: dota.CUserMessage_DllStatus.CModule + (*CUserMessage_Inventory_Response_InventoryDetail)(nil), // 98: dota.CUserMessage_Inventory_Response.InventoryDetail + (*CUserMessageRequestDiagnostic_Diagnostic)(nil), // 99: dota.CUserMessageRequestDiagnostic.Diagnostic + (*CUserMessage_Diagnostic_Response_Diagnostic)(nil), // 100: dota.CUserMessage_Diagnostic_Response.Diagnostic + (*CMsgVector)(nil), // 101: dota.CMsgVector + (*CEntityMsg)(nil), // 102: dota.CEntityMsg + (*CMsgQAngle)(nil), // 103: dota.CMsgQAngle + (*CMsgQuaternion)(nil), // 104: dota.CMsgQuaternion } var file_usermessages_proto_depIdxs = []int32{ - 12, // 0: dota.CUserMessageShakeDir.shake:type_name -> dota.CUserMessageShake - 92, // 1: dota.CUserMessageShakeDir.direction:type_name -> dota.CMsgVector - 92, // 2: dota.CUserMessageScreenTilt.angle:type_name -> dota.CMsgVector - 2, // 3: dota.CUserMessageCreditsMsg.rolltype:type_name -> dota.eRollType - 93, // 4: dota.CEntityMessagePlayJingle.entity_msg:type_name -> dota.CEntityMsg - 93, // 5: dota.CEntityMessageScreenOverlay.entity_msg:type_name -> dota.CEntityMsg - 93, // 6: dota.CEntityMessageRemoveAllDecals.entity_msg:type_name -> dota.CEntityMsg - 92, // 7: dota.CEntityMessagePropagateForce.impulse:type_name -> dota.CMsgVector - 93, // 8: dota.CEntityMessagePropagateForce.entity_msg:type_name -> dota.CEntityMsg - 92, // 9: dota.CEntityMessageDoSpark.origin:type_name -> dota.CMsgVector - 93, // 10: dota.CEntityMessageDoSpark.entity_msg:type_name -> dota.CEntityMsg - 94, // 11: dota.CEntityMessageFixAngle.angle:type_name -> dota.CMsgQAngle - 93, // 12: dota.CEntityMessageFixAngle.entity_msg:type_name -> dota.CEntityMsg - 56, // 13: dota.CUserMessageCameraTransition.params_data_driven:type_name -> dota.CUserMessageCameraTransition.Transition_DataDriven - 3, // 14: dota.CUserMsg_ParticleManager.type:type_name -> dota.PARTICLE_MESSAGE - 57, // 15: dota.CUserMsg_ParticleManager.release_particle_index:type_name -> dota.CUserMsg_ParticleManager.ReleaseParticleIndex - 58, // 16: dota.CUserMsg_ParticleManager.create_particle:type_name -> dota.CUserMsg_ParticleManager.CreateParticle - 59, // 17: dota.CUserMsg_ParticleManager.destroy_particle:type_name -> dota.CUserMsg_ParticleManager.DestroyParticle - 60, // 18: dota.CUserMsg_ParticleManager.destroy_particle_involving:type_name -> dota.CUserMsg_ParticleManager.DestroyParticleInvolving - 62, // 19: dota.CUserMsg_ParticleManager.update_particle:type_name -> dota.CUserMsg_ParticleManager.UpdateParticle_OBSOLETE - 63, // 20: dota.CUserMsg_ParticleManager.update_particle_fwd:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE - 64, // 21: dota.CUserMsg_ParticleManager.update_particle_orient:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE - 66, // 22: dota.CUserMsg_ParticleManager.update_particle_fallback:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleFallback - 67, // 23: dota.CUserMsg_ParticleManager.update_particle_offset:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleOffset - 68, // 24: dota.CUserMsg_ParticleManager.update_particle_ent:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleEnt - 70, // 25: dota.CUserMsg_ParticleManager.update_particle_should_draw:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleShouldDraw - 69, // 26: dota.CUserMsg_ParticleManager.update_particle_set_frozen:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleSetFrozen - 71, // 27: dota.CUserMsg_ParticleManager.change_control_point_attachment:type_name -> dota.CUserMsg_ParticleManager.ChangeControlPointAttachment - 72, // 28: dota.CUserMsg_ParticleManager.update_entity_position:type_name -> dota.CUserMsg_ParticleManager.UpdateEntityPosition - 73, // 29: dota.CUserMsg_ParticleManager.set_particle_fow_properties:type_name -> dota.CUserMsg_ParticleManager.SetParticleFoWProperties - 77, // 30: dota.CUserMsg_ParticleManager.set_particle_text:type_name -> dota.CUserMsg_ParticleManager.SetParticleText - 74, // 31: dota.CUserMsg_ParticleManager.set_particle_should_check_fow:type_name -> dota.CUserMsg_ParticleManager.SetParticleShouldCheckFoW - 75, // 32: dota.CUserMsg_ParticleManager.set_control_point_model:type_name -> dota.CUserMsg_ParticleManager.SetControlPointModel - 76, // 33: dota.CUserMsg_ParticleManager.set_control_point_snapshot:type_name -> dota.CUserMsg_ParticleManager.SetControlPointSnapshot - 78, // 34: dota.CUserMsg_ParticleManager.set_texture_attribute:type_name -> dota.CUserMsg_ParticleManager.SetTextureAttribute - 79, // 35: dota.CUserMsg_ParticleManager.set_scene_object_generic_flag:type_name -> dota.CUserMsg_ParticleManager.SetSceneObjectGenericFlag - 80, // 36: dota.CUserMsg_ParticleManager.set_scene_object_tint_and_desat:type_name -> dota.CUserMsg_ParticleManager.SetSceneObjectTintAndDesat - 61, // 37: dota.CUserMsg_ParticleManager.destroy_particle_named:type_name -> dota.CUserMsg_ParticleManager.DestroyParticleNamed - 81, // 38: dota.CUserMsg_ParticleManager.particle_skip_to_time:type_name -> dota.CUserMsg_ParticleManager.ParticleSkipToTime - 82, // 39: dota.CUserMsg_ParticleManager.particle_can_freeze:type_name -> dota.CUserMsg_ParticleManager.ParticleCanFreeze - 84, // 40: dota.CUserMsg_ParticleManager.set_named_value_context:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext - 65, // 41: dota.CUserMsg_ParticleManager.update_particle_transform:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleTransform - 83, // 42: dota.CUserMsg_ParticleManager.particle_freeze_transition_override:type_name -> dota.CUserMsg_ParticleManager.ParticleFreezeTransitionOverride - 88, // 43: dota.CUserMessageCommandQueueState.command_queue_info:type_name -> dota.CUserMessageCommandQueueState.command_queue_info_t - 89, // 44: dota.CUserMessage_UtilMsg_Response.itemdetails:type_name -> dota.CUserMessage_UtilMsg_Response.ItemDetail - 90, // 45: dota.CUserMessage_DllStatus.diagnostics:type_name -> dota.CUserMessage_DllStatus.CVDiagnostic - 91, // 46: dota.CUserMessage_Inventory_Response.inventories:type_name -> dota.CUserMessage_Inventory_Response.InventoryDetail - 91, // 47: dota.CUserMessage_Inventory_Response.inventories2:type_name -> dota.CUserMessage_Inventory_Response.InventoryDetail - 92, // 48: dota.CUserMsg_ParticleManager.UpdateParticle_OBSOLETE.position:type_name -> dota.CMsgVector - 92, // 49: dota.CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE.forward:type_name -> dota.CMsgVector - 92, // 50: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE.forward:type_name -> dota.CMsgVector - 92, // 51: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE.deprecated_right:type_name -> dota.CMsgVector - 92, // 52: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE.up:type_name -> dota.CMsgVector - 92, // 53: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE.left:type_name -> dota.CMsgVector - 92, // 54: dota.CUserMsg_ParticleManager.UpdateParticleTransform.position:type_name -> dota.CMsgVector - 95, // 55: dota.CUserMsg_ParticleManager.UpdateParticleTransform.orientation:type_name -> dota.CMsgQuaternion - 92, // 56: dota.CUserMsg_ParticleManager.UpdateParticleFallback.position:type_name -> dota.CMsgVector - 92, // 57: dota.CUserMsg_ParticleManager.UpdateParticleOffset.origin_offset:type_name -> dota.CMsgVector - 94, // 58: dota.CUserMsg_ParticleManager.UpdateParticleOffset.angle_offset:type_name -> dota.CMsgQAngle - 92, // 59: dota.CUserMsg_ParticleManager.UpdateParticleEnt.fallback_position:type_name -> dota.CMsgVector - 92, // 60: dota.CUserMsg_ParticleManager.UpdateParticleEnt.offset_position:type_name -> dota.CMsgVector - 94, // 61: dota.CUserMsg_ParticleManager.UpdateParticleEnt.offset_angles:type_name -> dota.CMsgQAngle - 92, // 62: dota.CUserMsg_ParticleManager.UpdateEntityPosition.position:type_name -> dota.CMsgVector - 85, // 63: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.float_values:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue - 86, // 64: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.vector_values:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue - 87, // 65: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.transform_values:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue - 92, // 66: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue.value:type_name -> dota.CMsgVector - 94, // 67: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue.angles:type_name -> dota.CMsgQAngle - 92, // 68: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue.translation:type_name -> dota.CMsgVector - 69, // [69:69] is the sub-list for method output_type - 69, // [69:69] is the sub-list for method input_type - 69, // [69:69] is the sub-list for extension type_name - 69, // [69:69] is the sub-list for extension extendee - 0, // [0:69] is the sub-list for field type_name + 12, // 0: dota.CUserMessageShakeDir.shake:type_name -> dota.CUserMessageShake + 101, // 1: dota.CUserMessageShakeDir.direction:type_name -> dota.CMsgVector + 101, // 2: dota.CUserMessageScreenTilt.angle:type_name -> dota.CMsgVector + 2, // 3: dota.CUserMessageCreditsMsg.rolltype:type_name -> dota.eRollType + 102, // 4: dota.CEntityMessagePlayJingle.entity_msg:type_name -> dota.CEntityMsg + 102, // 5: dota.CEntityMessageScreenOverlay.entity_msg:type_name -> dota.CEntityMsg + 102, // 6: dota.CEntityMessageRemoveAllDecals.entity_msg:type_name -> dota.CEntityMsg + 101, // 7: dota.CEntityMessagePropagateForce.impulse:type_name -> dota.CMsgVector + 102, // 8: dota.CEntityMessagePropagateForce.entity_msg:type_name -> dota.CEntityMsg + 101, // 9: dota.CEntityMessageDoSpark.origin:type_name -> dota.CMsgVector + 102, // 10: dota.CEntityMessageDoSpark.entity_msg:type_name -> dota.CEntityMsg + 103, // 11: dota.CEntityMessageFixAngle.angle:type_name -> dota.CMsgQAngle + 102, // 12: dota.CEntityMessageFixAngle.entity_msg:type_name -> dota.CEntityMsg + 60, // 13: dota.CUserMessageCameraTransition.params_data_driven:type_name -> dota.CUserMessageCameraTransition.Transition_DataDriven + 3, // 14: dota.CUserMsg_ParticleManager.type:type_name -> dota.PARTICLE_MESSAGE + 61, // 15: dota.CUserMsg_ParticleManager.release_particle_index:type_name -> dota.CUserMsg_ParticleManager.ReleaseParticleIndex + 62, // 16: dota.CUserMsg_ParticleManager.create_particle:type_name -> dota.CUserMsg_ParticleManager.CreateParticle + 63, // 17: dota.CUserMsg_ParticleManager.destroy_particle:type_name -> dota.CUserMsg_ParticleManager.DestroyParticle + 64, // 18: dota.CUserMsg_ParticleManager.destroy_particle_involving:type_name -> dota.CUserMsg_ParticleManager.DestroyParticleInvolving + 66, // 19: dota.CUserMsg_ParticleManager.update_particle:type_name -> dota.CUserMsg_ParticleManager.UpdateParticle_OBSOLETE + 67, // 20: dota.CUserMsg_ParticleManager.update_particle_fwd:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE + 68, // 21: dota.CUserMsg_ParticleManager.update_particle_orient:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE + 70, // 22: dota.CUserMsg_ParticleManager.update_particle_fallback:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleFallback + 71, // 23: dota.CUserMsg_ParticleManager.update_particle_offset:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleOffset + 72, // 24: dota.CUserMsg_ParticleManager.update_particle_ent:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleEnt + 74, // 25: dota.CUserMsg_ParticleManager.update_particle_should_draw:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleShouldDraw + 73, // 26: dota.CUserMsg_ParticleManager.update_particle_set_frozen:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleSetFrozen + 75, // 27: dota.CUserMsg_ParticleManager.change_control_point_attachment:type_name -> dota.CUserMsg_ParticleManager.ChangeControlPointAttachment + 76, // 28: dota.CUserMsg_ParticleManager.update_entity_position:type_name -> dota.CUserMsg_ParticleManager.UpdateEntityPosition + 77, // 29: dota.CUserMsg_ParticleManager.set_particle_fow_properties:type_name -> dota.CUserMsg_ParticleManager.SetParticleFoWProperties + 81, // 30: dota.CUserMsg_ParticleManager.set_particle_text:type_name -> dota.CUserMsg_ParticleManager.SetParticleText + 78, // 31: dota.CUserMsg_ParticleManager.set_particle_should_check_fow:type_name -> dota.CUserMsg_ParticleManager.SetParticleShouldCheckFoW + 79, // 32: dota.CUserMsg_ParticleManager.set_control_point_model:type_name -> dota.CUserMsg_ParticleManager.SetControlPointModel + 80, // 33: dota.CUserMsg_ParticleManager.set_control_point_snapshot:type_name -> dota.CUserMsg_ParticleManager.SetControlPointSnapshot + 82, // 34: dota.CUserMsg_ParticleManager.set_texture_attribute:type_name -> dota.CUserMsg_ParticleManager.SetTextureAttribute + 83, // 35: dota.CUserMsg_ParticleManager.set_scene_object_generic_flag:type_name -> dota.CUserMsg_ParticleManager.SetSceneObjectGenericFlag + 84, // 36: dota.CUserMsg_ParticleManager.set_scene_object_tint_and_desat:type_name -> dota.CUserMsg_ParticleManager.SetSceneObjectTintAndDesat + 65, // 37: dota.CUserMsg_ParticleManager.destroy_particle_named:type_name -> dota.CUserMsg_ParticleManager.DestroyParticleNamed + 85, // 38: dota.CUserMsg_ParticleManager.particle_skip_to_time:type_name -> dota.CUserMsg_ParticleManager.ParticleSkipToTime + 86, // 39: dota.CUserMsg_ParticleManager.particle_can_freeze:type_name -> dota.CUserMsg_ParticleManager.ParticleCanFreeze + 89, // 40: dota.CUserMsg_ParticleManager.set_named_value_context:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext + 69, // 41: dota.CUserMsg_ParticleManager.update_particle_transform:type_name -> dota.CUserMsg_ParticleManager.UpdateParticleTransform + 87, // 42: dota.CUserMsg_ParticleManager.particle_freeze_transition_override:type_name -> dota.CUserMsg_ParticleManager.ParticleFreezeTransitionOverride + 88, // 43: dota.CUserMsg_ParticleManager.freeze_particle_involving:type_name -> dota.CUserMsg_ParticleManager.FreezeParticleInvolving + 94, // 44: dota.CUserMessageCommandQueueState.command_queue_info:type_name -> dota.CUserMessageCommandQueueState.command_queue_info_t + 95, // 45: dota.CUserMessage_UtilMsg_Response.itemdetails:type_name -> dota.CUserMessage_UtilMsg_Response.ItemDetail + 96, // 46: dota.CUserMessage_DllStatus.diagnostics:type_name -> dota.CUserMessage_DllStatus.CVDiagnostic + 97, // 47: dota.CUserMessage_DllStatus.modules:type_name -> dota.CUserMessage_DllStatus.CModule + 98, // 48: dota.CUserMessage_Inventory_Response.inventories:type_name -> dota.CUserMessage_Inventory_Response.InventoryDetail + 98, // 49: dota.CUserMessage_Inventory_Response.inventories2:type_name -> dota.CUserMessage_Inventory_Response.InventoryDetail + 98, // 50: dota.CUserMessage_Inventory_Response.inventories3:type_name -> dota.CUserMessage_Inventory_Response.InventoryDetail + 99, // 51: dota.CUserMessageRequestDiagnostic.diagnostics:type_name -> dota.CUserMessageRequestDiagnostic.Diagnostic + 100, // 52: dota.CUserMessage_Diagnostic_Response.diagnostics:type_name -> dota.CUserMessage_Diagnostic_Response.Diagnostic + 101, // 53: dota.CUserMsg_ParticleManager.UpdateParticle_OBSOLETE.position:type_name -> dota.CMsgVector + 101, // 54: dota.CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE.forward:type_name -> dota.CMsgVector + 101, // 55: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE.forward:type_name -> dota.CMsgVector + 101, // 56: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE.deprecated_right:type_name -> dota.CMsgVector + 101, // 57: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE.up:type_name -> dota.CMsgVector + 101, // 58: dota.CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE.left:type_name -> dota.CMsgVector + 101, // 59: dota.CUserMsg_ParticleManager.UpdateParticleTransform.position:type_name -> dota.CMsgVector + 104, // 60: dota.CUserMsg_ParticleManager.UpdateParticleTransform.orientation:type_name -> dota.CMsgQuaternion + 101, // 61: dota.CUserMsg_ParticleManager.UpdateParticleFallback.position:type_name -> dota.CMsgVector + 101, // 62: dota.CUserMsg_ParticleManager.UpdateParticleOffset.origin_offset:type_name -> dota.CMsgVector + 103, // 63: dota.CUserMsg_ParticleManager.UpdateParticleOffset.angle_offset:type_name -> dota.CMsgQAngle + 101, // 64: dota.CUserMsg_ParticleManager.UpdateParticleEnt.fallback_position:type_name -> dota.CMsgVector + 101, // 65: dota.CUserMsg_ParticleManager.UpdateParticleEnt.offset_position:type_name -> dota.CMsgVector + 103, // 66: dota.CUserMsg_ParticleManager.UpdateParticleEnt.offset_angles:type_name -> dota.CMsgQAngle + 101, // 67: dota.CUserMsg_ParticleManager.UpdateEntityPosition.position:type_name -> dota.CMsgVector + 90, // 68: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.float_values:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue + 91, // 69: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.vector_values:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue + 92, // 70: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.transform_values:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue + 93, // 71: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.ehandle_values:type_name -> dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext + 101, // 72: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue.value:type_name -> dota.CMsgVector + 103, // 73: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue.angles:type_name -> dota.CMsgQAngle + 101, // 74: dota.CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue.translation:type_name -> dota.CMsgVector + 75, // [75:75] is the sub-list for method output_type + 75, // [75:75] is the sub-list for method input_type + 75, // [75:75] is the sub-list for extension type_name + 75, // [75:75] is the sub-list for extension extendee + 0, // [0:75] is the sub-list for field type_name } func init() { file_usermessages_proto_init() } @@ -7730,7 +8698,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageScreenTilt); i { + switch v := v.(*CUserMessageWaterShake); i { case 0: return &v.state case 1: @@ -7742,7 +8710,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageSayText); i { + switch v := v.(*CUserMessageScreenTilt); i { case 0: return &v.state case 1: @@ -7754,7 +8722,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageSayText2); i { + switch v := v.(*CUserMessageSayText); i { case 0: return &v.state case 1: @@ -7766,7 +8734,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageHudMsg); i { + switch v := v.(*CUserMessageSayText2); i { case 0: return &v.state case 1: @@ -7778,7 +8746,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageHudText); i { + switch v := v.(*CUserMessageHudMsg); i { case 0: return &v.state case 1: @@ -7790,7 +8758,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageTextMsg); i { + switch v := v.(*CUserMessageHudText); i { case 0: return &v.state case 1: @@ -7802,7 +8770,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageGameTitle); i { + switch v := v.(*CUserMessageTextMsg); i { case 0: return &v.state case 1: @@ -7814,7 +8782,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageResetHUD); i { + switch v := v.(*CUserMessageGameTitle); i { case 0: return &v.state case 1: @@ -7826,7 +8794,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageSendAudio); i { + switch v := v.(*CUserMessageResetHUD); i { case 0: return &v.state case 1: @@ -7838,7 +8806,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageAudioParameter); i { + switch v := v.(*CUserMessageSendAudio); i { case 0: return &v.state case 1: @@ -7850,7 +8818,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageVoiceMask); i { + switch v := v.(*CUserMessageAudioParameter); i { case 0: return &v.state case 1: @@ -7862,7 +8830,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageRequestState); i { + switch v := v.(*CUserMessageVoiceMask); i { case 0: return &v.state case 1: @@ -7874,7 +8842,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageRumble); i { + switch v := v.(*CUserMessageRequestState); i { case 0: return &v.state case 1: @@ -7886,7 +8854,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageSayTextChannel); i { + switch v := v.(*CUserMessageRumble); i { case 0: return &v.state case 1: @@ -7898,7 +8866,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageColoredText); i { + switch v := v.(*CUserMessageSayTextChannel); i { case 0: return &v.state case 1: @@ -7910,7 +8878,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageItemPickup); i { + switch v := v.(*CUserMessageColoredText); i { case 0: return &v.state case 1: @@ -7922,7 +8890,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageAmmoDenied); i { + switch v := v.(*CUserMessageItemPickup); i { case 0: return &v.state case 1: @@ -7934,7 +8902,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageShowMenu); i { + switch v := v.(*CUserMessageAmmoDenied); i { case 0: return &v.state case 1: @@ -7946,7 +8914,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageCreditsMsg); i { + switch v := v.(*CUserMessageShowMenu); i { case 0: return &v.state case 1: @@ -7958,7 +8926,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CEntityMessagePlayJingle); i { + switch v := v.(*CUserMessageCreditsMsg); i { case 0: return &v.state case 1: @@ -7970,7 +8938,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CEntityMessageScreenOverlay); i { + switch v := v.(*CEntityMessagePlayJingle); i { case 0: return &v.state case 1: @@ -7982,7 +8950,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CEntityMessageRemoveAllDecals); i { + switch v := v.(*CEntityMessageScreenOverlay); i { case 0: return &v.state case 1: @@ -7994,7 +8962,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CEntityMessagePropagateForce); i { + switch v := v.(*CEntityMessageRemoveAllDecals); i { case 0: return &v.state case 1: @@ -8006,7 +8974,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CEntityMessageDoSpark); i { + switch v := v.(*CEntityMessagePropagateForce); i { case 0: return &v.state case 1: @@ -8018,7 +8986,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CEntityMessageFixAngle); i { + switch v := v.(*CEntityMessageDoSpark); i { case 0: return &v.state case 1: @@ -8030,7 +8998,7 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CUserMessageCameraTransition); i { + switch v := v.(*CEntityMessageFixAngle); i { case 0: return &v.state case 1: @@ -8042,6 +9010,18 @@ func file_usermessages_proto_init() { } } file_usermessages_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMessageCameraTransition); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_usermessages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager); i { case 0: return &v.state @@ -8055,7 +9035,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_HudError); i { case 0: return &v.state @@ -8067,7 +9047,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_CustomGameEvent); i { case 0: return &v.state @@ -8079,7 +9059,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageHapticsManagerPulse); i { case 0: return &v.state @@ -8091,7 +9071,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageHapticsManagerEffect); i { case 0: return &v.state @@ -8103,7 +9083,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageAnimStateGraphState); i { case 0: return &v.state @@ -8115,7 +9095,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageCommandQueueState); i { case 0: return &v.state @@ -8127,7 +9107,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageUpdateCssClasses); i { case 0: return &v.state @@ -8139,7 +9119,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageServerFrameTime); i { case 0: return &v.state @@ -8151,7 +9131,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageLagCompensationError); i { case 0: return &v.state @@ -8163,7 +9143,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageRequestDllStatus); i { case 0: return &v.state @@ -8175,7 +9155,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageRequestUtilAction); i { case 0: return &v.state @@ -8187,7 +9167,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessage_UtilMsg_Response); i { case 0: return &v.state @@ -8199,7 +9179,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessage_DllStatus); i { case 0: return &v.state @@ -8211,7 +9191,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageRequestInventory); i { case 0: return &v.state @@ -8223,7 +9203,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessage_Inventory_Response); i { case 0: return &v.state @@ -8235,7 +9215,43 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMessageRequestDiagnostic); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_usermessages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMessage_Diagnostic_Response); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_usermessages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMessage_ExtraUserData); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_usermessages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageCameraTransition_Transition_DataDriven); i { case 0: return &v.state @@ -8247,7 +9263,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_ReleaseParticleIndex); i { case 0: return &v.state @@ -8259,7 +9275,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_CreateParticle); i { case 0: return &v.state @@ -8271,7 +9287,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_DestroyParticle); i { case 0: return &v.state @@ -8283,7 +9299,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_DestroyParticleInvolving); i { case 0: return &v.state @@ -8295,7 +9311,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_DestroyParticleNamed); i { case 0: return &v.state @@ -8307,7 +9323,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticle_OBSOLETE); i { case 0: return &v.state @@ -8319,7 +9335,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticleFwd_OBSOLETE); i { case 0: return &v.state @@ -8331,7 +9347,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticleOrient_OBSOLETE); i { case 0: return &v.state @@ -8343,7 +9359,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticleTransform); i { case 0: return &v.state @@ -8355,7 +9371,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticleFallback); i { case 0: return &v.state @@ -8367,7 +9383,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticleOffset); i { case 0: return &v.state @@ -8379,7 +9395,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticleEnt); i { case 0: return &v.state @@ -8391,7 +9407,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticleSetFrozen); i { case 0: return &v.state @@ -8403,7 +9419,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateParticleShouldDraw); i { case 0: return &v.state @@ -8415,7 +9431,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_ChangeControlPointAttachment); i { case 0: return &v.state @@ -8427,7 +9443,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_UpdateEntityPosition); i { case 0: return &v.state @@ -8439,7 +9455,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetParticleFoWProperties); i { case 0: return &v.state @@ -8451,7 +9467,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetParticleShouldCheckFoW); i { case 0: return &v.state @@ -8463,7 +9479,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetControlPointModel); i { case 0: return &v.state @@ -8475,7 +9491,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetControlPointSnapshot); i { case 0: return &v.state @@ -8487,7 +9503,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetParticleText); i { case 0: return &v.state @@ -8499,7 +9515,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetTextureAttribute); i { case 0: return &v.state @@ -8511,7 +9527,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetSceneObjectGenericFlag); i { case 0: return &v.state @@ -8523,7 +9539,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetSceneObjectTintAndDesat); i { case 0: return &v.state @@ -8535,7 +9551,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_ParticleSkipToTime); i { case 0: return &v.state @@ -8547,7 +9563,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_ParticleCanFreeze); i { case 0: return &v.state @@ -8559,7 +9575,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_ParticleFreezeTransitionOverride); i { case 0: return &v.state @@ -8571,7 +9587,19 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMsg_ParticleManager_FreezeParticleInvolving); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_usermessages_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetParticleNamedValueContext); i { case 0: return &v.state @@ -8583,7 +9611,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetParticleNamedValueContext_FloatContextValue); i { case 0: return &v.state @@ -8595,7 +9623,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetParticleNamedValueContext_VectorContextValue); i { case 0: return &v.state @@ -8607,7 +9635,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMsg_ParticleManager_SetParticleNamedValueContext_TransformContextValue); i { case 0: return &v.state @@ -8619,7 +9647,19 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMsg_ParticleManager_SetParticleNamedValueContext_EHandleContext); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_usermessages_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessageCommandQueueStateCommandQueueInfoT); i { case 0: return &v.state @@ -8631,7 +9671,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessage_UtilMsg_Response_ItemDetail); i { case 0: return &v.state @@ -8643,7 +9683,7 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessage_DllStatus_CVDiagnostic); i { case 0: return &v.state @@ -8655,7 +9695,19 @@ func file_usermessages_proto_init() { return nil } } - file_usermessages_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + file_usermessages_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMessage_DllStatus_CModule); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_usermessages_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CUserMessage_Inventory_Response_InventoryDetail); i { case 0: return &v.state @@ -8667,6 +9719,30 @@ func file_usermessages_proto_init() { return nil } } + file_usermessages_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMessageRequestDiagnostic_Diagnostic); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_usermessages_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CUserMessage_Diagnostic_Response_Diagnostic); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -8674,7 +9750,7 @@ func file_usermessages_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_usermessages_proto_rawDesc, NumEnums: 5, - NumMessages: 87, + NumMessages: 96, NumExtensions: 0, NumServices: 0, }, diff --git a/dota/usermessages.proto b/dota/usermessages.proto index f6231a54..b0423d95 100644 --- a/dota/usermessages.proto +++ b/dota/usermessages.proto @@ -24,6 +24,7 @@ enum EBaseUserMessages { UM_SayTextChannel = 119; UM_Shake = 120; UM_ShakeDir = 121; + UM_WaterShake = 122; UM_TextMsg = 124; UM_ScreenTilt = 125; UM_VoiceMask = 128; @@ -51,6 +52,9 @@ enum EBaseUserMessages { UM_DllStatusResponse = 159; UM_RequestInventory = 160; UM_InventoryResponse = 161; + UM_RequestDiagnostic = 162; + UM_DiagnosticResponse = 163; + UM_ExtraUserData = 164; UM_MAX_BASE = 200; } @@ -101,6 +105,7 @@ enum PARTICLE_MESSAGE { GAME_PARTICLE_MANAGER_EVENT_SET_NAMED_VALUE_CONTEXT = 26; GAME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSFORM = 27; GAME_PARTICLE_MANAGER_EVENT_FREEZE_TRANSITION_OVERRIDE = 28; + GAME_PARTICLE_MANAGER_EVENT_FREEZE_INVOLVING = 29; } enum EHapticPulseType { @@ -164,6 +169,13 @@ message CUserMessageShakeDir { optional CMsgVector direction = 2; } +message CUserMessageWaterShake { + optional uint32 command = 1; + optional float amplitude = 2; + optional float frequency = 3; + optional float duration = 4; +} + message CUserMessageScreenTilt { optional uint32 command = 1; optional bool ease_in_out = 2; @@ -335,6 +347,8 @@ message CUserMsg_ParticleManager { optional bool apply_voice_ban_rules = 5; optional int32 team_behavior = 6; optional string control_point_configuration = 7; + optional bool cluster = 8; + optional float endcap_time = 9; } message DestroyParticle { @@ -470,30 +484,38 @@ message CUserMsg_ParticleManager { optional float freeze_transition_override = 1; } + message FreezeParticleInvolving { + optional bool set_frozen = 1; + optional float transition_duration = 2; + optional uint32 entity_handle = 3; + } + message SetParticleNamedValueContext { message FloatContextValue { - optional string value_name = 1; + optional uint32 value_name_hash = 1; optional float value = 2; } message VectorContextValue { - optional string value_name = 1; + optional uint32 value_name_hash = 1; optional CMsgVector value = 2; - optional uint32 ent_index = 3; - optional string attachment_name = 4; } message TransformContextValue { - optional string value_name = 1; + optional uint32 value_name_hash = 1; optional CMsgQAngle angles = 2; optional CMsgVector translation = 3; - optional uint32 ent_index = 4; - optional string attachment_name = 5; + } + + message EHandleContext { + optional uint32 value_name_hash = 1; + optional uint32 ent_index = 2; } repeated CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue float_values = 1; repeated CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue vector_values = 2; repeated CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue transform_values = 3; + repeated CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext ehandle_values = 4; } required PARTICLE_MESSAGE type = 1; @@ -526,6 +548,7 @@ message CUserMsg_ParticleManager { optional CUserMsg_ParticleManager.SetParticleNamedValueContext set_named_value_context = 29; optional CUserMsg_ParticleManager.UpdateParticleTransform update_particle_transform = 30; optional CUserMsg_ParticleManager.ParticleFreezeTransitionOverride particle_freeze_transition_override = 31; + optional CUserMsg_ParticleManager.FreezeParticleInvolving freeze_particle_involving = 32; extensions 100 to 201; } @@ -626,6 +649,13 @@ message CUserMessage_DllStatus { optional string string_value = 4; } + message CModule { + optional uint64 base_addr = 1; + optional string name = 2; + optional uint32 size = 3; + optional uint32 timestamp = 4; + } + optional string file_report = 1; optional string command_line = 2; optional uint32 total_files = 3; @@ -633,6 +663,7 @@ message CUserMessage_DllStatus { optional int32 osversion = 5; optional uint64 client_time = 6; repeated CUserMessage_DllStatus.CVDiagnostic diagnostics = 7; + repeated CUserMessage_DllStatus.CModule modules = 8; } message CUserMessageRequestInventory { @@ -663,7 +694,64 @@ message CUserMessage_Inventory_Response { optional int32 platform = 8; repeated CUserMessage_Inventory_Response.InventoryDetail inventories = 9; repeated CUserMessage_Inventory_Response.InventoryDetail inventories2 = 10; + repeated CUserMessage_Inventory_Response.InventoryDetail inventories3 = 14; optional int32 inv_type = 11; optional int32 build_version = 12; optional int32 instance = 13; + optional int64 start_time = 15; +} + +message CUserMessageRequestDiagnostic { + message Diagnostic { + optional int32 index = 1; + optional int64 offset = 2; + optional int32 param = 3; + optional int32 length = 4; + optional int32 type = 5; + optional int64 base = 6; + optional int64 range = 7; + optional int64 extent = 8; + optional int64 detail = 9; + optional string name = 10; + optional string alias = 11; + optional bytes vardetail = 12; + optional int32 context = 13; + } + + repeated CUserMessageRequestDiagnostic.Diagnostic diagnostics = 1; +} + +message CUserMessage_Diagnostic_Response { + message Diagnostic { + optional int32 index = 1; + optional int64 offset = 2; + optional int32 param = 3; + optional int32 length = 4; + optional bytes detail = 5; + optional int64 base = 6; + optional int64 range = 7; + optional int32 type = 8; + optional string name = 10; + optional string alias = 11; + optional bytes backup = 12; + optional int32 context = 13; + optional int64 control = 14; + optional int64 augment = 15; + optional int64 placebo = 16; + } + + repeated CUserMessage_Diagnostic_Response.Diagnostic diagnostics = 1; + optional int32 build_version = 2; + optional int32 instance = 3; + optional int64 start_time = 4; + optional int32 osversion = 5; + optional int32 platform = 6; +} + +message CUserMessage_ExtraUserData { + optional int32 item = 1; + optional int64 value1 = 2; + optional int64 value2 = 3; + repeated bytes detail1 = 4; + repeated bytes detail2 = 5; } diff --git a/dota/valveextensions.pb.go b/dota/valveextensions.pb.go index fed98bec..3b7dc03e 100644 --- a/dota/valveextensions.pb.go +++ b/dota/valveextensions.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.30.0 // protoc v3.21.5 // source: valveextensions.proto @@ -25,16 +25,16 @@ var file_valveextensions_proto_extTypes = []protoimpl.ExtensionInfo{ ExtendedType: (*descriptorpb.FieldOptions)(nil), ExtensionType: (*bool)(nil), Field: 61000, - Name: "dota.map_field", - Tag: "varint,61000,opt,name=map_field", + Name: "dota.valve_map_field", + Tag: "varint,61000,opt,name=valve_map_field", Filename: "valveextensions.proto", }, { ExtendedType: (*descriptorpb.FieldOptions)(nil), ExtensionType: (*bool)(nil), Field: 61001, - Name: "dota.map_key", - Tag: "varint,61001,opt,name=map_key", + Name: "dota.valve_map_key", + Tag: "varint,61001,opt,name=valve_map_key", Filename: "valveextensions.proto", }, { @@ -105,10 +105,10 @@ var file_valveextensions_proto_extTypes = []protoimpl.ExtensionInfo{ // Extension fields to descriptorpb.FieldOptions. var ( - // optional bool map_field = 61000; - E_MapField = &file_valveextensions_proto_extTypes[0] - // optional bool map_key = 61001; - E_MapKey = &file_valveextensions_proto_extTypes[1] + // optional bool valve_map_field = 61000; + E_ValveMapField = &file_valveextensions_proto_extTypes[0] + // optional bool valve_map_key = 61001; + E_ValveMapKey = &file_valveextensions_proto_extTypes[1] // optional int32 diff_encode_field = 61002; E_DiffEncodeField = &file_valveextensions_proto_extTypes[2] // optional bool delta_ignore = 61003; @@ -138,57 +138,58 @@ var file_valveextensions_proto_rawDesc = []byte{ 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x64, 0x6f, 0x74, 0x61, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x3a, - 0x3c, 0x0a, 0x09, 0x6d, 0x61, 0x70, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x1d, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, - 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc8, 0xdc, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x08, 0x6d, 0x61, 0x70, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x3a, 0x38, 0x0a, - 0x07, 0x6d, 0x61, 0x70, 0x5f, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc9, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x06, 0x6d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x3a, 0x4b, 0x0a, 0x11, 0x64, 0x69, 0x66, 0x66, 0x5f, - 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x1d, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, - 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xca, 0xdc, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0f, 0x64, 0x69, 0x66, 0x66, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x46, - 0x69, 0x65, 0x6c, 0x64, 0x3a, 0x42, 0x0a, 0x0c, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x5f, 0x69, 0x67, - 0x6e, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0xcb, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 0x65, 0x6c, - 0x74, 0x61, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x3a, 0x4f, 0x0a, 0x13, 0x73, 0x74, 0x65, 0x61, - 0x6d, 0x6d, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, - 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xcc, - 0xdc, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x6c, 0x4d, - 0x61, 0x78, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x3a, 0x51, 0x0a, 0x14, 0x73, 0x74, 0x65, - 0x61, 0x6d, 0x6d, 0x6c, 0x5f, 0x69, 0x73, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0xcd, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6d, - 0x6c, 0x49, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x3a, 0x4a, 0x0a, 0x10, - 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0xce, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6c, 0x65, - 0x61, 0x72, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x54, 0x0a, 0x14, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x51, - 0x0a, 0x12, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xe9, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x3a, 0x60, 0x0a, 0x1a, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x73, 0x75, 0x70, 0x70, - 0x72, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, - 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0xea, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x53, 0x75, 0x70, 0x70, 0x72, 0x65, 0x73, 0x73, 0x45, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, - 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, - 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, + 0x47, 0x0a, 0x0f, 0x76, 0x61, 0x6c, 0x76, 0x65, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x66, 0x69, 0x65, + 0x6c, 0x64, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0xc8, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x76, 0x65, + 0x4d, 0x61, 0x70, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x3a, 0x43, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x76, + 0x65, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, + 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc9, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x76, 0x65, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x3a, 0x4b, 0x0a, + 0x11, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x66, 0x69, 0x65, + 0x6c, 0x64, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0xca, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x64, 0x69, 0x66, 0x66, 0x45, + 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x3a, 0x42, 0x0a, 0x0c, 0x64, 0x65, + 0x6c, 0x74, 0x61, 0x5f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, + 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xcb, 0xdc, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0b, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x3a, 0x4f, + 0x0a, 0x13, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x65, 0x6e, + 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xcc, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x6d, 0x6c, 0x4d, 0x61, 0x78, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x3a, + 0x51, 0x0a, 0x14, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x6c, 0x5f, 0x69, 0x73, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xcd, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, + 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6d, 0x6c, 0x49, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x3a, 0x4a, 0x0a, 0x10, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x6c, 0x65, 0x61, 0x72, 0x6e, + 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xce, 0xdc, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, + 0x74, 0x65, 0x61, 0x6d, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x54, + 0x0a, 0x14, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, + 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x12, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, + 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x51, 0x0a, 0x12, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, + 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xe9, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x60, 0x0a, 0x1a, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x65, + 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xea, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x18, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x75, 0x70, 0x70, 0x72, 0x65, 0x73, 0x73, 0x45, + 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x25, 0x5a, 0x23, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x62, 0x75, 0x66, 0x66, + 0x2f, 0x6d, 0x61, 0x6e, 0x74, 0x61, 0x2f, 0x64, 0x6f, 0x74, 0x61, 0x3b, 0x64, 0x6f, 0x74, 0x61, } var file_valveextensions_proto_goTypes = []interface{}{ @@ -196,8 +197,8 @@ var file_valveextensions_proto_goTypes = []interface{}{ (*descriptorpb.EnumValueOptions)(nil), // 1: google.protobuf.EnumValueOptions } var file_valveextensions_proto_depIdxs = []int32{ - 0, // 0: dota.map_field:extendee -> google.protobuf.FieldOptions - 0, // 1: dota.map_key:extendee -> google.protobuf.FieldOptions + 0, // 0: dota.valve_map_field:extendee -> google.protobuf.FieldOptions + 0, // 1: dota.valve_map_key:extendee -> google.protobuf.FieldOptions 0, // 2: dota.diff_encode_field:extendee -> google.protobuf.FieldOptions 0, // 3: dota.delta_ignore:extendee -> google.protobuf.FieldOptions 0, // 4: dota.steamml_max_entries:extendee -> google.protobuf.FieldOptions diff --git a/dota/valveextensions.proto b/dota/valveextensions.proto index ab15be2f..4027b39c 100644 --- a/dota/valveextensions.proto +++ b/dota/valveextensions.proto @@ -6,8 +6,8 @@ option go_package = "github.com/dotabuff/manta/dota;dota"; import "google/protobuf/descriptor.proto"; extend google.protobuf.FieldOptions { - optional bool map_field = 61000; - optional bool map_key = 61001; + optional bool valve_map_field = 61000; + optional bool valve_map_key = 61001; optional int32 diff_encode_field = 61002; optional bool delta_ignore = 61003; optional uint32 steamml_max_entries = 61004; diff --git a/entity.go b/entity.go index 7408d699..5fa7bbef 100644 --- a/entity.go +++ b/entity.go @@ -230,7 +230,7 @@ func (p *Parser) onCSVCMsg_PacketEntities(m *dota.CSVCMsg_PacketEntities) error var e *Entity var op EntityOp - if !m.GetIsDelta() { + if !m.GetLegacyIsDelta() { if p.entityFullPackets > 0 { return nil } diff --git a/parser_test.go b/parser_test.go index 37622223..71943491 100644 --- a/parser_test.go +++ b/parser_test.go @@ -2,17 +2,51 @@ package manta import ( "bytes" - "compress/bzip2" "io" "net" - "net/http" "os" "testing" - "time" "github.com/stretchr/testify/assert" ) +type timeoutReader struct { + r io.Reader + maxBytes int + readBytes int +} + +var _ io.Reader = &timeoutReader{} + +func newTimeoutReader(data []byte, maxBytes int) *timeoutReader { + return &timeoutReader{r: bytes.NewReader(data), maxBytes: maxBytes} +} + +func (r *timeoutReader) Read(p []byte) (int, error) { + n, err := r.r.Read(p) + r.readBytes += n + if r.readBytes >= r.maxBytes { + return n, timeoutError{} + } + return n, err +} + +type timeoutError struct{} + +var _ net.Error = timeoutError{} + +func (e timeoutError) Error() string { + return "timed out" +} + +func (e timeoutError) Timeout() bool { + return true +} + +func (e timeoutError) Temporary() bool { + return true +} + func TestStreamingReaderTimeout(t *testing.T) { if os.Getenv("CI") != "" { t.Skip("Skipping test in CI environment") @@ -20,20 +54,12 @@ func TestStreamingReaderTimeout(t *testing.T) { assert := assert.New(t) - // create a http client with a timeout too low to get the entire replay - client := http.Client{ - Timeout: 2 * time.Second, - } - - // request the replay, the timeout should be enough for it to begin successfully - resp, err := client.Get("http://replay111.valve.net/570/2526759078_1821332888.dem.bz2") - if err != nil { - t.Fatalf("unable to get remote replay: %s", err) - } - defer resp.Body.Close() + // get data + data := mustGetReplayData("2159568145", "https://s3-us-west-2.amazonaws.com/manta.dotabuff/2159568145.dem") + reader := newTimeoutReader(data, 10000) // create a new parser with the streaming response - parser, err := NewStreamParser(bzip2.NewReader(resp.Body)) + parser, err := NewStreamParser(reader) if err != nil { t.Fatalf("unable to create parser: %s", err) }